API Docs

Create Custom Fields

Learn how to create custom fields using the Blue API.

Create Basic Custom Field

To create a simple custom field, use this base mutation:

mutation CreateCustomField {
  createCustomField(
    input: { 
      type: "CUSTOM_FIELD_TYPE", 
      name: "YOUR_CUSTOM_FIELD_NAME"
    }
  ) {
    name
    id
    type
    uid
    updatedAt
  }
}

Supported Basic Types

These field types can be created with the basic mutation:

TypeDescriptionExample Values
TEXT_SINGLESingle-line text field"Project Name"
URLURL field"Website URL"
FILEFile attachment field"Documents"
COUNTRYCountry selector"Country"
SELECT_SINGLESingle-select dropdown"Priority"
TEXT_MULTIMulti-line text field"Description"
PHONEPhone number field"Contact Number"
EMAILEmail address field"Support Email"
SELECT_MULTIMulti-select dropdown"Tags"
LOCATIONGeographic location"Meeting Point"
CHECKBOXBoolean checkbox"Approved"
PERCENTPercentage value"Completion"
Required Headers Ensure these headers are included in your request:
  • X-Bloo-Token-ID
  • X-Bloo-Token-Secret
  • X-Bloo-Company-ID
  • X-Bloo-Project-ID (for project-specific fields)

Specialized Field Types

Currency Field

mutation CreateCurrencyField {
  createCustomField(
    input: { 
      type: "CURRENCY", 
      name: "Budget",
      currency: "USD"
    }
  ) {
    id
    currency
    # ... other fields
  }
}

Date Field

mutation CreateDateField {
  createCustomField(
    input: { 
      type: "DATE", 
      name: "Launch Date",
      isDueDate: true
    }
  ) {
    id
    isDueDate
    # ... other fields
  }
}

Rating Field

mutation CreateRatingField {
  createCustomField(
    input: { 
      type: "RATING", 
      name: "Satisfaction",
      max: 5
    }
  ) {
    id
    max
    # ... other fields
  }
}

Number Field

mutation CreateNumberField {
  createCustomField(
    input: { 
      type: "NUMBER", 
      name: "Quantity",
      min: 0,
      max: 100
    }
  ) {
    id
    min
    max
    # ... other fields
  }
}

Unique ID Field

mutation CreateUniqueIdField {
  createCustomField(
    input: { 
      type: "UNIQUE_ID", 
      name: "Order ID",
      prefix: "ORD-"
    }
  ) {
    id
    prefix
    # ... other fields
  }
}

Custom Field Options

For SELECT_SINGLE and SELECT_MULTI types, create options:

Single Option

mutation CreateFieldOption {
  createCustomFieldOption(
    input: {
      customFieldId: "FIELD_ID",
      title: "High Priority",
      color: "#ff0000",
      position: 1.0
    }
  ) {
    id
    title
    color
  }
}

Multiple Options

mutation CreateMultipleOptions {
  createCustomFieldOptions(
    input: {
      customFieldId: "FIELD_ID",
      customFieldOptions: [
        {title: "Bug", color: "#ff0000"},
        {title: "Feature", color: "#00ff00"},
        {title: "Improvement", position: 2.5}
      ]
    }
  ) {
    id
    title
    position
  }
}

Advanced Field Types

The following field types are supported in the API but require additional configuration:

  • TIME_DURATION - For tracking time estimates and actuals
  • LOOKUP - For referencing data from other records
  • REFERENCE - For linking to other records
  • FORMULA - For calculated fields based on other values
Color Formatting When specifying colors:
  • Use hex format (#RRGGBB)
  • Omit alpha channel
  • Defaults to Blue's primary color if empty

Sample Response

{
  "data": {
    "createCustomField": {
      "id": "cf_2XnZk4sM3v8qLtBw",
      "name": "Project Budget",
      "type": "CURRENCY",
      "currency": "USD",
      "uid": "budget",
      "updatedAt": "2024-02-15T08:30:45Z"
    }
  }
}