Skip to content
Leadtime
English
Esc
navigateopen⌘Jpreview

Get tasks grid

Returns a paginated, filterable, and sortable grid of tasks across all projects in the workspace. This endpoint supports server-side filtering, sorting, and pagination for efficient data retrieval. You can filter by title, status, type, project, parent task, guest access, and more. Quick search is available on the title field. The default sort is by last updated timestamp in descending order.

What are “Open” Tasks? A task is considered “open” when its status type is NOT Closed. This includes tasks with status types: New, InProgress, Feedback, Backlog, and Resolved. Only tasks with status type Closed are considered closed. You can filter for open tasks by using the statusId field with comparison is_open in your filters parameter.

Retrieves a paginated grid of tasks with filtering and sorting capabilities. Quick search available on: title, summary. Filterable fields: title, shortNumber, statusId, typeId, lastUpdated, parentTaskId, guestAccess, projectId, assignedToId, userId, summary, priority, tags, isFavorite, inPipeline, hasObject, hasForms, billingStatus, billedAmount. Sortable fields: title, shortNumber, statusId, typeId, lastUpdated, parentTaskId, projectId, assignedToId, userId, summary, priority, billingStatus, billedAmount.

GET/tasks/grid
Authorization
AuthorizationOAuth2 access token · headerrequired
Scopes:api:read
or
AuthorizationBearer token (JWT) · headerrequired
Query parameters
pagenumber
Page number (1-based)
pageSizenumber
Number of items per page
viewIdstring
View identifier for saved grid configurations
quickSearchstring
Quick search text. Searches across: title, summary
filtersstring
JSON string containing filter configuration. **Available Fields:** - **title** (string): Task title - **shortNumber** (number): Task short number - **statusId** (task_status): Task status ID. Special comparisons available: `is_open` (filters for tasks with status type NOT Closed - includes New, InProgress, Feedback, Backlog, Resolved), `is_closed` (filters for tasks with status type Closed). - **typeId** (task_type): Task type ID. Special comparisons available: `is_feature` (filters for tasks with type Feature), `is_bug` (filters for tasks with type Bug). - **lastUpdated** (date): Last updated timestamp - **parentTaskId** (set): Parent task ID (if subtask) - **guestAccess** (boolean): Whether task has guest access - **projectId** (set): Project ID - **assignedToId** (set): Assigned user ID. This must be a Leadtime User.id UUID, not an Employee.id UUID. - **userId** (set): Creator/accountable user ID. This must be a Leadtime User.id UUID, not an Employee.id UUID. - **summary** (string): Task summary - **priority** (set): Task priority (Low, Normal, High) - **tags** (array): Task tags - **isFavorite** (boolean): Whether task is marked as favorite by the current user - **inPipeline** (boolean): Whether the task appears on any team member pipeline in this workspace (non-deleted PipelineItem). - **hasObject** (boolean): Whether the task is linked to at least one non-deleted object instance in this workspace. - **hasForms** (boolean): Whether the task has at least one non-deleted form instance attached in this workspace. - **billingStatus** (set): Billing status (not_ready, waiting, charged, paid). Only available for external projects and users with Invoices.manage permission. - **billedAmount** (number): Total amount billed for this task. Only available for external projects and users with Invoices.manage permission. **Filter Structure:** ```json [ { "type": "string|number|date|set|boolean|array|task_status|task_type", "fieldName": "field_name", "value": { "comparison": "comparison_type", "value": "filter_value" } } ] ``` **Group Filters (AND/OR Combinations):** ```json [ { "type": "group", "fieldName": "group0.18807479823070028", "value": { "type": "or", "filters": [ { "type": "string", "fieldName": "fileName", "value": { "comparison": "contain", "value": "aa" } }, { "type": "number", "fieldName": "rowCount", "value": { "comparison": ">=", "value": 33 } } ] } } ] ``` **Available Comparison Operators:** - **title** (string): Task title (string filter). Available comparisons: contain, not_contain, equal, starts_with, ends_with, is_empty, is_not_empty - **shortNumber** (number): Task short number (number filter). Available comparisons: equal, not_equal, >, <, >=, <=, is_empty, is_not_empty - **statusId** (task_status): Task status ID. Special comparisons available: `is_open` (filters for tasks with status type NOT Closed - includes New, InProgress, Feedback, Backlog, Resolved), `is_closed` (filters for tasks with status type Closed). (task_status filter). Available comparisons: is_open, is_closed, is_empty, is_not_empty, in, not_in - **typeId** (task_type): Task type ID. Special comparisons available: `is_feature` (filters for tasks with type Feature), `is_bug` (filters for tasks with type Bug). (task_type filter). Available comparisons: is_feature, is_bug, is_empty, is_not_empty, in, not_in - **lastUpdated** (date): Last updated timestamp (date filter). Available comparisons: equal, not_equal, >, <, >=, <=, between, lastMonth, thisMonth, is_empty, is_not_empty - **parentTaskId** (set): Parent task ID (if subtask) (set filter). Available comparisons: in, not_in, is_empty, is_not_empty - **guestAccess** (boolean): Whether task has guest access (boolean filter). Available comparisons: equal, not_equal - **projectId** (set): Project ID (set filter). Available comparisons: in, not_in, is_empty, is_not_empty - **assignedToId** (set): Assigned user ID. This must be a Leadtime User.id UUID, not an Employee.id UUID. (set filter). Available comparisons: in, not_in, is_empty, is_not_empty - **userId** (set): Creator/accountable user ID. This must be a Leadtime User.id UUID, not an Employee.id UUID. (set filter). Available comparisons: in, not_in, is_empty, is_not_empty - **summary** (string): Task summary (string filter). Available comparisons: contain, not_contain, equal, starts_with, ends_with, is_empty, is_not_empty - **priority** (set): Task priority (Low, Normal, High) (set filter). Available comparisons: in, not_in, is_empty, is_not_empty - **tags** (array): Task tags (array filter). Available comparisons: in, not_in, is_empty, is_not_empty - **isFavorite** (boolean): Whether task is marked as favorite by the current user (boolean filter). Available comparisons: equal, not_equal - **inPipeline** (boolean): Whether the task appears on any team member pipeline in this workspace (non-deleted PipelineItem). (boolean filter). Available comparisons: equal, not_equal - **hasObject** (boolean): Whether the task is linked to at least one non-deleted object instance in this workspace. (boolean filter). Available comparisons: equal, not_equal - **hasForms** (boolean): Whether the task has at least one non-deleted form instance attached in this workspace. (boolean filter). Available comparisons: equal, not_equal - **billingStatus** (set): Billing status (not_ready, waiting, charged, paid). Only available for external projects and users with Invoices.manage permission. (set filter). Available comparisons: in, not_in, is_empty, is_not_empty - **billedAmount** (number): Total amount billed for this task. Only available for external projects and users with Invoices.manage permission. (number filter). Available comparisons: equal, not_equal, >, <, >=, <=, is_empty, is_not_empty **Note:** Use `quickSearch` parameter for simple text search instead of adding it to filters.
sortstring
JSON array of sort objects. **Sortable Fields:** - **title**: Task title - **shortNumber**: Task short number - **statusId**: Task status ID. Special comparisons available: `is_open` (filters for tasks with status type NOT Closed - includes New, InProgress, Feedback, Backlog, Resolved), `is_closed` (filters for tasks with status type Closed). - **typeId**: Task type ID. Special comparisons available: `is_feature` (filters for tasks with type Feature), `is_bug` (filters for tasks with type Bug). - **lastUpdated**: Last updated timestamp - **parentTaskId**: Parent task ID (if subtask) - **projectId**: Project ID - **assignedToId**: Assigned user ID. This must be a Leadtime User.id UUID, not an Employee.id UUID. - **userId**: Creator/accountable user ID. This must be a Leadtime User.id UUID, not an Employee.id UUID. - **summary**: Task summary - **priority**: Task priority (Low, Normal, High) - **billingStatus**: Billing status (not_ready, waiting, charged, paid). Only available for external projects and users with Invoices.manage permission. - **billedAmount**: Total amount billed for this task. Only available for external projects and users with Invoices.manage permission. **Sort Structure:** ```json [ { "field": "field_name", "direction": "asc|desc" } ] ``` **Default Sort:** lastUpdated (desc)
fieldsToReturnany[]
Comma-separated list of field names to include in response items. If not provided, all fields are returned. **Available Fields:** id, title, icon, shortNumber, statusId, typeId, lastUpdated, parentTaskId, parentTitle, guestAccess, projectId, assignedToId, userId, summary, priority, tags, subTasksIds, isFavorite, hasActiveAgentSession, inPipeline, hasObject, hasForms, orgColor, billingStatus, billedAmount, spentTime, estimatedTime, deadline
Responses
200Successfully retrieved tasks grid
400Invalid query parameters
401Unauthorized - Invalid or missing authentication token
403Forbidden - Insufficient API scopes or permissions
Request
curl -X GET "https://leadtime.app/api/public/tasks/grid" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
Response
Successfully retrieved tasks grid