Build a reliable weekly brief
Pull tasks, dates, time blocks, priorities, tags, notes, and completion state into a dashboard, report, or agent context.
Planner API
Give an AI agent, script, or workflow structured access to the same tasks, groups, settings, and planning data already living in WeeklyPlanner.
A real plan, not a mock integration
Create a revocable key in WeeklyPlanner, connect a compatible agent, and let the workflow read or update the same plan you can inspect in the app.

The API is useful when a workflow needs to read or change a real plan, not merely export another copy of a to-do list.
Pull tasks, dates, time blocks, priorities, tags, notes, and completion state into a dashboard, report, or agent context.
Turn approved form submissions, messages, or workflow events into planner tasks with a date, group, priority, and time block.
Move selected tasks across dates or time blocks, update fields in batches, and preserve one shared source of truth.
Read planning statistics alongside completed and deferred tasks to create weekly reviews grounded in account data.
These are task-planning operations, not calendar-provider event sync. Every request works against the authenticated account's planner data.
List, filter, create, inspect, update, delete, reorder, and batch-change tasks, with dedicated recurring-series operations.
Read and maintain the names, colors, and ordering used to organize tasks across the planner.
Read or update planning preferences, locale, view settings, and selected personal planning context.
Read aggregate task statistics and the current subscription context for dashboards or agent decisions.
Start with one API key per connection and grant only the operations that workflow needs.
Create a key in Settings, save the plaintext value when it is shown, and send it in the Authorization header. Never put it in client-side code or prompts.
A reporting workflow can stay read-only. Add write scopes only for integrations that must create, move, edit, or delete planner data.
Use a separate key for every agent, script, or automation so one retired workflow can be revoked without interrupting the others.
The API authenticates the caller, checks required scopes, validates inputs, and applies the account's external API/MCP request limit.
Scopes are sourced from the same application constants used when keys are created in Settings.
tasks:readtasks:writegroups:readgroups:writestats:readsettings:readsettings:writeprofile:readprofile:writeREST API and MCP calls share the external request pool. Built-in AI turns are measured separately.
Choose the lightest connection that proves the workflow is valuable before maintaining a custom integration.
Ask for summaries and scheduling changes in natural language without creating or storing an external API key.
Explore the AI plannerConnect Claude or another stdio-compatible client with a published package and scoped key instead of writing REST calls.
Open the MCP guideFor a personal workflow with no repeated integration need, the visual weekly planner is simpler and cheaper to maintain.
Open the plannerUse a server-side environment or secret manager. The examples call the public v1 API directly with a scoped key.
Open Settings, create one key for this integration, and select the smallest read or write scope set.
Save the plaintext key immediately in the automation's server-side secret store. It is not a browser-safe credential.
List a narrow date range, confirm the response shape, then add write scopes and mutation calls only when required.
Filter by an inclusive date range. The response uses a top-level data field.
curl "https://weeklyplanner.cc/api/v1/tasks?date_from=2026-08-03&date_to=2026-08-09" \
-H "Authorization: Bearer wp_your_api_key" \
-H "Content-Type: application/json"A write call requires tasks:write and is subject to the account's normal product limits.
curl -X POST "https://weeklyplanner.cc/api/v1/tasks" \
-H "Authorization: Bearer wp_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"title": "Prepare weekly review",
"date": "2026-08-07",
"time_block": "evening",
"priority": "high"
}'The list below focuses on stable planning endpoints. Route-specific validation can return more precise 4xx codes than the common responses shown later.
Read and mutate individual tasks, apply batch updates, persist ordering, and manage a recurring series explicitly.
GET /api/v1/tasksPOST /api/v1/tasksGET|PATCH|DELETE /api/v1/tasks/:idPOST /api/v1/tasks/batchPOST /api/v1/tasks/reorderGET|PATCH|DELETE /api/v1/series/:idList and create groups, then inspect, edit, or delete one group.
GET|POST /api/v1/groupsGET|PATCH|DELETE /api/v1/groups/:idRead or update planner preferences and selected profile context.
GET|PATCH /api/v1/settingsGET|PATCH /api/v1/user/profileRead aggregate task statistics and the current subscription status.
GET /api/v1/statsGET /api/v1/subscription/statusSuccessful resource responses use a top-level data field. Errors include a machine-readable code and human-readable error message.
validation_failedThe query or JSON body failed schema or domain validation; inspect the optional details field.
unauthorizedThe Bearer credential is missing, invalid, expired, or no longer active.
missing_scopeThe key is valid but does not include the scope required by this operation.
not_foundThe requested account resource does not exist or is not visible to this caller.
rate_limit_exceededThe external request allowance is exhausted. Respect Retry-After when present instead of retrying in a tight loop.
rate_limit_unavailableThe atomic rate-limit reservation is temporarily unavailable, so the API fails closed and asks the client to retry later.
internal_errorAn unexpected server error occurred. Do not expose or log the API key while collecting diagnostics.