# Doozy - A to-do list that works like you do > The more you doozy, the less you do. Doozy is an AI-powered productivity app that captures your thoughts, organizes them automatically, and executes tasks on your behalf. Just talk, and Doozy handles the rest. ## For agents This API is built to be used by programs, and it is built so you can find your way without being told anything in advance. If someone asked you to use Doozy, you need nothing from them except a key. Everything a person can do in the Doozy app is available here. Read the "Doozy API" section below, then fetch the specification, and you will have the whole contract. If a call fails, read the error rather than guessing. Every failure carries a `code` you can branch on, a `docsUrl` explaining that specific code, and a `specUrl` pointing at the full specification, so a wrong turn always tells you how to get back. A 404 lists where every real path is written down. A 403 names the scope the key is missing rather than implying the endpoint is gone. ## Doozy API A versioned REST API over the same primitives the app uses: captures, todos, chats and agents. Base URL: `https://api.usedoozy.com/api/v1` Three requests orient you completely. The first two need no credential: - `GET https://api.usedoozy.com/api/v1/` returns the service version and points at this spec and these docs. - `GET https://api.usedoozy.com/api/v1/openapi.json` returns the full OpenAPI 3.1 document: every path, parameter, response shape and error code. It is generated from the running code, so it matches what the server does. - `GET https://api.usedoozy.com/api/v1/me` returns the workspace a key opens and, in `allowedOperations`, the exact list of operation ids that key may call. Read this before deciding an endpoint is unavailable, because a 403 usually means the key was minted without the scope rather than that the feature is missing. Authentication is a bearer token: `Authorization: Bearer doozy_sk_...`. Keys are created by a person in Doozy workspace settings, are scoped, and are shown once. A key belongs to one workspace, so the workspace is implied by the key and is never a parameter you pass. Scopes are `:` over `todos`, `chats`, `agents` and `captures`. `captures:read` is deliberately separate: capture content includes transcripts of what people said, so a key can be given the ability to create and modify captures while remaining unable to read them. Conventions that hold across every endpoint: cursor pagination on all lists, one error shape with a machine-readable `code` and a `docsUrl`, and `Idempotency-Key` on creates so a retry cannot produce a second record. ## API documentation - [API overview](https://usedoozy.com/docs/api): what the API covers, how it is versioned, and where to go next. - [Quickstart](https://usedoozy.com/docs/api/quickstart): create a key and make a first successful call. - [Authentication and keys](https://usedoozy.com/docs/api/authentication): how keys work, how they are stored, and how to revoke one. - [Scopes](https://usedoozy.com/docs/api/scopes): what each scope grants, and what a key holding it can read. - [Pagination](https://usedoozy.com/docs/api/pagination): cursors, page sizes, and how to walk a list to the end. - [Errors](https://usedoozy.com/docs/api/errors): every error code, what causes it, and what to do about it. - [Working with agents](https://usedoozy.com/docs/api/agent-work): assigning a todo to an agent, running it, and reading the result. - [Recipes](https://usedoozy.com/docs/api/recipes): complete worked examples for common jobs. - [API reference](https://usedoozy.com/docs/api/reference): every endpoint, generated from the specification. ## Specification - [OpenAPI 3.1 document](https://usedoozy.com/openapi.json): the same document the API serves, at a stable public URL with no credential required. Point a code generator or an HTTP client at this. ## Links - Website: https://usedoozy.com - App: https://usedoozy.com/login ## Contact - Support: support@dcouple.ai