Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.
openapi: 3.2.0
info:
title: Fluxito Platform Onboarding API
version: 3.0.120
tags:
- name: Onboarding
paths:
/api/onboarding/workspace:
post:
summary: Onboarding Workspace
description: 'Make sure the member has a workspace.
By default the project is named from their email domain (work address)
or their name. Creates one when they have none; renames their own
still-default "''s Project"; leaves any other name alone. Fills the
onboarding profile''s company / website when empty.
An agency (body ``agency: true``, choice ``manage_ads_for_clients``, or
profile org type ``agency``) instead names that project after the first
client (``client_name`` / ``client_website``). The agency''s own name is
stored on the profile, not as the project. ``agency: false`` keeps the
default naming for this call.
Call ``/api/onboarding/plan-request`` after this.'
operationId: onboarding_workspace_api_onboarding_workspace_post
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
tags:
- Onboarding
/api/onboarding/clients:
post:
summary: Onboarding Clients
description: 'Create one project per client. Optional during agency onboarding and
from the projects list.
Body: ``{"text": "Name, website"}`` (one client per line) or
``{"clients": [{"name", "website"}]}``. At most 20 rows. Each row is
reported on its own. ``check_create_project`` runs before every create;
once the plan cap is hit, the rest are ``plan_limit`` and nothing past
the cap is created.'
operationId: onboarding_clients_api_onboarding_clients_post
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
tags:
- Onboarding
/api/onboarding/plan-request:
post:
summary: Onboarding Plan Request
description: 'After onboarding names the workspace: if the user signed up for a paid
plan, grant it during the beta (``granted``), else file a plan request
for a super admin (``requested``). Clears the sign-up plan cookie either
way. See app.services.signup_plan.'
operationId: onboarding_plan_request_api_onboarding_plan_request_post
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
tags:
- Onboarding
/api/onboarding/preferences:
post:
summary: Save Onboarding Preferences
description: 'Persist onboarding Step 2 (role/monitors) and Step 4 (AI client) choices.
Body is a partial dict — any of ``role``, ``monitors``, ``ai_client``.
Surfaced later in Profile -> "How Flux briefs you".'
operationId: save_onboarding_preferences_api_onboarding_preferences_post
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
tags:
- Onboarding
/api/onboarding/health-check:
get:
summary: Onboarding Health Check
description: 'Real "what does Flux know so far" summary for onboarding Step 5.
No fabricated findings — every line reflects data this project actually
has: connections made, tracking-plan coverage, and structural gaps.'
operationId: onboarding_health_check_api_onboarding_health_check_get
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
tags:
- Onboarding