Skip to main content
GET
/
v1
/
tasks
List Tasks
curl --request GET \
  --url https://api.trellistech.com/v1/tasks \
  --header 'Authorization: Bearer <token>'
{
  "data": [
    {
      "id": "<string>",
      "title": "<string>",
      "description": "<string>",
      "property_id": "<string>",
      "property_name": "<string>",
      "department": "<string>",
      "status": "<string>",
      "priority": "<string>",
      "assigned_to": {
        "id": "<string>",
        "name": "<string>"
      },
      "scheduled_date": "<string>",
      "scheduled_time": "<string>",
      "estimated_duration_minutes": 123,
      "cost": 123,
      "currency": "<string>",
      "created_at": "<string>",
      "updated_at": "<string>"
    }
  ],
  "total": 123,
  "limit": 123,
  "offset": 123
}
Returns a paginated list of tasks. Use query parameters to filter by property, status, department, or assignee.

Query Parameters

property_id
string
Filter tasks associated with a specific property.
status
string
Filter by task status. One of: OPEN, SCHEDULED, IN_PROGRESS, COMPLETED, PENDING_APPROVAL.
department
string
Filter by department. One of: cleaning, maintenance, inspection.
assigned_to
string
Filter tasks assigned to a specific team member by their user ID.
scheduled_date
string
Filter tasks scheduled for a specific date (ISO 8601 format, e.g., 2026-04-10).
limit
integer
default:"50"
Maximum number of tasks to return (1—100).
offset
integer
default:"0"
Number of tasks to skip for pagination.

Example Request

curl -H "Authorization: Bearer trls_live_abc123..." \
  "https://api.trellistech.com/v1/tasks?status=OPEN&department=cleaning&limit=25"

Response

data
array
Array of task objects.
total
integer
Total number of tasks matching the filter criteria.
limit
integer
The limit used for this request.
offset
integer
The offset used for this request.

Example Response

200
{
  "data": [
    {
      "id": "t1a2b3c4-5678-9abc-def0-333333333333",
      "title": "Turnover cleaning - Sunset Villa",
      "description": "Full turnover clean before next guest arrival. Check linens, restock supplies.",
      "property_id": "a1b2c3d4-5678-9abc-def0-123456789abc",
      "property_name": "Sunset Villa",
      "department": "cleaning",
      "status": "OPEN",
      "priority": "high",
      "assigned_to": {
        "id": "u1a2b3c4-1111-2222-3333-444444444444",
        "name": "Sofia Martinez"
      },
      "scheduled_date": "2026-04-10",
      "scheduled_time": "10:00",
      "estimated_duration_minutes": 120,
      "cost": 85.00,
      "currency": "USD",
      "created_at": "2026-04-05T07:00:00Z",
      "updated_at": "2026-04-05T07:00:00Z"
    },
    {
      "id": "t2b3c4d5-6789-abcd-ef01-444444444444",
      "title": "Fix bathroom faucet",
      "description": "Guest reported a dripping faucet in the master bathroom.",
      "property_id": "b2c3d4e5-6789-abcd-ef01-23456789abcd",
      "property_name": "Mountain Retreat",
      "department": "maintenance",
      "status": "OPEN",
      "priority": "normal",
      "assigned_to": null,
      "scheduled_date": "2026-04-12",
      "scheduled_time": null,
      "estimated_duration_minutes": 60,
      "cost": null,
      "currency": null,
      "created_at": "2026-04-04T16:30:00Z",
      "updated_at": "2026-04-04T16:30:00Z"
    }
  ],
  "total": 38,
  "limit": 25,
  "offset": 0
}

Error Responses

400
{
  "error": {
    "code": "invalid_parameter",
    "message": "The 'status' parameter must be one of: OPEN, SCHEDULED, IN_PROGRESS, COMPLETED, PENDING_APPROVAL."
  }
}
401
{
  "error": {
    "code": "unauthorized",
    "message": "Invalid or missing API key."
  }
}