Developer API

Build your own interface to Queuevia.

Use personal API keys to create tasks, manage projects, read stats, automate reviews, connect webhooks, and capture raw ideas into your GTD system.

POST /api/v1/tasks
curl -X POST https://queuevia.app/api/v1/tasks \
  -H "X-API-Key: qv_live_..." \
  -H "Content-Type: application/json" \
  -d '{"title":"Follow up with Sarah","status":"next","today":true}'
Personal keys

Keys are shown once and stored hashed. Rotate or revoke them from Profile → Developer API.

Scoped access

Grant only what each integration needs: read, write, AI capture, stats, reviews, or webhooks.

Audited + rate limited

Each key has per-minute limits and API actions are recorded for inspection.

Quickstart

Three steps to your first request.

1
Create an API key
Log in, open Profile → Developer API, choose scopes, and copy the key once.
2
Send the key
Use `X-API-Key` or `Authorization: Bearer` on every `/api/v1` request.
3
Build safely
Use the narrowest scopes, rotate keys regularly, and revoke keys no longer in use.
Endpoint coverage

Most of Queuevia, from your code.

Start building
GET/api/v1/meInspect the API key owner and scopes
GET/api/v1/tasksList Inbox, Today, Next, Waiting, Someday, or filtered tasks
POST/api/v1/tasksCreate tasks from automations, CLIs, or other apps
PATCH/api/v1/tasks/{task_id}Update status, Today star, project, context, due dates, notes
DELETE/api/v1/tasks/{task_id}Delete a task
GET/api/v1/projectsList projects
POST/api/v1/projectsCreate projects
PATCH/api/v1/projects/{project_id}Update project metadata and review settings
DELETE/api/v1/projects/{project_id}Delete or unfile project tasks
GET/api/v1/contactsList contacts used for Waiting For
POST/api/v1/contactsCreate contacts
GET/api/v1/workspacesList workspaces available to the key owner
GET/api/v1/reviews/projects/queueFetch due project-review queue
POST/api/v1/reviews/projects/{project_id}/mark-reviewedMark a project reviewed
GET/api/v1/statsRead personal productivity stats
POST/api/v1/ai/captureTurn raw text into actionable Queuevia items
GET/api/v1/webhooksList configured webhooks
POST/api/v1/webhooksCreate outbound webhooks
Scopes

Grant exactly what an app needs.

Use read-only keys for dashboards, write-scoped keys for automations, and combined scopes for trusted internal tools.

tasks:readtasks:writeprojects:readprojects:writecontacts:readcontacts:writeworkspaces:readworkspaces:writereviews:readreviews:writestats:readai:capturewebhooks:readwebhooks:write
MCP connector

Plug Queuevia into ChatGPT.

Queuevia ships a hosted Model Context Protocol server over Streamable HTTP, so an AI executive assistant can read your lists and file commitments without ever seeing your credentials. Deletion is deliberately not exposed.

Connector URL
https://queuevia.app/api/mcp
Health check
https://queuevia.app/api/mcp/health
  1. 1Create a scoped API key in Queuevia: Profile → Developer API.
  2. 2In ChatGPT open Settings → Apps & Connectors → Advanced settings and turn on Developer mode.
  3. 3Choose Create, name it Queuevia and paste the connector URL above.
  4. 4Set authentication to Token / API key and paste your qv_live_… key. ChatGPT stores it server-side; the model never sees it.
  5. 5Ask the assistant to run queuevia_get_me to confirm the connection.

Recommended least-privilege scopes: tasks:read tasks:write projects:read contacts:read contacts:write workspaces:read

queuevia_get_meConnection health check: account, key label and granted scopes
queuevia_list_tasksRead any GTD list: inbox, today, next, waiting, someday, overdue, upcoming
queuevia_create_taskCreate a task or delegated follow-up, duplicate-safe
queuevia_update_taskChange status, Today star, due date, project, context or notes
queuevia_complete_taskMark an item complete with safe completion semantics
queuevia_list_projectsResolve a project name to an id before filing work
queuevia_list_contactsResolve a person to a contact for Waiting For
queuevia_create_contactCreate a contact, with near-duplicate protection
queuevia_list_workspacesList workspaces available to the key owner
queuevia_get_todayToday's commitments for the morning briefing
queuevia_get_waiting_forEverything you are waiting on, optionally by person
queuevia_get_overdueOpen items whose due date has passed
queuevia_get_briefingToday, waiting, overdue, upcoming and projects at risk in one call
queuevia_create_waiting_forOne-step delegated follow-up with contact resolution
Built-in safety: no delete tools, duplicate protection via external_ref plus person/title/due-date matching, ambiguous contacts return candidates instead of guessing, and every write is scope-checked, rate limited and written to your API audit log.
Full visibility: every connector read and change is listed in Profile → Developer API → Connector activity, where any key can be revoked on the spot. Prefer push over polling? Register a webhook for task.created, task.updated and task.completed in Profile → Webhooks (AI assistant preset).

Ready to connect Queuevia?

Create a scoped key and build the workflow your team already wanted.