# Get one ISO project

Requires the `iso:read` scope.

`GET /iso/projects/{projectId}`

Scope `iso:read` | Plan **Growth+**

Requires the `iso:read` scope. Needs the `iso27001` plan feature.

## Path parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `projectId` | string | yes |  |

## Returns

The `data` field of the standard `{ data, error, meta }` envelope:

- `createdAt`: string (date-time) Creation time (UTC).
- `id`: string ISO project id (iso_).
- `readinessScore`: integer Last stored readiness score (0-100).
- `stage1Date`: optional string (date-time) or null Stage 1 audit date (UTC), when set.
- `stage2Date`: optional string (date-time) or null Stage 2 audit date (UTC), when set.
- `standard`: string Standard and edition, for example ISO27001:2022.
- `status`: string ACTIVE, CERTIFIED, SURVEILLANCE, ARCHIVED or UNKNOWN.
- `targetCertDate`: optional string (date-time) or null Target certification date (UTC), when set.
- `updatedAt`: string (date-time) Last update time (UTC).
- No other fields.

## Errors

| Status | Code | Retry | Meaning |
|---|---|---|---|
| 400 | - | no | The request is invalid. |
| 401 | - | no | The token is missing, malformed, expired or revoked. |
| 402 | - | no | The organisation's plan does not include the feature this route needs. |
| 403 | - | no | The token may not use this route. |
| 404 | - | no | The resource does not exist in this organisation. |
| 429 | - | yes | Rate limit or row budget exceeded; retry after the time in Retry-After. |
| 500 | - | no | Unexpected server error. |
| 503 | - | yes | A dependency is temporarily unavailable; retry later. |

## Example

### curl

```bash
curl "https://api.autociso.io/api/v1/iso/projects/<projectId>" \
  -H "Authorization: Bearer <your-api-token>"
```

### Python

```python
import requests

response = requests.get(
    "https://api.autociso.io/api/v1/iso/projects/<projectId>",
    headers={"Authorization": "Bearer <your-api-token>"},
)
print(response.json())
```

### JavaScript

```javascript
const response = await fetch("https://api.autociso.io/api/v1/iso/projects/<projectId>", {
  method: "GET",
  headers: { "Authorization": "Bearer <your-api-token>" },
});
console.log(await response.json());
```

## Response (200)

```json
{
  "data": {
    "createdAt": "2026-02-11T10:00:00Z",
    "id": "iso_1hfa8m2c4x0p",
    "readinessScore": 68,
    "stage1Date": "2026-11-18T00:00:00Z",
    "stage2Date": null,
    "standard": "ISO27001:2022",
    "status": "ACTIVE",
    "targetCertDate": "2027-02-26T00:00:00Z",
    "updatedAt": "2026-10-12T18:20:00Z"
  },
  "error": null
}
```
