---
title: "List connectors"
method: GET
path: "/v0/connectors"
tags: ["Connectors"]
---

# List connectors

`GET /v0/connectors`

## Request

- Base URL: `https://docs.quivr.thevibecompany.co` (the document declares no server; this is the origin it was published from)
- URL: `https://docs.quivr.thevibecompany.co/v0/connectors`
- Auth: HTTP bearer

Connector Instances of authorized Corpora, optionally filtered to one Corpus, in stable identifier order. Opaque page cursor bound to filter and scope; not a Change Cursor or another list page cursor (422 invalid_cursor).

## Query parameters

- `corpus_id` string
- `page_cursor` string
- `limit` integer

## Response `200`

Successful response

- ConnectorPage
  - `items` Connector[], required
    - `connector_id` string, required
    - `corpus_id` string, required
    - `source_namespace` string, required
    - `kind` string, required: Connector kind, provided by a pinned connector plugin; listConnectorKinds lists the kinds this deployment accepts. First-party connector plugins provide rss (RSS 2.0, RSS 1.0, Atom and JSON Feed documents; config url, optional honor_ttl; optional credential username+password or token), x_list (an X list) and m365_mail (Microsoft 365 mailboxes). Another kind is refused with 422 unsupported_connector_kind.
    - `push_policy` ConnectorPushPolicy: Engine-owned protection of declared source API routes, separate from plugin config. Missing fields inherit deployment defaults; configure at instance creation.
      - `rate_per_second` number, double: Token refill rate per second (deployment default 10).
      - `burst` integer: Token bucket capacity (deployment default 100).
      - `allowed_cidrs` string[]: Allowed IPv4/IPv6 CIDRs; absent or empty permits every address.
    - `work_queue` 'live' | 'bulk': Workload class for scheduled acquisition; push deliveries stay live.
    - `config` object, required
    - `schedule` object, required
      - `interval_seconds` integer, required
    - `health_policy` object, required
      - `silent_after_seconds` integer, required
      - `credential_warning_seconds` integer, required
    - `enabled` boolean, required
    - `created_at` string, date-time, required
    - `disabled_at` string, date-time
    - `paused_at` string, date-time: Present while scheduled acquisition is paused. Inbound push routes remain available.
    - `credential` CredentialMetadata: Metadata of the current Deposited Credential; the secret itself is never returned.
      - `version` integer, required
      - `deposited_at` string, date-time, required
      - `expires_at` string, date-time
    - `health` ConnectorHealth, required: Last committed Connector Health, evaluated at each acquisition run, credential replacement and disable; evaluated_at shows its age. Precedence disabled, access_error, credential_expiring, silent, active. access_error means the source refused access (distinct from silent, which means no new item within the threshold), including a push channel refused access while polling carries the collection. Other failures appear only as last_error.
      - `state` 'active' | 'silent' | 'access_error' | 'credential_expiring' | 'disabled', required
      - `evaluated_at` string, date-time, required
      - `last_success_at` string, date-time
      - `last_item_at` string, date-time
      - `last_error` ConnectorError
        - `code` string, required
        - `at` string, date-time, required
      - `usage` ConnectorUsage: Per-UTC-day source read counters, present only for kinds that report reads.
        - `day` string, required: Current UTC calendar day (YYYY-MM-DD).
        - `items_read` integer, required: Source resources read during the current UTC day, counted as the source bills them (for x_list, an estimate of billed post reads after X's per-UTC-day deduplication).
        - `previous_day_items_read` integer, required
      - `diagnostics` object: Kind-defined diagnostics from the latest acquisition page, documented on the kind's operator guide page (for x_list, the deletion recheck coverage). Informational; never holds a secret or source content.
      - `push` ConnectorPush: Push delivery health, present once a kind that declares the push mode reports its push channel.
        - `state` 'active' | 'pending' | 'degraded', required: active, deliveries are expected; pending, the kind has not set its push channel up yet; degraded, the setup failed or deliveries fail or miss items, and polling at the instance's interval carries the collection.
        - `error` ConnectorPushError
          - `class` 'access' | 'transient' | 'source', required
          - `code` string, required: For example webhook_invalid (the source invalidated the webhook), plugin_unavailable (a delivery found the plugin down) or missed_deliveries (polling found items no delivery brought).
          - `at` string, date-time, required
        - `last_delivery_at` string, date-time: Last delivery the connector plugin accepted.
        - `poll_interval_seconds` integer: While push is active, polling runs at most this often, as a safety net.
    - `webhook_url` string, uri: Public address of the instance's webhook route, present when its kind declares the push mode and the deployment sets public_url. The kind's plugin registers it with the source.
  - `next_page_cursor` string

## Other responses

- `default`: Structured error; see contract HTTP mapping.

---

[API](https://skmtc.dev/thevibecompany/apis/quivr-http-api.md) - [All operations](https://skmtc.dev/thevibecompany/apis/quivr-http-api/llms.txt) - [OpenAPI document](https://skmtc.dev/thevibecompany/apis/quivr-http-api/revisions/4f4e30ba8f4e?raw)
