---
title: "Answer the first-sign-in questions"
method: POST
path: "/v1/account/about-you"
tags: ["account"]
---

# Answer the first-sign-in questions

`POST /v1/account/about-you`

## Request

- Base URL: `https://api.brixsignage.com`
- URL: `https://api.brixsignage.com/v1/account/about-you`
- Auth: HTTP bearer

Slide 1 of a new workspace's first sign-in (2026-10-14): the expected screen count and how they heard about us (both required; heard-from not asked of a partner's customer), plus a real phone for a Google/Microsoft sign-up in the US or Canada. Stores prefs.aboutYouAt, prefs.expectedScreens and the tier, puts the phone on the person and the Close + CRM contacts. billing.edit on the workspace root.

## Request body

- object
  - `screenCount` integer, required: How many screens the workspace expects. Sets `prefs.expectedScreens` and the tier.
  - `heardFrom` string: How they heard about Brix. Required unless the workspace belongs to a partner.
  - `aiPrompt` string: The question they asked an AI assistant, when `heardFrom` names one.
  - `phone` string: Required for a Google or Microsoft sign-up in the US or Canada (`phoneRequired` on GET /v1/account/onboarding).

## Response `200`

Success.

- object
  - `data` object, required
    - `prefs` WorkspacePrefs, required: Workspace preferences. Every key is present (defaults filled in).
      - `timeFormat` '12h' | '24h', required
      - `weekStart` 'mon' | 'sun', required
      - `dateFormat` 'mdy' | 'dmy' | 'ymd', required
      - `tempUnits` 'f' | 'c', required
      - `timeZone` string, required: IANA time zone. Screens without their own zone use it, and so do schedules timed by the workspace.
      - `language` string, required: BCP 47 language tag.
      - `multinational` boolean, required: Shows the per-location and per-screen language settings.
      - `newLocationsPayFirst` boolean, required: New locations pay for themselves before going live: each adds its own card, and its screens show a hold card (not billed to the account) until then. Default false. Turning it on needs Brix billing with a running plan (409 otherwise).
      - `navExtras` string[], required: Console pages switched on that the workspace size hides by default.
      - `appBranding` object, required: The look of the on-screen apps.
        - `accent` string, required
        - `accent2` string, required
        - `theme` 'dark' | 'light', required
        - `backdrop` 'brand' | 'wash' | 'plain' | 'aurora' | 'dots' | 'grid' | 'solid', required
        - `intensity` number, required
      - `audio` object, required: Default screen volume and a master mute.
        - `volume` number, required: 0–100.
        - `muted` boolean, required
      - `brand` object, required
        - `companyName` string, required
        - `logoUrl` string, required
      - `requireAltText` boolean, required
      - `showScreenLogo` boolean, required
      - `keepTvOnInput` boolean, required: Default for "Keep the TV on this input" on screens that have not set their own.
      - `standbyContentKind` string, nullable, required: What a screen with nothing to play shows; null = the default card.
      - `standbyContentId` string, nullable, required
      - `tier` 'simple' | 'team' | 'enterprise', required: Workspace size. It sets console defaults, not access.
      - `industry` string, nullable, required
      - `onboardingCompletedAt` string, nullable, required: ISO-8601 timestamp (UTC).
      - `setupStep` string, nullable, required: Walkthrough position (`s1`…`s5`, `l1`…`l6`, `done`).
      - `welcomeDeclinedAt` string, nullable, required: ISO-8601 timestamp (UTC).
      - `aboutYouDue` boolean: The workspace is asked the first-sign-in questions (workspaces created from 2026-10-14).
      - `aboutYouAt` string, nullable: ISO-8601 timestamp (UTC).
      - `expectedScreens` integer, nullable: How many screens the owner said they expect.
      - `orgNameSet` boolean, required
      - `tiers` integer[], required: Location tree levels in use.
      - `tierLabels` object, required: Custom names for the location tree levels.
      - `requireTwoFactor` boolean, required
      - `requireSso` boolean, required
      - `requireSsoPending` boolean, required: Single sign-on was required, and turns on after the first sign-in through the connection.
      - `requireSsoPendingSince` string, nullable, required: ISO-8601 timestamp (UTC).
      - `ai` object, required
        - `enabled` boolean, required
        - `features` object, required: Per feature (`tags`, `alt-text`, `moderation`, `transcription`, `translation`, `focal-region`, `embedding`); an absent feature follows `enabled`.
        - `dailyCallLimit` integer, nullable, required
        - `redactPersonalData` boolean, required
      - `retention` object, required: Days kept per stream, only for the streams the workspace has set. An absent stream uses the platform window.
        - `offline` number
        - `screenshots` number
        - `playback` number
        - `deviceLogs` number
        - `vitals` number
        - `replays` number
        - `aiEvents` number
      - `warehouse` object, required: Data warehouse feed. Set by Brix; not writable here.
        - `enabled` boolean, required
        - `bucketBinding` string, required: Set by Brix when the data warehouse feed is provisioned.
        - `tables` string[], required
        - `lookbackDays` integer, required
      - `supportAccess` SupportAccessPolicy, required
        - `mode` 'open' | 'notify' | 'approve', required: `open`: Brix support may open the workspace. `notify`: it may, and the owners are emailed. `approve`: a person here must approve each request.
        - `grantMinutes` integer, required: How long an approval lasts.
        - `requestTtlMinutes` integer, required: How long a request waits for an answer before it expires.
      - `kioskHasGlobalPin` boolean, required: A workspace Screen Lock PIN is set. The PIN and its hash are never returned.

## Other responses

- `401`: Missing, expired or revoked bearer token.
- `403`: You do not hold the permission for the whole workspace (a grant at one location is not enough).
- `422`: `screen_count_required`, `heard_from_required`, `phone_required` or `phone_invalid`.
- `5XX`: Server error. The body carries a `requestId` to quote to support.

---

[API](https://skmtc.dev/brixsignage/apis/brix-api.md) · [All operations](https://skmtc.dev/brixsignage/apis/brix-api/llms.txt) · [OpenAPI document](https://skmtc.dev/brixsignage/apis/brix-api/revisions/02fd3665dc7d?raw)
