Check a connected account
Ask the provider whether a connected account still works, and record the answer on the secret’s health. The same call for both kinds: an API key is sent once, in the integration’s own header, to its one read-only check URL; a signed-in account is asked for from the connector service with a forced refresh, so the provider itself says whether the grant is still honoured. The credential is never returned. An account that does not work is an answer, not an error: the call answers 200 with health.status: needs_reauth and a reason, and the next dispatch that uses it fails before anything is sent. Only a check that could not be made is an error (CONNECTION_KEY_CHECK_FAILED or CONNECTION_PROVIDER_ERROR), and it leaves health unchanged. A secret you stored directly cannot be checked (400). Counts toward the same limit of 10 per minute per workspace as connect sessions. Anlyon also runs this check on its own, once a day per account and after a dispatch the provider answers 401.
/api/v2/connections/{secretName}/checkAuthorizationBearer token (Anlyon API key) · headerrequiredWorkspace API key sent as Authorization: Bearer <key>.
better-auth.session_tokenAPI key · cookierequiredBrowser session used by dashboard-only operations.
secretNamestringrequiredThe connected account, by its secret name.
X-Request-IdstringOptional caller correlation ID. Unsafe or oversized values are replaced.
Secret metadata returned; the value is never exposed.
successbooleanrequiredtruedataSecretrequiredSecret metadata. The encrypted value is never exposed by any API.
Show propertiesHide properties
idstringrequirednamestringrequireddescriptionstring | nullrequiredallowedHostsstring[] | nullrequiredHosts this secret may be sent to. Null means any public host.
allowedPlacementsstring[] | nullrequiredWhere in the request this secret may appear. Null means anywhere.
kindstringrequiredstatic holds a value you stored. connection is a connected account: its value is an access token fetched at dispatch, its hosts come from the integration, and it may only appear in a header. PUT cannot change a secret's kind.
staticconnectionconnectionobject | nullrequiredFor a signed-in account, which integration it is and whether it still works. status mirrors health.status, which is the one record of it for both kinds of connected account. Null for a static secret, including one connected with an API key.
Show propertiesHide properties
integrationIdstringrequiredstatusstringrequiredThe same value as health.status. Reconnect the account to use it again.
activeneeds_reauthhealthobject | nullrequiredWhether the connected account still works, whichever way it was connected. active, or needs_reauth with a reason once the provider refused the credential or the connector service could not refresh it. A dispatch that uses a needs_reauth account fails before anything is sent. Reconnect it with POST /api/v2/connections/{secretName}/reconnect. Null for a secret you stored directly, which Anlyon cannot check.
Show propertiesHide properties
statusstringrequiredactiveneeds_reauthcheckedAtstring<date-time> | nullrequiredWhen Anlyon last asked the provider whether the credential works. Null when it never has.
reasonstring | nullrequiredSet while status is needs_reauth. key_rejected: the provider refused the stored key. access_revoked: the provider no longer honours the signed-in account's grant. refresh_failed: the connector service could not refresh its token.
key_rejectedaccess_revokedrefresh_failednullintegrationIdstring | nullrequiredThe integration this secret was connected for, by signing in or with an API key. Null for a secret you stored directly. A secret connected with an API key is static with this set.
lastUsedAtstring<date-time> | nullrequiredcreatedAtstring<date-time>requiredupdatedAtstring<date-time>requiredBad Request - Invalid input data
successbooleanrequiredrequestIdstringrequiredCorrelation ID matching the X-Request-Id response header.
errorobjectrequiredShow propertiesHide properties
codestringmessagestringdetailsobjectUnauthorized - Invalid or missing API key
successbooleanrequiredrequestIdstringrequiredCorrelation ID matching the X-Request-Id response header.
errorobjectrequiredShow propertiesHide properties
codestringmessagestringdetailsobjectAuthenticated credential lacks the required scope or workspace access.
successbooleanrequiredrequestIdstringrequiredCorrelation ID matching the X-Request-Id response header.
errorobjectrequiredShow propertiesHide properties
codestringmessagestringdetailsobjectNot Found - Resource does not exist
successbooleanrequiredrequestIdstringrequiredCorrelation ID matching the X-Request-Id response header.
errorobjectrequiredShow propertiesHide properties
codestringmessagestringdetailsobjectToo Many Requests - Rate limit exceeded
successbooleanrequiredrequestIdstringrequiredCorrelation ID matching the X-Request-Id response header.
errorobjectrequiredShow propertiesHide properties
codestringmessagestringdetailsobjectThe account is signed in and connected accounts are not configured on this deployment (CONNECTIONS_UNAVAILABLE).
successbooleanrequiredrequestIdstringrequiredCorrelation ID matching the X-Request-Id response header.
errorobjectrequiredShow propertiesHide properties
codestringmessagestringdetailsobjectThe check could not be made (CONNECTION_KEY_CHECK_FAILED for a key, CONNECTION_PROVIDER_ERROR for a signed-in account). The status is unchanged.
successbooleanrequiredrequestIdstringrequiredCorrelation ID matching the X-Request-Id response header.
errorobjectrequiredShow propertiesHide properties
codestringmessagestringdetailsobject
