Use the API
The base URL, the key, JSON in and out, dates and time zones, and examples in curl, JavaScript and Python.
Every endpoint lives under https://www.focus-crew.com/api/v1, takes and returns JSON, and acts as you: the same rules as the app apply — plan limits, shared projects, locked notes. Send your key on every request as Authorization: Bearer fc_live_…. Dates are YYYY-MM-DD calendar days; instants are ISO 8601 in UTC. Where “today” matters (habits, decks, focus stats) you can pass a timezone; your account’s zone is used when you do not.
Examples
curl -X POST https://www.focus-crew.com/api/v1/tasks \
-H "Authorization: Bearer fc_live_…" \
-H "Content-Type: application/json" \
-d '{ "title": "Call the dentist", "dueDate": "2026-10-28", "status": "soon" }'const response = await fetch('https://www.focus-crew.com/api/v1/tasks?status=now', {
headers: { Authorization: `Bearer ${process.env.FOCUSCREW_KEY}` },
})
const { tasks } = await response.json()import os, requests
headers = {"Authorization": f"Bearer {os.environ['FOCUSCREW_KEY']}"}
today = requests.get("https://www.focus-crew.com/api/v1/habits", headers=headers).json()
requests.post("https://www.focus-crew.com/api/v1/habits/<id>/log", headers=headers, json={"amount": 1})