Uptimeify Docs
Custom fields

Create Custom Field

Creates a new custom field definition.

POST /api/custom-fields

Requires the admin role (or a global admin). Editors and read-only users receive 403.

Request Body

FieldTypeRequiredDefaultDescription
organizationIdnumberNofrom sessionMust match your own organization if given
namestringYes-Display name, 1 to 100 characters
fieldKeystringNoauto from nameUnique key, max 100 characters (auto-normalized: lowercase, non-alphanumeric → _)
fieldTypestringNotextOne of text, number, email, url, select
isRequiredbooleanNofalseWhether the field is required
displayOrdernumberNo0Sort order, integer 0 to 10000
optionsstring[]No[]Options for the select type, max 50 entries of max 100 characters each
placeholderstring|nullNonullPlaceholder text, max 200 characters
helpTextstring|nullNonullHelp text below the field, max 500 characters
showInTablebooleanNotrueShow in table views

Example (cURL)

curl -X POST "$BASE_URL/api/custom-fields" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "organizationId": 1,
    "name": "Environment",
    "fieldType": "select",
    "options": ["production", "staging", "development"],
    "isRequired": true,
    "showInTable": true
  }'

Common errors

  • 400 Bad Request when the body fails validation (unknown fieldType, name missing or over 100 characters, more than 50 options)
  • 403 Forbidden when your role is not admin, or when organizationId names another organization
  • 409 Conflict when fieldKey already exists for the organization

Response

Returns the created custom field object. See Error Codes for error responses.

On this page