POST /projects
Request
- Base URLhttps://api.focusbear.io (the document declares no server; this is the origin it was published from)
- AuthHTTP bearer
Request body
Outcome significance, 1..10. Omitted/null means unrated; independent of importance (1..4).
Open per-project bag; metadata.tags is the reserved, validated, queryable key.
Stored unencrypted so the server can index and filter it — do not put anything sensitive here. Capped at 8KB serialized.
Response
For native projects: the project UUID. For synced (ClickUp) projects: the focus_mode_tags.id when a tag exists, otherwise the synced_projects.id. Use synced_project_id to reliably identify the synced project record regardless of tag presence.
Not normalized to synced_project_id as mobile/web clients use this id for GET /projects/:id lookups and routing. A swap to synced_project_id requires a coordinated client release.
One emoji character, or null when the project has no icon yet — which is what a clear returns, and what a project awaiting generation carries. This is the schema clients decode, so the nullability belongs here rather than only in the tests that assert it.
Stored integration platform for synced projects; null when the legacy source is unknown. Read only.
Outcome significance on the 1..10 wire scale; null for unrated or synced projects.
Lifecycle state: active (default), completed, or archived.
Open per-project bag; metadata.tags holds the project's tags, lower-cased. Null when unset, and always null for synced projects, which have no row in projects to carry it.
Changes
No recorded changes to this operation across all 1 revision of this API.