---
title: "Get one connector"
method: GET
path: "/v1/connectors/{key}"
tags: ["Connectors"]
---

# Get one connector

`GET /v1/connectors/{key}`

## Request

- Base URL: `https://api.subscriby.net`
- URL: `https://api.subscriby.net/v1/connectors/{key}`
- Auth: HTTP bearer

One card by key, registered or on the roadmap, in the shape the directory lists.

```bash
curl https://api.subscriby.net/v1/connectors/example \
  -H "Authorization: Bearer $SUBSCRIBY_TOKEN"
```

### The manifest

Every key from `install_mode` onward describes what a registered connector can do; a roadmap card has them `null` or empty.

- `install_mode`: `paste_credential` (the creator pastes a token the platform issued), `oauth` (the creator authorises an app), `shared_platform` (Subscriby runs one shared presence; nothing to connect).
- `scopes`: `project` for an installation a creator sets up on a project; `platform` for a presence Subscriby itself runs on the connector.
- `resource_kinds`: the kinds of place the connector gates, with the creator-facing `label`, the `portal_label` members see, an `icon` slug, the `grant_mode` (`bearer_link`: a single-use link; `membership`: the connector admits the member itself; `role`: a role is granted; `creator_task`: the creator hands access over by hand), whether a grant can be held ahead of a pass window (`supports_early_admission_hold`), the kind of the same connector a place of this kind can be an in-place upgrade of (`upgrades_from`, or `null`), and the shapes of plan a place of the kind can be sold under (`plan_kinds`: `one_time`, `recurring`, `pass`, `pass_series`, in that order). A resource's `kind` on the [Resources endpoints](https://docs.subscriby.net/api/v1/reference/resources) is `<key>:<kind>`, and the same spelling is what a link request takes. Labels are translated into the token holder's language.
- `capabilities`: the port families the connector implements: `messaging`, `broadcasts`, `access_control`, `early_admission_hold`, `support_relay`, `native_payments`, `portal_login`, `creator_registration`, `management_surface`, `recovery_probes`, `recovery_standby_installations`, `recovery_resource_standby`, `recovery_mirror`, `recovery_identity_relink`.
- `messaging` and `pacing`: the limits every message and every bulk send is checked against.
- `management_commands` and `missing_commands`: which core commands the connector's in-chat surface renders and which it does not; the docs' capability matrix and the Connectors tab show the gaps from these.
- `recovery`: which Disaster Recovery facets the connector implements.
- `portal_cta`: the button the member portal shows to open the connector (`label`, translated, and `icon`), or `null` when the connector has nowhere to open; the portal addresses it through the installation's start link.
- `install_fields` and `settings_fields`: the declarative forms. Each field carries `type` (`text`, `secret`, `select`, `toggle`, `instructions`, `link`), a translated `label` and `help`, `required`, the validation `rules`, `options` for a select, a default `value`, the numbered walkthrough `steps` (with `:app` and `:button` placeholders for the app's name and the submit button's label) and `links` naming the text a renderer turns into a link. Render them in order and you have the connect form the dashboard shows.

## Path parameters

- `key` string, required

## Response `200`

200 with the card.

- object
  - `data` ConnectorListingResource, required: One Connectors Marketplace card: the connector in its lane with its badges and, for a registered connector, its whole manifest and the declarative forms that connect and configure it. A roadmap card carries every manifest key null or empty.
    - `key` string, required: The connector's key, the value the installation routes take as `{key}`.
    - `name` string, required: The connector's display name.
    - `vendor` string, nullable, required: Who publishes the connector; null on a roadmap card.
    - `version` string, nullable, required: The connector package's version; null on a roadmap card.
    - `status` string, required: The lane: `available`, `beta`, `paused`, `in_development` or `coming_soon`.
    - `status_label` 'Available Now' | 'Experimental' | 'Paused' | 'Under Development' | 'Coming Soon', required: The lane heading the dashboard shows, in the token holder's language.
    - `installable` boolean, required: Whether a creator may install the connector today: true for `available` and `beta` only.
    - `official` boolean, required: Whether Subscriby publishes the connector itself.
    - `badges` unknown[], required: Facts the platform stamps, never the package's own claim: each `{key, label}` is `official` or `community` (who publishes it), `new` while the listing was added within the last sixty days, or `trending` for the connectors creators installed most in the last thirty days. Empty on a roadmap card.
      - unknown
    - `installations` integer, required: How many projects run the connector today, uninstalled rows excluded.
    - `category` string, required: The connector's family, such as `messaging`.
    - `tagline` string, required: The one-line pitch on the card.
    - `overview` string, nullable, required: The longer description; null on a roadmap card.
    - `icon` string, required: The icon slug the directory draws.
    - `eta` string, nullable, required: When a roadmap connector is expected, as a sentence; null once it is registered.
    - `links` object, nullable, required: Where to read more; null on a roadmap card.
      - `documentation` string, nullable, required: The connector's guide on the docs site.
      - `support` string, nullable, required: Where to ask for help, a URL or a `mailto:`.
      - `privacy` string, nullable, required: The platform's privacy policy.
      - `terms` string, nullable, required: The platform's terms of service.
      - `homepage` string, nullable, required: The platform's home page.
    - `added_at` string, nullable, required: The day the listing was added, `YYYY-MM-DD`; null on a roadmap card.
    - `changelog_url` string, nullable, required: Where the connector's changes are announced; null on a roadmap card.
    - `sign_in_required` boolean, required: Whether connecting asks the creator to sign in on the platform rather than paste a credential.
    - `portal_cta` object, nullable, required: The button the member portal shows to open the connector, or null when the connector has nowhere to open; the portal addresses it through the installation's start link.
      - `label` string, required: The button's text, translated.
      - `icon` string, required: The button's icon slug.
    - `install_mode` string, nullable, required: How a creator connects it: `paste_credential` (the creator pastes a token the platform issued), `oauth` (the creator authorises an app) or `shared_platform` (Subscriby runs one shared presence; nothing to connect). Null on a roadmap card.
    - `scopes` string[], required: `project` for an installation a creator sets up on a project, `platform` for a presence Subscriby itself runs on the connector.
    - `resource_kinds` unknown[], required: The kinds of place the connector gates. Each carries `kind`, the creator-facing `label`, the `portal_label` members see, an `icon` slug, the `grant_mode` (`bearer_link`: a single-use link; `membership`: the connector admits the member itself; `role`: a role is granted; `creator_task`: the creator hands access over by hand), `supports_early_admission_hold` (whether a grant can be held ahead of a pass window), `upgrades_from` (the kind of the same connector a place of this kind can be an in-place upgrade of, or null) and `plan_kinds` (the shapes of plan a place can be sold under: `one_time`, `recurring`, `pass`, `pass_series`). A resource's `kind` on the Resources endpoints is `<key>:<kind>`.
      - unknown
    - `capabilities` string[], required: The port families the connector implements: `messaging`, `broadcasts`, `access_control`, `early_admission_hold`, `support_relay`, `native_payments`, `portal_login`, `creator_registration`, `management_surface`, `recovery_probes`, `recovery_standby_installations`, `recovery_resource_standby`, `recovery_mirror`, `recovery_identity_relink`.
    - `messaging` object, nullable, required: The limits every message is checked against; null on a roadmap card.
      - `max_length` integer, required: The longest message body the platform delivers.
      - `buttons_per_row` integer, required: How many buttons a keyboard row may hold.
      - `max_buttons` integer, required: How many buttons a message may carry in total.
      - `callback_data_bytes` integer, required: How many bytes a button's callback payload may hold.
      - `supports_underline` boolean, required: Whether underlined text renders.
      - `supports_spoiler` boolean, required: Whether spoiler text renders.
      - `supports_files` boolean, required: Whether files can be attached.
    - `pacing` object, nullable, required: The rate every bulk send is paced at; null on a roadmap card.
      - `min_interval_microseconds` integer, required: The shortest gap between two sends.
      - `burst` integer, required: How many sends may go out before the gap applies.
      - `per_recipient_interval_microseconds` integer, required: The shortest gap between two sends to the same recipient.
    - `management_commands` string[], required: The core commands the connector's in-chat surface renders, such as `plan_create` or `broadcast`.
    - `missing_commands` string[], required: The core commands the in-chat surface does not render; the Connectors tab shows the gaps from these.
    - `relay_modes` string[], required: How support conversations can be relayed on the connector, such as `owner_dm` or `forum_group`.
    - `recovery` object, nullable, required: Which Disaster Recovery facets the connector implements; null on a roadmap card.
      - `probes` boolean, required: Whether the connector answers health probes.
      - `standby_installations` boolean, required: Whether a spare installation can be kept ready.
      - `resource_standby` boolean, required: Whether a spare place can be kept ready for a resource.
      - `mirror` boolean, required: Whether a standby can be mirrored from the live place.
      - `identity_relink` boolean, required: Whether a creator's account can be relinked after a loss.
    - `install_fields` unknown[], required: The declarative connect form, in order. Each field carries `name`, `type` (`text`, `secret`, `select`, `toggle`, `instructions`, `link`), a translated `label` and `help`, `required`, the validation `rules`, `options` for a select, a default `value`, the numbered walkthrough `steps` (with `:app` and `:button` placeholders for the app's name and the submit button's label) and `links` naming the text a renderer turns into a link.
      - unknown
    - `settings_fields` unknown[], required: The declarative settings form, in the same shape as `install_fields`; its field names are the keys the settings endpoint accepts.
      - unknown

## Other responses

- `401`: `AUTHENTICATION_REQUIRED`: the request carries no bearer token, or one that is revoked, malformed, or minted for another environment (an `sbt_test_` token on production).
- `403`: `TOKEN_MISSING_ABILITY`: the token is valid but does not carry the ability this endpoint requires; `error.context.required_ability` names the one to grant. An endpoint that also checks who owns a row or which tier the account is on answers `FORBIDDEN`, `TEAM_TIER_REQUIRED` or `CONNECTOR_TIER_REQUIRED` with the same status, and says so in its own description.
- `404`: `RESOURCE_NOT_FOUND`: an id in the path names nothing the token can see. `TENANT_MISMATCH`: the project sits outside the token's `scope:project:` allow-list, or the token carries no team scope. Both answer 404 rather than 403 so that existence outside the token's scope cannot be inferred. On this endpoint: `RESOURCE_NOT_FOUND`: when nothing is known by that key; `error.context.connector` echoes it.
- `429`: `RATE_LIMITED`: the token has spent its 300 requests a minute or 10,000 an hour; `Retry-After` says when the next one is accepted.

---

[API](https://skmtc.dev/memberpass/apis/subscriby-rest-api.md) · [All operations](https://skmtc.dev/memberpass/apis/subscriby-rest-api/llms.txt) · [OpenAPI document](https://skmtc.dev/memberpass/apis/subscriby-rest-api/revisions/59c4df91d764?raw)
