Impactly External API
API for third-party AI systems to interact with Impactly workspaces. Agents can understand context, take actions, and leave traces.
Bearer Auth
JSON
Cursor Pagination
Authentication
All endpoints require a Bearer token in the Authorization header.
Create an API agent from Team → API Agents to get your key.
curl /api/v1/tasks \ -H "Authorization: Bearer imp_your_key_here"
MCP Integration
Impactly has an MCP server that lets any compatible AI assistant manage tasks directly. All 13 tools (create, update, complete tasks, comments, dependencies, and more) work out of the box.
npx @impactly/mcp-server init
Prompts for your API URL and key, validates connectivity, and writes the MCP config automatically.
Tasks
Parameters
| Name | Type | Description |
|---|---|---|
project_id | string | |
status | active | completed | |
priority | low | medium | high | urgent | Filter by priority |
assignee_id | string | Filter by assignee |
due_date_before | string | Tasks due on or before this date |
due_date_after | string | Tasks due on or after this date |
cursor | string | Pagination cursor |
limit | integer | Results per page (max 100) |
Responses
200Paginated list of tasks
403Insufficient permissions
Request Body
| Field | Type | Description |
|---|---|---|
title* | string | |
project_id | string (uuid) | |
description | string | |
assignee_id | string (uuid) | |
priority | low | medium | high | urgent | |
parent_task_id | string (uuid) | Parent task ID for creating subtasks |
due_date | string (date) |
Responses
201A single task
400Validation error
403Insufficient permissions
Responses
200A single task
404Resource not found
Request Body
| Field | Type | Description |
|---|---|---|
title | string | |
description | string | |
status | active | completed | |
priority | low | medium | high | urgent | |
assignee_id | string (uuid) | |
due_date | string (date) | |
parent_task_id | string (uuid) | Set parent task for subtask relationship |
Responses
200A single task
400Validation error
403Insufficient permissions
404Resource not found
Responses
200Array of task dependencies
Request Body
| Field | Type | Description |
|---|---|---|
blocker_id* | string (uuid) |
Responses
200Blocker already exists (idempotent)
201Array of task dependencies
Responses
200Blocker removed
Responses
200Array of task dependencies
Request Body
| Field | Type | Description |
|---|---|---|
dependent_id* | string (uuid) |
Responses
200Dependent already exists (idempotent)
201Array of task dependencies
Responses
200Dependent removed
Responses
200Paginated list of comments
Request Body
| Field | Type | Description |
|---|---|---|
content* | string |
Responses
201A single comment
400Validation error
403Insufficient permissions
Projects
Responses
200Paginated list of projects
Responses
200A single project
404Resource not found
Responses
200Paginated list of tasks
Agents
Responses
200Agent profile with usage stats
Parameters
| Name | Type | Description |
|---|---|---|
since | string | ISO 8601 timestamp or relative duration (24h, 7d, 30d) |
project_id | string | |
agent_id | string | |
cursor | string | Pagination cursor |
limit | integer | Results per page (max 100) |
Responses
200Paginated activity feed
Webhooks
Responses
200List of webhook subscriptions
Request Body
| Field | Type | Description |
|---|---|---|
url* | string (uri) | |
events* | string[] | |
secret | string |
Responses
201A single webhook subscription
400Validation error
403Insufficient permissions
Responses
204Deleted
Search
Request Body
| Field | Type | Description |
|---|---|---|
query* | string |
Responses
200Search results
Health
Responses
200OK