---
title: "/2026-01/retail-media/audience-segments/{audience-segment-id}/contact-list/add-remove"
method: POST
path: "/2026-01/retail-media/audience-segments/{audience-segment-id}/contact-list/add-remove"
tags: ["Audience"]
---

# /2026-01/retail-media/audience-segments/{audience-segment-id}/contact-list/add-remove

`POST /2026-01/retail-media/audience-segments/{audience-segment-id}/contact-list/add-remove`

## Request

- Base URL: `https://api.criteo.com`
- URL: `https://api.criteo.com/2026-01/retail-media/audience-segments/{audience-segment-id}/contact-list/add-remove`
- Auth: OAuth 2
  - Authorization code: `https://api.criteo.com/oauth2`
  - Client credentials
  - Token URL: `https://api.criteo.com/oauth2/token` scopes: `RetailMedia_Audience_Manage`
- TypeScript: <https://skmtc.dev/criteo/apis/criteo-api/docs/2026-01/retail-media/audience-segments/:audience-segment-id/contact-list/add-remove/post.ts> (a function with typed inputs; its response is checked against the schema)

Add/remove identifiers to or from a retail-media contact list audience-segment, with external audience segment id.

## Path parameters

- `audience-segment-id` string, int64, required

## Request body

- RetailMediaContactlistAmendmentRequest: Request of Retail Media contactlist
  - `data` RetailMediaContactlistAmendment, required: Request data of retail media contact list amendment
    - `attributes` object, required: Attributes of retail media contact list amendment
      - `identifiers` string[], required: The users to add or remove, each in the schema specified
      - `identifierType` 'Email' | 'UserIdentifier' | 'IdentityLink' | 'Gum' | 'CustomerId' | 'PhoneNumber': What type of identifiers are used
      - `operation` 'add' | 'remove', required: Whether to add or remove users
    - `type` string: User List

## Response `200`

Summary of created request

- RetailMediaContactlistOperation: Operation on Retail Media contact list
  - `data` RetailMediaContactlistOperationResponseAttributes, required: The attributes of Retail Media contact list operation
    - `contactListId` integer, required: The affected user list id
    - `identifierType` string, nullable: The schema specified for of the identifiers
    - `nbInvalidIdentifiers` integer, nullable: How many identifiers were invalid for the specified schema
    - `nbValidIdentifiers` integer, nullable: How many identifiers were valid for the specified schema
    - `operation` string, required: The action recorded
    - `requestDate` string, date-time, required: When the action was recorded
    - `sampleInvalidIdentifiers` string[], nullable: A sample of invalid identifiers if there is some
  - `errors` AudienceError[], required
    - `code` string, required: (REQUIRED) A machine-readable unique error code, expressed as a string value. The format used must be kebab-case.
    - `detail` string, nullable: (RECOMMENDED) A human-readable explanation specific to this occurrence of the problem
    - `instance` string, required: (REQUIRED) A URI reference that identifies the specific occurrence of the problem
    - `source` object, nullable: (OPTIONAL) A machine-readable structure to reference to the exact location(s) causing the error(s)
    - `stackTrace` string[], nullable: (NEVER IN PRODUCTION) A human-readable stacktrace produced by the implementation technology
    - `title` string, nullable: (RECOMMENDED) A short, human-readable summary of the problem type
    - `traceId` string, nullable: (REQUIRED) The Correlation ID provided by the Gateway. It is also a unique identifier for this particular occurrence of the problem.
    - `type` 'access-control' | 'authentication' | 'authorization' | 'availability' | 'deprecation' | 'quota' | 'validation', required: (REQUIRED) The classification of the error
  - `type` string, nullable: the name of the entity type
  - `warnings` AudienceWarning[], required
    - `code` string, required: (REQUIRED) A machine-readable unique error code, expressed as a string value. The format used must be kebab-case.
    - `detail` string, required: (REQUIRED) A human-readable explanation specific to this occurrence of the problem
    - `instance` string, required: (REQUIRED) A URI reference that identifies the specific occurrence of the problem
    - `source` object, nullable: (OPTIONAL) A machine-readable structure to reference to the exact location(s) causing the error(s)
    - `stackTrace` string[], nullable: (NEVER IN PRODUCTION) A human-readable stacktrace produced by the implementation technology
    - `title` string, nullable: (RECOMMENDED) A short, human-readable summary of the problem type
    - `traceId` string, nullable: (REQUIRED) The Correlation ID provided by the Gateway. It is also a unique identifier for this particular occurrence of the problem.
    - `type` 'access-control' | 'authentication' | 'authorization' | 'availability' | 'deprecation' | 'quota' | 'validation', required: (REQUIRED) The classification of the error

---

[API](https://skmtc.dev/criteo/apis/criteo-api.md) - [All operations](https://skmtc.dev/criteo/apis/criteo-api/llms.txt) - [OpenAPI document](https://skmtc.dev/criteo/apis/criteo-api/revisions/c1721589426a?raw)
