219 lines
3.2 KiB
Markdown
219 lines
3.2 KiB
Markdown
# Podio Routing Reference
|
|
|
|
**App name:** `podio`
|
|
**Base URL proxied:** `api.podio.com`
|
|
|
|
## API Path Pattern
|
|
|
|
```
|
|
/podio/{resource}/{id}/
|
|
```
|
|
|
|
Note: Many Podio endpoints use trailing slashes.
|
|
|
|
## Common Endpoints
|
|
|
|
### Organizations
|
|
|
|
#### List Organizations
|
|
```bash
|
|
GET /podio/org/
|
|
```
|
|
|
|
#### Get Organization
|
|
```bash
|
|
GET /podio/org/{org_id}
|
|
```
|
|
|
|
### Spaces (Workspaces)
|
|
|
|
#### List Spaces in Organization
|
|
```bash
|
|
GET /podio/space/org/{org_id}/
|
|
```
|
|
|
|
#### Get Space
|
|
```bash
|
|
GET /podio/space/{space_id}
|
|
```
|
|
|
|
#### Create Space
|
|
```bash
|
|
POST /podio/org/{org_id}/space/
|
|
Content-Type: application/json
|
|
|
|
{
|
|
"name": "New Workspace",
|
|
"privacy": "closed"
|
|
}
|
|
```
|
|
|
|
### Applications
|
|
|
|
#### List Apps in Space
|
|
```bash
|
|
GET /podio/app/space/{space_id}/
|
|
```
|
|
|
|
#### Get App
|
|
```bash
|
|
GET /podio/app/{app_id}
|
|
```
|
|
|
|
### Items
|
|
|
|
#### Filter Items
|
|
```bash
|
|
POST /podio/item/app/{app_id}/filter/
|
|
Content-Type: application/json
|
|
|
|
{
|
|
"limit": 30,
|
|
"offset": 0,
|
|
"sort_by": "created_on",
|
|
"sort_desc": true,
|
|
"filters": {
|
|
"status": [1, 2]
|
|
}
|
|
}
|
|
```
|
|
|
|
#### Get Item
|
|
```bash
|
|
GET /podio/item/{item_id}
|
|
```
|
|
|
|
#### Create Item
|
|
```bash
|
|
POST /podio/item/app/{app_id}/
|
|
Content-Type: application/json
|
|
|
|
{
|
|
"fields": {
|
|
"title": "New Item",
|
|
"status": 1
|
|
}
|
|
}
|
|
```
|
|
|
|
#### Update Item
|
|
```bash
|
|
PUT /podio/item/{item_id}
|
|
Content-Type: application/json
|
|
|
|
{
|
|
"fields": {
|
|
"title": "Updated Title"
|
|
}
|
|
}
|
|
```
|
|
|
|
#### Delete Item
|
|
```bash
|
|
DELETE /podio/item/{item_id}
|
|
```
|
|
|
|
### Tasks
|
|
|
|
Tasks require at least one filter: org, space, app, responsible, reference, created_by, or completed_by.
|
|
|
|
#### List Tasks
|
|
```bash
|
|
GET /podio/task/?org={org_id}
|
|
GET /podio/task/?space={space_id}
|
|
GET /podio/task/?app={app_id}&completed=false
|
|
```
|
|
|
|
#### Get Task
|
|
```bash
|
|
GET /podio/task/{task_id}
|
|
```
|
|
|
|
#### Create Task
|
|
```bash
|
|
POST /podio/task/
|
|
Content-Type: application/json
|
|
|
|
{
|
|
"text": "Task description",
|
|
"due_date": "2026-03-15",
|
|
"ref_type": "item",
|
|
"ref_id": 3250776079
|
|
}
|
|
```
|
|
|
|
#### Complete Task
|
|
```bash
|
|
POST /podio/task/{task_id}/complete
|
|
```
|
|
|
|
#### Delete Task
|
|
```bash
|
|
DELETE /podio/task/{task_id}
|
|
```
|
|
|
|
### Comments
|
|
|
|
#### Get Comments on Object
|
|
```bash
|
|
GET /podio/comment/{type}/{id}/
|
|
```
|
|
|
|
Where `{type}` is: item, task, status, etc.
|
|
|
|
#### Add Comment
|
|
```bash
|
|
POST /podio/comment/{type}/{id}
|
|
Content-Type: application/json
|
|
|
|
{
|
|
"value": "Comment text"
|
|
}
|
|
```
|
|
|
|
### User
|
|
|
|
#### Get User Status
|
|
```bash
|
|
GET /podio/user/status
|
|
```
|
|
|
|
## Pagination
|
|
|
|
Podio uses offset-based pagination:
|
|
|
|
```json
|
|
{
|
|
"limit": 30,
|
|
"offset": 0
|
|
}
|
|
```
|
|
|
|
Response includes counts:
|
|
```json
|
|
{
|
|
"total": 150,
|
|
"filtered": 45,
|
|
"items": [...]
|
|
}
|
|
```
|
|
|
|
## Notes
|
|
|
|
- Organization, space, app, and item IDs are integers
|
|
- Many endpoints use trailing slashes (e.g., `/org/`, `/filter/`)
|
|
- Category/status fields use option IDs (integers), not text values
|
|
- Field values can be specified by field_id or external_id
|
|
- Deleting an item cascades to associated tasks
|
|
- Tasks require at least one filter parameter
|
|
- Use `silent=true` to suppress notifications
|
|
- Use `hook=false` to skip webhook triggers
|
|
|
|
## Resources
|
|
|
|
- [Podio API Documentation](https://developers.podio.com/doc)
|
|
- [Items API](https://developers.podio.com/doc/items)
|
|
- [Tasks API](https://developers.podio.com/doc/tasks)
|
|
- [Applications API](https://developers.podio.com/doc/applications)
|
|
- [Spaces API](https://developers.podio.com/doc/spaces)
|