segments

Embed
Preview of the card
<a href="https://hermeticor.com/docs/ref-segments"><img src="https://hermeticor.com/docs/_api/public/orgs/5fcd8b3c-a27c-4688-972f-de710125592f/spaces/caf5dc05-15f7-4e0c-bdb8-ab29ede6211e/pages/a1bf95e7-ade8-4fcf-b9dd-0119dc7aeef8/social-card.svg?v=3e7ae33eec8b" alt="segments" width="600" height="315"></a>
GEThttps://hermeticor.com/v1/segments/{id}/members

Current members with the time each joined; filter by email, phone or join date, sort by join date

Parameters

limitintegerquery
= 50
cursorstringquery
emailstringquery
phonestringquery
joinedFromstringquery
joinedTostringquery
sortstringquery
joined_at | -joined_at
idstringpathrequired

Code samples

cURL
curl -X GET "https://hermeticor.com/v1/segments/{id}/members" \
  -H "Authorization: Bearer $HERMETICOR_API_KEY"
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response
Example
{
  "items": [
    {
      "id": "string",
      "emailPrimary": "string",
      "phonePrimary": "string",
      "firstName": "string",
      "lastName": "string",
      "timezone": "string",
      "locale": "string",
      "country": "string",
      "city": "string",
      "region": "string",
      "source": "string",
      "lifecycleStage": "string",
      "ownerUserId": "string",
      "attributes": {},
      "tags": [
        "string"
      ],
      "mergedIntoId": "string",
      "archivedAt": "2024-01-01T00:00:00Z",
      "createdAt": "2024-01-01T00:00:00Z",
      "updatedAt": "2024-01-01T00:00:00Z",
      "consentIgnored": [
        "email"
      ],
      "joinedAt": "2024-01-01T00:00:00Z"
    }
  ],
  "nextCursor": "string"
}
Schema
itemsobject[]required
Show child parameters
idstringrequired
emailPrimarystringrequired
phonePrimarystringrequired
firstNamestringrequired
lastNamestringrequired
timezonestringrequired
localestringrequired
countrystringrequired
citystringrequired
regionstringrequired
sourcestringrequired
lifecycleStagestringrequired
ownerUserIdstringrequired
attributesobjectrequired
tagsstring[]required
mergedIntoIdstringrequired
archivedAtstring
createdAtstringrequired
updatedAtstringrequired
consentIgnoredstring[]
joinedAtstringrequired
nextCursorstringrequired
4XX Default Response
Example
{
  "error": {
    "code": "string",
    "message": "string",
    "details": {}
  }
}
Schema
errorobjectrequired
Show child parameters
codestringrequired
messagestringrequired
detailsobject
5XX Default Response

Same as 4XX · GET /v1/segments/{id}/members

POSThttps://hermeticor.com/v1/segments/{id}/members

Add existing contacts to a hand-picked segment by profile id or email (grants no consent)

Parameters

idstringpathrequired

Request body

application/json
profileIdsstring[]
= []
emailsstring[]
= []
{
  "profileIds": [],
  "emails": []
}

Code samples

cURL
curl -X POST "https://hermeticor.com/v1/segments/{id}/members" \
  -H "Authorization: Bearer $HERMETICOR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"profileIds":[],"emails":[]}'
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response
Example
{
  "changed": 0,
  "notFound": [
    "string"
  ]
}
Schema
changedintegerrequired
notFoundstring[]required
4XX Default Response

Same as 4XX · GET /v1/segments/{id}/members

5XX Default Response

Same as 4XX · GET /v1/segments/{id}/members

DELETEhttps://hermeticor.com/v1/segments/{id}/members

Remove contacts from a hand-picked segment by profile id or email

Parameters

idstringpathrequired

Request body

application/json
profileIdsstring[]
= []
emailsstring[]
= []
{
  "profileIds": [],
  "emails": []
}

Code samples

cURL
curl -X DELETE "https://hermeticor.com/v1/segments/{id}/members" \
  -H "Authorization: Bearer $HERMETICOR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"profileIds":[],"emails":[]}'
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response

Same as 200 · POST /v1/segments/{id}/members

4XX Default Response

Same as 4XX · GET /v1/segments/{id}/members

5XX Default Response

Same as 4XX · GET /v1/segments/{id}/members

GEThttps://hermeticor.com/v1/segments/{id}/objects

Members of an object segment, each with the profiles linked to it

Parameters

limitintegerquery
= 50
cursorstringquery
idstringpathrequired

Code samples

cURL
curl -X GET "https://hermeticor.com/v1/segments/{id}/objects" \
  -H "Authorization: Bearer $HERMETICOR_API_KEY"
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response
Example
{
  "items": [
    {
      "objectId": "string",
      "externalId": "string",
      "name": "string",
      "attributes": {},
      "joinedAt": "2024-01-01T00:00:00Z",
      "profileIds": [
        "string"
      ]
    }
  ],
  "nextCursor": "string"
}
Schema
itemsobject[]required
Show child parameters
objectIdstringrequired
externalIdstringrequired
namestringrequired
attributesobjectrequired
joinedAtstringrequired
profileIdsstring[]required
nextCursorstringrequired
4XX Default Response

Same as 4XX · GET /v1/segments/{id}/members

5XX Default Response

Same as 4XX · GET /v1/segments/{id}/members

GEThttps://hermeticor.com/v1/segments/{id}/snapshots

Saved snapshots of a segment, newest first

Parameters

limitintegerquery
Page size; omitted returns the whole list
cursorstringquery
Opaque: the nextCursor of the previous page
idstringpathrequired

Code samples

cURL
curl -X GET "https://hermeticor.com/v1/segments/{id}/snapshots" \
  -H "Authorization: Bearer $HERMETICOR_API_KEY"
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response
Example
{
  "items": [
    {
      "id": "string",
      "segmentId": "string",
      "takenAt": "2024-01-01T00:00:00Z",
      "count": 0
    }
  ],
  "nextCursor": "string"
}
Schema
itemsPostV1SegmentsByIdSnapshotsResponse[]required
Show child parameters
idstringrequired
segmentIdstringrequired
takenAtstringrequired
countintegerrequired
nextCursorstringrequired
4XX Default Response

Same as 4XX · GET /v1/segments/{id}/members

5XX Default Response

Same as 4XX · GET /v1/segments/{id}/members

POSThttps://hermeticor.com/v1/segments/{id}/snapshots

Parameters

idstringpathrequired

Code samples

cURL
curl -X POST "https://hermeticor.com/v1/segments/{id}/snapshots" \
  -H "Authorization: Bearer $HERMETICOR_API_KEY"
TypeScript
Python
Go
PHP
Ruby
Java

Responses

201 Default Response
Example
{
  "id": "string",
  "segmentId": "string",
  "takenAt": "2024-01-01T00:00:00Z",
  "count": 0
}
Schema
idstringrequired
segmentIdstringrequired
takenAtstringrequired
countintegerrequired
4XX Default Response

Same as 4XX · GET /v1/segments/{id}/members

5XX Default Response

Same as 4XX · GET /v1/segments/{id}/members

GEThttps://hermeticor.com/v1/segments/{id}/versions

Parameters

limitintegerquery
Page size; omitted returns the whole list
cursorstringquery
Opaque: the nextCursor of the previous page
idstringpathrequired

Code samples

cURL
curl -X GET "https://hermeticor.com/v1/segments/{id}/versions" \
  -H "Authorization: Bearer $HERMETICOR_API_KEY"
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response
Example
{
  "items": [
    {
      "id": "string",
      "segmentId": "string",
      "n": 0,
      "definition": {
        "type": "group",
        "op": "and",
        "negate": true,
        "children": [
          {}
        ]
      },
      "createdBy": "string",
      "createdAt": "2024-01-01T00:00:00Z"
    }
  ],
  "nextCursor": "string"
}
Schema
itemsobject[]required
Show child parameters
idstringrequired
segmentIdstringrequired
nintegerrequired
definitionobjectrequired
Show child parameters
typestringrequired
group
opstringrequired
and | or
negateboolean
childrenschema0[]required
createdBystringrequired
createdAtstringrequired
nextCursorstringrequired
4XX Default Response

Same as 4XX · GET /v1/segments/{id}/members

5XX Default Response

Same as 4XX · GET /v1/segments/{id}/members

POSThttps://hermeticor.com/v1/segments/{id}/versions/{n}/restore

Put an earlier version of the rules back as the current rules (recorded as a new version)

Parameters

idstringpathrequired
nintegerpathrequired

Code samples

cURL
curl -X POST "https://hermeticor.com/v1/segments/{id}/versions/{n}/restore" \
  -H "Authorization: Bearer $HERMETICOR_API_KEY"
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response
Example
{
  "id": "string",
  "name": "string",
  "description": "string",
  "folder": "string",
  "definition": {
    "type": "group",
    "op": "and",
    "negate": true,
    "children": [
      {}
    ]
  },
  "status": "active",
  "evalStatus": "pending",
  "lastEvaluatedAt": "2024-01-01T00:00:00Z",
  "memberCount": 0,
  "dependencyKeys": [
    "string"
  ],
  "version": 0,
  "subject": "string",
  "starred": true,
  "tags": [
    "string"
  ],
  "createdAt": "2024-01-01T00:00:00Z",
  "updatedAt": "2024-01-01T00:00:00Z"
}
Schema
idstringrequired
namestringrequired
descriptionstringrequired
folderstringrequired
definitionobjectrequired
Show child parameters
typestringrequired
group
opstringrequired
and | or
negateboolean
childrenschema0[]required
statusstringrequired
active | archived
evalStatusstringrequired
pending | ready | failed
lastEvaluatedAtstringrequired
memberCountintegerrequired
dependencyKeysstring[]required
versionintegerrequired
subjectstringrequired
starredbooleanrequired
tagsstring[]
createdAtstringrequired
updatedAtstringrequired
4XX Default Response

Same as 4XX · GET /v1/segments/{id}/members

5XX Default Response

Same as 4XX · GET /v1/segments/{id}/members

Updated