Dashboard

Segments

Auth Required

Create Segment

POSThttps://api.inboxjot.com/v1/segments

Creates a segment. A static segment holds the contacts you add. A dynamic segment holds every contact that matches its rules, and keeps itself up to date. Needs a Full key. A key limited to one domain answers 403. Send an optional Idempotency-Key header to retry safely. See Idempotency.

POST/v1/segments
curl -X POST https://api.inboxjot.com/v1/segments \
  -H "Authorization: Bearer $INBOXJOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Engaged customers",
    "type": "dynamic",
    "conditions": {
      "match": "all",
      "rules": [
        {
          "field": "property.plan",
          "operator": "is",
          "value": "pro"
        },
        {
          "field": "email.opened",
          "operator": "within",
          "value": "30d"
        }
      ]
    }
  }'
{
  "id": "seg_06d2mfk8r2kd7fq4mx9ab",
  "name": "Engaged customers",
  "description": null,
  "type": "dynamic",
  "conditions": {
    "match": "all",
    "rules": [
      {
        "field": "property.plan",
        "operator": "is",
        "value": "pro"
      },
      {
        "field": "email.opened",
        "operator": "within",
        "value": "30d"
      }
    ]
  },
  "contact_count": null,
  "counted_at": null,
  "created_at": "2026-10-01T12:00:00.000Z",
  "updated_at": "2026-10-01T12:00:00.000Z"
}

Created the segment.

Body Parameters

namestringrequired

The segment name, 1 to 100 characters.

descriptionstring | null

A description, up to 500 characters.

typestringrequired

static or dynamic.

conditionsobject | null

Needed for a dynamic segment, and not allowed for a static one.

Response

idstring

The segment id.

namestring

The segment name.

descriptionstring | null

The description.

typestring

static or dynamic.

conditionsobject | null

The rules of a dynamic segment. null for a static one.

contact_countinteger | null

How many contacts are in it. null until a dynamic segment is first counted.

counted_atstring | null

When a dynamic segment was last counted.

created_atstring

When it was created.

updated_atstring

When it last changed.

Responses

POST/v1/segments
curl -X POST https://api.inboxjot.com/v1/segments \
  -H "Authorization: Bearer $INBOXJOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Engaged customers",
    "type": "dynamic",
    "conditions": {
      "match": "all",
      "rules": [
        {
          "field": "property.plan",
          "operator": "is",
          "value": "pro"
        },
        {
          "field": "email.opened",
          "operator": "within",
          "value": "30d"
        }
      ]
    }
  }'
{
  "id": "seg_06d2mfk8r2kd7fq4mx9ab",
  "name": "Engaged customers",
  "description": null,
  "type": "dynamic",
  "conditions": {
    "match": "all",
    "rules": [
      {
        "field": "property.plan",
        "operator": "is",
        "value": "pro"
      },
      {
        "field": "email.opened",
        "operator": "within",
        "value": "30d"
      }
    ]
  },
  "contact_count": null,
  "counted_at": null,
  "created_at": "2026-10-01T12:00:00.000Z",
  "updated_at": "2026-10-01T12:00:00.000Z"
}

Created the segment.