openapi: 3.0.1
info:
title: Coveo Event API
description: API for Coveo Platform
termsOfService: https://www.coveo.com/en/support/terms-agreements
contact:
name: Coveo
url: https://connect.coveo.com/s/discussions
version: 1.0.0
servers:
- url: https://platform.cloud.coveo.com
description: Coveo public API endpoint
security:
- oauth2:
- full
tags:
- name: Event API
description: The [Coveo Cloud Event API](https://docs.coveo.com/en/o3r90189/) allows you to log all events from end-user
interactions. The event protocol reference can be found [here](https://docs.coveo.com/en/n9da0377).
- name: Usage Analytics Event Validation API
description: Validate usage analytics events from the [Coveo Usage Analytics Write API](https://docs.coveo.com/en/1373)
paths:
/rest/organizations/{organizationId}/events/v1:
post:
tags:
- Event API
summary: Send Events to Coveo Analytics.
description: 'Privilege required
```
{"owner":"USAGE_ANALYTICS","targetDomain":"ANALYTICS_DATA","type":"EDIT","targetId":"*"}
```
'
operationId: sendEvents
parameters:
- name: organizationId
in: path
required: true
schema:
type: string
requestBody:
description: events
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/JsonNode'
required: true
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/EventsResponseModel'
x-pretty-name: sendEvents
x-required-privilege:
owner: USAGE_ANALYTICS
targetDomain: ANALYTICS_DATA
type: EDIT
targetId: '*'
x-required-privileges:
- owner: USAGE_ANALYTICS
targetDomain: ANALYTICS_DATA
type: EDIT
targetId: '*'
x-ui-operation-id: /rest/organizations/paramId/events/v1_post
/rest/organizations/{organizationId}/events/v1/validate:
post:
tags:
- Event API
summary: Validate Events with Coveo Analytics.
description: 'Privilege required
```
{"owner":"USAGE_ANALYTICS","targetDomain":"ANALYTICS_DATA","type":"EDIT","targetId":"*"}
```
'
operationId: validateEvents
parameters:
- name: organizationId
in: path
required: true
schema:
type: string
requestBody:
description: events
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/JsonNode'
required: true
responses:
'200':
description: OK
content:
'*/*':
schema:
type: array
items:
$ref: '#/components/schemas/ClientValidateEventResponseModel'
x-pretty-name: validateEvents
x-required-privilege:
owner: USAGE_ANALYTICS
targetDomain: ANALYTICS_DATA
type: EDIT
targetId: '*'
x-required-privileges:
- owner: USAGE_ANALYTICS
targetDomain: ANALYTICS_DATA
type: EDIT
targetId: '*'
x-ui-operation-id: /rest/organizations/paramId/events/v1/validate_post
/rest/organizations/{organizationId}/events/v1/requests/validate:
post:
tags:
- Event API
summary: Validate Coveo API Requests.
description: 'Privilege required
```
{"owner":"USAGE_ANALYTICS","targetDomain":"ANALYTICS_DATA","type":"EDIT","targetId":"*"}
```
'
operationId: validateRequest
parameters:
- name: organizationId
in: path
required: true
schema:
type: string
- name: type
in: query
description: The request type
required: true
schema:
type: string
example: commerce.recommendations
- name: version
in: query
description: The API version
required: true
schema:
type: integer
format: int32
example: 2
requestBody:
description: request
content:
application/json:
schema:
$ref: '#/components/schemas/JsonNode'
required: true
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/ClientValidateEventResponseModel'
x-pretty-name: validateRequest
x-required-privilege:
owner: USAGE_ANALYTICS
targetDomain: ANALYTICS_DATA
type: EDIT
targetId: '*'
x-required-privileges:
- owner: USAGE_ANALYTICS
targetDomain: ANALYTICS_DATA
type: EDIT
targetId: '*'
x-ui-operation-id: /rest/organizations/paramId/events/v1/requests/validate_post
/rest/organizations/{organizationId}/events/v1/analytics/view/validate:
post:
tags:
- Usage Analytics Event Validation API
summary: Validate View Event
description: 'Privilege required
```
{"owner":"USAGE_ANALYTICS","targetDomain":"ANALYTICS_DATA","type":"EDIT","targetId":"*"}
```
'
operationId: validateViewEvent
parameters:
- name: organizationId
in: path
required: true
schema:
type: string
requestBody:
description: event
content:
application/json:
schema:
$ref: '#/components/schemas/JsonNode'
required: true
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/ClientValidateEventResponseModel'
x-pretty-name: validateViewEvent
x-required-privilege:
owner: USAGE_ANALYTICS
targetDomain: ANALYTICS_DATA
type: EDIT
targetId: '*'
x-required-privileges:
- owner: USAGE_ANALYTICS
targetDomain: ANALYTICS_DATA
type: EDIT
targetId: '*'
x-ui-operation-id: /rest/organizations/paramId/events/v1/analytics/view/validate_post
/rest/organizations/{organizationId}/events/v1/analytics/searches/validate:
post:
tags:
- Usage Analytics Event Validation API
summary: Validate Search Events
description: 'Privilege required
```
{"owner":"USAGE_ANALYTICS","targetDomain":"ANALYTICS_DATA","type":"EDIT","targetId":"*"}
```
'
operationId: validateSearchesEvent
parameters:
- name: organizationId
in: path
required: true
schema:
type: string
requestBody:
description: event
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/JsonNode'
required: true
responses:
'200':
description: OK
content:
'*/*':
schema:
type: array
items:
$ref: '#/components/schemas/ClientValidateEventResponseModel'
x-pretty-name: validateSearchesEvent
x-required-privilege:
owner: USAGE_ANALYTICS
targetDomain: ANALYTICS_DATA
type: EDIT
targetId: '*'
x-required-privileges:
- owner: USAGE_ANALYTICS
targetDomain: ANALYTICS_DATA
type: EDIT
targetId: '*'
x-ui-operation-id: /rest/organizations/paramId/events/v1/analytics/searches/validate_post
/rest/organizations/{organizationId}/events/v1/analytics/search/validate:
post:
tags:
- Usage Analytics Event Validation API
summary: Validate Search Event
description: 'Privilege required
```
{"owner":"USAGE_ANALYTICS","targetDomain":"ANALYTICS_DATA","type":"EDIT","targetId":"*"}
```
'
operationId: validateSearchEvent
parameters:
- name: organizationId
in: path
required: true
schema:
type: string
requestBody:
description: event
content:
application/json:
schema:
$ref: '#/components/schemas/JsonNode'
required: true
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/ClientValidateEventResponseModel'
x-pretty-name: validateSearchEvent
x-required-privilege:
owner: USAGE_ANALYTICS
targetDomain: ANALYTICS_DATA
type: EDIT
targetId: '*'
x-required-privileges:
- owner: USAGE_ANALYTICS
targetDomain: ANALYTICS_DATA
type: EDIT
targetId: '*'
x-ui-operation-id: /rest/organizations/paramId/events/v1/analytics/search/validate_post
/rest/organizations/{organizationId}/events/v1/analytics/custom/validate:
post:
tags:
- Usage Analytics Event Validation API
summary: Validate Custom Event
description: 'Privilege required
```
{"owner":"USAGE_ANALYTICS","targetDomain":"ANALYTICS_DATA","type":"EDIT","targetId":"*"}
```
'
operationId: validateCustomEvent
parameters:
- name: organizationId
in: path
required: true
schema:
type: string
requestBody:
description: event
content:
application/json:
schema:
$ref: '#/components/schemas/JsonNode'
required: true
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/ClientValidateEventResponseModel'
x-pretty-name: validateCustomEvent
x-required-privilege:
owner: USAGE_ANALYTICS
targetDomain: ANALYTICS_DATA
type: EDIT
targetId: '*'
x-required-privileges:
- owner: USAGE_ANALYTICS
targetDomain: ANALYTICS_DATA
type: EDIT
targetId: '*'
x-ui-operation-id: /rest/organizations/paramId/events/v1/analytics/custom/validate_post
/rest/organizations/{organizationId}/events/v1/analytics/collect/validate:
post:
tags:
- Usage Analytics Event Validation API
summary: Validate Collect Event
description: 'Privilege required
```
{"owner":"USAGE_ANALYTICS","targetDomain":"ANALYTICS_DATA","type":"EDIT","targetId":"*"}
```
'
operationId: validateCollectEvent
parameters:
- name: organizationId
in: path
required: true
schema:
type: string
requestBody:
description: event
content:
application/json:
schema:
$ref: '#/components/schemas/JsonNode'
required: true
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/ClientValidateEventResponseModel'
x-pretty-name: validateCollectEvent
x-required-privilege:
owner: USAGE_ANALYTICS
targetDomain: ANALYTICS_DATA
type: EDIT
targetId: '*'
x-required-privileges:
- owner: USAGE_ANALYTICS
targetDomain: ANALYTICS_DATA
type: EDIT
targetId: '*'
x-ui-operation-id: /rest/organizations/paramId/events/v1/analytics/collect/validate_post
/rest/organizations/{organizationId}/events/v1/analytics/click/validate:
post:
tags:
- Usage Analytics Event Validation API
summary: Validate Click Event
description: 'Privilege required
```
{"owner":"USAGE_ANALYTICS","targetDomain":"ANALYTICS_DATA","type":"EDIT","targetId":"*"}
```
'
operationId: validateClickEvent
parameters:
- name: organizationId
in: path
required: true
schema:
type: string
requestBody:
description: event
content:
application/json:
schema:
$ref: '#/components/schemas/JsonNode'
required: true
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/ClientValidateEventResponseModel'
x-pretty-name: validateClickEvent
x-required-privilege:
owner: USAGE_ANALYTICS
targetDomain: ANALYTICS_DATA
type: EDIT
targetId: '*'
x-required-privileges:
- owner: USAGE_ANALYTICS
targetDomain: ANALYTICS_DATA
type: EDIT
targetId: '*'
x-ui-operation-id: /rest/organizations/paramId/events/v1/analytics/click/validate_post
components:
schemas:
JsonNode:
type: object
EventResponseModel:
type: object
properties:
accepted:
type: boolean
description: Whether the event has been accepted or not.
errorCode:
type: string
description: The error code for an individual rejected event.
errorMessage:
type: string
description: The error message for an individual rejected event.
description: The events associated with the request. The events are returned in the same order as they were in the request.
EventsResponseModel:
type: object
properties:
events:
type: array
description: The events associated with the request. The events are returned in the same order as they were in the
request.
items:
$ref: '#/components/schemas/EventResponseModel'
description: The response for the events sent to Coveo Analytics.
ClientValidateEventResponseModel:
type: object
properties:
valid:
type: boolean
description: The validity of an individual event.
errors:
type: array
description: The validation errors of an individual event.
items:
$ref: '#/components/schemas/HumanReadableValidationMessage'
HumanReadableValidationMessage:
type: object
properties:
type:
type: string
message:
type: string
path:
type: string
description: The validation errors of an individual event.
securitySchemes:
oauth2:
type: oauth2
flows:
authorizationCode:
authorizationUrl: https://platform.cloud.coveo.com/oauth/authorize
tokenUrl: https://platform.cloud.coveo.com/oauth/token
scopes:
full: required