---
title: "Get a connect session"
method: GET
path: "/api/v2/platform_connect_sessions/{session_id}"
tags: ["Platform connect"]
---

# Get a connect session

`GET /api/v2/platform_connect_sessions/{session_id}`

Poll a session's status. `connected_organization_id` appears once the company completes the flow. The one-time code itself is never returned here — it only rides the redirect.

## Path parameters

- `session_id` string, required

## Response `200`

The session.

- object
  - `id` string — Session id (`pcs_…`). Use it to poll status and exchange the code.
  - `object` string
  - `status` 'pending' | 'bound' | 'completed' | 'claimed' | 'expired' — `pending` → the company hasn't finished the hosted flow. `bound` → the company picked an organization but hasn't confirmed yet. `completed` → the code was issued and is ready to exchange. `claimed` → you already exchanged it. `expired` → the link lapsed.
  - `return_url` string
  - `state` string, nullable — Your opaque passthrough value, echoed on the final redirect.
  - `sandbox` boolean — Deprecated spelling of `test_mode`.
  - `test_mode` boolean — Inherited from the credential that created the session.
  - `connected_organization_id` string, nullable — The connected organization, present once the company completes the flow.
  - `created_at` string, date-time
  - `completed_at` string, date-time, nullable
  - `expires_at` string, date-time — The hosted link expires 60 minutes after creation.

## Other responses

- `400` — Authenticated with an API key instead of client credentials (`client_credentials_required`).
- `401` — Missing or invalid bearer token.
- `404` — Unknown session (or it belongs to another organization).

---

[API](https://skmtc.dev/agentcard/apis/agentcard-api.md) · [All operations](https://skmtc.dev/agentcard/apis/agentcard-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/agentcard/agentcard-api/revisions/638d12c8303f/schema)
