openapi: 3.0.1
info:
title: Coveo Activity Activities Pipelines 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: Pipelines
x-displayName: Pipelines
paths:
/rest/search/v1/admin/pipelines:
get:
tags:
- Pipelines
summary: List Query Pipelines
description: 'Gets a sorted page of query pipelines matching certain criteria.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"*"}
```
'
operationId: listQueryPipelinesV1
parameters:
- $ref: '#/components/parameters/IsOrderAscending'
- $ref: '#/components/parameters/Filter'
- $ref: '#/components/parameters/SortBy'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/ExcludeAbTestTargets'
- name: perPage
in: query
description: The number of results to include per page.
schema:
type: integer
format: int32
minimum: 0
maximum: 200
default: 20
- $ref: '#/components/parameters/OrganizationIdQuery'
- name: enablePagination
in: query
description: Whether to receive the pipelines in a paginated format.
schema:
type: boolean
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/OutgoingPipelines'
security:
- oauth2:
- full
post:
tags:
- Pipelines
summary: Create Query Pipeline
description: 'Creates a new query pipeline.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"CREATE","targetId":"*"}
```
'
operationId: createQueryPipelineV1
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
requestBody:
description: The query pipeline information.
content:
application/json:
schema:
$ref: '#/components/schemas/IncomingPipeline'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/OutgoingPipeline'
security:
- oauth2:
- full
/rest/search/v1/admin/pipelines/{pipelineId}:
get:
tags:
- Pipelines
summary: Get Query Pipeline
description: 'Gets a single query pipeline.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"{pipelineId}"}
```
'
operationId: getQueryPipelineV1
parameters:
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/OrganizationIdQuery'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/OutgoingPipelineDetailed'
security:
- oauth2:
- full
put:
tags:
- Pipelines
summary: Update Query Pipeline
description: 'Modifies a single query pipeline.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"{pipelineId}"},
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"{pipelineId}"}
```
'
operationId: updateQueryPipeline
parameters:
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/OrganizationIdQuery'
requestBody:
description: The updated query pipeline information.
content:
application/json:
schema:
$ref: '#/components/schemas/IncomingPipeline'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/OutgoingPipeline'
security:
- oauth2:
- full
delete:
tags:
- Pipelines
summary: Delete Query Pipeline
description: 'Deletes a single query pipeline.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"{pipelineId}"},
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"{pipelineId}"}
```
'
operationId: deleteQueryPipeline
parameters:
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/OrganizationIdQuery'
responses:
'200':
description: OK
content:
application/json:
schema:
type: string
security:
- oauth2:
- full
/rest/search/v1/admin/pipelines/{pipelineId}/duplicate:
post:
tags:
- Pipelines
summary: Copy Query Pipeline
description: 'Duplicates a single query pipeline.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"*"},
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"CREATE","targetId":"*"}
```
'
operationId: v1CopyQueryPipeline
parameters:
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/OrganizationIdQuery'
requestBody:
description: The permissions to set on the duplicated pipeline
content:
application/json:
schema:
$ref: '#/components/schemas/IncomingDuplicatePipelinePermissions'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/OutgoingPipeline'
security:
- oauth2:
- full
/rest/search/v1/admin/pipelines/{pipelineId}/swap:
post:
tags:
- Pipelines
summary: Swap Query Pipeline Names
description: 'Swaps the names of two query pipelines. Doing so will affect the routing of incoming queries whose `pipeline` parameter is defined as the `name` value of one of the swapped query pipelines.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"{pipelineId}"}
```
'
operationId: swapQueryPipelineNames
parameters:
- $ref: '#/components/parameters/PipelineIdPath'
- name: other
in: query
description: The unique identifier of the query pipeline to swap names with.
required: true
schema:
type: string
- $ref: '#/components/parameters/OrganizationIdQuery'
responses:
'200':
description: OK
content:
application/json:
schema:
type: string
security:
- oauth2:
- full
/rest/search/v1/admin/pipelines/bulkGet:
post:
tags:
- Pipelines
summary: List Query Pipelines
description: 'Gets a sorted page of query pipelines matching certain criteria.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"*"}
```
'
operationId: bulkGetPipelines
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/IsOrderAscending'
- $ref: '#/components/parameters/Filter'
- $ref: '#/components/parameters/SortBy'
- $ref: '#/components/parameters/Page'
- name: perPage
in: query
description: The number of results to include per page.
schema:
type: integer
format: int32
minimum: 0
maximum: 200
default: 20
requestBody:
description: A set of parameters to customize the results.
content:
application/json:
schema:
$ref: '#/components/schemas/RestBulkGetRequest'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/OutgoingBulkGetPipelines'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'419':
$ref: '#/components/responses/AuthenticationTimeout'
'422':
$ref: '#/components/responses/UnprocessableEntity'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth2:
- full
/rest/search/v1/admin/pipelines/validate:
post:
tags:
- Pipelines
summary: Validate a Single Pipeline Operation.
description: 'Validate that a specific operation would be accepted by our API and executed.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"*"}
```
'
operationId: validatePipelineOperation
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
requestBody:
description: An object that describes the operation to validate, the resource to target, and the model payload to use.
content:
application/json:
schema:
$ref: '#/components/schemas/RestSingleOperationValidationRequestIncomingPipeline'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/RestSingleOperationValidationResponse'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'419':
$ref: '#/components/responses/AuthenticationTimeout'
'422':
$ref: '#/components/responses/UnprocessableEntity'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth2:
- full
/rest/search/v1/admin/pipelines/validate/batch:
post:
tags:
- Pipelines
summary: Validate Batch of Pipeline Operations.
description: "\r\n Validate that a list of operations would be accepted by our API and executed.\r\n A maximum of 15 can be processed per request.\n\nPrivilege(s) required
\n\n```json\n{\"level\":\"NORMAL\",\"owner\":\"SEARCH_API\",\"targetDomain\":\"QUERY_PIPELINE\",\"type\":\"VIEW\",\"targetId\":\"*\"}\n```\n "
operationId: validatePipelineOperations
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
requestBody:
description: An object that contains the list of operations to validate.
content:
application/json:
schema:
$ref: '#/components/schemas/RestBatchOperationValidationRequestIncomingPipeline'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/RestBatchOperationValidationResponse'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'419':
$ref: '#/components/responses/AuthenticationTimeout'
'422':
$ref: '#/components/responses/UnprocessableEntity'
'429':
$ref: '#/components/responses/TooManyRequests'
'503':
$ref: '#/components/responses/ServiceUnavailable'
security:
- oauth2:
- full
/rest/search/v1/admin/pipelines/{pipelineId}/statements/import:
post:
tags:
- Pipelines
summary: Import Query Pipeline Statements
description: 'Import the definition, condition, and description of statements from a CSV file to a specific query pipeline.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"{pipelineId}"}
```
'
operationId: importQueryPipelineStatements
parameters:
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/Feature'
- $ref: '#/components/parameters/OrganizationIdQuery'
requestBody:
content:
multipart/form-data:
schema:
type: object
required:
- fileName
properties:
fileName:
type: string
format: binary
responses:
'204':
description: Imported
content:
application/json:
schema:
type: string
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'419':
$ref: '#/components/responses/AuthenticationTimeout'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth2:
- full
components:
parameters:
SortBy:
name: sortBy
in: query
description: 'The sort criteria to apply on the results.
**Allowed values:** `definition`, `description`, and `position`.
**Default:** `position`'
schema:
type: string
Page:
name: page
in: query
description: The 0-based number of the page of results to get.
schema:
type: integer
format: int32
default: 0
minimum: 0
IsOrderAscending:
name: isOrderAscending
in: query
description: Whether to sort the results in ascending order.
schema:
type: boolean
default: true
Filter:
name: filter
in: query
description: 'The query filter to match.
This allows you to search within query pipeline statement definitions and descriptions.
By default, results are not required to match a specific query filter.'
schema:
type: string
OrganizationIdQuery:
name: organizationId
in: query
description: 'The unique identifier of the target Coveo Cloud organization.
Specifying a value for this parameter is only necessary when you are authenticating the API call with an OAuth2 token.'
example: mycoveocloudv2organization
schema:
type: string
ExcludeAbTestTargets:
name: excludeAbTestTargets
in: query
description: Whether to exclude the A/B test targets from the result.
schema:
type: boolean
default: false
Feature:
name: feature
in: query
description: 'The query pipeline feature to match.
**Allowed values:** `when`, `filter`, `trigger`, `stop`, `thesaurus`, `topClicks`, `querySuggest`, `rankingweight`, `recommendation`, and `queryParamOverride`.
By default, results are not required to match a specific query pipeline feature.'
schema:
type: string
PipelineIdPath:
name: pipelineId
in: path
description: The unique identifier of the target query pipeline.
required: true
schema:
type: string
schemas:
RestBatchOperationValidationResponse:
required:
- results
type: object
properties:
results:
type: array
description: The list of operation validation results.
items:
$ref: '#/components/schemas/RestOperationValidationResponse'
OutgoingBulkGetPipelines:
required:
- pipelines
- totalEntries
type: object
properties:
pipelines:
type: array
description: Sorted page of query pipelines matching certain criteria.
items:
$ref: '#/components/schemas/OutgoingPipeline'
totalEntries:
type: integer
format: int32
description: The total number of pipelines matching the listing parameters.
RestBulkGetRequest:
type: object
properties:
ids:
type: array
description: A list of resource identifiers to get. A maximum of **1000** can be sent.
items:
type: string
maxItems: 1000
IncomingDuplicatePipelinePermissions:
type: object
properties:
groupsThatCanEdit:
type: array
items:
$ref: '#/components/schemas/IdentifiedResource'
apiKeysThatCanEdit:
type: array
items:
$ref: '#/components/schemas/IdentifiedResource'
OutgoingPipelineDetailed:
allOf:
- $ref: '#/components/schemas/OutgoingPipeline'
- $ref: '#/components/schemas/OutgoingPipelineDetailedBase'
IncomingConditionReference:
required:
- id
type: object
properties:
id:
type: string
description: The unique identifier of this condition.
example: 45a7892e-a63f-4c8e-8795-ab38c8c18d7e
ConditionDetailed:
type: object
required:
- condition
properties:
condition:
$ref: '#/components/schemas/BooleanExpression'
OutgoingConditionBase:
required:
- childrenCount
- definition
- detailed
- feature
- id
- position
- ready
type: object
properties:
id:
type: string
description: The unique identifier of this statement.
example: 45a7892e-a63f-4c8e-8795-ab38c8c18d7e
description:
type: string
description: The intended purpose of this statement in an actual implementation.
example: If the query originates from the community site...
definition:
type: string
description: The query pipeline language expression that defines this statement (see [Query Pipeline Language (QPL)](https://docs.coveo.com/en/1449/)).
example: when $searchhub is "community"
detailed:
$ref: '#/components/schemas/ConditionDetailed'
modifiedBy:
type: string
description: The identifier of the Coveo Cloud platform user who last modified this.
example: bjones@example.com
modifiedAt:
type: string
format: date-time
description: The last time this was modified.
example: '2021-02-16T15:15:17Z'
childrenCount:
type: integer
description: '> This property is exposed for backward compatibility reasons.'
format: int32
deprecated: true
feature:
$ref: '#/components/schemas/OutgoingConditionFeature'
parent:
type: string
description: '> This property is exposed for backward compatibility reasons.'
deprecated: true
condition:
type: string
description: '> This property is exposed for backward compatibility reasons.'
deprecated: true
position:
type: integer
description: '> This property is exposed for backward compatibility reasons.'
format: int32
deprecated: true
ready:
type: boolean
description: '> This property is exposed for backward compatibility reasons.'
deprecated: true
OutgoingConditionFeature:
type: string
description: '> This property is exposed for backward compatibility reasons.'
deprecated: true
enum:
- when
BooleanExpression:
oneOf:
- $ref: '#/components/schemas/CompoundBooleanExpression'
- $ref: '#/components/schemas/OperatorExpression'
- $ref: '#/components/schemas/IsBetweenOperator'
- type: boolean
RestSingleOperationValidationResponse:
required:
- result
type: object
properties:
result:
$ref: '#/components/schemas/RestOperationValidationResponse'
ErrorMessage:
type: object
additionalProperties: true
properties:
statusCode:
type: number
example: 404
errorCode:
type: string
example: ORGANIZATION_DOES_NOT_EXIST
message:
type: string
example: The organization does not exist in the search api.
CompoundBooleanExpression:
type: object
required:
- operator
- left
properties:
operator:
type: string
left:
$ref: '#/components/schemas/BooleanExpression'
right:
$ref: '#/components/schemas/BooleanExpression'
OperatorRightHandSide:
oneOf:
- type: string
- type: number
- type: integer
format: int32
- type: boolean
RestSingleOperationValidationRequestIncomingPipeline:
required:
- operation
type: object
properties:
operation:
$ref: '#/components/schemas/RestOperationValidationRequestIncomingPipeline'
RestOperationValidationResponse:
required:
- operationType
- operationValid
type: object
properties:
operationType:
type: string
description: The type of operation that has been validated.
example: CREATE
operationValid:
type: boolean
description: Whether the operation to validate was successful or not.
example: true
resourceId:
type: string
description: 'The identifier of the resource. '
example: id
validationErrors:
type: object
additionalProperties:
type: array
items:
$ref: '#/components/schemas/RestOperationValidationError'
description: If the operation failed, the `validationError` will contains the error message.
example: Access Denied. You don't have the required privileges to perform this operation.
OutgoingPipelineDetailedBase:
type: object
required:
- statementComposition
properties:
splitTestOriginalPipeline:
type: string
description: 'The unique identifier of query pipeline A in the A/B test.
See also the `splitTestName`, `splitTestRatio`, and `splitTestEnabled` properties.'
statementComposition:
type: object
required:
- totalCount
properties:
totalCount:
type: integer
format: int32
description: 'The total count of statement rules in this pipeline.
'
OperatorExpression:
type: object
required:
- operator
- left
properties:
operator:
type: string
left:
$ref: '#/components/schemas/OperatorLeftHandSide'
right:
$ref: '#/components/schemas/OperatorRightHandSide'
IdentifiedResource:
required:
- id
type: object
properties:
id:
type: string
RestOperationValidationError:
required:
- message
type: object
properties:
message:
type: string
PipelineInterfaceUrl:
type: object
required:
- url
properties:
url:
type: string
maxLength: 255
description: 'Url of the pages affected by this query pipeline.
'
example: www.acme.com
IncomingPipeline:
required:
- name
type: object
properties:
name:
type: string
description: The name of this query pipeline.
example: Community
description:
type: string
description: The intended purpose of this query pipeline.
example: Provide contextually relevant query recommendations/results to Community site users.
isDefault:
type: boolean
description: 'Whether this query pipeline is the default query pipeline.
**Note:** There must be one and only one default query pipeline in a Coveo Cloud organization. Therefore, setting `isDefault` to `true` on this query pipeline will automatically set it to `false` in the current default query pipeline as a side effect (assuming, of course, that this query pipeline is not the current default query pipeline).'
example: false
splitTestName:
type: string
description: 'A name which summarizes the intended purpose of the A/B test.
See also the `splitTestTarget`, `splitTestRatio`, and `splitTestEnabled` properties.'
example: Community VS default
splitTestTarget:
type: string
description: 'The unique identifier of query pipeline B in the A/B test.
See also the `splitTestName`, `splitTestRatio`, and `splitTestEnabled` properties.'
example: 22a3860e-fa6f-4e64-a9f1-ef738af0786e
splitTestRatio:
maximum: 1
minimum: 0
type: number
description: 'The percentage of queries to route through query pipeline B if the A/B test is enabled. Remaining queries will be routed through this query pipeline.
See also the `splitTestName`, `splitTestTarget`, and `splitTestEnabled` properties.'
format: double
example: 0.5
splitTestEnabled:
type: boolean
description: 'Whether to enable the A/B test.
See also the `splitTestName`, `splitTestTarget`, and `splitTestRatio` properties.'
condition:
$ref: '#/components/schemas/IncomingConditionReference'
groupsThatCanEdit:
type: array
items:
$ref: '#/components/schemas/IdentifiedResource'
apiKeysThatCanEdit:
type: array
items:
$ref: '#/components/schemas/IdentifiedResource'
useCase:
type: string
maxLength: 50
description: 'The use case for which this query pipeline should apply. This option allows you to categorize your query pipeline and enables Coveo to provide better support and improve the tools we provide.
'
example: Service & Support
interfaceUrls:
$ref: '#/components/schemas/PipelineInterfaceUrls'
aduiConfig:
$ref: '#/components/schemas/PipelineAduiConfiguration'
PipelineInterfaceUrls:
type: array
maxItems: 20
description: 'This option helps better understand the pages where this query pipeline is intended to be used. It won''t affect query routing in any way but may be used by Coveo to help you manage your configuration properly.
'
items:
$ref: '#/components/schemas/PipelineInterfaceUrl'
OutgoingPipeline:
required:
- id
- isDefault
- name
- position
type: object
properties:
id:
type: string
description: The unique identifier of this query pipeline.
example: 120deecf-7822-4d7b-885f-53f184a3a76c
name:
type: string
description: Community
example: Community
isDefault:
type: boolean
description: 'Whether this query pipeline is the default query pipeline.
**Note:** There must be one and only one default query pipeline in a Coveo Cloud organization. Therefore, setting `isDefault` to `true` on this query pipeline will automatically set it to `false` in the current default query pipeline as a side effect (assuming, of course, that this query pipeline is not the current default query pipeline).'
example: false
description:
type: string
description: The intended purpose of this query pipeline.
example: Provide contextually relevant query recommendations/results to Community site users.
filter:
type: string
description: 'A constant query expression to add to all queries routed through this query pipeline.
**Notes:**
- The `filter` expression is added to the constant part of the query expression (`cq`) using an AND operator.
- Avoid including dynamically evaluated values in the `filter` expression, otherwise you risk filling up the cache with useless data.'
example: '@source==CommunityForum OR @source==CommunityDocumentation'
splitTestName:
type: string
description: 'A name which summarizes the intended purpose of the A/B test.
See also the `splitTestTarget`, `splitTestRatio`, and `splitTestEnabled` properties.'
example: Community VS default
splitTestTarget:
type: string
description: 'The unique identifier of query pipeline B in the A/B test.
See also the `splitTestName`, `splitTestRatio`, and `splitTestEnabled` properties.'
example: 22a3860e-fa6f-4e64-a9f1-ef738af0786e
splitTestRatio:
maximum: 1
minimum: 0
type: number
description: 'The percentage of queries to route through query pipeline B if the A/B test is enabled. Remaining queries will be routed through this query pipeline.
See also the `splitTestName`, `splitTestTarget`, and `splitTestEnabled` properties.'
format: double
example: 0.5
splitTestEnabled:
type: boolean
description: 'Whether to enable the A/B test.
See also the `splitTestName`, `splitTestTarget`, and `splitTestRatio` properties.'
condition:
$ref: '#/components/schemas/OutgoingCondition'
position:
type: integer
description: 'The 0-based position of this query pipeline relative to other query pipelines in this Coveo Cloud organization.
Upon query pipeline creation, a position corresponding to the current highest query pipeline position incremented by one is automatically assigned to the new query pipeline.
You cannot change the position of an existing query pipeline, but you can duplicate/delete query pipelines to achieve a similar result. Note, however, that duplicated query pipelines have distinct `id` values.
Unless a query enforces a specific query pipeline, query pipeline *with conditions* are evaluated sequentially, according to their respective position (from lowest to highest). The query is routed through the first query pipeline whose condition it satisfies. If the query satisfies the condition of no query pipeline, it is routed through the default query pipeline (bypassing its condition, if it has one).'
format: int32
example: 3
last_modified_by:
type: string
description: The identifier of the Coveo Cloud platform user who last modified this query pipeline.
example: bjones@example.com
modifiedBy:
type: string
description: The identifier of the Coveo Cloud platform user who last modified this.
example: bjones@example.com
modifiedAt:
type: string
format: date-time
description: The last time this was modified.
example: '2021-02-16T15:15:17Z'
created_by:
type: string
description: The identifier of the Coveo Cloud platform user who originally created this query pipeline.
example: asmith@example.com
useCase:
type: string
maxLength: 50
description: 'The use case for which this query pipeline should apply. This option allows you to categorize your query pipeline and enables Coveo to provide better support and improve the tools we provide.
'
example: Service & Support
interfaceUrls:
$ref: '#/components/schemas/PipelineInterfaceUrls'
aduiConfig:
$ref: '#/components/schemas/PipelineAduiConfiguration'
OperatorLeftHandSide:
type: object
required:
- object
properties:
object:
type: string
key:
type: string
keys:
type: array
items:
type: string
IsBetweenOperator:
type: object
required:
- operator
- left
- from
- to
properties:
operator:
type: string
enum:
- isBetween
left:
$ref: '#/components/schemas/OperatorLeftHandSide'
from:
type: string
format: date-time
to:
type: string
format: date-time
RestBatchOperationValidationRequestIncomingPipeline:
required:
- operations
type: object
properties:
operations:
type: array
description: A list of operations to validate.
example:
- operationType: CREATE
model: {}
- operationType: UPDATE
model: {}
resourceId: resource-id
- operationType: DELETE
resourceId: resource-id
items:
$ref: '#/components/schemas/RestOperationValidationRequestIncomingPipeline'
PipelineAduiConfiguration:
type: object
properties:
tooltipsDismissed:
type: array
maxItems: 20
description: 'A list of tooltips that were dismissed by the user.
'
items:
$ref: '#/components/schemas/PipelineAduiConfigurationTooltipsDismissed'
OutgoingCondition:
allOf:
- $ref: '#/components/schemas/OutgoingConditionBase'
OutgoingPipelines:
type: object
required:
- items
- totalEntries
properties:
items:
type: array
items:
$ref: '#/components/schemas/OutgoingPipeline'
totalEntries:
type: integer
format: int32
description: The total number of pipelines matching the listing parameters.
RestOperationValidationRequestIncomingPipeline:
required:
- operationType
type: object
properties:
operationType:
$ref: '#/components/schemas/ValidationOperationType'
model:
$ref: '#/components/schemas/IncomingPipeline'
resourceId:
type: string
description: 'The identifier of the resource. '
example: id
ValidationOperationType:
type: string
description: 'The type of operation to validate. Each operation type has specific validation rules.
Additional request parameters are required based on the type of operation to validate:
- `CREATE`: You must provide a `model`.
- `UPDATE`: You must provide a `model` and a `resourceId`.
- `DELETE`: You must provide a `resourceId`.
'
example: CREATE
enum:
- CREATE
- UPDATE
- DELETE
PipelineAduiConfigurationTooltipsDismissed:
type: object
required:
- id
properties:
id:
type: string
maxLength: 255
description: 'The identifier of the tooltip that was dismissed.
'
responses:
BadRequest:
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
examples:
BadRequest:
summary: 'Bad Request (see: https://docs.coveo.com/en/1471/build-a-search-ui/troubleshoot-query-error-codes#400-bad_request)'
value:
statusCode: 400
message: Invalid JSON format in request body.
NoRegisteredEndpoint:
summary: 'No Registered Endpoint (see: https://docs.coveo.com/en/1471/build-a-search-ui/troubleshoot-query-error-codes#400-no_registered_endpoint)'
value:
statusCode: 400
message: No registered endpoint found for this organization.
errorCode: NO_REGISTERED_ENDPOINT
QueryPipelineInterrupted:
summary: 'Query Pipeline Interrupted (see: https://docs.coveo.com/en/1471/build-a-search-ui/troubleshoot-query-error-codes#400-query_pipeline_interrupted)'
value:
statusCode: 400
message: Failed to evaluate your query as some conditions in your pipeline took too much time.
errorCode: QUERY_PIPELINE_INTERRUPTED
TooManyRequests:
description: 'Too Many Requests (see: https://docs.coveo.com/en/1471/build-a-search-ui/troubleshoot-query-error-codes#429-too_many_requests)'
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
example:
statusCode: 429
message: Too many requests.
ServiceUnavailable:
description: 'Service Unavailable (see: https://docs.coveo.com/en/1471/build-a-search-ui/troubleshoot-query-error-codes#5xx)'
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
examples:
ServiceUnavailable:
summary: 'Server Unavailable (see: https://docs.coveo.com/en/1471/build-a-search-ui/troubleshoot-query-error-codes#503-server_unavailable)'
value:
statusCode: 503
message: The server is currently unavailable due to overload or index unavailability.
errorCode: SERVER_UNAVAILABLE
OrganizationPaused:
summary: 'Organization Paused (see: https://docs.coveo.com/en/1471/build-a-search-ui/troubleshoot-query-error-codes#503-organization_paused)'
value:
statusCode: 503
message: The organization is paused due to inactivity.
errorCode: ORGANIZATION_PAUSED
AuthenticationTimeout:
description: Authentication Timeout
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
example:
statusCode: 419
message: Authentication timeout.
Forbidden:
description: 'Forbidden (see: https://docs.coveo.com/en/1471/build-a-search-ui/troubleshoot-query-error-codes#403-forbidden)'
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
example:
statusCode: 403
message: Access denied. API key does not have sufficient privileges.
errorCode: FORBIDDEN
UnprocessableEntity:
description: Unprocessable Entity
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
example:
statusCode: 422
message: Unprocessable entity.
Unauthorized:
description: 'Unauthorized (see: https://docs.coveo.com/en/1471/build-a-search-ui/troubleshoot-query-error-codes#401-unauthorized)'
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
example:
statusCode: 401
message: Invalid access token.
errorCode: UNAUTHORIZED
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