Reconnect an SDK patient connection
Starts a connection lifecycle recovery flow for an expired, revoked, or action-required SDK connection. Active and pending connections are not reconnected.
/api/sdk/v1/connections/{connectionId}:reconnectStarts a connection lifecycle recovery flow for an expired, revoked, or action-required SDK connection. Active and pending connections are not reconnected.
Authorization
platformApiKey CuraeAI Platform API key using the format Bearer . Keys are opaque credentials such as cae_live_..., not JWTs.
In: header
Path Parameters
Header Parameters
Required idempotency key for safe connection-reconnect retries.
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/problem+json
curl -X POST "https://example.com/api/sdk/v1/connections/497f6eca-6276-4993-bfeb-53cbbbba6f08:reconnect" \ -H "Idempotency-Key: string" \ -H "Content-Type: application/json" \ -d '{}'{ "connection": { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "customerAccountId": "d8c60791-7301-441c-98e8-5bea9a162d9b", "appUserId": "string", "status": "PENDING", "dataPackages": [ "clinical_summary" ], "authorizedAt": "2019-08-24T14:15:22Z", "expiresAt": "2019-08-24T14:15:22Z", "revokedAt": "2019-08-24T14:15:22Z", "actionRequiredReason": "string", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" }, "previousConnectionId": "38b1e704-2bb7-4d51-8125-6969ed2cfce7", "nextAction": { "type": "open_webview", "url": "http://example.com", "expiresAt": "2019-08-24T14:15:22Z" }}{ "type": "string", "title": "string", "status": 0, "detail": "string", "instance": "string", "code": "string", "details": {}, "retryable": true}Revoke an SDK connection POST
Monotonically revokes an app-owned SDK connection and terminates connection-authorized access. Internal enforcement artifacts are not exposed on the public API.
Initiate a Curae Connect entry-flow session (Path A / B / C selection) POST
Mints a fresh CuraeConnectSession for the SDK app's (customerAccountId, appUserId) coordinate. Path selection is deterministic from the bound `LimitedAccountAppBinding`: existing-ACTIVE → Path A (`EXISTING_ACTIVE_HANDOFF`, handoff lands in-tx), no-binding + `preferSignup: true` → Path B (`NEW_ACTIVE_SIGNUP_HANDOFF`, requires `completeHandoff`), else → Path C (`SILENT_LIMITED`, reuses or provisions a LIMITED user). The route requires `connection:write` scope and an `Idempotency-Key` (retries replay the original response verbatim). Rate-limited at 10 req / customer-account / appUserId / minute on top of the standard Platform API buckets.