---
title: "Complete Tour"
method: POST
path: "/api/agents/tour-complete/{guide}"
tags: ["agents"]
---

# Complete Tour

`POST /api/agents/tour-complete/{guide}`

## Request

- Base URL: `https://api.parlel.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.parlel.com/api/agents/tour-complete/{guide}`
- Auth: none declared

Mark one onboarding guide as seen. Idempotent.

One endpoint for both finishing and skipping, because the product does not
care which happened: the only decision this state drives is "show it again?",
and after either the answer is no. Recording them separately would be data
nobody is going to act on.

404 on an unknown guide rather than a silent 200. A typo in a guide name would
otherwise return success while recording nothing, and the symptom — a tour that
reappears on every page load forever — points at the client, not at here.

The timestamp is only written once. A user who replays a guide later has not
become newer, and overwriting it would lose the one fact worth keeping: when
they first met the product.

## Path parameters

- `guide` string, required

## Headers

- `authorization` string, nullable

## Response `200`

Successful Response

- object

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/parlel/apis/parlel-api.md) · [All operations](https://skmtc.dev/parlel/apis/parlel-api/llms.txt) · [OpenAPI document](https://skmtc.dev/parlel/apis/parlel-api/revisions/4d41a8f5cfc9?raw)
