List Custom Fields

Custom fields define extra structured data you can store on contacts. Each field has a slug (unique per workspace) used when setting values on a contact. Fields can be scoped to a profile.

The custom field object

{
  "id": "cf_2dP...",
  "profile_id": null,
  "name": "Plan",
  "slug": "plan",
  "type": "select",
  "options": ["free", "pro", "enterprise"],
  "created_at": "2026-07-12T10:00:00.000Z",
  "updated_at": "2026-07-12T10:00:00.000Z"
}

Field type is one of text, number, date, boolean, or select. options applies to select.

GET/v1/custom-fields

Filter with ?profile_id=.

GET /v1/custom-fields
curl https://api.socialit.com/v1/custom-fields \
  -H "Authorization: Bearer sk_live_..."
{
  "custom_fields": [
    {
      "id": "cf_2dP...",
      "profile_id": null,
      "name": "Plan",
      "slug": "plan",
      "type": "select",
      "options": [
        "free",
        "pro",
        "enterprise"
      ],
      "created_at": "2026-07-12T10:00:00.000Z",
      "updated_at": "2026-07-12T10:00:00.000Z"
    }
  ]
}

Create Custom Field

POST/v1/custom-fields

Body parameters

FieldTypeNotes
namestringRequired
typestringRequired
slugstringOptional; derived from name if omitted
profile_idstringOptional
optionsarrayFor select
POST /v1/custom-fields
curl -X POST https://api.socialit.com/v1/custom-fields \
  -H "Authorization: Bearer sk_live_..." \
  -H "Content-Type: application/json" \
  -d '{ "name": "Plan", "type": "select", "options": ["free", "pro"] }'
{
  "custom_field": {
    "id": "cf_2dP...",
    "profile_id": null,
    "name": "Plan",
    "slug": "plan",
    "type": "select",
    "options": [
      "free",
      "pro",
      "enterprise"
    ],
    "created_at": "2026-07-12T10:00:00.000Z",
    "updated_at": "2026-07-12T10:00:00.000Z"
  }
}

Update Custom Field

PATCH/v1/custom-fields/:id

Update name or options.

PATCH /v1/custom-fields/:id
curl -X PATCH https://api.socialit.com/v1/custom-fields/cf_2dP... \
  -H "Authorization: Bearer sk_live_..." \
  -H "Content-Type: application/json" \
  -d '{ "options": ["free", "pro", "enterprise"] }'
{
  "custom_field": {
    "id": "cf_2dP...",
    "profile_id": null,
    "name": "Plan",
    "slug": "plan",
    "type": "select",
    "options": [
      "free",
      "pro",
      "enterprise"
    ],
    "created_at": "2026-07-12T10:00:00.000Z",
    "updated_at": "2026-07-12T10:00:00.000Z"
  }
}

Delete Custom Field

DELETE/v1/custom-fields/:id
DELETE /v1/custom-fields/:id
curl -X DELETE https://api.socialit.com/v1/custom-fields/cf_2dP... \
  -H "Authorization: Bearer sk_live_..."
{ "ok": true }

To set a value on a contact, see Set Custom Field.