A valid request URL is required to generate request examples{
"checklist": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"environment_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"active": true,
"dismissals": 123,
"hidden": 123,
"segment_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"unlocks_after": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"selectable": true,
"snooze_days": 7,
"hint_pending": "<string>",
"hint_done": "<string>",
"hint_locked": "<string>",
"created_by": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"steps": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"key": "<string>",
"title": "<string>",
"kind": "event",
"event_type": "<string>",
"feature_key": "<string>",
"action_url": "<string>",
"action_label": "<string>",
"hint_pending": "<string>",
"hint_done": "<string>",
"position": 123,
"sightings": 123,
"last_seen": "2023-11-07T05:31:56Z"
}
]
}
}{
"error": {
"code": "forbidden",
"message": "your role does not allow this action"
}
}{
"error": {
"code": "forbidden",
"message": "your role does not allow this action"
}
}{
"error": {
"code": "forbidden",
"message": "your role does not allow this action"
}
}{
"error": {
"code": "forbidden",
"message": "your role does not allow this action"
}
}Create an onboarding checklist
Requires engagement:manage. Names are unique per environment; a duplicate answers 409 checklist_exists.
active defaults to false: a checklist exists while its steps are being written, and creating one never starts measuring anybody. That matters more here than it does for a flag, because a checklist counts from the moment it is turned on — a fact that happened before it existed does not count. The bus is not an event store, so there is no history to replay, and a rule that applied to some steps and not others would produce a funnel whose two numbers cannot be compared.
segment_id is who it is for, or null for everybody, and it must name a segment of the same environment. It decides who is shown the checklist, not who is recorded against it: somebody who enters the audience next week does not start from zero having already done the work.
A valid request URL is required to generate request examples{
"checklist": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"environment_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"active": true,
"dismissals": 123,
"hidden": 123,
"segment_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"unlocks_after": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"selectable": true,
"snooze_days": 7,
"hint_pending": "<string>",
"hint_done": "<string>",
"hint_locked": "<string>",
"created_by": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"steps": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"key": "<string>",
"title": "<string>",
"kind": "event",
"event_type": "<string>",
"feature_key": "<string>",
"action_url": "<string>",
"action_label": "<string>",
"hint_pending": "<string>",
"hint_done": "<string>",
"position": 123,
"sightings": 123,
"last_seen": "2023-11-07T05:31:56Z"
}
]
}
}{
"error": {
"code": "forbidden",
"message": "your role does not allow this action"
}
}{
"error": {
"code": "forbidden",
"message": "your role does not allow this action"
}
}{
"error": {
"code": "forbidden",
"message": "your role does not allow this action"
}
}{
"error": {
"code": "forbidden",
"message": "your role does not allow this action"
}
}Autorizações
A staff session token, uk_st_…. Minted by sign-up, sign-in or the two-factor exchange. Only a 401 means it is spent; not_a_member (403) is about the organization named in X-Organization-Id and leaves the token good for the others.
Cabeçalhos
The organization the caller is acting on — the org_… code that appears in the panel URL. It identifies; the membership JOIN is what authorizes, so a forged code reads nothing: the answer is not_a_member (403), which does not mean the session is over. Absent, the session's default organization answers, or — if that membership was revoked while the session was open — any other one the caller still holds.
Parâmetros de consulta
Which environment to act in. A view parameter, valid only on the staff surface — a machine credential never chooses its environment, it is resolved from the key.
live, test Corpo
120The checklist this one waits on. null clears it. Same environment, and a cycle is a 400.
Whether this one is a choice the person makes rather than a decision the segment makes for them.
How many days a close holds for. After that the checklist comes back.
0 means a close lasts forever — the right value for a checklist that really is a one-time offer, and the behaviour every checklist had before this field existed.
Seven by default, because pressing X on a setup guide almost never means "never help me again"; it means "not now". Changing this never moves a snooze already running: the end is computed when somebody closes the card and stored, so the promise made to that person is the one that is kept.
0 <= x <= 365What it says on hover while it is NOT done — a reason or an instruction the title has no room for.
Two texts and not one because the same line means different things before and after: pending, the useful sentence is an instruction; done, an instruction is noise and what is useful is what it bought. A single field would force a sentence that is wrong half the time.
200What it says on hover once it IS done. Null is the common case and reads correctly — nothing on hover about a thing somebody already did.
200What the heading says on hover while the checklist is LOCKED — the third state a heading has and a step does not.
The widget already shows a padlock and the name of what it waits on, and a name is a door rather than a reason. This is the reason.
200Resposta
The checklist, with no steps yet.
An onboarding list, aimed at a segment and never at a filter of its own. It counts from the moment it is turned on: a fact that happened before it existed does not count, because the bus is not an event store and a rule that applied to some steps and not others would produce a funnel whose numbers cannot be compared.
Show child attributes
Show child attributes