registry.inventory.read ​
Read local container registry inventory from the aggregated catalog
Read a local container-registry inventory snapshot.
Inputs:
- organization_uuid: Organization UUID (required)
- provider/backend_type/account_sync_status/repository_sync_status filters (optional)
- registry_account_uuid/registry_repository_uuid/repository_full_name filters (optional)
- include_repositories/include_images/include_versions toggles (optional)
- limit/offset page registry accounts
Outputs:
- accounts: registry accounts with optional nested repositories, images, and versions
- account_count, repository_count, image_count, image_version_count, tag_count
- providers_present, sync_statuses_present, warnings
- read_at and error
Overview ​
| Property | Value |
|---|---|
| Workflow type | Atomic |
| Library | App-registry |
| Version | 1.0 |
Input Schema ​
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
organization_uuid | uuid | Yes | — | Organization UUID for tenant isolation |
provider | string | No | — | Optional provider family filter such as aws, github, gcp, azure, or gitlab |
backend_type | string | No | — | Optional RegistryBackendType value/name filter such as ecr or GITHUB_GHCR |
account_sync_status | string | No | — | Optional RegistryAccount sync-status filter |
repository_sync_status | string | No | — | Optional RegistryRepository sync-status filter |
registry_account_uuid | uuid | No | — | Restrict inventory to one RegistryAccount |
registry_repository_uuid | uuid | No | — | Restrict inventory to one RegistryRepository |
repository_full_name | string | No | — | Restrict inventory to an exact repository full_name |
repository_name_contains | string | No | — | Case-insensitive repository full_name substring filter |
tag | string | No | — | Restrict included versions to an exact tag |
digest | string | No | — | Restrict included images/versions to an exact digest |
include_repositories | boolean | No | — | Include repository summaries; default true |
include_images | boolean | No | — | Include image summaries under repositories; default false |
include_versions | boolean | No | — | Include tag/version summaries under images; implies include_images |
limit | integer | No | — | Maximum registry accounts to return; default 50, capped at 100 |
offset | integer | No | — | Pagination offset for registry accounts |
workflow_run_id | string | No | — | Engine-stamped workflow_run_id when invoked as a DAG step (ADR-015 E1) |
Output Schema ​
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
organization_uuid | uuid | Yes | — | Organization UUID for tenant isolation |
provider | string | No | — | Optional provider family filter such as aws, github, gcp, azure, or gitlab |
backend_type | string | No | — | Optional RegistryBackendType value/name filter such as ecr or GITHUB_GHCR |
account_sync_status | string | No | — | Optional RegistryAccount sync-status filter |
repository_sync_status | string | No | — | Optional RegistryRepository sync-status filter |
registry_account_uuid | uuid | No | — | Restrict inventory to one RegistryAccount |
registry_repository_uuid | uuid | No | — | Restrict inventory to one RegistryRepository |
repository_full_name | string | No | — | Restrict inventory to an exact repository full_name |
repository_name_contains | string | No | — | Case-insensitive repository full_name substring filter |
tag | string | No | — | Restrict included versions to an exact tag |
digest | string | No | — | Restrict included images/versions to an exact digest |
include_repositories | boolean | No | — | Include repository summaries; default true |
include_images | boolean | No | — | Include image summaries under repositories; default false |
include_versions | boolean | No | — | Include tag/version summaries under images; implies include_images |
limit | integer | No | — | Maximum registry accounts to return; default 50, capped at 100 |
offset | integer | No | — | Pagination offset for registry accounts |
workflow_run_id | string | No | — | Engine-stamped workflow_run_id when invoked as a DAG step (ADR-015 E1) |
accounts | list | Yes | — | Registry accounts with optional nested repositories, images, and versions |
account_count | integer | Yes | — | Number of accounts returned in this page |
repository_count | integer | Yes | — | Number of matching repositories under returned accounts |
image_count | integer | Yes | — | Number of matching images under returned repositories |
image_version_count | integer | Yes | — | Number of matching image-version rows under returned repositories |
tag_count | integer | Yes | — | Number of matching tagged image-version rows under returned repositories |
providers_present | list | Yes | — | Provider families present in returned accounts |
sync_statuses_present | list | Yes | — | Registry sync statuses present across returned accounts and repositories |
warnings | list | Yes | — | Non-fatal inventory read warnings |
read_at | string | Yes | — | ISO-8601 timestamp when the local inventory snapshot was read |
error | string | No | — | Soft read/validation error when the inventory cannot be read |
failure_reason | string | No | — | Engine failure reason, present only on failed terminal state |
failure_type | string | No | — | Engine failure type classification (ADR-015 E2) |
failed_action | string | No | — | Action name that caused the failure (ADR-015 E2) |
failed_at_state | string | No | — | State name where the failure occurred |
failed_step | string | No | — | Failed DAG step name when reported by the engine |
failed_layer | integer | No | — | 1-based failed DAG layer number emitted by the engine |
error_type | string | No | — | Unexpected error class or type |
States ​
| State | Initial | Terminal | Success | Auto-advance | Description |
|---|---|---|---|---|---|
done | Yes | Yes | Yes | — | — |
API Usage ​
bash
POST /api/workflows/start
Content-Type: application/json
{
"workflow_type": "registry.inventory.read",
"initial_data": {
"organization_uuid": "value"
}
}