# The registry in use and how many of the organisation's passports need an update

> `GET /registry/status` · Scope: `read` · operationId `getRegistryStatus`

Any member. After a new registry version is deployed, a job re-evaluates the organisation's published
passports; passports with a newly missing required value become `update_needed` (they stay online)
and their versions get an `update_passports` task.

## Antworten

### 200 (`application/json`)

The status.

- **reevaluation** `Job`: `created_by` names the member who started the job, `created_by_api_key` the API key that started an import validation (ADR-026); a job without either was started by the system (the registry re-evaluation).
  - **created_at** `string (date-time)` (erforderlich)
  - **created_by** `UserRef`
  - **created_by_api_key** `ApiKeyRef`: An organisation API key (ADR-017) that reported an event (source `api`) or staged an import (ADR-026).
  - **error_code** `string` (einer von: `forbidden`, `not_found`, `conflict`, `invalid`, `internal_error`): Why a job failed (`forbidden`: the member who started it lost the role or left).
  - **file** `JobFile`
  - **finished_at** `string (date-time)`
  - **id** `string (uuid)` (erforderlich)
  - **import_id** `string (uuid)`
  - **kind** `string` (erforderlich, einer von: `import_validate`, `import_commit`, `import_approve`, `bulk_publish`, `qr_export`, `registry_reevaluate`, `org_export`)
  - **progress** `JobProgress` (erforderlich)
  - **result** `JobResult`: The summary of a finished job; which members are set depends on the kind.
  - **started_at** `string (date-time)`
  - **status** `string` (erforderlich, einer von: `queued`, `running`, `succeeded`, `failed`)
- **registry_hash** `string` (erforderlich)
- **registry_status** `string` (erforderlich, einer von: `seed`, `verified`): `seed` until verified against primary sources (docs/registry/verification-log.md).
- **registry_version** `string` (erforderlich)
- **update_needed** `integer` (erforderlich): The organisation's passports in status `update_needed`.

### 400 (`application/problem+json`)

The request is malformed or failed validation (`validation_error`), or a token is invalid or expired (`invalid_token`).

### 401 (`application/problem+json`)

The API key is missing, unknown or revoked (`unauthenticated`).

### 403 (`application/problem+json`)

The API key may not perform this action (`forbidden`): it lacks the operation's scope, or the action needs more than a viewer's rights.

### 404 (`application/problem+json`)

The resource does not exist in the organisation of the API key, or the public passport is unknown (`not_found`).

### default (`application/problem+json`)

Any other problem, e.g. `internal_error`.

## Beispiel

```bash title="cURL"
curl -X GET "https://passport.kabin.sh/api/v1/registry/status" \
  -H "Authorization: Bearer $BATTERYPASS_API_KEY"
```
