Tasks
Manage Podio tasks and task labels
9 tools
Create Tasks
POST /v1/tools/podio/createTasks
Create one or more tasks in a single call. Each task requires "text" at minimum. Use due_date (YYYY-MM-DD) for date-only, or due_on (YYYY-MM-DD HH:MM:SS) for date+time. Times in due_on and due_time are in the user's local timezone and automatically converted to UTC. To attach to an item, set ref_type: "item" and ref_id to the item_id. Set responsible to assign. Use labels for categorization. file_ids accepts numeric Podio file IDs or URLs starting with https:// — URLs are automatically uploaded and converted to file IDs. hook and silent flags apply to all tasks in the batch.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
tasks | array | required | Array of tasks to create. Each task requires "text" at minimum. |
hook | boolean | optional | Execute hooks for all tasks in the batch |
silent | boolean | optional | Suppress notifications for all tasks in the batch |
Request
curl -X POST https://api.syncello.io/v1/tools/podio/createTasks \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"
-d '{
"tasks": "..."
}'Response
{
"total": 1,
"successful": 1,
"failed": 0,
"tasks": [
{
"index": 0,
"success": true,
"created": true,
"task_id": 315000123,
"text": "Prepare contract draft"
}
]
} Try It
Try it
Sign in to execute this tool
Sign InGet Task
POST /v1/tools/podio/getTask
Get a task by ID. Returns full task details: text, description, due_on, responsible, labels, files, and reminders. Use getTasks to find the task_id first.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
task_id | number | required | Task ID. Use getTasks to find this value. |
Request
curl -X POST https://api.syncello.io/v1/tools/podio/getTask \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"
-d '{
"task_id": "123"
}'Response
{
"task_id": 315000123,
"text": "Prepare contract draft",
"description": "Draft the enterprise agreement for Northwind Traders",
"status": "active",
"completed_on": null,
"due_date": "2026-08-01",
"due_on": "2026-08-01 23:59:59",
"responsible": {
"user_id": 1122334,
"name": "Jane Doe"
},
"created_by": {
"user_id": 1122334,
"name": "Jane Doe",
"type": "user"
},
"created_on": "2026-07-01 14:37:00",
"ref": {
"type": "item",
"id": 3141592653,
"title": "Northwind Traders"
},
"labels": [],
"files": [],
"link": "https://podio.com/tasks/315000123",
"private": false,
"started": false
} Try It
Try it
Sign in to execute this tool
Sign InUpdate Tasks
POST /v1/tools/podio/updateTasks
Update one or more tasks in a single call. Each update requires a task_id and at least one field to change. Only specified fields are changed per task. Set completed: true to mark done. Use labels to assign label IDs or text strings. Use responsible to reassign. Times in due_on and due_time are in the user's local timezone and automatically converted to UTC. file_ids accepts numeric Podio file IDs or URLs starting with https:// — URLs are automatically uploaded and converted to file IDs. hook and silent flags apply to all updates in the batch.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
tasks | array | required | Array of task updates. Each requires task_id and at least one field to change. |
hook | boolean | optional | Execute hooks for all updates in the batch |
silent | boolean | optional | Suppress notifications for all updates in the batch |
Request
curl -X POST https://api.syncello.io/v1/tools/podio/updateTasks \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"
-d '{
"tasks": "..."
}'Response
{
"total": 1,
"successful": 1,
"failed": 0,
"tasks": [
{
"index": 0,
"success": true,
"updated": true,
"task_id": 315000123
}
]
} Try It
Try it
Sign in to execute this tool
Sign InDelete Tasks
POST /v1/tools/podio/deleteTasks
Permanently delete one or more tasks in a single call. This cannot be undone. Use getTask first to verify the correct tasks before deleting. hook and silent flags apply to all deletions in the batch.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
task_ids | array | required | Array of task IDs to delete. Use getTask first to verify these are the correct tasks. |
hook | boolean | optional | Execute hooks for all deletions in the batch |
silent | boolean | optional | Suppress notifications for all deletions in the batch |
Request
curl -X POST https://api.syncello.io/v1/tools/podio/deleteTasks \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"
-d '{
"task_ids": "..."
}'Response
{
"total": 1,
"successful": 1,
"failed": 0,
"tasks": [
{
"index": 0,
"success": true,
"deleted": true,
"task_id": 315000123
}
]
} Try It
Try it
Sign in to execute this tool
Sign InGet Tasks
POST /v1/tools/podio/getTasks
List and filter tasks. Defaults to the authenticated user's tasks when no filtering parameter is provided. Set summary: true for grouped counts (overdue, due today, due this week) instead of full task list. Use completed: false for active tasks only. Use view: "full" for complete task details.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
summary | boolean | optional | Set to true for a grouped summary (overdue, due today, due this week, other) with counts and sample tasks instead of a full list. Defaults to false. |
completed | boolean | optional | Filter by completion status. Set to false for active tasks only. |
responsible | string | optional | User IDs (comma-separated) |
due_date | string | optional | Date range in YYYY-MM-DD-YYYY-MM-DD format |
created_on | string | optional | Created date range in YYYY-MM-DD-YYYY-MM-DD format |
completed_on | string | optional | Completed date range in YYYY-MM-DD-YYYY-MM-DD format |
created_by | string | optional | Creator entities |
completed_by | string | optional | Completer entities |
created_via | string | optional | Client ID that created the task |
label | number | optional | Label ID to filter by |
space | string | optional | Space IDs (comma-separated) |
org | string | optional | Organization IDs (comma-separated) |
app | string | optional | App IDs (comma-separated) |
reference | string | optional | References "type:id" (semicolon-separated) |
external_id | string | optional | External ID of the task |
files | boolean | optional | Filter by file presence |
reassigned | boolean | optional | Filter by reassignment status |
grouping | string | optional | Group by: due_date, created_by, responsible, app, space, or org |
sort_by | string | optional | Sort by: created_on, completed_on, or rank (default: rank) |
sort_desc | boolean | optional | Sort descending (default: false) |
limit | number | optional | Maximum number of tasks to return (max 100), or sample tasks per group when summary: true |
offset | number | optional | Offset for pagination (default: 0) |
view | string | optional | Set to "full" for complete task details |
Request
curl -X POST https://api.syncello.io/v1/tools/podio/getTasks \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"Response
[
{
"task_id": 315000123,
"text": "Prepare contract draft",
"description": null,
"due_date": "2026-08-01",
"status": "active",
"group": "due_this_week",
"private": false,
"responsible": "Jane Doe",
"labels": [],
"link": "https://podio.com/tasks/315000123",
"ref_type": "item",
"ref_title": "Northwind Traders",
"ref_app": "Deals",
"ref_link": "https://podio.com/acme-corp/deals/items/1"
}
] Try It
Try it
Sign in to execute this tool
Sign InCreate Label
POST /v1/tools/podio/createLabel
Create a new task label for the authenticated user. Returns the label_id of the newly created label. Use getLabels to see existing labels first to avoid duplicates.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
text | string | required | The name of the label |
color | string | required | The color of the label in hex format (6 characters, e.g. "FF0000" for red) |
Request
curl -X POST https://api.syncello.io/v1/tools/podio/createLabel \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"
-d '{
"text": "example",
"color": "example"
}'Response
{
"created": true,
"label_id": 108000456,
"text": "Urgent",
"color": "FF0000"
} Try It
Try it
Sign in to execute this tool
Sign InGet Labels
POST /v1/tools/podio/getLabels
Get all task labels for the authenticated user. Returns an array of labels with label_id, text, and color (hex). Use this to find label IDs before assigning labels to tasks via updateTasks.
Request
curl -X POST https://api.syncello.io/v1/tools/podio/getLabels \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"Response
[
{
"label_id": 108000456,
"text": "Urgent",
"color": "FF5A60"
},
{
"label_id": 108000457,
"text": "Follow Up",
"color": "DCEBD8"
}
] Try It
Try it
Sign in to execute this tool
Sign InUpdate Label
POST /v1/tools/podio/updateLabel
Update an existing task label. Use getLabels first to find the label_id. You can update the text, color, or both.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
label_id | number | required | The ID of the label to update. Use getLabels to find this value. |
text | string | optional | The new name for the label |
color | string | optional | The new color in hex format (6 characters, e.g. "00FF00" for green) |
Request
curl -X POST https://api.syncello.io/v1/tools/podio/updateLabel \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"
-d '{
"label_id": "123"
}'Response
{
"updated": true,
"label_id": 108000456,
"text": "High Priority",
"color": "FF0000"
} Try It
Try it
Sign in to execute this tool
Sign InDelete Label
POST /v1/tools/podio/deleteLabel
Permanently delete a task label. This removes the label from ALL tasks that use it. Use getLabels first to find the label_id and verify the correct label before deleting.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
label_id | number | required | The ID of the label to delete. Use getLabels to find this value. The label will be removed from all tasks. |
Request
curl -X POST https://api.syncello.io/v1/tools/podio/deleteLabel \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"
-d '{
"label_id": "123"
}'Response
{
"deleted": true,
"label_id": 108000456
} Try It
Try it
Sign in to execute this tool
Sign In