---
title: "Complete Onboarding Step"
method: POST
path: "/api/v1/account/onboarding/{step_id}/complete"
tags: ["Account Management"]
---

# Complete Onboarding Step

`POST /api/v1/account/onboarding/{step_id}/complete`

## Request

- Base URL: `https://app.perlucem.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://app.perlucem.ai/api/v1/account/onboarding/{step_id}/complete`
- Auth: HTTP bearer

Idempotently mark an onboarding step completed or skipped.

404 for step_ids not in the registry, 409 for flag-disabled steps,
400 for invalid status. Repeat POSTs return 200 (single row kept).
Writes a user_activity_log row alongside (fail-soft).

## Path parameters

- `step_id` string, required

## Request body

- OnboardingStepCompleteRequest: Request to mark an onboarding step completed or skipped.
  - `status` string
  - `metadata` object, nullable

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/perlucem/apis/perlucem-ai-backend.md) · [All operations](https://skmtc.dev/perlucem/apis/perlucem-ai-backend/llms.txt) · [OpenAPI document](https://skmtc.dev/perlucem/apis/perlucem-ai-backend/revisions/e1830fb27394?raw)
