Zum Inhalt springen
Leadtime
Deutsch
Esc
↑↓navigieren↵öffnen⌘Jvorschau

Create project custom field

Creates a new custom field for capturing additional project information.

Required fields:

  • name: Display name for the field (e.g., “Priority Level”, “Region”)
  • type: Field type enum value (Text, Textarea, Number, Date, Checkbox, Select, MultiSelect)
  • translations: Array of translations for multilingual support

Optional fields:

  • id: Optional ID for the field (for updating existing fields)
  • description: Additional context about the field
  • selectOptions: Required for Select and MultiSelect types - array of option objects with:
    • id: Optional identifier (use value if not provided)
    • value: Display value for the option
    • translations: Array of translations for the option name
  • translationsDescriptions: Translations for the field description

Field type requirements:

  • Select and MultiSelect types MUST include selectOptions array
  • Other types do not use selectOptions

Values in project writes: Use the configured field ID as a key in project customFields, with a value matching this definition type. Custom fields store typed data; they do not create native scheduling, relationship, or billing behavior.

Note: Once created, the custom field will appear when creating or editing projects. The field can be reordered using the sort endpoint.

POST/administration/project-settings/custom-fields
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
descriptionstring

Optional description providing context about what information should be entered in this field. Helps users understand the purpose of the field.

idstring

Optional unique identifier for the custom field. Only needed when updating an existing field. If omitted, a new field will be created.

namestringrequired

Display name for the custom field. Shown as the field label in project forms (e.g., "Priority Level", "Region", "Server Name").

selectOptionsProjectCustomFieldSelectOptionDto[]

Array of select options. REQUIRED for Select and MultiSelect field types. Each option contains a value and translations. Not used for other field types.

Show properties
Array of ProjectCustomFieldSelectOptionDto
idstring

Optional unique identifier for the select option. If not provided, the value will be used as the identifier. Required when updating existing options.

translationsProjectCustomFieldSelectOptionTranslationDto[]required

Array of translations for multilingual support. Each translation contains a language code and translated display name. The system automatically shows the correct language based on user preferences.

Show properties
Array of ProjectCustomFieldSelectOptionTranslationDto
languagestringrequired

ISO 639-1 language code for the translation (e.g., "en" for English, "de" for German)

namestringrequired

Translated display name for the select option in this language. Shown to users when selecting from dropdown options.

valuestringrequired

Display value for the select option. This is the value stored when the option is selected. Must be unique within the field.

translationsProjectCustomFieldTranslationDto[]required

Array of translations for the field name. Each translation contains a language code and translated name. The system automatically displays the correct language based on user preferences.

Show properties
Array of ProjectCustomFieldTranslationDto
descriptionstring

Translated description of the custom field in this language. Provides context about what information should be entered.

languagestringrequired

ISO 639-1 language code for the translation (e.g., "en" for English, "de" for German)

namestring

Translated name of the custom field in this language. Used for multilingual display in project forms.

translationsDescriptionsProjectCustomFieldTranslationDto[]

Optional array of translations for the field description. Each translation contains a language code and translated description. Used for multilingual help text.

Show properties
Array of ProjectCustomFieldTranslationDto
descriptionstring

Translated description of the custom field in this language. Provides context about what information should be entered.

languagestringrequired

ISO 639-1 language code for the translation (e.g., "en" for English, "de" for German)

namestring

Translated name of the custom field in this language. Used for multilingual display in project forms.

typestringrequired

Field type enum value that determines what kind of input is used. Valid values: Text (single-line), Textarea (multi-line), Number, Date, Checkbox, Select (single choice), MultiSelect (multiple choices).

Allowed:TextTextareaNumberDateCheckboxSelectMultiSelectCurrencyUrl
Responses
201

Project custom field created successfully

descriptionstringrequired

Description providing context about what information should be entered in this field.

entitystringrequired

Entity type identifier. Always "Project" for project custom fields. Used internally to scope fields to specific entity types.

idstringrequired

Unique identifier (UUID) for the custom field. Used to reference this field when setting values on projects.

namestringrequired

Display name of the custom field. Shown as the field label in project forms.

selectOptionsProjectCustomFieldSelectOptionDto[]required

Array of select options for Select and MultiSelect field types. Each option contains an ID, value, and translations. Empty array for other field types.

Show properties
Array of ProjectCustomFieldSelectOptionDto
idstring

Optional unique identifier for the select option. If not provided, the value will be used as the identifier. Required when updating existing options.

translationsProjectCustomFieldSelectOptionTranslationDto[]required

Array of translations for multilingual support. Each translation contains a language code and translated display name. The system automatically shows the correct language based on user preferences.

Show properties
Array of ProjectCustomFieldSelectOptionTranslationDto
languagestringrequired

ISO 639-1 language code for the translation (e.g., "en" for English, "de" for German)

namestringrequired

Translated display name for the select option in this language. Shown to users when selecting from dropdown options.

valuestringrequired

Display value for the select option. This is the value stored when the option is selected. Must be unique within the field.

sortnumberrequired

Numeric sort order for display purposes. Lower numbers appear first in project forms. Determines the order in which fields are displayed.

translationsProjectCustomFieldTranslationDto[]required

Complete array of translations for the field name. Each translation contains the language code and localized name.

Show properties
Array of ProjectCustomFieldTranslationDto
descriptionstring

Translated description of the custom field in this language. Provides context about what information should be entered.

languagestringrequired

ISO 639-1 language code for the translation (e.g., "en" for English, "de" for German)

namestring

Translated name of the custom field in this language. Used for multilingual display in project forms.

typestringrequired

Field type enum value indicating the input type. Valid values: Text, Textarea, Number, Date, Checkbox, Select, MultiSelect.

Allowed:TextTextareaNumberDateCheckboxSelectMultiSelectCurrencyUrl
401

Unauthorized - Invalid or missing authentication token

403

Forbidden - Insufficient API scopes or permissions

Try it
Server
Authorization
Parameters
Bodyapplication/json
Request
curl -X POST "https://leadtime.app/api/public/administration/project-settings/custom-fields" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "description": "Priority level for the project",
  "id": "string",
  "name": "Priority Level",
  "selectOptions": [
    {
      "id": "option-1",
      "translations": [
        {
          "language": "en",
          "name": "High Priority"
        },
        {
          "language": "de",
          "name": "Hohe Priorität"
        }
      ],
      "value": "High Priority"
    }
  ],
  "translations": [
    {
      "language": "en",
      "name": "Priority Level"
    },
    {
      "language": "de",
      "name": "Prioritätsstufe"
    }
  ],
  "translationsDescriptions": [
    {
      "description": "Priority level for the project",
      "language": "en",
      "name": "Priority Level"
    }
  ],
  "type": "Select"
}'
Response
{
  "description": "Priority level for the project",
  "entity": "Project",
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "name": "Priority Level",
  "selectOptions": [
    {
      "id": "option-1",
      "translations": [
        {
          "language": "en",
          "name": "High Priority"
        },
        {
          "language": "de",
          "name": "Hohe Priorität"
        }
      ],
      "value": "High Priority"
    }
  ],
  "sort": 1,
  "translations": [
    {
      "description": "Priority level for the project",
      "language": "en",
      "name": "Priority Level"
    }
  ],
  "type": "Select"
}