Skip to main content

Create Segment

Create a new segment or cohort to save filter combinations and track specific audience groups.

Endpoint

POST /api/websites/{websiteId}/segments

Headers

Authorization
string
required
Bearer token for authentication

Path Parameters

websiteId
string
required
Website UUID

Request Body

type
string
required
Segment type: segment or cohort
name
string
required
Segment name (max 200 characters)
parameters
object
required
Segment configuration parameters. Structure varies based on segment type and use case.

Response

id
string
Segment UUID
websiteId
string
Website UUID
type
string
Segment type
name
string
Segment name
parameters
object
Segment configuration parameters
createdAt
string
ISO 8601 timestamp of creation

Example Request

curl -X POST "https://your-umami-instance.com/api/websites/550e8400-e29b-41d4-a716-446655440000/segments" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "type": "segment",
    "name": "Mobile Users from US",
    "parameters": {
      "filters": {
        "device": "mobile",
        "country": "US"
      }
    }
  }'

Example Response

{
  "id": "770e8400-e29b-41d4-a716-446655440001",
  "websiteId": "550e8400-e29b-41d4-a716-446655440000",
  "type": "segment",
  "name": "Mobile Users from US",
  "parameters": {
    "filters": {
      "device": "mobile",
      "country": "US"
    }
  },
  "createdAt": "2024-03-15T09:20:00.000Z"
}
You must have update permissions for the website to create segments. The parameters object structure is flexible and can contain any valid JSON.

Build docs developers (and LLMs) love