> ## Documentation Index
> Fetch the complete documentation index at: https://docs.60db.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Accept invite

> Invitee: accept a pending Flow seat invite

Turns the pending seat into an active one. Then call [Get Flow plan](/api-reference/flow/get-plan) again and switch to `workspace_id` to dictate for free.

## Request

### Headers

<ParamField header="Authorization" type="string" required>
  `Bearer <login token>` of the signed-in 60db user. API keys (`sk_...`) are not accepted for Flow.
</ParamField>

<ParamField header="X-60db-Client" type="string">
  `flow/<app-version>`, e.g. `flow/1.5.0` (send it from the 60db Flow app)
</ParamField>

### Path Parameters

<ParamField path="license_id" type="string" required>
  Licence id (`license_id` from [Get Flow plan](/api-reference/flow/get-plan))
</ParamField>

## Response

<ResponseField name="data.license_id" type="string">Licence id</ResponseField>
<ResponseField name="data.workspace_id" type="integer">Workspace where the seat works</ResponseField>
<ResponseField name="data.status" type="string">`active`</ResponseField>

## Errors

Errors use `{ "success": false, "message": "...", "error_code": "..." }`. Show `message` to the user.

| Status | `error_code` | Meaning |
| - | - | - |
| 404 | `INVITE_NOT_FOUND` | No pending invite: already accepted or declined, cancelled by the owner, or the licence is no longer active |

## Example

<RequestExample>
  ```bash cURL theme={null}
  curl -X POST "https://api.60db.ai/60db/license/LICENSE_ID/seats/accept" \
    -H "Authorization: Bearer USER_JWT" \
    -H "X-60db-Client: flow/1.5.0"
  ```
</RequestExample>

<ResponseExample>
  ```json Response theme={null}
  {
    "success": true,
    "data": { "license_id": "2f1c9a4e-6b7d-4c1e-9f0a-1d2e3f4a5b6c", "workspace_id": 24, "status": "active" }
  }
  ```
</ResponseExample>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.