connections

POST /v1/connections/{provider}/{connectionId}/probe

Re-test a stored credential, one row per permission.

Všechny koncové body connections

Všechny dokumenty pro vývojáře

Autentizace

Zašlete API klíč jako nosný token (bearer token). Klíč musí mít oprávnění connections.manage; klíč bez něj je odmítnut s kódem 403, nikoli 404.

Tento koncový bod nevyžaduje žádné ID organizace. Váš klíč již identifikuje organizaci, ke které patří, a odpověď je na ni omezena.

Vyzvednout

Nahraďte cokoli v závorkách vlastními hodnotami a zástupný symbol klíče klíčem z vašeho řídicího panelu.

curl -X POST https://api.zinndigital.com/v1/connections/{provider}/{connectionId}/probe \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -d '{  }'

Přihlášeni? Konzole API ve vašem dashboardu automaticky doplní vaše skutečné ID organizace i váš vlastní klíč a odešle požadavek na živé API, abyste viděli reálnou odpověď. Otevřete tento koncový bod v konzoli API

Podrobnosti

Exercises every permission we need against the provider using the credential already stored for this connection, and returns one row per permission. This is the "retest" half of add-and-test: the customer's fix happens in their vendor's console — they tick the missing permission at Cloudflare — so there is nothing to re-paste and the stored credential is used. ⛔ It does not ask the credential to describe itself. A least-privilege token cannot enumerate its own permissions, which is how a token missing DNS edit entirely came to be displayed as "works, we will check on first use". Every check here is a real, well-formed call, and a write permission is proved by writing — a throwaway DNS record created and immediately deleted, or a zone setting written back to the value just read. Each row is pass, fail or unknown, and the third is not a nicety: unknown is the honest answer when we could not reach the question — no zone on the account yet, the vendor rate-limiting us, or a well-formed request refused on its content. ⛔ A client that renders unknown as a tick has reintroduced the defect this endpoint exists to remove. The result is stored against the connection with the time it was taken, and returned with checked_at. It is a measurement, not a state — the customer can revoke a permission at their vendor a second later and nothing here will know — so any surface showing it must show its age. Requires connections.manage.

Parametry

NázevTypPožadovánoCo to je
provider (path)ConnectionProviderAnoThe third-party provider whose connections are addressed.
connectionId (path)UuidAnoThe MCP connection's id.

Tělo požadavku

NázevTypPožadovánoCo to je
zone_hintstringNeThe domain to test the zone-scoped permissions against. Optional — see ConnectTokenRequest.zone_hint.

Odpověď

NázevTypPožadovánoCo to je
credential_validbooleanAnoA statement about the credential, not about the permissions. false means the provider rejected it outright, in which case the rows are not meaningful and the screen must say…
usablebooleanAnoWhether we may store and use this credential: alive, with no proved absence of anything required. ⛔ Deliberately not "every row passed" — a brand-new account with no zone on…
checksPermissionCheck[]AnoOne row per permission, in a stable catalogue order rather than the order the checks happened to finish in — a checklist whose rows reshuffle between two retests looks broken to…
missingstring[]AnoRequired permissions the provider proved are absent. Not the unknowns.
unverifiedstring[]AnoPermissions we could not determine either way. The honest amber set.
account_refstringAnoThe account or zone the provider reported — discovered, never assumed.
detailstringAnoAn overall explanation, used mainly for a rejected credential.
checked_atobjectAnoWhen this was taken. ⛔ Never render the report without it: a checklist with no date on it is indistinguishable from a live one and will be read as live, when in fact the customer…

Chyby, které může tento koncový bod vrátit

401 · 403 · 404 · 422 · 429 · 503