# completeOnboarding

Source: /openapi/thomas-federated.openapi.json

## Operation

| Method | URL |
|---|---|
| POST | https://api.thomas.co/v1/onboarding/complete |

| Field | Value |
|---|---|
| operationId | completeOnboarding |
| method | POST |
| server | https://api.thomas.co/v1 |
| path | /onboarding/complete |
| tags | `Onboarding` |
| summary | Complete platform onboarding |
| badges | `{"name":"Self Access"}` |

## Request Parameters

None.

## Request Body

| Content type | Schema refs |
|---|---|
| application/json | #/components/schemas/CompleteOnboardingRequestDto |

## Responses

| Status | Description | Schema refs |
|---|---|---|
| 200 | Onboarding completed (or already completed — idempotent) | #/components/schemas/CompleteOnboardingResponseDto |
| 401 | Invalid or missing authentication token (AUTH_TOKEN_INVALID) | #/components/schemas/ApiErrorResponseDto |
| 403 | Global access denied (IDENTITY_GLOBAL_ACCESS_DENIED) | #/components/schemas/ApiErrorResponseDto |
| 404 | Account not found (IDENTITY_ACCOUNT_NOT_FOUND) | #/components/schemas/ApiErrorResponseDto |

## Artifact Examples

### Response 401 example

```json
{
  "statusCode": 401,
  "message": "Invalid or missing authentication token",
  "error": "AUTH_TOKEN_INVALID"
}
```

### Response 403 example

```json
{
  "statusCode": 403,
  "message": "Global access denied",
  "error": "IDENTITY_GLOBAL_ACCESS_DENIED"
}
```

### Response 404 example

```json
{
  "statusCode": 404,
  "message": "Account not found",
  "error": "IDENTITY_ACCOUNT_NOT_FOUND"
}
```
