---
title: "GET /api/v1/catalog/status"
method: GET
path: "/api/v1/catalog/status"
---

# GET /api/v1/catalog/status

`GET /api/v1/catalog/status`

## Query parameters

- `connected` boolean — Whether to fetch statuses for connected specs, in addition to those named
- `name` string[], required — The catalog name of the live spec to get the status of
- `short` boolean — Whether to return a smaller response that excludes the `connector_status` and `controller_status` fields.

## Response `200`

- StatusResponse[]
  - `catalog_name` string, required — The name of the live spec
  - `connector_status` ConnectorStatus — The shape of a connector status, which matches that of an ops::Log.
    - `fields` object — Arbitrary JSON that can be used to communicate additional details. The specific fields and their meanings are entirely up to the connector.
    - `message` string, required — The message is meant to be presented to users, and may use Markdown formatting.
    - `shard` ShardRef, required — Identifies the specific task shard that is the source of an event. This matches the shape of the `shard` field in an `ops.Log` message.
      - `build` string, required
      - `keyBegin` string, required — The key range of the task as a hex string. Together with rClockBegin, this uniquely identifies a specific task shard.
      - `name` string, required — The name of the task
      - `rClockBegin` string, required — The rClock range of the task as a hex string. Together with keyBegin, this uniquely identifies a specific task shard.
    - `ts` string, date-time, required — The time at which the status was last updated
  - `controller_error` string, nullable — Error from the most recent controller run, or `null` if the run was successful.
  - `controller_failures` integer — The number of consecutive failures of the controller. Resets to 0 after any successful run.
  - `controller_next_run` string, date-time, nullable, required — Time at which the controller is next scheduled to run. Or null if there is no run scheduled.
  - `controller_status` union — Represents the internal state of a controller.
    - object — Status of a capture controller
      - `type` 'Capture', required
      - `abandon` AbandonStatus — Status of the abandonment evaluation for a task.
        - `last_evaluated` string, date-time, nullable — When this spec was last checked for abandonment
      - `activation` ActivationStatus — Status of the task shards running in the data-plane. This records information about the activations of builds in the data-plane, including any subsequent re-activations due to shard failures.
        - `last_activated` string
        - `last_activated_at` string, date-time, nullable — The time at which the last data plane activation was performed. This could have been in order to activate a recent publication, or in response to a shard failure.
        - `last_failure` ShardFailure — The shape of a connector status, which matches that of an ops::Log.
          - `fields` object — Arbitrary JSON that can be used to communicate additional details. The specific fields and their meanings are up to the connector, except for the flow `/events` fields: `eventType`, `eventTarget`, and `error`, which are restricted to string values.
          - `message` string, required — The message is meant to be presented to users, and may use Markdown formatting.
          - `shard` ShardRef, required — Identifies the specific task shard that is the source of an event. This matches the shape of the `shard` field in an `ops.Log` message.
            - `build` string, required
            - `keyBegin` string, required — The key range of the task as a hex string. Together with rClockBegin, this uniquely identifies a specific task shard.
            - `name` string, required — The name of the task
            - `rClockBegin` string, required — The rClock range of the task as a hex string. Together with keyBegin, this uniquely identifies a specific task shard.
          - `ts` string, date-time, required — The time at which the failure occurred
        - `next_retry` string, date-time, nullable — The next time at which failed task shards will be re-activated. If this is present, then there has been at least one observed shard failure, which the controller has not yet handled.
        - `recent_failure_count` integer — Count of shard failures that have been observed over the last 24 hours for the currently activated build. This resets to 0 when a newly published build is activated.
        - `shard_status` ShardStatusCheck
          - `count` integer — The number of checks that have returned ths status
          - `first_ts` string, date-time, required — The time of the first status check that returned this status
          - `last_ts` string, date-time, required — The time of the most recent status check
          - `status` union, required — Represents a high level status aggregate of all the shards for a given task.
            - 'Ok' — All task shards have a `Primary` member.
            - 'Pending' — Any task shards are in `Pending` or `Backfill`, and none are `Failed`. Or no task shards yet exist.
            - 'Failed' — Any task shard is `Failed`
      - `alerts` object
      - `auto_discover` AutoDiscoverStatus
        - `failure` AutoDiscoverFailure
          - `count` integer, required — The number of consecutive failures that have been observed.
          - `first_ts` string, date-time, required — The timestamp of the first failure in the current sequence.
          - `last_outcome` AutoDiscoverOutcome, required — The results of an auto-discover attempt
            - `added` DiscoverChange[] — Bindings that were added to the capture.
              - …
            - `errors` Error[] — Errors that occurred during the discovery or evolution process.
              - …
            - `modified` DiscoverChange[] — Bindings that were modified, either to change the schema or the collection key.
              - …
            - `publish_result` JobStatus — The status of a publication.
              - …
            - `removed` DiscoverChange[] — Bindings that were removed because they no longer appear in the source system.
              - …
            - `ts` string, date-time, required — Time at which the disocver was attempted
        - `interval` string, nullable — The interval at which auto-discovery is run. This is normally unset, which uses the default interval.
        - `last_success` AutoDiscoverOutcome — The results of an auto-discover attempt
          - `added` DiscoverChange[] — Bindings that were added to the capture.
            - `disable` boolean, required — Whether the capture binding is disabled.
            - `resource_path` string[], required — Identifies the resource in the source system that this change pertains to.
            - `target` string, required — Collection names are paths of Unicode letters, numbers, '-', '_', or '.'. Each path component is separated by a slash '/', and a name may not begin or end in a '/'.
          - `errors` Error[] — Errors that occurred during the discovery or evolution process.
            - `catalog_name` string
            - `detail` string, required
            - `scope` string, nullable
          - `modified` DiscoverChange[] — Bindings that were modified, either to change the schema or the collection key.
            - `disable` boolean, required — Whether the capture binding is disabled.
            - `resource_path` string[], required — Identifies the resource in the source system that this change pertains to.
            - `target` string, required — Collection names are paths of Unicode letters, numbers, '-', '_', or '.'. Each path component is separated by a slash '/', and a name may not begin or end in a '/'.
          - `publish_result` JobStatus — The status of a publication.
            - `lockFailures` LockFailure[]
              - …
            - `type` union, required — The highest-level status of a publication.
              - …
          - `removed` DiscoverChange[] — Bindings that were removed because they no longer appear in the source system.
            - `disable` boolean, required — Whether the capture binding is disabled.
            - `resource_path` string[], required — Identifies the resource in the source system that this change pertains to.
            - `target` string, required — Collection names are paths of Unicode letters, numbers, '-', '_', or '.'. Each path component is separated by a slash '/', and a name may not begin or end in a '/'.
          - `ts` string, date-time, required — Time at which the disocver was attempted
        - `next_at` string, date-time — Time at which the next auto-discover should be run.
        - `pending_publish` AutoDiscoverOutcome — The results of an auto-discover attempt
          - `added` DiscoverChange[] — Bindings that were added to the capture.
            - `disable` boolean, required — Whether the capture binding is disabled.
            - `resource_path` string[], required — Identifies the resource in the source system that this change pertains to.
            - `target` string, required — Collection names are paths of Unicode letters, numbers, '-', '_', or '.'. Each path component is separated by a slash '/', and a name may not begin or end in a '/'.
          - `errors` Error[] — Errors that occurred during the discovery or evolution process.
            - `catalog_name` string
            - `detail` string, required
            - `scope` string, nullable
          - `modified` DiscoverChange[] — Bindings that were modified, either to change the schema or the collection key.
            - `disable` boolean, required — Whether the capture binding is disabled.
            - `resource_path` string[], required — Identifies the resource in the source system that this change pertains to.
            - `target` string, required — Collection names are paths of Unicode letters, numbers, '-', '_', or '.'. Each path component is separated by a slash '/', and a name may not begin or end in a '/'.
          - `publish_result` JobStatus — The status of a publication.
            - `lockFailures` LockFailure[]
              - …
            - `type` union, required — The highest-level status of a publication.
              - …
          - `removed` DiscoverChange[] — Bindings that were removed because they no longer appear in the source system.
            - `disable` boolean, required — Whether the capture binding is disabled.
            - `resource_path` string[], required — Identifies the resource in the source system that this change pertains to.
            - `target` string, required — Collection names are paths of Unicode letters, numbers, '-', '_', or '.'. Each path component is separated by a slash '/', and a name may not begin or end in a '/'.
          - `ts` string, date-time, required — Time at which the disocver was attempted
      - `config_updates` PendingConfigUpdateStatus — Information on the config updates performed by the controller. This does not include any information on user-initiated config updates.
        - `build` string, required
        - `next_attempt` string, date-time, required
      - `publications` PublicationStatus — Information on the publications performed by the controller. This does not include any information on user-initiated publications.
        - `history` PublicationInfo[], required — A limited history of publications performed by this controller
          - `completed` string, date-time — Time at which the publication was completed
          - `count` integer — A publication info may represent multiple publications of the same spec. If the publications have similar outcomes, then multiple publications can be condensed into a single entry in the history. If this is done, then the `count` field will be greater than 1. This field is omitted if the count is 1.
          - `created` string, date-time — Time at which the publication was initiated
          - `detail` string, nullable — A brief description of the reason for the publication
          - `errors` Error[] — Errors will be non-empty for publications that were not successful
            - `catalog_name` string
            - `detail` string, required
            - `scope` string, nullable
          - `id` string, required
          - `is_touch` boolean — A touch publication is a publication that does not modify the spec, but only updates the `built_spec` and `last_build_id` fields. They are most commonly performed in response to changes in the spec's dependencies. Touch publications will never be combined with non-touch publications in the history.
          - `result` JobStatus — The status of a publication.
            - `lockFailures` LockFailure[]
              - …
            - `type` union, required — The highest-level status of a publication.
              - …
        - `max_observed_pub_id` string
        - `next_after` string, date-time — If we are awaiting a cooldown before publishing this spec, this field will be set to the time after which the publication will be retried.
        - `pending_republish` RepublishRequested
          - `last_build_id` string, required
          - `reason` string, required — The `reason` from the `Republish` message
          - `received_at` string, date-time, required — Informational only, timestamp of when the controller observed the `Republish` request.
    - object — The status of a collection controller
      - `type` 'Collection', required
      - `abandon` AbandonStatus — Status of the abandonment evaluation for a task.
        - `last_evaluated` string, date-time, nullable — When this spec was last checked for abandonment
      - `activation` ActivationStatus — Status of the task shards running in the data-plane. This records information about the activations of builds in the data-plane, including any subsequent re-activations due to shard failures.
        - `last_activated` string
        - `last_activated_at` string, date-time, nullable — The time at which the last data plane activation was performed. This could have been in order to activate a recent publication, or in response to a shard failure.
        - `last_failure` ShardFailure — The shape of a connector status, which matches that of an ops::Log.
          - `fields` object — Arbitrary JSON that can be used to communicate additional details. The specific fields and their meanings are up to the connector, except for the flow `/events` fields: `eventType`, `eventTarget`, and `error`, which are restricted to string values.
          - `message` string, required — The message is meant to be presented to users, and may use Markdown formatting.
          - `shard` ShardRef, required — Identifies the specific task shard that is the source of an event. This matches the shape of the `shard` field in an `ops.Log` message.
            - `build` string, required
            - `keyBegin` string, required — The key range of the task as a hex string. Together with rClockBegin, this uniquely identifies a specific task shard.
            - `name` string, required — The name of the task
            - `rClockBegin` string, required — The rClock range of the task as a hex string. Together with keyBegin, this uniquely identifies a specific task shard.
          - `ts` string, date-time, required — The time at which the failure occurred
        - `next_retry` string, date-time, nullable — The next time at which failed task shards will be re-activated. If this is present, then there has been at least one observed shard failure, which the controller has not yet handled.
        - `recent_failure_count` integer — Count of shard failures that have been observed over the last 24 hours for the currently activated build. This resets to 0 when a newly published build is activated.
        - `shard_status` ShardStatusCheck
          - `count` integer — The number of checks that have returned ths status
          - `first_ts` string, date-time, required — The time of the first status check that returned this status
          - `last_ts` string, date-time, required — The time of the most recent status check
          - `status` union, required — Represents a high level status aggregate of all the shards for a given task.
            - 'Ok' — All task shards have a `Primary` member.
            - 'Pending' — Any task shards are in `Pending` or `Backfill`, and none are `Failed`. Or no task shards yet exist.
            - 'Failed' — Any task shard is `Failed`
      - `alerts` object
      - `inferred_schema` InferredSchemaStatus — Status of the inferred schema
        - `next_md5` string, nullable — The md5 of the inferred schema that will next be applied. If this is present, it indicates that the controller is waiting on a cooldown period before publishing this inferred schema.
        - `next_update_after` string, date-time — The time of the next scheduled inferred schema update. If this is present, it indicates that the controller is waiting on a cooldown period before publishing the inferred schema, and represents the approximate time of the next update.
        - `schema_last_updated` string, date-time — The time at which the inferred schema was last published. This will only be present if the inferred schema was published at least once.
        - `schema_md5` string, nullable — The md5 sum of the inferred schema that was last published. Because the publications handler updates the model instead of the controller, it's technically possible for the published inferred schema to be more recent than the one corresponding to this hash. If that happens, we would expect a subsequent publication on the next controller run, which would update the hash but not actually modify the schema.
      - `publications` PublicationStatus — Information on the publications performed by the controller. This does not include any information on user-initiated publications.
        - `history` PublicationInfo[], required — A limited history of publications performed by this controller
          - `completed` string, date-time — Time at which the publication was completed
          - `count` integer — A publication info may represent multiple publications of the same spec. If the publications have similar outcomes, then multiple publications can be condensed into a single entry in the history. If this is done, then the `count` field will be greater than 1. This field is omitted if the count is 1.
          - `created` string, date-time — Time at which the publication was initiated
          - `detail` string, nullable — A brief description of the reason for the publication
          - `errors` Error[] — Errors will be non-empty for publications that were not successful
            - `catalog_name` string
            - `detail` string, required
            - `scope` string, nullable
          - `id` string, required
          - `is_touch` boolean — A touch publication is a publication that does not modify the spec, but only updates the `built_spec` and `last_build_id` fields. They are most commonly performed in response to changes in the spec's dependencies. Touch publications will never be combined with non-touch publications in the history.
          - `result` JobStatus — The status of a publication.
            - `lockFailures` LockFailure[]
              - …
            - `type` union, required — The highest-level status of a publication.
              - …
        - `max_observed_pub_id` string
        - `next_after` string, date-time — If we are awaiting a cooldown before publishing this spec, this field will be set to the time after which the publication will be retried.
        - `pending_republish` RepublishRequested
          - `last_build_id` string, required
          - `reason` string, required — The `reason` from the `Republish` message
          - `received_at` string, date-time, required — Informational only, timestamp of when the controller observed the `Republish` request.
    - object — Status of a materialization controller
      - `type` 'Materialization', required
      - `abandon` AbandonStatus — Status of the abandonment evaluation for a task.
        - `last_evaluated` string, date-time, nullable — When this spec was last checked for abandonment
      - `activation` ActivationStatus — Status of the task shards running in the data-plane. This records information about the activations of builds in the data-plane, including any subsequent re-activations due to shard failures.
        - `last_activated` string
        - `last_activated_at` string, date-time, nullable — The time at which the last data plane activation was performed. This could have been in order to activate a recent publication, or in response to a shard failure.
        - `last_failure` ShardFailure — The shape of a connector status, which matches that of an ops::Log.
          - `fields` object — Arbitrary JSON that can be used to communicate additional details. The specific fields and their meanings are up to the connector, except for the flow `/events` fields: `eventType`, `eventTarget`, and `error`, which are restricted to string values.
          - `message` string, required — The message is meant to be presented to users, and may use Markdown formatting.
          - `shard` ShardRef, required — Identifies the specific task shard that is the source of an event. This matches the shape of the `shard` field in an `ops.Log` message.
            - `build` string, required
            - `keyBegin` string, required — The key range of the task as a hex string. Together with rClockBegin, this uniquely identifies a specific task shard.
            - `name` string, required — The name of the task
            - `rClockBegin` string, required — The rClock range of the task as a hex string. Together with keyBegin, this uniquely identifies a specific task shard.
          - `ts` string, date-time, required — The time at which the failure occurred
        - `next_retry` string, date-time, nullable — The next time at which failed task shards will be re-activated. If this is present, then there has been at least one observed shard failure, which the controller has not yet handled.
        - `recent_failure_count` integer — Count of shard failures that have been observed over the last 24 hours for the currently activated build. This resets to 0 when a newly published build is activated.
        - `shard_status` ShardStatusCheck
          - `count` integer — The number of checks that have returned ths status
          - `first_ts` string, date-time, required — The time of the first status check that returned this status
          - `last_ts` string, date-time, required — The time of the most recent status check
          - `status` union, required — Represents a high level status aggregate of all the shards for a given task.
            - 'Ok' — All task shards have a `Primary` member.
            - 'Pending' — Any task shards are in `Pending` or `Backfill`, and none are `Failed`. Or no task shards yet exist.
            - 'Failed' — Any task shard is `Failed`
      - `alerts` object
      - `config_updates` PendingConfigUpdateStatus — Information on the config updates performed by the controller. This does not include any information on user-initiated config updates.
        - `build` string, required
        - `next_attempt` string, date-time, required
      - `publications` PublicationStatus — Information on the publications performed by the controller. This does not include any information on user-initiated publications.
        - `history` PublicationInfo[], required — A limited history of publications performed by this controller
          - `completed` string, date-time — Time at which the publication was completed
          - `count` integer — A publication info may represent multiple publications of the same spec. If the publications have similar outcomes, then multiple publications can be condensed into a single entry in the history. If this is done, then the `count` field will be greater than 1. This field is omitted if the count is 1.
          - `created` string, date-time — Time at which the publication was initiated
          - `detail` string, nullable — A brief description of the reason for the publication
          - `errors` Error[] — Errors will be non-empty for publications that were not successful
            - `catalog_name` string
            - `detail` string, required
            - `scope` string, nullable
          - `id` string, required
          - `is_touch` boolean — A touch publication is a publication that does not modify the spec, but only updates the `built_spec` and `last_build_id` fields. They are most commonly performed in response to changes in the spec's dependencies. Touch publications will never be combined with non-touch publications in the history.
          - `result` JobStatus — The status of a publication.
            - `lockFailures` LockFailure[]
              - …
            - `type` union, required — The highest-level status of a publication.
              - …
        - `max_observed_pub_id` string
        - `next_after` string, date-time — If we are awaiting a cooldown before publishing this spec, this field will be set to the time after which the publication will be retried.
        - `pending_republish` RepublishRequested
          - `last_build_id` string, required
          - `reason` string, required — The `reason` from the `Republish` message
          - `received_at` string, date-time, required — Informational only, timestamp of when the controller observed the `Republish` request.
      - `source_capture` SourceCaptureStatus — Status information about the `sourceCapture`
        - `add_bindings` Collection[] — If `up_to_date` is `false`, then this will contain the set of `sourceCapture` collections that need to be added. This is provided simply to aid in debugging in case the publication to add the bindings fails.
        - `up_to_date` boolean — Whether the materialization bindings are up-to-date with respect to the `sourceCapture` bindings. In normal operation, this should always be `true`. Otherwise, there will be a controller `error` and the publication status will contain details of why the update failed.
    - object
      - `type` 'Test', required
      - `alerts` object
      - `passing` boolean, required
      - `publications` PublicationStatus — Information on the publications performed by the controller. This does not include any information on user-initiated publications.
        - `history` PublicationInfo[], required — A limited history of publications performed by this controller
          - `completed` string, date-time — Time at which the publication was completed
          - `count` integer — A publication info may represent multiple publications of the same spec. If the publications have similar outcomes, then multiple publications can be condensed into a single entry in the history. If this is done, then the `count` field will be greater than 1. This field is omitted if the count is 1.
          - `created` string, date-time — Time at which the publication was initiated
          - `detail` string, nullable — A brief description of the reason for the publication
          - `errors` Error[] — Errors will be non-empty for publications that were not successful
            - `catalog_name` string
            - `detail` string, required
            - `scope` string, nullable
          - `id` string, required
          - `is_touch` boolean — A touch publication is a publication that does not modify the spec, but only updates the `built_spec` and `last_build_id` fields. They are most commonly performed in response to changes in the spec's dependencies. Touch publications will never be combined with non-touch publications in the history.
          - `result` JobStatus — The status of a publication.
            - `lockFailures` LockFailure[]
              - …
            - `type` union, required — The highest-level status of a publication.
              - …
        - `max_observed_pub_id` string
        - `next_after` string, date-time — If we are awaiting a cooldown before publishing this spec, this field will be set to the time after which the publication will be retried.
        - `pending_republish` RepublishRequested
          - `last_build_id` string, required
          - `reason` string, required — The `reason` from the `Republish` message
          - `received_at` string, date-time, required — Informational only, timestamp of when the controller observed the `Republish` request.
    - object
      - `type` 'Uninitialized', required
  - `controller_updated_at` string, date-time, required — Time of the last controller run for this spec.
  - `disabled` boolean — Whether the shards are disabled. Only pertinent to tasks. Omitted if false.
  - `last_build_id` string, required
  - `last_pub_id` string, required
  - `live_spec_id` string, required
  - `live_spec_updated_at` string, date-time, required — Time of the last publication that affected the live spec.
  - `spec_type` 'capture' | 'collection' | 'materialization' | 'test'
  - `summary` Summary, required
    - `message` string, required
    - `status` union, required — A machine-readable summary of the status This summary is derived from multiple different sources of information about a catalog item, and it attempts to coalesce all that information into a single, simple characterization. The term "status" can mean different things, but here we're primarily concerned with answering the question: "do we see any problems that might be affecting the correct operation of the task".
      - 'ok' — Things seem ...not bad
      - 'taskDisabled' — The task is currently disabled. Only pertains to captures, derivations, and materializations.
      - 'warning' — Something isn't fully working, but the condition is expected to clear automatically soon. Nothing to worry about as long as the condition doesn't persist for too long.
      - 'error' — There's some sort of error with this catalog spec.

---

[API](https://skmtc.net/estuary/apis/flow-control-plane-v1-api.md) · [All operations](https://skmtc.net/estuary/apis/flow-control-plane-v1-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/estuary/flow-control-plane-v1-api/revisions/bc66e6a40925/schema)
