---
title: "Update a profile segment"
method: PUT
path: "/api/reach/v1/profiles/{profileUuid}/segmentation/segments/{segmentUuid}"
tags: ["Reach: Segments"]
---

# Update a profile segment

`PUT /api/reach/v1/profiles/{profileUuid}/segmentation/segments/{segmentUuid}`

Rename a segment and/or replace the conditions that define it.

`name` is always required. Omit `conditions` to rename without touching the conditions;
supply them and they replace the existing set entirely rather than being merged into it.
Contacts are never modified, but which of them match the segment can change immediately.

## Path parameters

- `profileUuid` string, required
- `segmentUuid` string, required

## Request body

- ReachV1ContactsSegmentsProfileUpdateRequest — Rename a segment and/or replace the conditions that define it
  - `name` string, required
  - `conditions` object[] — Replaces the existing conditions entirely. Omit to keep the current ones.
    - `attribute` string, required — A built-in contact attribute, or `cf:{fieldUuid}` to target a custom contact field. Custom fields are addressed by field UUID; their slug is not accepted. Built-in attributes: `email`, `note`, `domain`, `source`, `opt_in_method`, `subscription_status`, `subscribed_at`, `unsubscribed_at`, `created_at`, `tag`, `campaigns`, `processed`, `opened`, `clicked`, `delivered`, `bounced`, `soft_bounced`, `dropped`. Which operators are accepted depends on the attribute.
    - `operator` 'equals' | 'not_equals' | 'contains' | 'not_contains' | 'gte' | 'lte' | 'exists' | 'within_last_days' | 'not_within_last_days' | 'older_than_days' | 'processed' | 'not_processed' | 'delivered' | 'not_delivered' | 'dropped' | 'not_dropped' | 'bounced' | 'not_bounced' | 'soft_bounced' | 'not_soft_bounced' | 'opened' | 'not_opened' | 'clicked' | 'not_clicked' | 'unsubscribed' | 'not_unsubscribed', required
    - `value` string, required — Always a string, including for numeric and date comparisons
  - `logic` 'AND' | 'OR' — How to combine multiple conditions. Required when conditions are given.

## Response `200`

Success response

- ReachV1ContactsSegmentsSegmentResource
  - `uuid` string
  - `name` string
  - `query` unknown[]
    - unknown
  - `created_at` string, date-time
  - `updated_at` string, date-time

## Other responses

- `401` — Unauthenticated response
- `422` — Validation error response
- `500` — Error response

## Changes

- **2026-08-07** `796bd5194565` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/hostinger/apis/hostinger-api/changes/api/reach/v1/profiles/:profileUuid/segmentation/segments/:segmentUuid/put.md)

---

[API](https://skmtc.dev/hostinger/apis/hostinger-api.md) · [All operations](https://skmtc.dev/hostinger/apis/hostinger-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/hostinger/hostinger-api/revisions/53ccee45e5eb/schema)
