Views
Manage app views
7 tools
Get Views
POST /v1/tools/podio/getViews
List all views on an app. Returns array of views with view_id, name, item counts, and grouping data. By default only returns custom saved views.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
app_id | number | required | App ID |
include_standard_views | boolean | optional | Set true to include standard views (table, badge, calendar) alongside custom saved views. Defaults to false. |
Request
curl -X POST https://api.syncello.io/v1/tools/podio/getViews \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"
-d '{
"app_id": "123"
}'Response
[
{
"view_id": 61200088,
"name": "Open Deals",
"type": "saved",
"layout": "table",
"filters": [
{
"key": 261000002,
"values": [
1,
2
],
"humanized_values": [
{
"value": 1,
"label": "Prospect"
},
{
"value": 2,
"label": "Negotiation"
}
]
}
],
"sort_by": 261000003,
"sort_desc": true,
"items": 3,
"private": false,
"rights": [
"update",
"view",
"delete"
]
}
] Try It
Try it
Sign in to execute this tool
Sign InGet View
POST /v1/tools/podio/getView
Get view definition by ID or name. Returns view configuration including sorting, filters, field settings, and grouping.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
app_id | number | required | App ID |
view_id_or_name | any | required | View ID (numeric), standard view name ("table", "badge", "calendar"), or "last" for the user's most recent view state |
Request
curl -X POST https://api.syncello.io/v1/tools/podio/getView \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"
-d '{
"app_id": "123",
"view_id_or_name": "..."
}'Response
{
"view_id": 61200088,
"name": "Open Deals",
"type": "saved",
"layout": "table",
"filters": [
{
"key": 261000002,
"values": [
1,
2
],
"humanized_values": [
{
"value": 1,
"label": "Prospect"
},
{
"value": 2,
"label": "Negotiation"
}
]
}
],
"sort_by": 261000003,
"sort_desc": true,
"items": 3,
"private": false,
"rights": [
"update",
"view",
"delete"
],
"created_by": {
"user_id": 1122334,
"name": "Jane Doe"
},
"created_on": "2026-07-01 14:40:00"
} Try It
Try it
Sign in to execute this tool
Sign InCreate View
POST /v1/tools/podio/createView
Create a saved view with filters, sorting, and grouping on an app. PREREQUISITE: Call podio_getApp(app_id, fields_only: true) first to get field IDs, types, and category option IDs — views are built on fields, so you need the schema to construct meaningful filters and grouping. FILTER FORMATS (keyed by field_id or system key): category/question=[option_id, ...] (integers from getApp config.settings.options; null matches no value), number/money/calculation={"from": number, "to": number}, date={"from": "YYYY-MM-DD", "to": "YYYY-MM-DD"} or relative {"from": "-7d", "to": "+0d"} (units: d=days, w=weeks, m=months, y=years; append r to round e.g. "-1mr"), app=[item_id, ...] (null matches no reference), contact=[profile_id, ...], progress={"from": 0, "to": 100}, duration={"from": seconds, "to": seconds}. SYSTEM FILTER KEYS (no field_id needed): created_by/last_edit_by=[{"type":"user","id":user_id}] (id 0 = current user), created_on/last_edit_on={"from":"date","to":"date"}, tags=["tag1","tag2"]. NOTE: text fields CANNOT be filtered. GROUPING: type "field" with a field_id as value (best for category fields), or type "revision" with "created_by"/"created_on"/"tags" as value. For date grouping add sub_value: "date", "weekday", "week", "month", or "year". SORT: Use a field_id or system field (created_on, app_item_id, activity, title, etc.). When asked to create views without specific criteria, examine the app fields and create views that are actually useful — group by category fields, filter by date ranges, sort by relevant fields. Do NOT create empty views with no filters.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
app_id | number | required | App ID (from getApp, getAppsBySpace, or platform context) |
name | string | required | View name |
private | boolean | optional | Private to creator (default: false) |
sort_by | string | optional | Sort by field_id or system field: created_on, created_by, last_edit_on, app_item_id, item_id, activity, priority, title |
sort_desc | boolean | optional | Sort descending (default: false) |
filters | array | optional | Array of filter objects. Each has a key (field_id or system key) and values (format varies by field type — see tool description). |
layout | string | optional | Layout type: "table", "badge", "calendar". Defaults to "table" if omitted. Only change if the user specifically requests a different layout. |
fields | object | optional | Field display settings keyed by field_id. Each can have: hidden (boolean), width (number), delta_offset (number), use ("_x_axis_" or "_y_axis_" for calendar) |
grouping | object | optional | Group items in the view. Use type "field" with a category field_id for best results, or type "revision" with "created_by"/"created_on"/"tags". |
Request
curl -X POST https://api.syncello.io/v1/tools/podio/createView \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"
-d '{
"app_id": "123",
"name": "example"
}'Response
{
"view_id": 61200088,
"name": "Open Deals",
"type": "saved",
"layout": "table",
"filters": [
{
"key": 261000002,
"values": [
1,
2
],
"humanized_values": [
{
"value": 1,
"label": "Prospect"
},
{
"value": 2,
"label": "Negotiation"
}
]
}
],
"sort_by": 261000003,
"sort_desc": true,
"items": 3,
"private": false,
"rights": [
"update",
"view",
"delete"
],
"created_by": {
"user_id": 1122334,
"name": "Jane Doe"
},
"created_on": "2026-07-01 14:40:00"
} Try It
Try it
Sign in to execute this tool
Sign InUpdate View
POST /v1/tools/podio/updateView
Update view configuration. Only specified fields are changed; omitted fields remain unchanged. PREREQUISITE: Use getView first to see current configuration, and getApp(app_id, fields_only: true) to get field IDs for filters/grouping. FILTER FORMATS (keyed by field_id or system key): category/question=[option_id, ...] (integers from getApp config.settings.options; null matches no value), number/money/calculation={"from": number, "to": number}, date={"from": "YYYY-MM-DD", "to": "YYYY-MM-DD"} or relative {"from": "-7d", "to": "+0d"} (units: d/w/m/y; append r to round), app=[item_id, ...], contact=[profile_id, ...], progress={"from": 0, "to": 100}, duration={"from": seconds, "to": seconds}. SYSTEM FILTER KEYS: created_by/last_edit_by=[{"type":"user","id":user_id}], created_on/last_edit_on={"from":"date","to":"date"}, tags=["tag"]. NOTE: text fields CANNOT be filtered. GROUPING: type "field" with field_id as value, or type "revision" with "created_by"/"created_on"/"tags". Date grouping uses sub_value: "date"/"weekday"/"week"/"month"/"year".
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
view_id | number | required | View ID to update |
app_id | number | required | App ID that the view belongs to (needed for field validation). Get from getView or getViews. |
name | string | optional | View name |
private | boolean | optional | Private to creator |
sort_by | string | optional | Sort by field_id or system field: created_on, created_by, last_edit_on, app_item_id, activity, title, etc. |
sort_desc | boolean | optional | Sort descending |
filters | array | optional | Filter objects — replaces ALL existing filters on the view |
layout | string | optional | Layout type: "table", "badge", "calendar" |
fields | object | optional | Field display settings keyed by field_id |
grouping | object | optional | Grouping config |
Request
curl -X POST https://api.syncello.io/v1/tools/podio/updateView \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"
-d '{
"view_id": "123",
"app_id": "123"
}'Response
{
"updated": true,
"view_id": 61200088
} Try It
Try it
Sign in to execute this tool
Sign InDelete View
POST /v1/tools/podio/deleteView
Permanently delete a view. This cannot be undone. Use getView first to verify the correct view before deleting.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
view_id | number | required | View ID to delete |
Request
curl -X POST https://api.syncello.io/v1/tools/podio/deleteView \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"
-d '{
"view_id": "123"
}'Response
{
"deleted": true,
"view_id": 61200088
} Try It
Try it
Sign in to execute this tool
Sign InMake View Default
POST /v1/tools/podio/makeViewDefault
Set a view as the default when users open the app. Must be a saved view (not a standard view) and the user must have app update rights.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
view_id | number | required | View ID of a saved (non-standard) view to make default |
Request
curl -X POST https://api.syncello.io/v1/tools/podio/makeViewDefault \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"
-d '{
"view_id": "123"
}'Response
{
"default_set": true,
"view_id": 61200088
} Try It
Try it
Sign in to execute this tool
Sign InUpdate Last View
POST /v1/tools/podio/updateLastView
Save the user's most recent view preferences (sort, filters, layout) on an app. This state is retrieved via getView with view_id_or_name="last".
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
app_id | number | required | App ID |
sort_by | string | optional | Sort field |
sort_desc | boolean | optional | Sort descending |
filters | array | optional | Filter objects |
layout | string | optional | Layout type |
fields | object | optional | Field settings |
Request
curl -X POST https://api.syncello.io/v1/tools/podio/updateLastView \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"
-d '{
"app_id": "123"
}'Response
{
"updated": true,
"app_id": 28471960
} Try It
Try it
Sign in to execute this tool
Sign In