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

ResponseCondition
{"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 name ascending. 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