Custom Fields

Custom fields let you attach arbitrary key-value data to any entity. No schema changes needed — store domain-specific data that the standard fields don't cover.

Set a Custom Field

mutation {
  setCustomField(input: {
    name: "priority"
    data: "high"
    entity_id: "1"
    system_module_uuid: "the-system-module-uuid"
  }) {
    name
    value
  }
}

Read Custom Fields

Custom fields are included in entity queries:

query {
  leads(first: 10) {
    data {
      id title
      custom_fields { name value }
    }
  }
}

Set on Creation

mutation {
  createLead(input: {
    title: "New deal"
    people_id: 1
    pipeline_stage_id: 1
    custom_fields: [
      { name: "deal_value", data: "50000" }
      { name: "priority", data: "high" }
      { name: "source_campaign", data: "google-ads-q2" }
    ]
  }) {
    id title custom_fields { name value }
  }
}

Delete a Custom Field

mutation {
  deleteCustomField(input: {
    name: "priority"
    entity_id: "1"
    system_module_uuid: "the-system-module-uuid"
  })
}

Find System Module UUIDs

query {
  systemModels(first: 50) {
    data { id uuid name slug model_name }
  }
}