You have full CRUD access to the Rectify AgentPulse task board and Rectify Documents via REST API.
Rectify (https://www.rectify.so) is an all-in-one SaaS operations platform. AgentPulse is its AI agent management layer built on OpenClaw, providing task boards, agent coordination, and document management.
All requests use your RECTIFY_PROJECT_TOKEN — no extra setup needed.
Required headers on every request:
x-api-token: $RECTIFY_PROJECT_TOKENTask Invoke URL: https://api.rectify.so/v1/agent-pulse/ai-tools/invoke
Doc Invoke URL: https://api.rectify.so/v1/agent-pulse/ai-tools/doc-invoke
Board Context URL: https://api.rectify.so/v1/agent-pulse/ai-tools/board-context
Doc Context URL: https://api.rectify.so/v1/agent-pulse/ai-tools/document-context
Members URL: https://api.rectify.so/v1/agent-pulse/members
This skill sends requests to https://api.rectify.so only.
RECTIFY_PROJECT_TOKEN is a user-issued project token from app.rectify.socurl -s "https://api.rectify.so/v1/agent-pulse/ai-tools/invoke" \
-H "x-api-token: $RECTIFY_PROJECT_TOKEN" \
-H "Content-Type: application/json" \
-d '{"tool": "list_columns", "args": {}}'
curl -s "https://api.rectify.so/v1/agent-pulse/ai-tools/invoke" \
-H "x-api-token: $RECTIFY_PROJECT_TOKEN" \
-H "Content-Type: application/json" \
-d '{"tool": "list_tasks", "args": {}}'
curl -s "https://api.rectify.so/v1/agent-pulse/members" \
-H "x-api-token: $RECTIFY_PROJECT_TOKEN"
> Returns { data: [{ id, name, email, image, role }] }. Use id as assignedMember when creating or updating tasks.
curl -s "https://api.rectify.so/v1/agent-pulse/ai-tools/invoke" \
-H "x-api-token: $RECTIFY_PROJECT_TOKEN" \
-H "Content-Type: application/json" \
-d '{"tool": "create_task", "args": {"title": "TASK_TITLE", "description": "OPTIONAL_DESC", "priority": "low|medium|high", "columnId": "COLUMN_ID", "assignedAgent": "OPTIONAL_AGENT_NAME", "assignedMember": "MEMBER_USER_ID", "workspace": "OPTIONAL_WORKSPACE_PATH", "labels": ["optional"]}}'
> assignedAgent — OpenClaw agent name (e.g. "Atlas"). assignedMember — user ID from the members endpoint. workspace — full workspace path (optional).
curl -s "https://api.rectify.so/v1/agent-pulse/ai-tools/invoke" \
-H "x-api-token: $RECTIFY_PROJECT_TOKEN" \
-H "Content-Type: application/json" \
-d '{"tool": "update_task", "args": {"taskId": "TASK_ID", "title": "NEW_TITLE", "description": "NEW_DESC", "priority": "low|medium|high", "assignedMember": "MEMBER_USER_ID", "workspace": "WORKSPACE_PATH"}}'
curl -s "https://api.rectify.so/v1/agent-pulse/ai-tools/invoke" \
-H "x-api-token: $RECTIFY_PROJECT_TOKEN" \
-H "Content-Type: application/json" \
-d '{"tool": "move_task", "args": {"taskId": "TASK_ID", "columnId": "TARGET_COLUMN_ID"}}'
curl -s "https://api.rectify.so/v1/agent-pulse/ai-tools/invoke" \
-H "x-api-token: $RECTIFY_PROJECT_TOKEN" \
-H "Content-Type: application/json" \
-d '{"tool": "assign_task", "args": {"taskId": "TASK_ID", "assignedAgent": "AGENT_NAME_OR_NULL", "assignedMember": "MEMBER_USER_ID_OR_NULL"}}'
> Pass null to unassign. Provide either or both fields.
curl -s "https://api.rectify.so/v1/agent-pulse/ai-tools/invoke" \
-H "x-api-token: $RECTIFY_PROJECT_TOKEN" \
-H "Content-Type: application/json" \
-d '{"tool": "delete_task", "args": {"taskId": "TASK_ID"}}'
curl -s "https://api.rectify.so/v1/agent-pulse/ai-tools/invoke" \
-H "x-api-token: $RECTIFY_PROJECT_TOKEN" \
-H "Content-Type: application/json" \
-d '{"tool": "search_tasks", "args": {"query": "SEARCH_TEXT", "priority": "high", "status": "in_progress", "assignedAgent": "AGENT_NAME"}}'
curl -s "https://api.rectify.so/v1/agent-pulse/ai-tools/invoke" \
-H "x-api-token: $RECTIFY_PROJECT_TOKEN" \
-H "Content-Type: application/json" \
-d '{"tool": "create_column", "args": {"name": "COLUMN_NAME", "color": "#hex6"}}'
curl -s "https://api.rectify.so/v1/agent-pulse/ai-tools/invoke" \
-H "x-api-token: $RECTIFY_PROJECT_TOKEN" \
-H "Content-Type: application/json" \
-d '{"tool": "delete_column", "args": {"columnId": "COLUMN_ID"}}'
curl -s "https://api.rectify.so/v1/agent-pulse/ai-tools/board-context" \
-H "x-api-token: $RECTIFY_PROJECT_TOKEN"
list_columns first to get column IDs before creating or moving tasks.list_columns returns an empty array, create a default column (e.g. "To Do") using create_column before creating tasks.Rectify Documents is a separate feature from the task board. You have full CRUD access.
curl -s "https://api.rectify.so/v1/agent-pulse/ai-tools/doc-invoke" \
-H "x-api-token: $RECTIFY_PROJECT_TOKEN" \
-H "Content-Type: application/json" \
-d '{"tool": "list_documents", "args": {}}'
curl -s "https://api.rectify.so/v1/agent-pulse/ai-tools/doc-invoke" \
-H "x-api-token: $RECTIFY_PROJECT_TOKEN" \
-H "Content-Type: application/json" \
-d '{"tool": "list_documents", "args": {"parentDocument": "PARENT_DOC_ID"}}'
curl -s "https://api.rectify.so/v1/agent-pulse/ai-tools/doc-invoke" \
-H "x-api-token: $RECTIFY_PROJECT_TOKEN" \
-H "Content-Type: application/json" \
-d '{"tool": "get_document", "args": {"documentId": "DOC_ID"}}'
curl -s "https://api.rectify.so/v1/agent-pulse/ai-tools/doc-invoke" \
-H "x-api-token: $RECTIFY_PROJECT_TOKEN" \
-H "Content-Type: application/json" \
-d '{"tool": "search_documents", "args": {"query": "SEARCH_TEXT"}}'
curl -s "https://api.rectify.so/v1/agent-pulse/ai-tools/doc-invoke" \
-H "x-api-token: $RECTIFY_PROJECT_TOKEN" \
-H "Content-Type: application/json" \
-d '{"tool": "create_document", "args": {"title": "DOC_TITLE", "content": "MARKDOWN_CONTENT", "icon": "OPTIONAL_EMOJI", "isPublished": false, "parentDocument": "OPTIONAL_PARENT_DOC_ID"}}'
> title is required. content is plain markdown — do NOT include a # Title heading (title is a separate field). icon (emoji), isPublished (default false), and parentDocument (for sub-pages) are optional.
curl -s "https://api.rectify.so/v1/agent-pulse/ai-tools/doc-invoke" \
-H "x-api-token: $RECTIFY_PROJECT_TOKEN" \
-H "Content-Type: application/json" \
-d '{"tool": "update_document", "args": {"documentId": "DOC_ID", "title": "NEW_TITLE", "content": "MARKDOWN_CONTENT", "icon": "EMOJI", "isPublished": true}}'
> Write content as plain markdown. Do NOT include a # Title heading — the title is a separate field.
curl -s "https://api.rectify.so/v1/agent-pulse/ai-tools/doc-invoke" \
-H "x-api-token: $RECTIFY_PROJECT_TOKEN" \
-H "Content-Type: application/json" \
-d '{"tool": "archive_document", "args": {"documentId": "DOC_ID"}}'
curl -s "https://api.rectify.so/v1/agent-pulse/ai-tools/doc-invoke" \
-H "x-api-token: $RECTIFY_PROJECT_TOKEN" \
-H "Content-Type: application/json" \
-d '{"tool": "restore_document", "args": {"documentId": "DOC_ID"}}'
curl -s "https://api.rectify.so/v1/agent-pulse/ai-tools/doc-invoke" \
-H "x-api-token: $RECTIFY_PROJECT_TOKEN" \
-H "Content-Type: application/json" \
-d '{"tool": "delete_document", "args": {"documentId": "DOC_ID"}}'
curl -s "https://api.rectify.so/v1/agent-pulse/ai-tools/document-context" \
-H "x-api-token: $RECTIFY_PROJECT_TOKEN"
list_documents first to get document IDs before reading or updating.create_document with parentDocument set to the parent doc ID.# Title heading; title goes in the title field separately.delete_document only for permanent removal.All API calls return JSON. On error the response will contain an error field:
{ "error": "Error message here" }
On success:
{ "success": true, "task": { "id": "...", "title": "..." } }
Common causes:
401 — Invalid or missing RECTIFY_PROJECT_TOKEN, or token not authorized for this project404 — Resource not found (wrong ID)400 — Missing required field共 1 个版本