- name
- rectify
- description
- |
- user-invocable
- true
- metadata
- {"openclaw": {"emoji": "🚀", "requires": {"env": ["RECTIFY_PROJECT_TOKEN"]}, "primaryEnv": "RECTIFY_PROJECT_TOKEN"}}
Rectify AgentPulse — Task Board & Document Management
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.
Authentication
All requests use your RECTIFY_PROJECT_TOKEN — no extra setup needed.
Required headers on every request:
x-api-token: $RECTIFY_PROJECT_TOKEN
Task 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/membersSecurity & Privacy
This skill sends requests to https://api.rectify.so only.
- No credentials are stored outside the user's local environment
RECTIFY_PROJECT_TOKENis a user-issued project token from app.rectify.so- All API endpoints used by this skill are listed in this file
Task Board
List all columns
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_columns", "args": {}}'List all 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": "list_tasks", "args": {}}'List project members (for task assignment)
curl -s "https://api.rectify.so/v1/agent-pulse/members" \
-H "x-api-token: $RECTIFY_PROJECT_TOKEN"Returns{ data: [{ id, name, email, image, role }] }. UseidasassignedMemberwhen creating or updating tasks.
Create a task
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).
Update a task
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"}}'Move a task to another column
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"}}'Assign a task to an agent or member
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.Delete a task
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"}}'Search 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": "search_tasks", "args": {"query": "SEARCH_TEXT", "priority": "high", "status": "in_progress", "assignedAgent": "AGENT_NAME"}}'Create a column
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"}}'Delete a column (cascade deletes all tasks in it)
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"}}'Get board context (summary of all columns and tasks)
curl -s "https://api.rectify.so/v1/agent-pulse/ai-tools/board-context" \
-H "x-api-token: $RECTIFY_PROJECT_TOKEN"Task Board Workflow
- Always run
list_columnsfirst to get column IDs before creating or moving tasks. - If
list_columnsreturns an empty array, create a default column (e.g. "To Do") usingcreate_columnbefore creating tasks. - Use column IDs (not names) when moving or creating tasks in a specific column.
- To assign to a project member, call the members endpoint first to get user IDs.
- When asked to delete a column, warn the user that all tasks inside will be permanently deleted, then proceed if confirmed.
- After each action, briefly confirm what was done.
Rectify Documents
Rectify Documents is a separate feature from the task board. You have full CRUD access.
List documents
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": {}}'List sub-pages of a document
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"}}'Get a document (with full content)
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"}}'Search documents by title
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"}}'Create a document
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"}}'titleis required.contentis plain markdown — do NOT include a# Titleheading (title is a separate field).icon(emoji),isPublished(default false), andparentDocument(for sub-pages) are optional.
Update a document
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.Archive a document (soft-delete, recursive)
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"}}'Restore a document
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"}}'Delete a document (permanent)
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"}}'Get document context (summary of all documents)
curl -s "https://api.rectify.so/v1/agent-pulse/ai-tools/document-context" \
-H "x-api-token: $RECTIFY_PROJECT_TOKEN"Document Workflow
- Always run
list_documentsfirst to get document IDs before reading or updating. - To create a sub-page, use
create_documentwithparentDocumentset to the parent doc ID. - Write content as markdown — no
# Titleheading; title goes in thetitlefield separately. - After creating or updating, briefly confirm the doc title and its ID.
- Archive is a soft-delete (recursive for children). Use
delete_documentonly for permanent removal.
Error Handling
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