HookLogic (Criteo) Audience API
The Audience API from HookLogic (Criteo) — 8 operation(s) for audience.
The Audience API from HookLogic (Criteo) — 8 operation(s) for audience.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/hooklogic-criteo-audience-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.2.0
info:
title: Criteo Accounts Audience API
description: Criteo API - RetailMedia
version: 2026-07
servers:
- url: https://api.criteo.com
security:
- oauth: []
tags:
- name: Audience
paths:
/2026-07/retail-media/accounts/{account-id}/audience-segments:
patch:
tags:
- Audience
summary: /2026-07/retail-media/accounts/{account-id}/audience-segments
description: Updates the properties of all segments with a valid configuration, and returns the full segments. For those that cannot be updated, one or multiple errors are returned.
operationId: bulkUpdateAudienceSegments
parameters:
- name: account-id
in: path
description: Account id
required: true
schema:
type: string
requestBody:
description: Segment Update request
content:
application/json:
schema:
$ref: '#/components/schemas/RmAudienceSegmentBulkUpdateInputV1'
required: true
x-bodyName: request
responses:
'200':
description: Success or partial success
content:
application/json:
schema:
$ref: '#/components/schemas/RmAudienceSegmentEntityV1ListResponse'
security:
- oauth:
- RetailMedia_Audience_Manage
/2026-07/retail-media/accounts/{account-id}/audience-segments/{audience-segment-id}/contact-list:
get:
tags:
- Audience
summary: /2026-07/retail-media/accounts/{account-id}/audience-segments/{audience-segment-id}/contact-list
description: Returns the statistics of a contact list segment.
operationId: getAudienceSegmentContactListStatistics
parameters:
- name: account-id
in: path
description: Account Id
required: true
schema:
type: string
- name: audience-segment-id
in: path
description: Segment Id.
required: true
schema:
type: string
responses:
'200':
description: Success or partial success
content:
application/json:
schema:
$ref: '#/components/schemas/RmContactListStatisticsEntityV1Response'
security:
- oauth:
- RetailMedia_Audience_Read
/2026-07/retail-media/accounts/{account-id}/audience-segments/create:
post:
tags:
- Audience
summary: /2026-07/retail-media/accounts/{account-id}/audience-segments/create
description: Creates all segments with a valid configuration, and returns the full segments. For those that cannot be created, one or multiple errors are returned.
operationId: bulkCreateAudienceSegments
parameters:
- name: account-id
in: path
description: Account Id
required: true
schema:
type: string
requestBody:
description: Segment creation parameter
content:
application/json:
schema:
$ref: '#/components/schemas/RmAudienceSegmentBulkCreateInputV1'
required: true
x-bodyName: request
responses:
'200':
description: Success or partial success
content:
application/json:
schema:
$ref: '#/components/schemas/RmAudienceSegmentEntityV1ListResponse'
security:
- oauth:
- RetailMedia_Audience_Manage
/2026-07/retail-media/accounts/{account-id}/audience-segments/delete:
post:
tags:
- Audience
summary: /2026-07/retail-media/accounts/{account-id}/audience-segments/delete
description: Delete the segments associated to the given IDs.
operationId: bulkDeleteAudienceSegments
parameters:
- name: account-id
in: path
description: Account id
required: true
schema:
type: string
requestBody:
description: Segment delete request.
content:
application/json:
schema:
$ref: '#/components/schemas/RmAudienceSegmentBulkDeleteInputV1'
required: true
x-bodyName: request
responses:
'200':
description: Success or partial success
content:
application/json:
schema:
$ref: '#/components/schemas/RmAudienceSegmentIdEntityV1ListResponse'
security:
- oauth:
- RetailMedia_Audience_Manage
/2026-07/retail-media/accounts/{account-id}/audience-segments/search:
post:
tags:
- Audience
summary: /2026-07/retail-media/accounts/{account-id}/audience-segments/search
description: Returns a list of segments that match the provided filters. If present, the filters are AND'ed together when applied.
operationId: searchAudienceSegments
parameters:
- name: account-id
in: path
description: Account Id
required: true
schema:
type: string
- name: limit
in: query
description: The number of elements to be returned. The default is 50 and the maximum is 500.
schema:
maximum: 500
minimum: 0
type: integer
format: int32
default: 50
- name: offset
in: query
description: The (zero-based) offset into the collection. The default is 0.
schema:
type: integer
format: int32
default: 0
requestBody:
description: Segment search filters.
content:
application/json:
schema:
$ref: '#/components/schemas/RmAudienceSegmentSearchInputV1'
required: true
x-bodyName: request
responses:
'200':
description: Success or partial success
content:
application/json:
schema:
$ref: '#/components/schemas/RmAudienceSegmentEntityV1RmAudienceSegmentSearchMetadataV1ListResponse'
security:
- oauth:
- RetailMedia_Audience_Read
/2026-07/retail-media/accounts/{account-id}/audiences/search:
post:
tags:
- Audience
summary: /2026-07/retail-media/accounts/{account-id}/audiences/search
description: Returns a list of audiences that match the provided filters. If present, the filters are AND'ed together when applied.
operationId: searchAudiences
parameters:
- name: account-id
in: path
description: Account Id
required: true
schema:
type: string
- name: limit
in: query
description: The number of elements to be returned. The default is 50 and the maximum is 500.
schema:
maximum: 500
minimum: 0
type: integer
format: int32
default: 50
- name: offset
in: query
description: The (zero-based) offset into the collection. The default is 0.
schema:
type: integer
format: int32
default: 0
requestBody:
description: Audience search filters.
content:
application/json:
schema:
$ref: '#/components/schemas/RmAudienceSearchInputV1'
required: true
x-bodyName: request
responses:
'200':
description: Success or partial success
content:
application/json:
schema:
$ref: '#/components/schemas/RmAudienceEntityV1RmAudienceSearchMetadataV1ListResponse'
security:
- oauth:
- RetailMedia_Audience_Read
/2026-07/retail-media/audience-segments/{audience-segment-id}/contact-list/add-remove:
post:
tags:
- Audience
summary: /2026-07/retail-media/audience-segments/{audience-segment-id}/contact-list/add-remove
description: Add/remove identifiers to or from a retail-media contact list audience-segment, with external audience segment id.
operationId: AddRemoveContactListByAudienceSegment
parameters:
- name: audience-segment-id
in: path
description: The id of the contact list audience-segment to amend, we only accept external Id here
required: true
schema:
type: string
format: int64
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RetailMediaContactlistAmendmentRequest'
required: true
x-bodyName: body
responses:
'200':
description: Summary of created request
content:
application/json:
schema:
$ref: '#/components/schemas/RetailMediaContactlistOperation'
example:
type: AddRemoveContactlistResult
data:
contactListId: 568708742535471104
operation: add
requestDate: '2018-12-10T10:00:50.0000000+00:00'
identifierType: madid
nbValidIdentifiers: 7343
nbInvalidIdentifiers: 13
sampleInvalidIdentifiers:
- InvalidIdentifier
errors:
- traceId: 667ac683ac797284.667ac683ac797284<:667ac683ac797284
type: availability
code: internal-error
instance: ''
title: Internal error
warnings:
- traceId: 56ed4096-f96a-4944-8881-05468efe0ec9
type: deprecation
code: deprecated-field
instance: /audiences/314195
title: '''nbValidIds'' is deprecated'
detail: The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers'
security:
- oauth:
- RetailMedia_Audience_Manage
/2026-07/retail-media/audience-segments/{audience-segment-id}/contact-list/clear:
post:
tags:
- Audience
summary: /2026-07/retail-media/audience-segments/{audience-segment-id}/contact-list/clear
description: Delete all identifiers from a retail-media contact list audience-segment, with external audience segment id.
operationId: ClearContactListByAudienceSegment
parameters:
- name: audience-segment-id
in: path
description: The id of the contact list audience-segment to amend, we only accept external Id here
required: true
schema:
type: string
format: int64
responses:
'204':
description: The Contact List identifiers were deleted
content:
application/json: {}
security:
- oauth:
- RetailMedia_Audience_Manage
components:
schemas:
RmAudienceSegmentDeleteEntityV1Resource:
type: object
properties:
attributes:
$ref: '#/components/schemas/RmAudienceSegmentDeleteEntityV1'
id:
type: string
description: Id of the entity
type:
type: string
description: A class that represents a domain entity exposed by an API
RmAlgebraNodeV1:
type:
- object
- 'null'
properties:
and:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/RmAlgebraNodeV1'
audienceSegmentId:
type:
- string
- 'null'
not:
$ref: '#/components/schemas/RmAlgebraNodeV1'
or:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/RmAlgebraNodeV1'
description: Node in the audience algebra definition.
RmAudienceSegmentCreateEntityV1:
required:
- name
- retailerId
type: object
properties:
contactList:
$ref: '#/components/schemas/RmContactListCreateV1'
description:
type: string
description: Description of the segment
events:
$ref: '#/components/schemas/RmEventsCreateV1'
name:
type: string
description: Name of the segment
retailerId:
type: string
description: Retailer associated to the segment
description: Set of rules that defines specific people to target.
RmAudienceEntityV1:
type:
- object
- 'null'
properties:
accountId:
type:
- string
- 'null'
description: Account associated to the audience
algebra:
$ref: '#/components/schemas/RmAlgebraNodeV1'
channels:
type:
- array
- 'null'
items:
enum:
- Unknown
- Onsite
- Offsite
type: string
description: Channels associated to the audience (read-only)
createdAt:
type:
- string
- 'null'
description: ISO-8601 timestamp in UTC of audience creation (read-only)
format: date-time
createdById:
type:
- string
- 'null'
description: User that created the audience
description:
type:
- string
- 'null'
description: Description of the audience
name:
type:
- string
- 'null'
description: Name of the audience
retailerId:
type:
- string
- 'null'
description: Retailer associated to the audience
updatedAt:
type:
- string
- 'null'
description: ISO-8601 timestamp in UTC of audience update (read-only)
format: date-time
description: Audience of people of interest for a marketer.
x-criteo-canonical:
infoType: entity
name: RetailMediaAudience
version: v1
RmAudienceSegmentEntityV1:
type:
- object
- 'null'
properties:
accountId:
type:
- string
- 'null'
description: Account associated to the segment
channels:
type:
- array
- 'null'
items:
enum:
- Unknown
- Onsite
- Offsite
type: string
description: Channels associated to the segment (read-only)
contactList:
$ref: '#/components/schemas/RmContactListV1'
createdAt:
type:
- string
- 'null'
description: ISO-8601 timestamp in UTC of segment creation (read-only)
format: date-time
createdById:
type:
- string
- 'null'
description: User that created the segment
description:
type:
- string
- 'null'
description: Description of the segment
events:
$ref: '#/components/schemas/RmEventsV1'
name:
type:
- string
- 'null'
description: Name of the segment
retailerId:
type:
- string
- 'null'
description: Retailer associated to the segment
type:
enum:
- Unknown
- ContactList
- Events
type:
- string
- 'null'
description: Type of segment (read-only)
updatedAt:
type:
- string
- 'null'
description: ISO-8601 timestamp in UTC of segment update (read-only)
format: date-time
description: Set of rules that defines specific people to target.
x-criteo-canonical:
infoType: entity
name: RetailMediaAudienceSegment
version: v1
RmContactListUpdateV1:
type: object
description: Settings to update the contact list of the segment
NillableString:
type:
- object
- 'null'
properties:
value:
type:
- string
- 'null'
description: The string's value. If missing or null the string's value is set to "null"
description: Placeholder object for string value for which "null" is a valid business value
RmAudienceEntityV1RmAudienceSearchMetadataV1ListResponse:
type: object
properties:
data:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/RmAudienceEntityV1Resource'
errors:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/CommonProblem'
readOnly: true
meta:
$ref: '#/components/schemas/RmAudienceSearchMetadataV1'
warnings:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/CommonProblem'
readOnly: true
description: A top-level object that encapsulates a Criteo API response for several entities and metadata
RmAudienceSegmentBulkUpdateInputV1:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/RmAudienceSegmentUpdateEntityV1Resource'
description: A top-level object that encapsulates a Criteo API request for several entities.
RmAudienceSearchEntityV1Resource:
type: object
properties:
attributes:
$ref: '#/components/schemas/RmAudienceSearchEntityV1'
type:
type: string
description: A top-level object that encapsulates a Criteo API response for a single value
AudienceError:
required:
- code
- instance
- type
type: object
properties:
code:
type: string
description: (REQUIRED) A machine-readable unique error code, expressed as a string value. The format used must be kebab-case.
detail:
type:
- string
- 'null'
description: (RECOMMENDED) A human-readable explanation specific to this occurrence of the problem
instance:
type: string
description: (REQUIRED) A URI reference that identifies the specific occurrence of the problem
source:
type:
- object
- 'null'
description: (OPTIONAL) A machine-readable structure to reference to the exact location(s) causing the error(s)
stackTrace:
type:
- array
- 'null'
items:
type: string
description: (NEVER IN PRODUCTION) A human-readable stacktrace produced by the implementation technology
title:
type:
- string
- 'null'
description: (RECOMMENDED) A short, human-readable summary of the problem type
traceId:
type:
- string
- 'null'
description: (REQUIRED) The Correlation ID provided by the Gateway. It is also a unique identifier for this particular occurrence of the problem.
type:
enum:
- access-control
- authentication
- authorization
- availability
- deprecation
- quota
- validation
type: string
description: (REQUIRED) The classification of the error
description: Definition of an audience error
RmAudienceSegmentEntityV1ListResponse:
type: object
properties:
data:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/RmAudienceSegmentEntityV1Resource'
errors:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/CommonProblem'
readOnly: true
warnings:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/CommonProblem'
readOnly: true
description: A top-level object that encapsulates a Criteo API response for several entities
RmEventsCreateV1:
required:
- lookbackDays
- shopperActivity
type: object
properties:
brandIds:
uniqueItems: true
type: array
items:
type: string
description: Choose the brands your segment might be interested in
categoryIds:
uniqueItems: true
type: array
items:
type: string
description: Choose the categories your segment might be interested in
lookbackDays:
enum:
- Last7Days
- Last14Days
- Last30Days
- Last45Days
- Last60Days
- Last90Days
- Last120Days
- Last150Days
- Last180Days
type: string
description: Number of days of the lookback windows
maxPrice:
type: number
description: Reach people who’ve shown interest in products with a maximum price
format: double
minPrice:
type: number
description: Reach people who’ve shown interest in products with a minimum price
format: double
shopperActivity:
enum:
- View
- Buy
- AddToCart
type: string
description: Types of shopper activity.
description: Settings to target users based on their behavior
RmAudienceSegmentSearchInputV1:
type: object
properties:
data:
$ref: '#/components/schemas/RmAudienceSegmentSearchEntityV1Resource'
description: A top-level object that encapsulates a Criteo API request for a single value.
RetailMediaContactlistAmendmentRequest:
required:
- data
type: object
properties:
data:
$ref: '#/components/schemas/RetailMediaContactlistAmendment'
description: Request of Retail Media contactlist
RmAudienceSearchInputV1:
type: object
properties:
data:
$ref: '#/components/schemas/RmAudienceSearchEntityV1Resource'
description: A top-level object that encapsulates a Criteo API request for a single value.
RmAudienceSegmentBulkCreateInputV1:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/RmAudienceSegmentCreateEntityV1Resource'
description: A top-level object that encapsulates a Criteo API request for several values.
RmContactListCreateV1:
type: object
properties:
identifierType:
enum:
- Email
- UserIdentifier
- IdentityLink
- CustomerId
- PhoneNumber
type: string
description: Indicates contact list type
description: Settings to target users with your contact lists.
RmAudienceSegmentIdEntityV1ListResponse:
type: object
properties:
data:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/RmAudienceSegmentIdEntityV1Resource'
errors:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/CommonProblem'
readOnly: true
warnings:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/CommonProblem'
readOnly: true
description: A top-level object that encapsulates a Criteo API response for several entities
NillableDecimal:
type:
- object
- 'null'
properties:
value:
type:
- number
- 'null'
description: The value. If missing or null the value is set to "null"
format: double
description: Placeholder object for value for which "null" is a valid business value
RmAudienceSegmentBulkDeleteInputV1:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/RmAudienceSegmentDeleteEntityV1Resource'
description: A top-level object that encapsulates a Criteo API request for several entities.
RetailMediaContactlistOperationResponseAttributes:
required:
- contactListId
- operation
- requestDate
type: object
properties:
contactListId:
type: integer
description: The affected user list id
format: int64
identifierType:
type:
- string
- 'null'
description: The schema specified for of the identifiers
nbInvalidIdentifiers:
type:
- integer
- 'null'
description: How many identifiers were invalid for the specified schema
format: int32
nbValidIdentifiers:
type:
- integer
- 'null'
description: How many identifiers were valid for the specified schema
format: int32
operation:
type: string
description: The action recorded
requestDate:
type: string
description: When the action was recorded
format: date-time
sampleInvalidIdentifiers:
type:
- array
- 'null'
items:
type: string
description: A sample of invalid identifiers if there is some
description: The attributes of Retail Media contact list operation
RetailMediaContactlistAmendment:
required:
- attributes
type: object
properties:
attributes:
required:
- identifiers
- operation
type: object
properties:
identifiers:
type: array
items:
type: string
description: The users to add or remove, each in the schema specified
identifierType:
enum:
- Email
- UserIdentifier
- IdentityLink
- Gum
- CustomerId
- PhoneNumber
type: string
description: What type of identifiers are used
operation:
enum:
- add
- remove
type: string
description: Whether to add or remove users
description: Attributes of retail media contact list amendment
type:
type: string
description: User List
example: AddRemoveContactlist
description: Request data of retail media contact list amendment
RmAudienceSegmentSearchEntityV1Resource:
type: object
properties:
attributes:
$ref: '#/components/schemas/RmAudienceSegmentSearchEntityV1'
type:
type: string
description: A top-level object that encapsulates a Criteo API response for a single value
RmAudienceEntityV1Resource:
type: object
properties:
attributes:
$ref: '#/components/schemas/RmAudienceEntityV1'
id:
type:
- string
- 'null'
description: Id of the entity
type:
type:
- string
- 'null'
description: A class that represents a domain entity exposed by an API
AudienceWarning:
required:
- code
- detail
- instance
- type
type: object
properties:
code:
type: string
description: (REQUIRED) A machine-readable unique error code, expressed as a string value. The format used must be kebab-case.
detail:
type: string
description: (REQUIRED) A human-readable explanation specific to this occurrence of the problem
instance:
type: string
description: (REQUIRED) A URI reference that identifies the specific occurrence of the problem
source:
type:
- object
- 'null'
description: (OPTIONAL) A machine-readable structure to reference to the exact location(s) causing the error(s)
stackTrace:
type:
- array
- 'null'
items:
type: string
description: (NEVER IN PRODUCTION) A human-readable stacktrace produced by the implementation technology
title:
type:
- string
- 'null'
description: (RECOMMENDED) A short, human-readable summary of the problem type
traceId:
type:
- string
- 'null'
description: (REQUIRED) The Correlation ID provided by the Gateway. It is also a unique identifier for this particular occurrence of the problem.
type:
enum:
- access-control
- authentication
- authorization
- availability
- deprecation
- quota
- validation
type: string
description: (REQUIRED) The classification of the error
description: Definition of the warning
RmContactListStatisticsEntityV1Response:
type: object
properties:
data:
$ref: '#/components/schemas/RmContactListStatisticsEntityV1Resource'
errors:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/CommonProblem'
readOnly: true
warnings:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/CommonProblem'
readOnly: true
description: A top-level object that encapsulates a Criteo API response for a single entity
RmAudienceSegmentDeleteEntityV1:
type: object
description: Segment to delete
x-criteo-canonical:
infoType: entity
name: RetailMediaAudienceSegment
version: v1
RmEventsUpdateV1:
type: object
properties:
brandIds:
type: array
items:
type: string
description: Choose the brands your segment might be interested in
categoryIds:
type: array
items:
type: string
description: Choose the categories your segment might be interested in
lookbackDays:
enum:
- Last7Days
- Last14Days
- Last30Days
- Last45Days
- Last60Days
- Last90Days
- Last120Days
- Last150Days
- Last180Days
type: string
description: Number of days of the lookback windows
maxPrice:
$ref: '#/components/schemas/NillableDecimal'
minPrice:
$ref: '#/components/schemas/NillableDecimal'
shopperActivity:
enum:
- View
- Buy
- AddToCart
type: string
description: Types of shopper activity.
description: Settings to target users based on their behavior
RmContactListStatisticsEntityV1Resource:
type:
- object
- 'null'
properties:
attributes:
$ref: '#/components/schemas/RmContactListStatisticsEntityV1'
id:
type:
- string
- 'null'
description: Id of the entity
type:
type:
- string
- 'null'
description: A class that represents a domain entity exposed by an API
RmAudienceSegmentUpdateEntityV1:
type: object
properties:
contactList:
$ref: '#/components/schemas/RmContactListUpdateV1'
description:
$ref: '#/components/schemas/NillableString'
events:
$ref: '#/components/schemas/RmEventsUpdateV1'
name:
type: string
description: Name of the segment
description: Set of rules that defines specific people to target.
x-criteo-canonical:
infoType: entity
name: RetailMediaAudienceSegment
version: v1
RmAudienceSegmentIdEntityV1:
type:
- object
- 'null'
description: Audience Segment entity only with its ID
x-criteo-canonical:
infoType: entity
name: RetailMediaAudienceSegment
version: v1
RmAudienceSegmentIdEntityV1Resource:
type: object
properties:
attributes:
$ref: '#/components/schemas/RmAudienceSegmentIdEntityV1'
id:
type:
- string
- 'null'
description: Id of the entity
type:
type:
- string
- 'null'
description: A class that represents a domain entity exposed by an API
RmAudienceSearchEntityV1:
type: object
pr
# --- truncated at 32 KB (41 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/hooklogic-criteo/refs/heads/main/openapi/hooklogic-criteo-audience-api-openapi.yml