Task types
List task types
/a/TaskTypes_list
List every task-type ID and name in ascending name order for pickers and notification settings.
When to use this endpoint
Use TaskTypes_list for a compact task-type picker. It is the common type source in CRM1 and several CRM2 settings/import screens.
Authentication and permissions
The request must authenticate with signed API-key fields or a logged-in CRM session. The handler calls the normal login guard but performs no additional Settings-page, role, create, edit, or delete permission check.
All reads and writes use the authenticated tenant. CRM1 and CRM2 decide whether to show task-type controls, but these handlers do not repeat those client-side checks.
Parameters
This endpoint has no operation-specific parameters.
Example request
$types = FM_api('TaskTypes_list', []);
Example response
[
{"id": "3", "name": "Customer follow-up"},
{"id": "7", "name": "Internal review"}
]
Errors and unusual responses
| Response | Condition |
|---|---|
{"error":"not logged in"} | No authenticated tenant context is available. Invalid signed credentials can be rejected by the dispatcher before the handler runs. |
[] | The tenant has no task types. |
Legacy application errors may be returned with HTTP 200. Check the decoded response for error, not only the HTTP status.
Behaviour and edge cases
- The endpoint has no pagination, limit, search, active/deleted filter, or deduplication. Task types do not have a deleted-state column.
- Rows are ordered by database
nameascending. IDs remain JSON strings and names can be null because mapped creation permits unnamed rows.
See it in Fieldmotion
CRM1
CRM1 loads this route in task create/edit dialogs, the Tasks list/calendar type filters, the task-import email screen, and Settings → Task Types.
CRM2
CRM2 loads it for the Tasks module’s type sources, task-import email settings, and task notification templates. Task calendar/Kanban instead use mapped requested details.
Related endpoints
TaskTypes_getByIdselects a subset and optional raw columns.TaskTypes_getDataTablesupplies the paged CRM2 settings table.