---
title: "Fast (~250 ms) first pass of the website and app safety checks"
method: POST
path: "/user/fast-safety-check"
tags: ["user"]
---

# Fast (~250 ms) first pass of the website and app safety checks

`POST /user/fast-safety-check`

## Request

- Base URL: `https://api.focusbear.io` (the document declares no server; this is the origin it was published from)
- URL: `https://api.focusbear.io/user/fast-safety-check`
- Auth: HTTP bearer

Send the same body as /user/is-url-safe-to-use (target "url") or /user/is-app-safe-to-use (target "app"). allow=true: let the user through without the full check. allow=false: blur and call the full check, which decides and gives the reason. Any failure here returns allow=false, so the full check stays the fallback.

## Request body

- FastSafetyCheckDto
  - `intention` string, required
  - `justificationForThisUrl` string
  - `justification` string
  - `extraJustificationForThisSite` string
  - `lastFiveJustificationsInThisFocusSession` string[]
  - `class_session_id` string, uuid
  - `justificationForThisSpecificApp` string
  - `target` 'url' | 'app', required: Whether the fields describe a website or an app
  - `url` string, required
  - `tab_title` string, required
  - `meta_description` string, required
  - `focus_mode` string, required
  - `language` object, required
  - `currentTaskInToDoPlayer` string
  - `task_must_align_to_focus_intention` boolean
  - `current_tasks` CurrentTaskDto[]
    - `task_name` string, required
    - `task_id` string, uuid, required
  - `check_in_conversation` CheckInTurnDto[]
    - `text` string, required
    - `role` 'user' | 'assistant', required
  - `focusMode` string, required
  - `appName` string, required

## Response `200`

- FastSafetyCheckResponseDto
  - `allow` boolean, required: true: allow now, no further check needed. false: blur and call the full check (/user/is-url-safe-to-use or /user/is-app-safe-to-use) for the decision and the reason to show.
  - `score` number, required: 0–1 allow score from the gate; for diagnostics only
  - `source` 'assistive_technology' | 'jev' | 'unavailable' | 'skipped', required

---

[API](https://skmtc.dev/focusbear/apis/focusbear-api.md) - [All operations](https://skmtc.dev/focusbear/apis/focusbear-api/llms.txt) - [OpenAPI document](https://skmtc.dev/focusbear/apis/focusbear-api/revisions/3a83a3b9a811?raw)
