Skip to content
Leadtime
English
Esc
navigateopen⌘Jpreview

Create or update task status

Creates a new task status. All fields are required.

Step-by-step process:

  1. Provide a status name (e.g., “In Review”, “Awaiting Approval”)
  2. Select an icon in format :icon_name: (e.g., :hourglass_flowing_sand:, :check_mark:)
  3. Choose the base status type (New, InProgress, Feedback, Resolved, Closed, or Backlog)
  4. Add multilingual translations for the status name

Status types: Each custom status must be based on one of these types:

  • New: Initial state, task not started
  • InProgress: Active work phase
  • Feedback: Needs input or review
  • Resolved: Completed but not closed
  • Closed: Finished and archived
  • Backlog: Planned for later

Icon format: Icons use emoji shortcodes in the format :icon_name:. Examples:

  • :hourglass_flowing_sand: for time-based statuses
  • :check_mark: for completed statuses
  • :x: for cancelled statuses
  • :rocket: for active statuses

Multilingual support: Provide translations for status name. Leadtime automatically displays the correct text based on the user language.

Note: After creation, assign this status to specific task types to make it available in their workflows.

POST/administration/task-settings/statuses
Authorization
AuthorizationOAuth2 access token · headerrequired
Scopes:api:write
or
AuthorizationBearer token (JWT) · headerrequired
Query parameters
fieldsToReturnstring
Comma-separated list of top-level response fields to return. Overrides the endpoint compact default unless responseShape=full is used.
responseShapestring
Advanced override. Omit for the endpoint compact default. Use full only when you need the complete endpoint response, including nested fields that are not selectable with fieldsToReturn.
Allowed:compactfull
Header parameters
LT-Response-Shapestring
Advanced override. Set to full only when you need the complete endpoint response, including nested fields that are not selectable with fieldsToReturn.
Allowed:full
Request body
requiredapplication/json
iconstringrequired
Icon for the task status in format :icon_name: (e.g., :hourglass_flowing_sand:, :check_mark:, :x:)
namestringrequired
Name of the task status
translationsTaskStatusTranslationDto[]required
Translations for the task status
Show properties
Array of TaskStatusTranslationDto
languagestringrequired
Language code (e.g., "en", "de")
namestringrequired
Translated name of the task status
typestringrequired
Type of the task status
Allowed:NewInProgressFeedbackBacklogResolvedClosed
Responses
201Task status created/updated successfully
iconstringrequired
Icon for the task status in format :icon_name: (e.g., :hourglass_flowing_sand:, :check_mark:, :x:)
idstringrequired
Unique identifier of the task status
namestringrequired
Name of the task status
sortnumberrequired
Sort order of the task status
translationsTaskStatusTranslationDto[]required
Translations for the task status
Show properties
Array of TaskStatusTranslationDto
languagestringrequired
Language code (e.g., "en", "de")
namestringrequired
Translated name of the task status
typestringrequired
Type of the task status
Allowed:NewInProgressFeedbackBacklogResolvedClosed
401Unauthorized - Invalid or missing authentication token
403Forbidden - Insufficient API scopes or permissions
Request
curl -X POST "https://leadtime.app/api/public/administration/task-settings/statuses" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "icon": ":hourglass_flowing_sand:",
  "name": "In Progress",
  "translations": [
    {
      "language": "en",
      "name": "In Progress"
    },
    {
      "language": "de",
      "name": "In Bearbeitung"
    }
  ],
  "type": "InProgress"
}'
Response
{
  "icon": ":hourglass_flowing_sand:",
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "name": "In Progress",
  "sort": 1,
  "translations": [
    {
      "language": "en",
      "name": "In Progress"
    },
    {
      "language": "de",
      "name": "In Bearbeitung"
    }
  ],
  "type": "InProgress"
}