openapi: 3.0.1
info:
title: Coveo Search API
description: Documentation for Coveo Search API
termsOfService: http://www.coveo.com/en/support/terms-agreements
contact:
name: support@coveo.com
license:
name: ''
version: 1.0.0
x-ApiVersion: V3
servers:
- url: https://platform.cloud.coveo.com
description: Coveo public API endpoint
tags:
- name: Search V3
x-displayName: Search V3
- name: Passages V3
x-displayName: Passages V3
- name: Analysis V3
x-displayName: Analysis V3
- name: Search V2
x-displayName: Search
- name: Statements V2
x-displayName: Statements
- name: Result rankings
x-displayName: Result rankings
- name: Machine learning associations
x-displayName: Machine learning associations
- name: Statement groups
x-displayName: Statement groups
- name: Pipelines
x-displayName: Pipelines
- name: Statements V1
x-displayName: Statements
- name: Conditions
x-displayName: Conditions
- name: Passages Alpha
x-displayName: Passages Alpha
- name: Organizations
x-displayName: Organizations
paths:
/rest/search/v3:
post:
tags:
- Search V3
summary: Send Search Request
description: 'See [Performing a Query](https://docs.coveo.com/en/1445/).
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
operationId: searchUsingPostV3
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/ViewAllContentQuery'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RestQueryParameters'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/RestQueryResponse'
application/xml:
schema:
$ref: '#/components/schemas/RestQueryResponse'
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet:
schema:
$ref: '#/components/schemas/RestQueryResponse'
security:
- oauth2:
- full
/rest/search/v3/facet:
post:
tags:
- Search V3
summary: Send Facet Search Request
description: 'Executes a facet search request.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
operationId: facetSearchV3
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/ViewAllContentQuery'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RestFacetSearchParameters'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/RestFacetSearchResponse'
security:
- oauth2:
- full
/rest/search/v3/plan:
post:
tags:
- Search V3
summary: Plan Search Execution
description: 'See [Performing a Query](https://docs.coveo.com/en/1445/).
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
operationId: planSearchUsingPostV3
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/ViewAllContentQuery'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RestQueryParameters'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PlanSearchResponse'
security:
- oauth2:
- full
/rest/search/v3/querySuggest:
post:
tags:
- Search V3
summary: Request Query Suggestions
description: 'See [Getting Query Suggestions](https://docs.coveo.com/en/1459/).
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
operationId: querySuggestPostV3
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RestQuerySuggestParameters'
responses:
'200':
description: The suggested completions for the query.
content:
application/json:
schema:
$ref: '#/components/schemas/QuerySuggestResponse'
security:
- oauth2:
- full
/rest/search/v3/values:
post:
tags:
- Search V3
summary: Get Values for One Field
description: 'Lists all values of the target field.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
operationId: valuesPostV3
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/ViewAllContentQuery'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RestListFieldValuesParameter'
required: true
responses:
'200':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/ListFieldValuesResponse'
security:
- oauth2:
- full
/rest/search/v3/values/batch:
post:
tags:
- Search V3
summary: Get Values for Several Field
description: 'Lists all values of the target field.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
operationId: valuesBatchPostV3
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/ViewAllContentQuery'
- $ref: '#/components/parameters/AnalyticsRequestParameters'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RestListFieldValuesBatchParameter'
required: true
responses:
'200':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/ListFieldValuesBatchResponse'
security:
- oauth2:
- full
/rest/search/v3/document:
get:
tags:
- Search V3
summary: Get Item in JSON Format
operationId: documentV3
parameters:
- name: primaryId
in: query
description: The primary ID of the document.
schema:
type: string
- name: uniqueId
in: query
description: '**Deprecated:** Use `primaryId` instead.
The unique ID of the document.'
deprecated: true
schema:
type: string
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/Pipeline'
- $ref: '#/components/parameters/SearchHub'
- $ref: '#/components/parameters/ViewAllContentQuery'
- $ref: '#/components/parameters/Locale'
- $ref: '#/components/parameters/Timezone'
- $ref: '#/components/parameters/IndexToken'
- $ref: '#/components/parameters/Index'
- $ref: '#/components/parameters/LogicalIndex'
- $ref: '#/components/parameters/Tab'
- $ref: '#/components/parameters/Referrer'
- $ref: '#/components/parameters/Context'
responses:
'200':
description: The document matching this uniqueId.
content:
application/json:
schema:
$ref: '#/components/schemas/RestQueryResult'
'404':
$ref: '#/components/responses/NotFound'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth2:
- full
description: '
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
/rest/search/v3/datastream:
get:
tags:
- Search V3
summary: Get Item Data Stream
operationId: dataStreamV3
parameters:
- name: dataStream
in: query
description: The name of the data stream to request.
required: true
schema:
type: string
- name: primaryId
in: query
description: The primary ID of the document.
schema:
type: string
- name: uniqueId
in: query
description: '**Deprecated:** Use `primaryId` instead.
The unique ID of the document.'
deprecated: true
schema:
type: string
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/ViewAllContentQuery'
- name: contentType
in: query
description: 'The MIME type of the data stream to request.
**Default:** `application/binary`'
schema:
type: string
- $ref: '#/components/parameters/Pipeline'
- $ref: '#/components/parameters/SearchHub'
- $ref: '#/components/parameters/Locale'
- $ref: '#/components/parameters/Timezone'
- $ref: '#/components/parameters/IndexToken'
- $ref: '#/components/parameters/Index'
- $ref: '#/components/parameters/LogicalIndex'
- $ref: '#/components/parameters/Tab'
- $ref: '#/components/parameters/Referrer'
- $ref: '#/components/parameters/Context'
responses:
'200':
description: No response
content: {}
'404':
$ref: '#/components/responses/NotFound'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth2:
- full
description: '
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
/rest/search/v3/html:
post:
tags:
- Search V3
summary: Get HTML Item Preview
operationId: htmlPostV3
parameters:
- name: uniqueId
in: query
description: The uniqueId of the document. Exactly one of uniqueId or primaryId is required.
schema:
type: string
- name: primaryId
in: query
description: The primaryId of the document. Exactly one of uniqueId or primaryId is required.
schema:
type: string
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/ViewAllContentQuery'
- name: findNext
in: query
schema:
type: integer
format: int32
- name: findPrevious
in: query
schema:
type: integer
format: int32
- name: page
in: query
schema:
type: integer
format: int32
- name: enableNavigation
in: query
schema:
type: boolean
- name: requestedOutputSize
in: query
description: The approximate number of bytes to request in the HTML response. **Default:** `0`, meaning that the entire
HTML document is requested.
schema:
type: integer
format: int32
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RestQueryParameters'
required: true
responses:
'200':
description: No response
content: {}
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth2:
- full
description: '
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
/rest/search/v3/text:
get:
tags:
- Search V3
summary: Get Item in Text Format
operationId: textV3
parameters:
- name: primaryId
in: query
description: The primary ID of the document.
schema:
type: string
- name: uniqueId
in: query
description: '**Deprecated:** Use `primaryId` instead.
The unique ID of the document.'
deprecated: true
schema:
type: string
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/Pipeline'
- $ref: '#/components/parameters/SearchHub'
- $ref: '#/components/parameters/ViewAllContentQuery'
- $ref: '#/components/parameters/Locale'
- $ref: '#/components/parameters/Timezone'
- $ref: '#/components/parameters/IndexToken'
- $ref: '#/components/parameters/Index'
- $ref: '#/components/parameters/LogicalIndex'
- $ref: '#/components/parameters/Tab'
- $ref: '#/components/parameters/Referrer'
- $ref: '#/components/parameters/Context'
responses:
'200':
description: No response
content: {}
'404':
$ref: '#/components/responses/NotFound'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth2:
- full
description: '
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
/rest/search/v3/fields:
get:
tags:
- Search V3
summary: List All Fields
description: 'Gets all fields in the target Coveo Cloud organization.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
operationId: fieldsV3
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/Pipeline'
- $ref: '#/components/parameters/SearchHub'
- $ref: '#/components/parameters/ViewAllContentQuery'
- $ref: '#/components/parameters/Locale'
- $ref: '#/components/parameters/Timezone'
- $ref: '#/components/parameters/IndexToken'
- $ref: '#/components/parameters/Index'
- $ref: '#/components/parameters/LogicalIndex'
- $ref: '#/components/parameters/Tab'
- $ref: '#/components/parameters/Referrer'
- $ref: '#/components/parameters/Context'
responses:
'200':
description: The list of fields available for this organization.
content:
application/json:
schema:
$ref: '#/components/schemas/ListFieldsResponse'
security:
- oauth2:
- full
/rest/search/v3/fields/find:
post:
tags:
- Search V3
summary: Find Fields from Results of a Query Expression
description: 'Find fields name from results matching the `q` expression.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"},
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"VIEW_ALL_CONTENT","type":"ENABLE","targetId":"*"}
```
'
operationId: findFieldsFromExpressionV3
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
requestBody:
description: The query to get the fields from.
content:
application/json:
schema:
$ref: '#/components/schemas/FindFieldsRequest'
responses:
'200':
description: The list of fields referenced by the requested expression.
content:
application/json:
schema:
$ref: '#/components/schemas/FindFieldsResponse'
security:
- oauth2:
- full
/rest/search/v3/token:
post:
tags:
- Search V3
summary: Create Search Token
description: 'Creates a temporary [JSON web token](https://jwt.io/) which can be used to impersonate one or several
security identities when authenticating a query (see [Search Token Authentication](https://docs.coveo.com/en/56/)).
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"IMPERSONATE_SEARCH_API","type":"ENABLE","targetId":"*"}
```
'
operationId: tokenV3
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
requestBody:
description: The search token information.
content:
application/json:
schema:
$ref: '#/components/schemas/RestTokenParams'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/RestTokenResponse'
security:
- oauth2:
- full
/rest/search/v3/login/{provider}:
post:
tags:
- Search V3
summary: Log in to Authentication Provider
description: 'Directs the browser to URI of the target Search API authentication provider, and back to the origin search
page once the authentication process is complete. This authentication provider must be properly configured in the
Coveo Cloud organization.
Privilege(s) required
```json
```
'
operationId: loginProviderPostV3
parameters:
- name: provider
in: path
description: The name of the Search API authentication provider to log in to.
example: My SharePoint Server
required: true
schema:
type: string
- $ref: '#/components/parameters/OrganizationIdQuery'
responses:
'200':
description: No response
content: {}
security:
- oauth2:
- full
/rest/search/v3/passages/retrieve:
post:
tags:
- Passages V3
summary: Retrieves the Passage(s) for a Particular Query.
operationId: retrievePassageV3
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
security:
- oauth2:
- full
- apiKey: []
- platformTokens: []
- searchTokens: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RetrievePassagesRequestV3'
responses:
'200':
description: OK
headers:
X-Request-Id:
description: A unique identifier for the request.
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/RetrievePassagesResponseV3'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'422':
$ref: '#/components/responses/PassageRetrievalUnprocessableEntity'
'429':
$ref: '#/components/responses/TooManyRequests'
'500':
$ref: '#/components/responses/InternalServerError'
'503':
$ref: '#/components/responses/PassageRetrievalServerUnavailable'
description: '
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
/rest/search/v3/analysis/expressions/structured:
post:
tags:
- Analysis V3
summary: Convert Query to Structured Expression
description: 'Parses a query expression written using the Coveo query syntax, and converts it into a structured expression.
to a structured expression.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXPRESSION_VALIDATION_RESULT","type":"VIEW","targetId":"*"}
```
'
operationId: parseExpressionToStructured
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
requestBody:
description: The query expression to parse and convert
content:
application/json:
schema:
$ref: '#/components/schemas/ParseQueryExpressionToStructuredRequest'
required: true
responses:
'200':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/ParseQueryExpressionToStructuredResponse'
example:
structured:
type: and
expressions:
- type: fieldExpression
fieldName: altpopulation
operator: greaterThanOrEqual
value:
type: unknown
value: '90000'
- type: fieldExists
fieldName: altcapital
- type: not
expression:
type: or
expressions:
- type: fieldExpression
fieldName: source
operator: isExactly
value:
type: string
value: Youtube
- type: fieldExpression
fieldName: author
operator: isExactly
value:
type: string
value: JohnSmith
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'419':
$ref: '#/components/responses/AuthenticationTimeout'
'422':
description: Unprocessable Entity
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetailResponse'
example:
status: 422
title: Invalid query expression
detail: Coveo wasn't able to parse your query. Make sure it follows the Coveo query syntax.
security:
- oauth2:
- full
/rest/search/v3/analysis/inspect/replay:
post:
tags:
- Analysis V3
summary: Replay a Query with Inspection Details
description: 'Replay a query that was already done and get inspection details.
**Note:** This API call can only be used with an OAuth token. API Keys and Search Token aren''t allowed.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"},
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"REPLAY_ANY_QUERY","type":"VIEW","targetId":"*"}
```
'
operationId: replay
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
requestBody:
description: Inspection parameters
content:
application/json:
schema:
$ref: '#/components/schemas/InspectReplayRequest'
required: true
responses:
'200':
description: OK
content:
application/application+json:
schema:
$ref: '#/components/schemas/InspectReplayResponse'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/OriginalRequestNotFound'
'419':
$ref: '#/components/responses/AuthenticationTimeout'
'422':
$ref: '#/components/responses/UnsupportedRegion'
'429':
$ref: '#/components/responses/TooManyRequests'
'503':
$ref: '#/components/responses/ReplaySearchTooBroad'
security:
- oauth2:
- full
/rest/search/v2:
get:
tags:
- Search V2
summary: Send Search Request
description: 'See [Performing a Query](https://docs.coveo.com/en/1445/).
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
operationId: searchUsingGet
parameters:
- $ref: '#/components/parameters/Q'
- $ref: '#/components/parameters/AQ'
- $ref: '#/components/parameters/CQ'
- $ref: '#/components/parameters/DQ'
- $ref: '#/components/parameters/LQ'
- $ref: '#/components/parameters/EnableDidYouMean'
- $ref: '#/components/parameters/MlDidYouMeanMaxCandidates'
- $ref: '#/components/parameters/MlDidYouMeanMinScore'
- $ref: '#/components/parameters/MlDidYouMeanUseFacetCount'
- $ref: '#/components/parameters/EnableMlDidYouMean'
- $ref: '#/components/parameters/PartialMatch'
- $ref: '#/components/parameters/PartialMatchKeywords'
- $ref: '#/components/parameters/PartialMatchThreshold'
- $ref: '#/components/parameters/LqPartialMatchMaxKeywords'
- $ref: '#/components/parameters/LqPartialMatchKeywords'
- $ref: '#/components/parameters/LqPartialMatchThreshold'
- $ref: '#/components/parameters/Wildcards'
- $ref: '#/components/parameters/QuestionMark'
- $ref: '#/components/parameters/EnableQuerySyntax'
- $ref: '#/components/parameters/LowerCaseOperators'
- $ref: '#/components/parameters/ExcerptLength'
- $ref: '#/components/parameters/RetrieveFirstSentences'
- $ref: '#/components/parameters/FieldsToInclude'
- $ref: '#/components/parameters/FieldsToExclude'
- $ref: '#/components/parameters/GroupBy'
- $ref: '#/components/parameters/Facets'
- $ref: '#/components/parameters/FacetOptions'
- $ref: '#/components/parameters/CategoryFacets'
- $ref: '#/components/parameters/SortCriteria'
- $ref: '#/components/parameters/RankingFunctions'
- $ref: '#/components/parameters/QueryFunctions'
- $ref: '#/components/parameters/FirstResult'
- $ref: '#/components/parameters/NumberOfResults'
- $ref: '#/components/parameters/EnableDuplicateFiltering'
- $ref: '#/components/parameters/FilterField'
- $ref: '#/components/parameters/ParentField'
- $ref: '#/components/parameters/ChildField'
- $ref: '#/components/parameters/FilterFieldRange'
- $ref: '#/components/parameters/SummaryLength'
- $ref: '#/components/parameters/SortField'
- $ref: '#/components/parameters/DisableQuerySyntax'
- $ref: '#/components/parameters/StaticQuery'
- $ref: '#/components/parameters/UserActionParameter'
- $ref: '#/components/parameters/CommerceParameters'
- $ref: '#/components/parameters/DictionaryFieldContext'
- $ref: '#/components/parameters/Pipeline'
- $ref: '#/components/parameters/MaximumAge'
- $ref: '#/components/parameters/SearchHub'
- $ref: '#/components/parameters/Tab'
- $ref: '#/components/parameters/Referrer'
- $ref: '#/components/parameters/Context'
- $ref: '#/components/parameters/ActionsHistory'
- $ref: '#/components/parameters/Recommendation'
- $ref: '#/components/parameters/Locale'
- $ref: '#/components/parameters/Timezone'
- $ref: '#/components/parameters/Format'
- $ref: '#/components/parameters/Debug'
- $ref: '#/components/parameters/IndexToken'
- $ref: '#/components/parameters/VisitorId'
- $ref: '#/components/parameters/IsGuestUser'
- $ref: '#/components/parameters/Language'
- $ref: '#/components/parameters/MlParameters'
- $ref: '#/components/parameters/IndexType'
- $ref: '#/components/parameters/Index'
- $ref: '#/components/parameters/LogicalIndex'
- $ref: '#/components/parameters/MaximumTimeoutMs'
- $ref: '#/components/parameters/AnalyticsRequestParameters'
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/ViewAllContentQuery'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/RestQueryResponse'
application/xml:
schema:
$ref: '#/components/schemas/RestQueryResponse'
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet:
schema:
$ref: '#/components/schemas/RestQueryResponse'
security:
- oauth2:
- full
post:
tags:
- Search V2
summary: Send Search Request
description: 'See [Performing a Query](https://docs.coveo.com/en/1445/).
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
operationId: searchUsingPost
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/ViewAllContentQuery'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RestQueryParameters'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/RestQueryResponse'
application/xml:
schema:
$ref: '#/components/schemas/RestQueryResponse'
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet:
schema:
$ref: '#/components/schemas/RestQueryResponse'
security:
- oauth2:
- full
/rest/search/v2/plan:
get:
tags:
- Search V2
summary: Plan Search Execution
description: 'See [Performing a Query](https://docs.coveo.com/en/1445/).
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
operationId: planSearchUsingGet
parameters:
- $ref: '#/components/parameters/Q'
- $ref: '#/components/parameters/AQ'
- $ref: '#/components/parameters/CQ'
- $ref: '#/components/parameters/DQ'
- $ref: '#/components/parameters/LQ'
- $ref: '#/components/parameters/EnableDidYouMean'
- $ref: '#/components/parameters/MlDidYouMeanMaxCandidates'
- $ref: '#/components/parameters/MlDidYouMeanMinScore'
- $ref: '#/components/parameters/MlDidYouMeanUseFacetCount'
- $ref: '#/components/parameters/EnableMlDidYouMean'
- $ref: '#/components/parameters/PartialMatch'
- $ref: '#/components/parameters/PartialMatchKeywords'
- $ref: '#/components/parameters/PartialMatchThreshold'
- $ref: '#/components/parameters/LqPartialMatchMaxKeywords'
- $ref: '#/components/parameters/LqPartialMatchKeywords'
- $ref: '#/components/parameters/LqPartialMatchThreshold'
- $ref: '#/components/parameters/Wildcards'
- $ref: '#/components/parameters/QuestionMark'
- $ref: '#/components/parameters/EnableQuerySyntax'
- $ref: '#/components/parameters/LowerCaseOperators'
- $ref: '#/components/parameters/ExcerptLength'
- $ref: '#/components/parameters/RetrieveFirstSentences'
- $ref: '#/components/parameters/FieldsToInclude'
- $ref: '#/components/parameters/FieldsToExclude'
- $ref: '#/components/parameters/GroupBy'
- $ref: '#/components/parameters/Facets'
- $ref: '#/components/parameters/FacetOptions'
- $ref: '#/components/parameters/CategoryFacets'
- $ref: '#/components/parameters/SortCriteria'
- $ref: '#/components/parameters/RankingFunctions'
- $ref: '#/components/parameters/QueryFunctions'
- $ref: '#/components/parameters/FirstResult'
- $ref: '#/components/parameters/NumberOfResults'
- $ref: '#/components/parameters/EnableDuplicateFiltering'
- $ref: '#/components/parameters/FilterField'
- $ref: '#/components/parameters/ParentField'
- $ref: '#/components/parameters/ChildField'
- $ref: '#/components/parameters/FilterFieldRange'
- $ref: '#/components/parameters/SummaryLength'
- $ref: '#/components/parameters/SortField'
- $ref: '#/components/parameters/DisableQuerySyntax'
- $ref: '#/components/parameters/StaticQuery'
- $ref: '#/components/parameters/UserActionParameter'
- $ref: '#/components/parameters/CommerceParameters'
- $ref: '#/components/parameters/DictionaryFieldContext'
- $ref: '#/components/parameters/Pipeline'
- $ref: '#/components/parameters/MaximumAge'
- $ref: '#/components/parameters/SearchHub'
- $ref: '#/components/parameters/Tab'
- $ref: '#/components/parameters/Referrer'
- $ref: '#/components/parameters/Context'
- $ref: '#/components/parameters/ActionsHistory'
- $ref: '#/components/parameters/Recommendation'
- $ref: '#/components/parameters/Locale'
- $ref: '#/components/parameters/Timezone'
- $ref: '#/components/parameters/Format'
- $ref: '#/components/parameters/Debug'
- $ref: '#/components/parameters/IndexToken'
- $ref: '#/components/parameters/VisitorId'
- $ref: '#/components/parameters/IsGuestUser'
- $ref: '#/components/parameters/Language'
- $ref: '#/components/parameters/MlParameters'
- $ref: '#/components/parameters/IndexType'
- $ref: '#/components/parameters/Index'
- $ref: '#/components/parameters/LogicalIndex'
- $ref: '#/components/parameters/MaximumTimeoutMs'
- $ref: '#/components/parameters/AnalyticsRequestParameters'
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/ViewAllContentQuery'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PlanSearchResponse'
security:
- oauth2:
- full
post:
tags:
- Search V2
summary: Plan Search Execution
description: 'See [Performing a Query](https://docs.coveo.com/en/1445/).
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
operationId: planSearchUsingPost
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/ViewAllContentQuery'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RestQueryParameters'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PlanSearchResponse'
security:
- oauth2:
- full
/rest/search/v2/querySuggest:
get:
tags:
- Search V2
summary: Request Query Suggestions
description: 'See [Getting Query Suggestions](https://docs.coveo.com/en/1459/).
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
operationId: querySuggestGet
parameters:
- name: q
in: query
description: 'The *basic query* expression, typically the keywords entered by the end user in a query box.
'
example: Coveo "Cloud V2" platform
schema:
type: string
- name: autoCompleter
in: query
description: This parameter is exposed for backward compatibility reasons.
schema:
type: string
deprecated: true
- name: additionalData
in: query
deprecated: true
description: This parameter is exposed for backward compatibility reasons.
content:
application/json:
schema:
type: object
- name: count
in: query
description: 'The desired number of query suggestions.
'
schema:
type: integer
format: int32
- name: enableWordCompletion
in: query
description: 'Whether to attempt to complete the last word of the current basic query expression (see the `q` parameter)
and boost the ranking score of the resulting expression so that it is returned as the first query suggestion.
'
schema:
type: boolean
- $ref: '#/components/parameters/Pipeline'
- $ref: '#/components/parameters/MaximumAge'
- $ref: '#/components/parameters/SearchHub'
- $ref: '#/components/parameters/Tab'
- $ref: '#/components/parameters/Referrer'
- $ref: '#/components/parameters/Context'
- $ref: '#/components/parameters/ActionsHistory'
- $ref: '#/components/parameters/Recommendation'
- $ref: '#/components/parameters/Locale'
- $ref: '#/components/parameters/Timezone'
- $ref: '#/components/parameters/Format'
- $ref: '#/components/parameters/Debug'
- $ref: '#/components/parameters/IndexToken'
- $ref: '#/components/parameters/VisitorId'
- $ref: '#/components/parameters/IsGuestUser'
- $ref: '#/components/parameters/Language'
- $ref: '#/components/parameters/MlParameters'
- $ref: '#/components/parameters/IndexType'
- $ref: '#/components/parameters/Index'
- $ref: '#/components/parameters/LogicalIndex'
- $ref: '#/components/parameters/MaximumTimeoutMs'
- $ref: '#/components/parameters/AnalyticsRequestParameters'
- $ref: '#/components/parameters/OrganizationIdQuery'
responses:
'200':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/QuerySuggestResponse'
security:
- oauth2:
- full
post:
tags:
- Search V2
summary: Request Query Suggestions
description: 'See [Getting Query Suggestions](https://docs.coveo.com/en/1459/).
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
operationId: querySuggestPost
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RestQuerySuggestParameters'
responses:
'200':
description: The suggested completions for the query.
content:
application/json:
schema:
$ref: '#/components/schemas/QuerySuggestResponse'
security:
- oauth2:
- full
/rest/search/v2/facet:
post:
tags:
- Search V2
summary: Send Facet Search Request
description: 'Executes a facet search request.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
operationId: facetSearch
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/ViewAllContentQuery'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RestFacetSearchParameters'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/RestFacetSearchResponse'
security:
- oauth2:
- full
/rest/search/v2/fields:
get:
tags:
- Search V2
summary: List All Fields
description: 'Gets all fields in the target Coveo Cloud organization.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
operationId: fields
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/Pipeline'
- $ref: '#/components/parameters/SearchHub'
- $ref: '#/components/parameters/ViewAllContentQuery'
- $ref: '#/components/parameters/Locale'
- $ref: '#/components/parameters/Timezone'
- $ref: '#/components/parameters/IndexToken'
- $ref: '#/components/parameters/Index'
- $ref: '#/components/parameters/LogicalIndex'
- $ref: '#/components/parameters/Tab'
- $ref: '#/components/parameters/Referrer'
- $ref: '#/components/parameters/Context'
responses:
'200':
description: The list of fields available for this organization.
content:
application/json:
schema:
$ref: '#/components/schemas/ListFieldsResponse'
security:
- oauth2:
- full
/rest/search/v2/values:
get:
tags:
- Search V2
summary: Get Values for One Field
description: 'Lists all values of the target field.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
operationId: valuesGet
parameters:
- name: field
in: query
description: 'The name of the field from which to retrieve values.
'
required: true
schema:
type: string
- name: lookupField
in: query
description: 'This parameter is exposed for backward compatibility reasons.
The name of an additional field from which to retrieve values.'
schema:
type: string
deprecated: true
- name: ignoreAccents
in: query
description: 'Whether to treat accentuated characters as non-accentuated characters when retrieving field values (e.g.,
treat `é`, `è`, `ê`, etc., as `e`).
**Default:** `true`
'
schema:
type: boolean
- name: sortCriteria
in: query
description: 'The sort criteria to use.
Use:
- `occurrences` to sort by number of occurrences, with field values having the highest number of occurrences appearing
first.
- `nosort` to avoid sorting the results of the Group By operation. The field values will appear in an unspecified
order.
**Default:** `occurrences`
'
schema:
type: string
- name: maximumNumberOfValues
in: query
description: 'The maximum number of field values to return.
**Default:** `10`
'
schema:
type: integer
format: int32
minimum: 0
- name: queryOverride
in: query
description: 'A different basic query expression (q) use.
'
schema:
type: string
- name: constantQueryOverride
in: query
description: 'A different constant query expression (cq) to use.
'
schema:
type: string
- name: disjunctionQueryOverride
in: query
description: 'A different disjunction query expression (dq) to use.
'
schema:
type: string
- name: pattern
in: query
description: 'The pattern that the field values must match.
See also the `patternType` parameter."
'
schema:
type: string
- name: patternType
in: query
description: 'The type of pattern that is being used to list field values.
Use:
- `wildcard` to parse the specified `pattern` as a wildcard expression.
- `regularexpression` to parse the specified `pattern` as a regular expression.
- `editdistance` to apply the Edit Distance algorithm to match values that are close to the specified `pattern`.
- `phonetic` to apply a phonetic algorithm to match values that are phonetically similar to the specified `pattern`.
**Default:** `wildcard`
'
schema:
type: string
- $ref: '#/components/parameters/CommerceParameters'
- $ref: '#/components/parameters/DictionaryFieldContext'
- $ref: '#/components/parameters/Pipeline'
- $ref: '#/components/parameters/MaximumAge'
- $ref: '#/components/parameters/SearchHub'
- $ref: '#/components/parameters/Tab'
- $ref: '#/components/parameters/Referrer'
- $ref: '#/components/parameters/Context'
- $ref: '#/components/parameters/ActionsHistory'
- $ref: '#/components/parameters/Recommendation'
- $ref: '#/components/parameters/Locale'
- $ref: '#/components/parameters/Timezone'
- $ref: '#/components/parameters/Format'
- $ref: '#/components/parameters/Debug'
- $ref: '#/components/parameters/IndexToken'
- $ref: '#/components/parameters/VisitorId'
- $ref: '#/components/parameters/IsGuestUser'
- $ref: '#/components/parameters/Language'
- $ref: '#/components/parameters/MlParameters'
- $ref: '#/components/parameters/IndexType'
- $ref: '#/components/parameters/Index'
- $ref: '#/components/parameters/LogicalIndex'
- $ref: '#/components/parameters/MaximumTimeoutMs'
- $ref: '#/components/parameters/AnalyticsRequestParameters'
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/ViewAllContentQuery'
responses:
'200':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/ListFieldValuesResponse'
security:
- oauth2:
- full
post:
tags:
- Search V2
summary: Get Values for One Field
description: 'Lists all values of the target field.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
operationId: valuesPost
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/ViewAllContentQuery'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RestListFieldValuesParameter'
required: true
responses:
'200':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/ListFieldValuesResponse'
security:
- oauth2:
- full
/rest/search/v2/values/batch:
get:
tags:
- Search V2
summary: Get Values for Several Field
description: 'Lists all values of the target field.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
operationId: valuesBatchGet
parameters:
- name: batch
in: query
description: 'An array of parameters to retrieve field values.
'
required: true
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/RestListFieldValuesBatchParameter'
- $ref: '#/components/parameters/Pipeline'
- $ref: '#/components/parameters/MaximumAge'
- $ref: '#/components/parameters/SearchHub'
- $ref: '#/components/parameters/Tab'
- $ref: '#/components/parameters/Referrer'
- $ref: '#/components/parameters/Context'
- $ref: '#/components/parameters/ActionsHistory'
- $ref: '#/components/parameters/Recommendation'
- $ref: '#/components/parameters/Locale'
- $ref: '#/components/parameters/Timezone'
- $ref: '#/components/parameters/Format'
- $ref: '#/components/parameters/Debug'
- $ref: '#/components/parameters/IndexToken'
- $ref: '#/components/parameters/VisitorId'
- $ref: '#/components/parameters/IsGuestUser'
- $ref: '#/components/parameters/Language'
- $ref: '#/components/parameters/MlParameters'
- $ref: '#/components/parameters/IndexType'
- $ref: '#/components/parameters/Index'
- $ref: '#/components/parameters/LogicalIndex'
- $ref: '#/components/parameters/MaximumTimeoutMs'
- $ref: '#/components/parameters/AnalyticsRequestParameters'
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/ViewAllContentQuery'
responses:
'200':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/ListFieldValuesBatchResponse'
security:
- oauth2:
- full
post:
tags:
- Search V2
summary: Get Values for Several Field
description: 'Lists all values of the target field.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
operationId: valuesBatchPost
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/ViewAllContentQuery'
- $ref: '#/components/parameters/AnalyticsRequestParameters'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RestListFieldValuesBatchParameter'
required: true
responses:
'200':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/ListFieldValuesBatchResponse'
security:
- oauth2:
- full
/rest/search/v2/html:
get:
tags:
- Search V2
summary: Get HTML Item Preview
operationId: htmlGet
parameters:
- name: uniqueId
in: query
description: 'The uniqueId of the document. Exactly one of uniqueId or primaryId is required.
**Deprecated:** Use `primaryId` instead.'
schema:
type: string
- name: primaryId
in: query
description: The primaryId of the document. Exactly one of uniqueId or primaryId is required.
schema:
type: string
- $ref: '#/components/parameters/OrganizationIdQuery'
- name: findNext
in: query
schema:
type: integer
format: int32
- name: findPrevious
in: query
schema:
type: integer
format: int32
- name: page
in: query
schema:
type: integer
format: int32
- name: enableNavigation
in: query
schema:
type: boolean
- name: requestedOutputSize
in: query
description: The approximate number of bytes to request in the HTML response. **Default:** `0`, meaning that the entire
HTML document is requested.
schema:
type: integer
format: int32
- $ref: '#/components/parameters/Q'
- $ref: '#/components/parameters/AQ'
- $ref: '#/components/parameters/CQ'
- $ref: '#/components/parameters/DQ'
- $ref: '#/components/parameters/LQ'
- $ref: '#/components/parameters/EnableDidYouMean'
- $ref: '#/components/parameters/MlDidYouMeanMaxCandidates'
- $ref: '#/components/parameters/MlDidYouMeanMinScore'
- $ref: '#/components/parameters/MlDidYouMeanUseFacetCount'
- $ref: '#/components/parameters/EnableMlDidYouMean'
- $ref: '#/components/parameters/PartialMatch'
- $ref: '#/components/parameters/PartialMatchKeywords'
- $ref: '#/components/parameters/PartialMatchThreshold'
- $ref: '#/components/parameters/LqPartialMatchMaxKeywords'
- $ref: '#/components/parameters/LqPartialMatchKeywords'
- $ref: '#/components/parameters/LqPartialMatchThreshold'
- $ref: '#/components/parameters/Wildcards'
- $ref: '#/components/parameters/QuestionMark'
- $ref: '#/components/parameters/EnableQuerySyntax'
- $ref: '#/components/parameters/LowerCaseOperators'
- $ref: '#/components/parameters/ExcerptLength'
- $ref: '#/components/parameters/RetrieveFirstSentences'
- $ref: '#/components/parameters/FieldsToInclude'
- $ref: '#/components/parameters/FieldsToExclude'
- $ref: '#/components/parameters/GroupBy'
- $ref: '#/components/parameters/Facets'
- $ref: '#/components/parameters/FacetOptions'
- $ref: '#/components/parameters/CategoryFacets'
- $ref: '#/components/parameters/SortCriteria'
- $ref: '#/components/parameters/RankingFunctions'
- $ref: '#/components/parameters/QueryFunctions'
- $ref: '#/components/parameters/FirstResult'
- $ref: '#/components/parameters/NumberOfResults'
- $ref: '#/components/parameters/EnableDuplicateFiltering'
- $ref: '#/components/parameters/FilterField'
- $ref: '#/components/parameters/ParentField'
- $ref: '#/components/parameters/ChildField'
- $ref: '#/components/parameters/FilterFieldRange'
- $ref: '#/components/parameters/SummaryLength'
- $ref: '#/components/parameters/SortField'
- $ref: '#/components/parameters/DisableQuerySyntax'
- $ref: '#/components/parameters/StaticQuery'
- $ref: '#/components/parameters/UserActionParameter'
- $ref: '#/components/parameters/CommerceParameters'
- $ref: '#/components/parameters/DictionaryFieldContext'
- $ref: '#/components/parameters/Pipeline'
- $ref: '#/components/parameters/MaximumAge'
- $ref: '#/components/parameters/SearchHub'
- $ref: '#/components/parameters/Tab'
- $ref: '#/components/parameters/Referrer'
- $ref: '#/components/parameters/Context'
- $ref: '#/components/parameters/ActionsHistory'
- $ref: '#/components/parameters/Recommendation'
- $ref: '#/components/parameters/Locale'
- $ref: '#/components/parameters/Timezone'
- $ref: '#/components/parameters/Format'
- $ref: '#/components/parameters/Debug'
- $ref: '#/components/parameters/IndexToken'
- $ref: '#/components/parameters/VisitorId'
- $ref: '#/components/parameters/IsGuestUser'
- $ref: '#/components/parameters/Language'
- $ref: '#/components/parameters/MlParameters'
- $ref: '#/components/parameters/IndexType'
- $ref: '#/components/parameters/Index'
- $ref: '#/components/parameters/LogicalIndex'
- $ref: '#/components/parameters/MaximumTimeoutMs'
- $ref: '#/components/parameters/AnalyticsRequestParameters'
- $ref: '#/components/parameters/ViewAllContentQuery'
responses:
'200':
description: No response
content: {}
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth2:
- full
description: '
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
post:
tags:
- Search V2
summary: Get HTML Item Preview
operationId: htmlPost
parameters:
- name: uniqueId
in: query
description: The unique ID of the document.
required: true
schema:
type: string
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/ViewAllContentQuery'
- name: findNext
in: query
schema:
type: integer
format: int32
- name: findPrevious
in: query
schema:
type: integer
format: int32
- name: page
in: query
schema:
type: integer
format: int32
- name: enableNavigation
in: query
schema:
type: boolean
- name: requestedOutputSize
in: query
description: The approximate number of bytes to request in the HTML response. **Default:** `0`, meaning that the entire
HTML document is requested.
schema:
type: integer
format: int32
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RestQueryParameters'
required: true
responses:
'200':
description: No response
content: {}
security:
- oauth2:
- full
description: '
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
/rest/search/v2/text:
get:
tags:
- Search V2
summary: Get Item in Text Format
operationId: text
parameters:
- name: primaryId
in: query
description: The primaryId of the document. Exactly one of uniqueId or primaryId is required.
schema:
type: string
- name: uniqueId
in: query
description: 'The uniqueId of the document. Exactly one of uniqueId or primaryId is required.
**Deprecated:** Use `primaryId` instead.'
deprecated: true
schema:
type: string
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/Pipeline'
- $ref: '#/components/parameters/SearchHub'
- $ref: '#/components/parameters/ViewAllContentQuery'
- $ref: '#/components/parameters/Locale'
- $ref: '#/components/parameters/Timezone'
- $ref: '#/components/parameters/IndexToken'
- $ref: '#/components/parameters/Index'
- $ref: '#/components/parameters/LogicalIndex'
- $ref: '#/components/parameters/Tab'
- $ref: '#/components/parameters/Referrer'
- $ref: '#/components/parameters/Context'
responses:
'200':
description: No response
content: {}
'404':
$ref: '#/components/responses/NotFound'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth2:
- full
description: '
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
/rest/search/v2/datastream:
get:
tags:
- Search V2
summary: Get Item Data Stream
operationId: dataStream
parameters:
- name: dataStream
in: query
description: The name of the data stream to request.
required: true
schema:
type: string
- name: primaryId
in: query
description: The primaryId of the document. Exactly one of uniqueId or primaryId is required.
schema:
type: string
- name: uniqueId
in: query
description: 'The uniqueId of the document. Exactly one of uniqueId or primaryId is required.
**Deprecated:** Use `primaryId` instead.'
deprecated: true
schema:
type: string
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/ViewAllContentQuery'
- name: contentType
in: query
description: 'The MIME type of the data stream to request.
**Default:** `application/binary`'
schema:
type: string
- $ref: '#/components/parameters/Pipeline'
- $ref: '#/components/parameters/SearchHub'
- $ref: '#/components/parameters/Locale'
- $ref: '#/components/parameters/Timezone'
- $ref: '#/components/parameters/IndexToken'
- $ref: '#/components/parameters/Index'
- $ref: '#/components/parameters/LogicalIndex'
- $ref: '#/components/parameters/Tab'
- $ref: '#/components/parameters/Referrer'
- $ref: '#/components/parameters/Context'
responses:
'200':
description: No response
content: {}
'404':
$ref: '#/components/responses/NotFound'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth2:
- full
description: '
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
/rest/search/v2/document:
get:
tags:
- Search V2
summary: Get Item in JSON Format
operationId: document
parameters:
- name: primaryId
in: query
description: The primaryId of the document. Exactly one of uniqueId or primaryId is required.
schema:
type: string
- name: uniqueId
in: query
description: 'The uniqueId of the document. Exactly one of uniqueId or primaryId is required.
**Deprecated:** Use `primaryId` instead.'
deprecated: true
schema:
type: string
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/Pipeline'
- $ref: '#/components/parameters/SearchHub'
- $ref: '#/components/parameters/ViewAllContentQuery'
- $ref: '#/components/parameters/Locale'
- $ref: '#/components/parameters/Timezone'
- $ref: '#/components/parameters/IndexToken'
- $ref: '#/components/parameters/Index'
- $ref: '#/components/parameters/LogicalIndex'
- $ref: '#/components/parameters/Tab'
- $ref: '#/components/parameters/Referrer'
- $ref: '#/components/parameters/Context'
responses:
'200':
description: The document matching this uniqueId.
content:
application/json:
schema:
$ref: '#/components/schemas/RestQueryResult'
'404':
$ref: '#/components/responses/NotFound'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth2:
- full
description: '
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
/rest/search/v2/token:
post:
tags:
- Search V2
summary: Create Search Token
description: 'Creates a temporary [JSON web token](https://jwt.io/) which can be used to impersonate one or several
security identities when authenticating a query (see [Search Token Authentication](https://docs.coveo.com/en/56/)).
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"IMPERSONATE_SEARCH_API","type":"ENABLE","targetId":"*"}
```
'
operationId: token
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
requestBody:
description: The search token information.
content:
application/json:
schema:
$ref: '#/components/schemas/RestTokenParams'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/RestTokenResponse'
security:
- oauth2:
- full
/rest/search/v2/login/{provider}:
get:
tags:
- Search V2
summary: Log in to Authentication Provider
description: 'Directs the browser to URI of the target Search API authentication provider, and back to the origin search
page once the authentication process is complete. This authentication provider must be properly configured in the
Coveo Cloud organization.
Privilege(s) required
```json
```
'
operationId: login
parameters:
- name: provider
in: path
description: The name of the Search API authentication provider to log in to.
required: true
schema:
type: string
- $ref: '#/components/parameters/OrganizationIdQuery'
responses:
'200':
description: No response
content: {}
security:
- oauth2:
- full
post:
tags:
- Search V2
summary: Log in to Authentication Provider
description: 'Directs the browser to URI of the target Search API authentication provider, and back to the origin search
page once the authentication process is complete. This authentication provider must be properly configured in the
Coveo Cloud organization.
Privilege(s) required
```json
```
'
operationId: loginProviderPost
parameters:
- name: provider
in: path
description: The name of the Search API authentication provider to log in to.
example: My SharePoint Server
required: true
schema:
type: string
- $ref: '#/components/parameters/OrganizationIdQuery'
responses:
'200':
description: No response
content: {}
security:
- oauth2:
- full
/rest/search/v2/extensions:
get:
tags:
- Search V2
summary: List Available Query Extensions
operationId: extensions
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
responses:
'200':
description: No response
content: {}
security:
- oauth2:
- full
description: '
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
/rest/search/v2/rating:
post:
tags:
- Search V2
summary: Update User Rating
description: 'The Coveo Cloud V2 platform does not support collaborative rating. Therefore, this operation is obsolete
in Coveo Cloud V2.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
operationId: rating
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- name: rating
in: query
description: The rate to be updated.
required: true
schema:
type: string
- name: uniqueId
in: query
description: The unique ID of the document.
required: true
schema:
type: string
responses:
'200':
description: No response
content: {}
deprecated: true
security:
- oauth2:
- full
/rest/search/v2/fields/find:
post:
tags:
- Search V2
summary: Find Fields from Results of a Query Expression
description: 'Find fields name from results matching the `q` expression.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"},
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"VIEW_ALL_CONTENT","type":"ENABLE","targetId":"*"}
```
'
operationId: findFieldsFromExpression
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
requestBody:
description: The query to get the fields from.
content:
application/json:
schema:
$ref: '#/components/schemas/FindFieldsRequest'
responses:
'200':
description: The list of fields referenced by the requested expression.
content:
application/json:
schema:
$ref: '#/components/schemas/FindFieldsResponse'
security:
- oauth2:
- full
/rest/search/v2/admin/pipelines/{pipelineId}/statements:
get:
tags:
- Statements V2
summary: List Query Pipeline Statements
description: 'Gets a sorted page of query pipeline statements matching certain criteria from a specific query pipeline.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"*"}
```
'
operationId: listQueryPipelineStatementsV2
parameters:
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/IsOrderAscending'
- $ref: '#/components/parameters/Filter'
- $ref: '#/components/parameters/SortBy'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
- $ref: '#/components/parameters/Feature'
- $ref: '#/components/parameters/SubFeature'
- $ref: '#/components/parameters/OrganizationIdQuery'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/OutgoingStatements'
'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
post:
tags:
- Statements V2
summary: Create Query Pipeline Statement
description: 'Creates a new query pipeline statement in a specific query pipeline.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"{pipelineId}"}
```
'
operationId: createQueryPipelineStatementV2
parameters:
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/OrganizationIdQuery'
requestBody:
description: The query pipeline statement information.
content:
application/json:
schema:
$ref: '#/components/schemas/IncomingStatement'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/OutgoingStatement'
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/OutgoingStatement'
'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
/rest/search/v2/admin/pipelines/{pipelineId}/statements/{statementId}:
get:
tags:
- Statements V2
summary: Get Query Pipeline Statement
description: 'Gets a single query pipeline statement from a specific query pipeline.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"*"}
```
'
operationId: getQueryPipelineStatementV2
parameters:
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/StatementIdPath'
- $ref: '#/components/parameters/OrganizationIdQuery'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/OutgoingStatement'
'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
put:
tags:
- Statements V2
summary: Update Query Pipeline Statement
description: 'Updates a single query pipeline statement in a specific 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: updateQueryPipelineStatement
parameters:
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/StatementIdPath'
- $ref: '#/components/parameters/OrganizationIdQuery'
requestBody:
description: The updated query pipeline statement information.
content:
application/json:
schema:
$ref: '#/components/schemas/IncomingStatement'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/OutgoingStatement'
'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
delete:
tags:
- Statements V2
summary: Delete Query Pipeline Statement
description: 'Deletes a single query pipeline statement from a specific 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: deleteQueryPipelineStatementV2
parameters:
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/StatementIdPath'
- $ref: '#/components/parameters/OrganizationIdQuery'
responses:
'200':
description: OK
content:
application/json:
schema:
type: string
'204':
description: No content
content: {}
'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
/rest/search/v2/admin/pipelines/{pipelineId}/statements/bulkGet:
post:
tags:
- Statements V2
summary: List Query Pipeline Statements
description: 'Gets a sorted page of query pipeline statements matching certain criteria from a specific query pipeline.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"*"}
```
'
operationId: bulkGetStatementsOperationV2
parameters:
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/IsOrderAscending'
- $ref: '#/components/parameters/Filter'
- $ref: '#/components/parameters/SortBy'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
- $ref: '#/components/parameters/Feature'
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/OutgoingStatements'
'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/v2/admin/pipelines/{pipelineId}/statements/bulkDelete:
post:
tags:
- Statements V2
summary: Bulk Delete Query Pipeline Statements
description: 'Delete multiple statements at once for a specific pipeline.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"{pipelineId}"}
```
'
operationId: bulkDeleteStatements
parameters:
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/OrganizationIdQuery'
requestBody:
description: The statements to delete
content:
application/json:
schema:
$ref: '#/components/schemas/BulkDeleteStatementsRequest'
required: true
responses:
'200':
description: Deleted
content:
application/json:
schema:
$ref: '#/components/schemas/BulkDeleteResultStatementsResponse'
'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
/rest/search/v2/admin/pipelines/{pipelineId}/statements/copy:
post:
tags:
- Statements V2
summary: Copy Query Pipeline Statements
description: 'Copies specific statements from an origin to a target query pipeline. Using the same pipeline as origin
and target will duplicate the specified statements in that 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: copyQueryPipelineStatements
parameters:
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/OrganizationIdQuery'
requestBody:
description: The copy operation to perform.
content:
application/json:
schema:
$ref: '#/components/schemas/IncomingCopyStatements'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/OutgoingStatements'
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/OutgoingStatement'
'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
/rest/search/v2/admin/pipelines/{pipelineId}/statements/export:
get:
tags:
- Statements V2
summary: Export Query Pipeline Statements
description: 'Exports the definition, condition, and description of statements from a specific query pipeline to a CSV
file.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"*"}
```
'
operationId: exportQueryPipelineStatements
parameters:
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/Feature'
- $ref: '#/components/parameters/OrganizationIdQuery'
responses:
'200':
description: OK
content:
text/csv:
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
/rest/search/v2/admin/pipelines/{pipelineId}/statements/import:
post:
tags:
- Statements V2
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: importQueryPipelineStatementsV2
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
/rest/search/v2/admin/pipelines/{pipelineId}/statements/{statementId}/move:
put:
tags:
- Statements V2
summary: Move Query Pipeline Statement
description: 'Sets the position of a query pipeline statement in a specific query pipeline and updates other statement
positions as appropriate.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"{pipelineId}"}
```
'
operationId: moveQueryPipelineStatementV2
parameters:
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/StatementIdPath'
- $ref: '#/components/parameters/OrganizationIdQuery'
requestBody:
description: The move operation to perform.
content:
application/json:
schema:
$ref: '#/components/schemas/IncomingMoveStatement'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
type: array
description: The matching statements in the current page of results.
items:
$ref: '#/components/schemas/OutgoingStatement'
'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
/rest/search/v2/admin/pipelines/{pipelineId}/statements/validate:
post:
tags:
- Statements V2
summary: Validate a Single Statement 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":"{pipelineId}"}
```
'
operationId: validateStatementOperationV2
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
requestBody:
description: An object that contains an operation to validate.
content:
application/json:
schema:
$ref: '#/components/schemas/RestSingleOperationValidationRequestIncomingStatement'
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/v2/admin/pipelines/{pipelineId}/statements/validate/batch:
post:
tags:
- Statements V2
summary: Validate a Batch of Statement 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\":\"{pipelineId}\"}\n```\n\
"
operationId: validateStatementsOperationsV2
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
requestBody:
description: An object that contains the list of operations to validate.
content:
application/json:
schema:
$ref: '#/components/schemas/RestBatchOperationValidationRequestIncomingStatement'
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/v2/admin/pipelines/{pipelineId}/resultRankings:
get:
tags:
- Result rankings
summary: Get a List of Result Ranking Rules
description: 'Get a list of result ranking rules
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"{pipelineId}"}
```
'
operationId: listResultRankingRules
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
- name: kind
in: query
deprecated: true
description: 'The kind of result ranking rules to allow in the returned list (i.e., `featured_result` or `ranking_expression`).
By default, both kinds of rules are allowed.
**Deprecated:** Use `ruleTypes` instead.'
schema:
type: string
- name: enabledStatus
in: query
deprecated: true
description: 'The enabled status of result ranking rules to allow in the returned list.
Set to `true` to only allow rules whose `enabled` property is set to `true`, and vice versa.
By default, both enabled and disabled rules are allowed.
**Deprecated:** Use `ruleStatuses` instead.'
schema:
type: boolean
- name: statementGroupId
in: query
description: The unique identifier of the statement group.
schema:
type: string
- $ref: '#/components/parameters/IsOrderAscending'
- name: ruleStatuses
description: 'The rule status to allow in the results. Available statuses are: "active", "inactive".
If you leave this parameter undefined, all rule statuses will be allowed in the results. If you pass an empty array
(`[]`), no rules will be returned.'
required: false
in: query
schema:
type: array
items:
$ref: '#/components/schemas/ResultRankingRuleStatus'
default:
- active
- inactive
- $ref: '#/components/parameters/Filter'
- name: ruleTypes
description: 'The rule types to allow in the results. Available types are "featuredResults", "rankingExpressions".
If you leave this parameter undefined, all rule types will be allowed in the results. If you pass an empty array
(`[]`), no rules will be returned.'
required: false
in: query
schema:
type: array
items:
$ref: '#/components/schemas/ResultRankingRuleType'
default:
- featuredResults
- rankingExpressions
- name: associatedGroups
description: The group names to allow in the results. Include the `null` value in the array to allow rules that are
not associated with any groups (e.g., `[null, "mygroup"]`). If you leave this parameter undefined, all groups will
be allowed in the results. If you pass an empty array (`[]`), no rules will be returned.
required: false
in: query
schema:
type: array
items:
type: string
nullable: true
- name: expand
in: query
required: false
description: 'The related resources to expand in the response.
Set to `condition.detailed` to include the detailed version of the condition alongside `condition.reference` in
each result ranking condition.'
schema:
type: array
items:
type: string
enum:
- condition.detailed
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ResultRankingListResponse'
'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
post:
tags:
- Result rankings
summary: Create a New Result Ranking Rule
description: 'Create a new result ranking rule
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"{pipelineId}"}
```
'
operationId: createResultRankingRule
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
requestBody:
description: The new result ranking to create
content:
application/json:
schema:
$ref: '#/components/schemas/ResultRankingRuleCreateRequest'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ResultRankingRuleIdOnlyResponse'
'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
/rest/search/v2/admin/pipelines/{pipelineId}/resultRankings/{resultRankingId}:
get:
tags:
- Result rankings
summary: Get a Result Ranking Rule
description: 'Get a result ranking rule
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"{pipelineId}"}
```
'
operationId: getResultRankingRule
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
- name: resultRankingId
in: path
description: The unique identifier of the result ranking.
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ResultRankingRuleGetResponse'
'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
put:
tags:
- Result rankings
summary: Update a Result Ranking Rule
description: 'Update a result ranking rule
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"{pipelineId}"}
```
'
operationId: updateResultRankingRule
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
- name: resultRankingId
in: path
description: The unique identifier of the result ranking.
example: 120deecf-7822-4d7b-885f-53f184a3a76c
required: true
schema:
type: string
requestBody:
description: The result ranking rule to update
content:
application/json:
schema:
$ref: '#/components/schemas/ResultRankingRuleUpdateRequest'
required: true
responses:
'204':
description: No Content
content: {}
'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
delete:
tags:
- Result rankings
summary: Delete a Result Ranking Rule
description: 'Deletes a result ranking rule
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"{pipelineId}"}
```
'
operationId: deleteResultRankingRule
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
- name: resultRankingId
in: path
description: The unique identifier of the result ranking.
example: 120deecf-7822-4d7b-885f-53f184a3a76c
required: true
schema:
type: string
responses:
'204':
description: No Content
content: {}
'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
/rest/search/v2/admin/pipelines/{pipelineId}/resultRankings/bulkGet:
post:
tags:
- Result rankings
summary: Bulk Get Result Ranking Rules
description: 'Bulk get result ranking rules
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"{pipelineId}"}
```
'
operationId: bulkGetResultRankingOperation
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
- name: kind
in: query
description: 'The kind of result ranking rules to allow in the returned list (i.e., `featured_result` or `ranking_expression`).
By default, both kinds of rules are allowed.'
schema:
type: string
- name: enabledStatus
in: query
description: 'The enabled status of result ranking rules to allow in the returned list.
Set to `true` to only allow rules whose `enabled` property is set to `true`, and vice versa.
By default, both enabled and disabled rules are allowed.'
schema:
type: boolean
- name: statementGroupId
in: query
description: The unique identifier of the statement group.
schema:
type: string
- $ref: '#/components/parameters/IsOrderAscending'
- $ref: '#/components/parameters/Filter'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
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/ResultRankingBulkGetResponse'
'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/v2/admin/pipelines/{pipelineId}/resultRankings/bulkDelete:
post:
tags:
- Result rankings
summary: Bulk Delete Result Rankings Rules from a Pipeline
description: 'Delete multiple result rankings rules in batch for a specific pipeline.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"{pipelineId}"}
```
'
operationId: bulkDeleteRankingRules
parameters:
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/OrganizationIdQuery'
requestBody:
description: The rules to delete
content:
application/json:
schema:
$ref: '#/components/schemas/BulkDeleteResultRankingRulesRequest'
required: true
responses:
'200':
description: Deleted
content:
application/json:
schema:
$ref: '#/components/schemas/BulkDeleteResultRankingRulesResponse'
'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
/rest/search/v2/admin/pipelines/{pipelineId}/resultRankings/copy:
post:
tags:
- Result rankings
summary: Copy Result Rankings Rules to a Pipeline.
description: 'Copies specific result ranking rules from an origin to a target query pipeline. Using the same pipeline
as origin and target will duplicate the specified statements in that 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: copyResultRankingRule
parameters:
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/OrganizationIdQuery'
requestBody:
description: The copy operation to perform.
content:
application/json:
schema:
$ref: '#/components/schemas/CopyResultRankingRulesRequest'
required: true
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/CopyResultRankingRulesResponse'
'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
/rest/search/v2/admin/pipelines/{pipelineId}/resultRankings/duplicate/{resultRankingId}:
post:
tags:
- Result rankings
summary: Duplicate a Result Ranking Rule
description: 'Duplicate a result ranking rule
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: duplicateResultRankingRule
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
- name: resultRankingId
in: path
description: The unique identifier of the result ranking.
example: 120deecf-7822-4d7b-885f-53f184a3a76c
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ResultRankingRuleIdentifiedWithGroupStatusResponse'
'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
/rest/search/v2/admin/pipelines/{pipelineId}/resultRankings/validate:
post:
tags:
- Result rankings
summary: Validate a Single Result Ranking 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":"{pipelineId}"}
```
'
operationId: validateResultRankingOperation
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
requestBody:
description: An object that contains an operation to validate.
content:
application/json:
schema:
$ref: '#/components/schemas/ResultRankingSingleOperationValidate'
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/v2/admin/pipelines/{pipelineId}/resultRankings/validate/batch:
post:
tags:
- Result rankings
summary: Validate a Batch of Result Ranking Operations.
description: "\n Validate that a list of operations would be accepted by our API and executed.\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\":\"{pipelineId}\"}\n```\n\
"
operationId: validateResultRankingOperations
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
requestBody:
description: An object that contains the list of operations to validate.
content:
application/json:
schema:
$ref: '#/components/schemas/ResultRankingBatchOperationValidate'
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/v2/admin/pipelines/{pipelineId}/ml/model/associations:
get:
tags:
- Machine learning associations
summary: List Query Pipeline ML Model Associations
description: 'Gets a page of Coveo Machine Learning model associations for a specific query pipeline.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"*"}
```
'
operationId: listAssociationsOfPipeline
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
- name: filter
in: query
description: 'Filter associations by model display name or description (case-insensitive substring match).
For example, `filter=product` will match associations where the model display name or description contains "product".
By default, all associations are returned when no filter is specified.'
schema:
type: string
maxLength: 50
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/AssociationWithConditionResponseBody'
'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
post:
tags:
- Machine learning associations
summary: Associate an Existing Machine Learning Model with an Existing Pipeline.
operationId: associateModel
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
requestBody:
description: 'The configuration options to apply to the ML model.
The `cacheMaximumAge, `condition`, `description`, and `maxResults`, options apply to all types of models. Other
configuration options are only taken into account for specific types of models:
- `enableWordCompletion`: query suggestions
- `exclusive`: event recommendations
- `intelligentTermDetection`, `matchAdvancedQuery`, and `matchQuery`: automatic relevance tuning
- `rankingModifier`: automatic relevance tuning, event recommendations'
content:
application/json:
schema:
$ref: '#/components/schemas/CreateAssociationRequest'
required: false
responses:
'200':
description: OK
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
description: '
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"{pipelineId}"}
```
'
/rest/search/v2/admin/pipelines/{pipelineId}/ml/model/associations/{associationId}:
get:
tags:
- Machine learning associations
summary: Get a ML Model Association
description: 'Gets a Coveo Machine Learning model association.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"*"}
```
'
operationId: getAssociation
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
- name: associationId
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/MlPipelineAssociationWithGroupAndCondition'
'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
put:
tags:
- Machine learning associations
summary: Update ML Model Association
description: 'Changes the configuration of an association in a pipeline.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"{pipelineId}"}
```
'
operationId: updateAssociation
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
- name: associationId
in: path
required: true
schema:
type: string
requestBody:
description: 'The configuration options to apply to the ML model.
The `cacheMaximumAge`, `condition`, `description`, and `maxResults`, options apply to all types of models. Other
configuration options are only taken into account for specific types of models:
- `enableWordCompletion`: query suggestions
- `exclusive`: event recommendations
- `intelligentTermDetection`, `matchAdvancedQuery`, and `matchQuery`: automatic relevance tuning
- `rankingModifier`: automatic relevance tuning, event recommendations'
content:
application/json:
schema:
$ref: '#/components/schemas/EditAssociationRequest'
required: false
responses:
'200':
description: OK
content:
application/json:
schema:
type: string
'204':
description: No Content
content: {}
'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
delete:
tags:
- Machine learning associations
summary: Remove Query Pipeline ML Model Association
description: 'Removes a single existing association between a machine learning model and a query pipeline.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"{pipelineId}"}
```
'
operationId: disassociate
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
- name: associationId
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
type: string
'204':
description: No Content
content: {}
'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
/rest/search/v2/admin/pipelines/{pipelineId}/ml/model/associations/{associationId}/position:
put:
tags:
- Machine learning associations
summary: Update ML Model Association Position
description: 'Changes the position of an association in a pipeline.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"{pipelineId}"}
```
'
operationId: updateAssociationPosition
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
- name: associationId
in: path
required: true
schema:
type: string
- name: position
in: query
required: true
schema:
type: integer
format: int32
responses:
'200':
description: OK
content:
application/json:
schema:
type: string
'204':
description: No Content
content: {}
'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
/rest/search/v2/admin/pipelines/{pipelineId}/ml/model/associations/bulkGet:
post:
tags:
- Machine learning associations
summary: List Query Pipeline ML Model Associations
description: 'Gets a page of Coveo Machine Learning model associations for a specific query pipeline.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"*"}
```
'
operationId: bulkGetAssociationsOfPipeline
parameters:
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
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/AssociationWithConditionResponseBody'
'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
/rest/search/v2/admin/pipelines/{pipelineId}/ml/model/associations/validate:
post:
tags:
- Machine learning associations
summary: Validate a Single ML Model Association 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: validateMlAssociationOperation
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
requestBody:
description: An object that contains an operation to validate.
content:
application/json:
schema:
$ref: '#/components/schemas/AssociationSingleValidationRequest'
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/v2/admin/pipelines/{pipelineId}/ml/model/associations/validate/batch:
post:
tags:
- Machine learning associations
summary: Validate a Batch of ML Model Association Operations.
description: "\n Validate that a list of operations would be accepted by our API and executed.\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: validateMlAssociationOperations
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
requestBody:
description: An object that contains the list of operations to validate.
content:
application/json:
schema:
$ref: '#/components/schemas/AssociationBatchValidationRequest'
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/v2/admin/pipelines/ml/version:
get:
tags:
- Machine learning associations
summary: Returns the Version of ML Models Supported by the Organization in the Request.
operationId: mlVersion
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
responses:
'200':
description: OK
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
description: '
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"*"}
```
'
/rest/search/v2/admin/pipelines/{pipelineId}/statementGroups:
get:
tags:
- Statement groups
summary: List Statement Groups of a Pipeline
description: 'List statement groups of a pipeline
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"{pipelineId}"}
```
'
operationId: listStatementGroups
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
- $ref: '#/components/parameters/Filter'
- $ref: '#/components/parameters/StatementGroupSortBy'
- $ref: '#/components/parameters/IsOrderAscending'
- $ref: '#/components/parameters/StatementGroupTypeParam'
- $ref: '#/components/parameters/StatementGroupStatusParam'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ListStatementGroupsResponse'
'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
post:
tags:
- Statement groups
summary: Create a New Statement Group
description: 'Create a new statement group
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"{pipelineId}"}
```
'
operationId: createStatementGroup
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
requestBody:
description: The new statement group to create
content:
application/json:
schema:
$ref: '#/components/schemas/CreateOrUpdateStatementGroup'
required: true
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/CreateStatementGroupResponse'
'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
/rest/search/v2/admin/pipelines/{pipelineId}/statementGroups/associations/dissociate:
post:
tags:
- Statement groups
summary: Dissociate Pipeline Rules Associated to Groups
operationId: statementGroupsAssociationsDissociate
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/DissociateStatementGroupAssociationsRequest'
responses:
'200':
description: Successfully dissociated the items.
content:
application/json:
schema:
type: object
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'419':
$ref: '#/components/responses/AuthenticationTimeout'
'422':
$ref: '#/components/responses/UnprocessableStatementGroupAssociations422'
'429':
$ref: '#/components/responses/TooManyRequests'
'503':
$ref: '#/components/responses/ServiceUnavailable'
security:
- oauth2:
- full
description: '
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"{pipelineId}"}
```
'
/rest/search/v2/admin/pipelines/{pipelineId}/statementGroups/bulkGet:
post:
tags:
- Statement groups
summary: List Statement Groups of a Pipeline
description: 'List statement groups of a pipeline
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"{pipelineId}"}
```
'
operationId: bulkGetStatementGroupsOperation
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
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/ListStatementGroupsResponse'
'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
/rest/search/v2/admin/pipelines/{pipelineId}/statementGroups/validate:
post:
tags:
- Statement groups
summary: Validate a Single Statement Group 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":"{pipelineId}"}
```
'
operationId: validateStatementGroupOperation
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
requestBody:
description: An object that contains an operation to validate.
content:
application/json:
schema:
$ref: '#/components/schemas/RestSingleOperationValidationRequestCreateStatementGroupRequest'
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/v2/admin/pipelines/{pipelineId}/statementGroups/validate/batch:
post:
tags:
- Statement groups
summary: Validate a Batch of Statement Groups Operations.
description: '
Validate that a list of operations would be accepted by our API and executed.
A maximum of 15 can be processed per request.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"{pipelineId}"}
```
'
operationId: validateStatementGroupsOperations
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
requestBody:
description: An object that contains the list of operations to validate.
content:
application/json:
schema:
$ref: '#/components/schemas/RestBatchOperationValidationRequestCreateStatementGroupRequest'
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/admin/pipelines/featureActiveState:
get:
summary: Returns the List of All Pipeline Features and Whether They're Active or Not.
operationId: getFeatureActiveState
tags:
- Statement groups
parameters:
- $ref: '#/components/parameters/OrganizationIdQueryRequired'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ListFeatureActiveStateResponse'
security:
- oauth2:
- full
description: '
Privilege(s) required
```json
```
'
/rest/search/v2/admin/pipelines/{pipelineId}/statementGroups/{statementGroupId}:
get:
tags:
- Statement groups
summary: Get a Statement Group of a Pipeline
description: 'Get a statement group of a pipeline
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"{pipelineId}"}
```
'
operationId: Get a statement group of a pipeline
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/StatementGroupIdPath'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetStatementGroup'
'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'
'503':
$ref: '#/components/responses/ServiceUnavailable'
security:
- oauth2:
- full
delete:
tags:
- Statement groups
summary: Delete a Statement Group of a Pipeline
description: 'Delete a statement group of a pipeline
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"{pipelineId}"}
```
'
operationId: Delete a statement group of a pipeline
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/StatementGroupIdPath'
responses:
'204':
description: No response
content: {}
'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
put:
tags:
- Statement groups
summary: Update a Statement Group
description: 'Update a statement group
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"{pipelineId}"}
```
'
operationId: Update a statement group
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/StatementGroupIdPath'
requestBody:
description: The statement group to update
content:
application/json:
schema:
$ref: '#/components/schemas/CreateOrUpdateStatementGroup'
required: true
responses:
'204':
description: No Content
content: {}
'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
patch:
tags:
- Statement groups
summary: Toggle a Permanent Group
description: 'Toggle a permanent group
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"{pipelineId}"}
```
'
operationId: Toggle a permanent group
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/StatementGroupIdPath'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/TogglePermanentGroupRequest'
required: true
responses:
'204':
description: No Content
content: {}
'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/v2/admin/pipelines/{pipelineId}/statementGroups/{statementGroupId}/associations:
put:
security:
- oauth2:
- full
tags:
- Statement groups
summary: Update the Rules Associated with a Statement Group
description: 'There are two operations which can update the rules associated with a statement group:
- **Addition** uses the `toAdd` parameter
- **Deletion** uses the `toRemove` parameter
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"{pipelineId}"}
```
'
operationId: updateStatementGroupsAssociations
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/StatementGroupIdPath'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateStatementGroupAssociationsRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateStatementGroupAssociationsResponse'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'419':
$ref: '#/components/responses/AuthenticationTimeout'
'422':
$ref: '#/components/responses/UnprocessableStatementGroupAssociations422'
'429':
$ref: '#/components/responses/TooManyRequests'
'503':
$ref: '#/components/responses/ServiceUnavailable'
/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/statements:
get:
tags:
- Conditions
summary: List Condition Statements
description: 'Gets a sorted page of condition statements matching certain criteria.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"*"}
```
'
operationId: listConditions
parameters:
- name: filter
in: query
description: 'The query filter to match.
This allows you to search through query pipeline condition definitions, descriptions, and users who modified them.
By default, results are not required to match a specific query filter.'
schema:
type: string
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
- $ref: '#/components/parameters/OrganizationIdQuery'
- name: sortBy
in: query
description: The sort criteria to apply on the results.
schema:
type: string
enum:
- definition
- description
- lastModification
- totalAssociationCount
- $ref: '#/components/parameters/IsOrderAscending'
- name: expand
schema:
type: boolean
default: false
required: false
in: query
description: Whether to include additional information such as the number of resources associated to the condition.
- name: associationFilter
schema:
type: string
enum:
- all
- notAssociated
- isAssociated
default: all
required: false
in: query
description: Only includes conditions with a certain number of associated resources.
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/OutgoingConditions'
security:
- oauth2:
- full
post:
tags:
- Conditions
summary: Create Condition Statement
description: 'Creates a new condition statement.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"*"}
```
'
operationId: createCondition
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
requestBody:
description: The condition statement information.
content:
application/json:
schema:
$ref: '#/components/schemas/IncomingCondition'
required: true
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/OutgoingCondition'
security:
- oauth2:
- full
/rest/search/v1/admin/pipelines/statements/{statementId}:
get:
tags:
- Conditions
summary: Get Condition Statement
description: 'Gets a single condition statement.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"*"}
```
'
operationId: getCondition
parameters:
- $ref: '#/components/parameters/StatementIdPath'
- $ref: '#/components/parameters/OrganizationIdQuery'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/OutgoingCondition'
security:
- oauth2:
- full
put:
tags:
- Conditions
summary: Update Condition Statement
description: 'Updates a single condition statement.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"*"}
```
'
operationId: updateCondition
parameters:
- $ref: '#/components/parameters/StatementIdPath'
- $ref: '#/components/parameters/OrganizationIdQuery'
requestBody:
description: The updated condition statement information
content:
application/json:
schema:
$ref: '#/components/schemas/IncomingCondition'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/OutgoingCondition'
security:
- oauth2:
- full
delete:
tags:
- Conditions
summary: Delete Condition Statement
description: 'Deletes a single condition statement.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"*"}
```
'
operationId: deleteCondition
parameters:
- $ref: '#/components/parameters/StatementIdPath'
- $ref: '#/components/parameters/OrganizationIdQuery'
responses:
'204':
description: No content
content: {}
security:
- oauth2:
- full
/rest/search/v1/admin/pipelines/statements/{statementId}/associations:
get:
tags:
- Conditions
summary: List of Associations of a Condition
description: 'Gets the list of all objects associated with a condition.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"*"}
```
'
operationId: listConditionAssociations
parameters:
- $ref: '#/components/parameters/StatementIdPath'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/AssociationTypeParam'
- $ref: '#/components/parameters/PipelineStatementTypeParam'
- $ref: '#/components/parameters/PipelineNameParam'
- name: sortBy
in: query
description: 'The sort criteria to apply on the results.
**Default:** `associationType, associationId`'
schema:
type: string
enum:
- pipelineName
- $ref: '#/components/parameters/IsOrderAscending'
responses:
'200':
description: Objects associated with the condition.
content:
application/json:
schema:
$ref: '#/components/schemas/ConditionAssociationListResponse'
examples:
sample:
value:
conditionId: 0befc717-dfd7-4962-9b85-28f5c26fd23b
totalEntries: 6
totalPages: 1
items:
- associationType: pipelines
id: pipe-123
pipelineId: pipe-123
pipelineName: Default Pipeline
- associationType: pipelineStatements
id: stmt-001
pipelineId: pipe-123
pipelineName: Default Pipeline
pipelineStatementType: thesaurus
- associationType: pipelineStatementGroups
id: psg-42
pipelineId: pipe-123
pipelineName: Default Pipeline
- associationType: pipelineStatements
id: fr-9
pipelineId: pipe-123
pipelineName: Default Pipeline
pipelineStatementType: featuredResult
- associationType: pipelineStatements
id: rr-11
pipelineId: pipe-123
pipelineName: Default Pipeline
pipelineStatementType: rankingExpression
- associationType: pipelineStatements
id: uml-777
pipelineId: pipe-123
pipelineName: Default Pipeline
pipelineStatementType: unmanagedMlStatement
'400':
$ref: '#/components/responses/BadRequest'
'404':
description: Condition not found
security:
- oauth2:
- full
/rest/search/v1/admin/pipelines/statements/bulkGet:
post:
tags:
- Conditions
summary: List Condition Statements
description: 'Gets a sorted page of condition statements matching certain criteria.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"*"}
```
'
operationId: bulkGetConditions
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/IsOrderAscending'
- $ref: '#/components/parameters/Filter'
- $ref: '#/components/parameters/SortBy'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
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/OutgoingConditions'
'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/statements/bulkDelete:
post:
tags:
- Conditions
summary: Bulk Delete of Condition Statements
description: 'Bulk delete of condition statements
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"{pipelineId}"}
```
'
operationId: bulkDeleteConditions
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
requestBody:
description: The query pipeline conditions to delete
content:
application/json:
schema:
$ref: '#/components/schemas/BulkDeleteConditionsRequest'
required: true
responses:
'204':
description: No Content
'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/statements/validate:
post:
tags:
- Conditions
summary: Validate a Single Pipeline Condition 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: validatePipelineConditionOperation
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/RestSingleOperationValidationRequestIncomingCondition'
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/statements/validate/batch:
post:
tags:
- Conditions
summary: Validate Batch of Pipeline Condition 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: validatePipelineConditionOperations
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
requestBody:
description: An object that contains the list of operations to validate.
content:
application/json:
schema:
$ref: '#/components/schemas/RestBatchOperationValidationRequestIncomingCondition'
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:
get:
tags:
- Statements V1
summary: List Query Pipeline Statements
description: 'Gets a sorted page of query pipeline statements matching certain criteria from a specific query pipeline.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"*"}
```
'
operationId: listQueryPipelineStatements
parameters:
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/IsOrderAscending'
- $ref: '#/components/parameters/Filter'
- $ref: '#/components/parameters/SortBy'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
- $ref: '#/components/parameters/Feature'
- $ref: '#/components/parameters/OrganizationIdQuery'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/OutgoingStatements'
'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
post:
tags:
- Statements V1
summary: Create Query Pipeline Statement
description: 'Creates a new query pipeline statement in a specific query pipeline.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"{pipelineId}"}
```
'
operationId: createQueryPipelineStatement
parameters:
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/OrganizationIdQuery'
requestBody:
description: The query pipeline statement information.
content:
application/json:
schema:
$ref: '#/components/schemas/IncomingStatement'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/OutgoingStatement'
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/OutgoingStatement'
'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
/rest/search/v1/admin/pipelines/{pipelineId}/statements/{statementId}:
get:
tags:
- Statements V1
summary: Get Query Pipeline Statement
description: 'Gets a single query pipeline statement from a specific query pipeline.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"*"}
```
'
operationId: getQueryPipelineStatement
parameters:
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/StatementIdPath'
- $ref: '#/components/parameters/OrganizationIdQuery'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/OutgoingStatement'
'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
put:
tags:
- Statements V1
summary: Update Query Pipeline Statement
description: 'Updates a single query pipeline statement in a specific 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: updateQueryPipelineStatementV1
parameters:
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/StatementIdPath'
- $ref: '#/components/parameters/OrganizationIdQuery'
requestBody:
description: The updated query pipeline statement information.
content:
application/json:
schema:
$ref: '#/components/schemas/IncomingStatement'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/OutgoingStatement'
'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
delete:
tags:
- Statements V1
summary: Delete Query Pipeline Statement
description: 'Deletes a single query pipeline statement from a specific 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: deleteQueryPipelineStatement
parameters:
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/StatementIdPath'
- $ref: '#/components/parameters/OrganizationIdQuery'
responses:
'200':
description: OK
content:
application/json:
schema:
type: string
'204':
description: No content
content: {}
'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
/rest/search/v1/admin/pipelines/{pipelineId}/statements/{statementId}/move:
put:
tags:
- Statements V1
summary: Move Query Pipeline Statement
description: 'Sets the position of a query pipeline statement in a specific query pipeline and updates other statement
positions as appropriate.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"{pipelineId}"}
```
'
operationId: moveQueryPipelineStatement
parameters:
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/StatementIdPath'
- $ref: '#/components/parameters/OrganizationIdQuery'
requestBody:
description: The move operation to perform.
content:
application/json:
schema:
$ref: '#/components/schemas/IncomingMoveStatement'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/OutgoingStatements'
'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
/rest/search/v1/admin/pipelines/{pipelineId}/statements/bulkGet:
post:
tags:
- Statements V1
summary: List Query Pipeline Statements
description: 'Gets a sorted page of query pipeline statements matching certain criteria from a specific query pipeline.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"*"}
```
'
operationId: bulkGetStatementsOperationV1
parameters:
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/IsOrderAscending'
- $ref: '#/components/parameters/Filter'
- $ref: '#/components/parameters/SortBy'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
- $ref: '#/components/parameters/Feature'
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/OutgoingStatements'
'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/{pipelineId}/statements/copy:
post:
tags:
- Statements V1
summary: Copy Query Pipeline Statements
description: 'Copies specific statements from an origin to a target query pipeline. Using the same pipeline as origin
and target will duplicate the specified statements in that 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: v1CopyQueryPipelineStatements
parameters:
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/OrganizationIdQuery'
requestBody:
description: The copy operation to perform.
content:
application/json:
schema:
$ref: '#/components/schemas/IncomingCopyStatements'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/OutgoingStatements'
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/OutgoingStatement'
'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
/rest/search/v1/admin/pipelines/{pipelineId}/statements/export:
get:
tags:
- Statements V1
summary: Export Query Pipeline Statements
description: 'Exports the definition, condition, and description of statements from a specific query pipeline to a CSV
file.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"*"}
```
'
operationId: v1ExportQueryPipelineStatements
parameters:
- $ref: '#/components/parameters/PipelineIdPath'
- $ref: '#/components/parameters/Feature'
- $ref: '#/components/parameters/OrganizationIdQuery'
responses:
'200':
description: OK
content:
text/csv:
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
/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
/rest/search/v1/admin/pipelines/{pipelineId}/statements/validate:
post:
tags:
- Statements V1
summary: Validate a Single Statement 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":"EDIT","targetId":"{pipelineId}"}
```
'
operationId: validateStatementOperationV1
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
requestBody:
description: An object that contains an operation to validate.
content:
application/json:
schema:
$ref: '#/components/schemas/RestSingleOperationValidationRequestIncomingStatement'
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/{pipelineId}/statements/validate/batch:
post:
tags:
- Statements V1
summary: Validate a Batch of Statement 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\":\"{pipelineId}\"}\n```\n\
"
operationId: validateStatementsOperationsV1
parameters:
- $ref: '#/components/parameters/OrganizationIdQuery'
- $ref: '#/components/parameters/PipelineIdPath'
requestBody:
description: An object that contains the list of operations to validate.
content:
application/json:
schema:
$ref: '#/components/schemas/RestBatchOperationValidationRequestIncomingStatement'
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/alpha/passages/retrieve/debug:
post:
tags:
- Passages Alpha
summary: Allow to Debug Passage(s) Retrieval.
description: 'API that allows to debug how the passage(s) retrieval was performed for a particular query.
**Note**: The debug endpoint of the Passage Retrieval API is currently in alpha.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"EXECUTE_QUERY","type":"ENABLE","targetId":"*"}
```
'
operationId: debugRetrievePassageAlpha
parameters:
- $ref: '#/components/parameters/OrganizationIdQueryRequired'
- $ref: '#/components/parameters/ViewAllContentQuery'
security:
- oauth2:
- full
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RetrievePassagesRequestV3'
responses:
'200':
description: OK
headers:
X-Request-Id:
description: A unique identifier for the request.
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/DebugRetrievePassagesResponse'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'422':
$ref: '#/components/responses/PassageRetrievalUnprocessableEntity'
'429':
$ref: '#/components/responses/TooManyRequests'
'500':
$ref: '#/components/responses/InternalServerError'
'503':
$ref: '#/components/responses/PassageRetrievalServerUnavailable'
/rest/organizations/{organizationId}/authentication:
get:
tags:
- Organizations
summary: Lists All Authentication Providers for an Organization
operationId: listAuthentications
parameters:
- $ref: '#/components/parameters/OrganizationIdPath'
responses:
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/OutgoingAuthentication'
security:
- oauth2:
- full
description: '
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"AUTHENTICATION_EDITOR","type":"ENABLE","targetId":"*"}
```
'
/rest/organizations/{organizationId}/authentication/saml:
get:
tags:
- Organizations
summary: Lists the SAML Authentications for an Organization
operationId: listSamlAuthentications
parameters:
- $ref: '#/components/parameters/OrganizationIdPath'
responses:
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/OutgoingSamlAuthentication'
security:
- oauth2:
- full
description: '
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"AUTHENTICATION_EDITOR","type":"ENABLE","targetId":"*"}
```
'
post:
tags:
- Organizations
summary: Creates a New SAML Authentication in an Organization
operationId: createSamlAuthentication
parameters:
- $ref: '#/components/parameters/OrganizationIdPath'
requestBody:
description: The SAML authentication data
content:
application/json:
schema:
$ref: '#/components/schemas/IncomingSamlAuthentication'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CreatedSamlAuthentication'
security:
- oauth2:
- full
description: '
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"AUTHENTICATION_EDITOR","type":"ENABLE","targetId":"*"}
```
'
/rest/organizations/{organizationId}/authentication/saml/{id}:
get:
tags:
- Organizations
summary: Loads a Single SAML Authentication from an Organization
operationId: loadSamlAuthentication
parameters:
- name: id
in: path
description: The SAML authentication ID
required: true
schema:
type: string
- $ref: '#/components/parameters/OrganizationIdPath'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/OutgoingSamlAuthentication'
security:
- oauth2:
- full
description: '
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"AUTHENTICATION_EDITOR","type":"ENABLE","targetId":"*"}
```
'
put:
tags:
- Organizations
summary: Updates a SAML Authentication in an Organization
operationId: updateSamlAuthentication
parameters:
- name: id
in: path
description: The SAML authentication ID
required: true
schema:
type: string
- $ref: '#/components/parameters/OrganizationIdPath'
requestBody:
description: The SAML authentication data
content:
application/json:
schema:
$ref: '#/components/schemas/IncomingSamlAuthentication'
required: true
responses:
'200':
description: No response
content: {}
security:
- oauth2:
- full
description: '
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"AUTHENTICATION_EDITOR","type":"ENABLE","targetId":"*"}
```
'
delete:
tags:
- Organizations
summary: Deletes a SAML Authentication from an Organization
operationId: deleteSamlAuthentication
parameters:
- name: id
in: path
description: The SAML authentication ID
required: true
schema:
type: string
- $ref: '#/components/parameters/OrganizationIdPath'
responses:
'200':
description: No response
content: {}
security:
- oauth2:
- full
description: '
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"AUTHENTICATION_EDITOR","type":"ENABLE","targetId":"*"}
```
'
/rest/organizations/{organizationId}/authentication/sharepoint:
get:
tags:
- Organizations
summary: List SharePoint Claims Authentication Providers
description: 'Gets all SharePoint claims authentication providers in a Coveo Cloud organization.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"AUTHENTICATION_EDITOR","type":"ENABLE","targetId":"*"}
```
'
operationId: listSharepointClaimsAuthProvider
parameters:
- $ref: '#/components/parameters/OrganizationIdPath'
responses:
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/OutgoingSharePointAuthentication'
security:
- oauth2:
- full
post:
tags:
- Organizations
summary: Create SharePoint Claims Authentication Provider
description: 'Configures a new SharePoint claims authentication provider in a Coveo Cloud organization, allowing you
to implement claims authentication in a search page (see [Claims Authentication](https://docs.coveo.com/en/113)).
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"AUTHENTICATION_EDITOR","type":"ENABLE","targetId":"*"}
```
'
operationId: createSharepointAuthenticationProvider
parameters:
- $ref: '#/components/parameters/OrganizationIdPath'
requestBody:
description: The SharePoint claims authentication provider information.
content:
application/json:
schema:
$ref: '#/components/schemas/IncomingSharePointAuthentication'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CreatedSharePointAuthentication'
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/CreatedSharePointAuthentication'
security:
- oauth2:
- full
/rest/organizations/{organizationId}/authentication/sharepoint/{id}:
get:
tags:
- Organizations
summary: Get SharePoint Claims Authentication Provider
description: 'Retrieves a single SharePoint claims authentication provider in a Coveo Cloud organization
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"AUTHENTICATION_EDITOR","type":"ENABLE","targetId":"*"}
```
'
operationId: getSharepointAuthenticationProvider
parameters:
- $ref: '#/components/parameters/OrganizationIdPath'
- name: id
in: path
description: The unique identifier of the target SharePoint claims authentication provider.
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/OutgoingSharePointAuthentication'
security:
- oauth2:
- full
put:
tags:
- Organizations
summary: Update SharePoint Claims Authentication Provider
description: 'Modifies an existing SharePoint claims authentication provider in a Coveo Cloud organization.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"AUTHENTICATION_EDITOR","type":"ENABLE","targetId":"*"}
```
'
operationId: updateSharepointAuthenticationProvider
parameters:
- $ref: '#/components/parameters/OrganizationIdPath'
- name: id
in: path
description: The unique identifier of the target SharePoint claims authentication provider.
example: 120deecf-7822-4d7b-885f-53f184a3a76c
required: true
schema:
type: string
requestBody:
description: The updated SharePoint claims authentication provider information.
content:
application/json:
schema:
$ref: '#/components/schemas/IncomingSharePointAuthentication'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
type: string
'204':
description: No content
content: {}
security:
- oauth2:
- full
delete:
tags:
- Organizations
summary: Delete SharePoint Claims Authentication Provider
description: 'Removes an existing SharePoint claims authentication provider from a Coveo Cloud organization.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"AUTHENTICATION_EDITOR","type":"ENABLE","targetId":"*"}
```
'
operationId: deleteSharepointAuthenticationProvider
parameters:
- $ref: '#/components/parameters/OrganizationIdPath'
- name: id
in: path
description: The unique identifier of the target SharePoint claims authentication provider.
example: 120deecf-7822-4d7b-885f-53f184a3a76c
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
type: string
'204':
description: No content
content: {}
security:
- oauth2:
- full
/rest/organizations/{organizationId}/authentication/trusteduris:
get:
tags:
- Organizations
summary: List Trusted Search Page URIs
description: 'Gets all existing trusted search page URI entries in a specific Coveo Cloud organization.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"AUTHENTICATION_EDITOR","type":"ENABLE","targetId":"*"}
```
'
operationId: getTrustedUris
parameters:
- $ref: '#/components/parameters/OrganizationIdPath'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ListTrustedUriResponse'
security:
- oauth2:
- full
post:
tags:
- Organizations
summary: Add Trusted Search Page URI
description: "Creates a new trusted search page URI entry in a specific Coveo Cloud organization. Any search page whose\
\ URI begins with that prefix will be allowed to use the SAML SSO provider of that organization as a means of authentication.\
\ \n**Notes:** \n- No URI is trusted by default. \n- Creating a trusted search page URI entry with the empty string\
\ will result in **all** URIs being trusted, which is not recommended.\n\nPrivilege(s) required
\n\
\n```json\n{\"level\":\"NORMAL\",\"owner\":\"SEARCH_API\",\"targetDomain\":\"AUTHENTICATION_EDITOR\",\"type\":\"ENABLE\"\
,\"targetId\":\"*\"}\n```\n "
operationId: addTrustedUri
parameters:
- $ref: '#/components/parameters/OrganizationIdPath'
requestBody:
description: The trusted search page URI information.
content:
application/json:
schema:
$ref: '#/components/schemas/CreateTrustedUriRequest'
required: true
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/CreateTrustedUriResponse'
security:
- oauth2:
- full
/rest/organizations/{organizationId}/authentication/trusteduris/recentuntrusted:
get:
tags:
- Organizations
summary: List Recently Seen Search Page URIs That Were Not Trusted.
description: 'Lists URI that were recently seen during SSO but that were not trusted. The last 100 URI are kept for
7 days.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"AUTHENTICATION_EDITOR","type":"ENABLE","targetId":"*"}
```
'
operationId: getRecentUntrustedUris
parameters:
- $ref: '#/components/parameters/OrganizationIdPath'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ListRecentUntrustedUriResponse'
security:
- oauth2:
- full
/rest/organizations/{organizationId}/authentication/trusteduris/{id}:
delete:
tags:
- Organizations
summary: Delete Trusted Search Page URI
description: 'Removes a trusted search page URI entry from a specific Coveo Cloud organization.
Privilege(s) required
```json
{"level":"NORMAL","owner":"SEARCH_API","targetDomain":"AUTHENTICATION_EDITOR","type":"ENABLE","targetId":"*"}
```
'
operationId: deleteTrustedUri
parameters:
- $ref: '#/components/parameters/OrganizationIdPath'
- name: id
in: path
description: The unique identifier of the trusted search page URI entry to delete.
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
type: string
'204':
description: No content
content: {}
security:
- oauth2:
- full
components:
schemas:
GetDocumentsRequest:
type: object
required:
- fieldsToInclude
- indexScope
properties:
permanentIds:
type: array
deprecated: true
description: DEPRECATED, use 'uniqueIds' instead.
minItems: 1
maxItems: 10
items:
type: string
minLength: 1
maxLength: 1000
example: somePermanentId
uniqueIds:
type: array
deprecated: true
description: DEPRECATED, use 'primaryIds' instead.
minItems: 1
maxItems: 5
items:
type: string
minLength: 1
example: someUniqueIds
primaryIds:
type: array
description: The list of document primary IDs.
minItems: 1
maxItems: 5
items:
type: string
minLength: 1
example: somePrimaryIds
fieldsToInclude:
description: 'The list of document fields to return. WARNING: dictionary fields are not supported.'
type: array
minItems: 1
maxItems: 1000
items:
type: string
example: someFieldToInclude
minLength: 1
maxLength: 256
indexScope:
type: string
description: 'An opaque string that is only understood by SAPI to identify which index should be used
to locate the documents. Clients of this API should not try to guess or understand this
value in any way.'
minLength: 1
example: some_opaque_value
GetDocumentsResponse:
type: object
required:
- documents
properties:
documents:
type: array
description: 'An array that contains the requested fields for the requested documents.
If a document is not found, no HTTP error will be returned. In that case,
the array will not contain an entry for the unidentified document.'
items:
type: object
required:
- fields
properties:
permanentId:
type: string
deprecated: true
description: 'The permanent ID of the document. It will only be populated when the API is called with a
non-null value for ''permanentIds''.'
example: somePermanentId
uniqueId:
type: string
description: 'The unique ID of the document. It will only be populated when the API is called with a
non-null value for ''uniqueIds''.'
example: someUniqueId
primaryId:
type: string
description: 'The primary ID of the document. It will only be populated when the API is called with a
non-null value for ''primaryIds''.'
example: somePrimaryId
fields:
type: object
additionalProperties: true
description: 'The values of the requested document properties for the document.
If a requested property was not found, the property will not be contained
in the returned map.'
example:
requestedField1: value1
requestedField2: value2
Q:
type: string
description: 'The basic query expression, typically the keywords entered by the end user in a query box.
**Note:** When logging a **Search** usage analytics event for a query, the `queryText` field of that event should
be set to the `q` value of the corresponding query.'
example: Coveo "Cloud V2" platform
AQ:
type: string
description: 'The advanced query expression, typically generated by code (e.g., when toggling facet values).
**Note:** When logging a **Search** usage analytics event for a query, the `advancedQuery` field of that event should
be set to the `aq` value of the corresponding query (for reporting purposes).'
example: '@year==2017'
CQ:
type: string
description: 'The constant query expression, typically populated with expressions that must apply to all queries sent
from a specific search interface (e.g., from a specific tab). Once evaluated, the result sets of those expressions
are kept in a special cache.
**Tip:** Avoid including dynamic content in the constant query expression. Otherwise you risk filling up the cache
with useless data, which can have a negative impact on performance.
**Notes:**
- Other parts of the query expression can also benefit from the index cache (see the `maximumAge` parameter). However,
using the constant query expression allows you to explicitly cache specific result sets.
- Temporal keywords (`now`, `today`, `yesterday`) in the constant query expression are only re-evaluated once per
3-4 minutes; therefore, you should avoid basing `cq` expressions on temporal keywords if you require split second
accuracy.'
example: '@documenttype==forumpost'
DQ:
type: string
description: The disjunction query expression, typically populated by Coveo ML Automatic Relevance Tuning (ART) models
to ensure that relevant items are included in the query results. The disjunction query expression is merged with the
other parts of the query expression using an `OR` operator. The resulting query expression is `(((q aq) OR (dq)) cq)`.
example: '@permanentid=aadd702687c62910d6da8347304ec2cedfd0b06d5b4d2794a555ce5688bd'
LQ:
type: string
description: The large query expression, typically populated with a case description, long textual query, or any other
form of text that can help refine a query. The Coveo ML Intelligent Term Detection (ITD) feature can extract relevant
keywords from the large query expression and inject those keywords in the basic query expression (see the `q` parameter).
example: I am looking for an enterprise-class native cloud SaaS/PaaS solution that provides a unified and secure way
to search for contextually relevant content across multiple enterprise systems.
RestRangeValue:
required:
- end
- start
type: object
properties:
start:
anyOf:
- type: string
- type: number
- type: integer
end:
anyOf:
- type: string
- type: number
- type: integer
label:
type: string
description: 'The label to associate with the range.
**Note:** Not currently leveraged.
**Examples:**
- `0 - 100`
- `In 2019`'
example: 0 - 100
endInclusive:
type: boolean
description: 'Whether to include the `end` value in the range.
**Default:** `false`'
example: true
default: false
RestComputedField:
required:
- field
- operation
type: object
properties:
field:
type: string
description: 'The name of the numeric field on which to perform the aggregate operation.
**Tip:** You should ensure that the **Use cache for computed fields** option is enabled for that field in your
index in order to speed up evaluation (see [Manage fields](https://docs.coveo.com/en/1833/)).'
example: '@wordcount'
operation:
type: string
description: 'The aggregate operation to perform on the `field` values.
**Allowed values:**
- `sum`: get the sum of all values.
- `average`: get the average of all values.
- `minimum`: get the smallest value.
- `maximum`: get the largest value.'
example: average
enum:
- sum
- average
- minimum
- maximum
RestGroupBy:
required:
- field
type: object
properties:
field:
type: string
description: 'The name of the field on which to perform the Group By operation. The operation returns a Group By
value for each distinct value of this field found in the query result items.
**Note:** You must ensure that the **Facet** option is enabled for this field in your index (see [Manage fields](https://docs.coveo.com/en/1833/)).'
example: '@author'
allowedValues:
type: array
description: "The field values allowed in the Group By operation results. You can use trailing wildcards (`*`) to\
\ include ranges of values.\n\nSee also the `completeFacetWithStandardValues` Group By operation parameter.\n\n\
If you do not explicitly specify an array of `allowedValues`, or if you specify an empty array, all field values\
\ are allowed.\n\n**Example:**\n```\n[\n \"Anonymous\",\n \"Bob Jones\",\n \"Carrie Green\",\n \"David Allen\"\
\n]\n```"
example:
- Anonymous
- Bob Jones
- Carrie Green
- David Allen
items:
type: string
allowedValuesPatternType:
type: string
description: 'The type of pattern being used in the allowed field values.
See also the `allowedValues` Group By operation parameter.
If you do not explicitly specify a pattern type, the legacy pattern is used by default, which only support trailing
wildcards.'
example: wildcards
enum:
- legacy
- wildcards
- regex
- editdistance
- phonetic
maximumNumberOfValues:
type: integer
description: 'The maximum number of values the Group By operation should return.
**Default:** `10`'
format: int32
example: 5
default: 10
minimum: 0
completeFacetWithStandardValues:
type: boolean
description: 'Whether to complete the Group By operation result set with standard values.
If you set this parameter to `true` and the number of specified `allowedValues` is lower than the `maximumNumberOfValues`,
the Group By operation also attempts to returns standard values until the result set contains the `maximumNumberOfValues`.
**Default:** `false`'
example: true
default: false
injectionDepth:
type: integer
description: 'The maximum number of query result items to scan for Group By values.
**Note:** Specifying a high `injectionDepth` value can negatively impact query performance.
**Default:** `1000`'
format: int32
example: 1500
default: 1000
rangeValues:
type: array
description: 'The ranges for which to generate Group By values.
**Notes:**
- Specifying `rangeValues` only makes sense when the Group By `field` references a numeric or date field in the
index.
- You can set the `generateAutomaticRanges` Group By parameter to `true` rather than explicitly specifying `rangeValues`
(unless the Group By `field` was generated by a query function).'
example: []
items:
$ref: '#/components/schemas/RestRangeValue'
generateAutomaticRanges:
type: boolean
description: 'Whether the index should automatically create range values.
**Tip:** If you set this parameter to `true`, you should ensure that the **Use cache for numeric queries** option
is enabled for the Group By `field` in your index in order to speed up automatic range evaluation (see [Manage
fields](https://docs.coveo.com/en/1833/)).
**Notes:**
- Setting `generateAutomaticRanges` to `true` only makes sense when the Group By `field` references a numeric
or date field in the index.
- The index cannot automatically generate range values of a field generated by a query function. In such cases,
you must rather use the `rangeValues` Group By parameter.
- Automatic range generation will fail if the referenced `field` is dynamically generated by a query function.
**Default:** `false`'
example: false
default: false
sortCriteria:
type: string
description: 'The criterion to use when sorting the Group By operation results.
**Allowed values:**
- `score`: sort using the score value which is computed from the number of occurrences of a field value, and also
from the position where query result items with this field value appear in the ranked query result set. When using
this sort criterion, a field value with 100 occurrences might appear after one with only 10 occurrences, if the
occurrences of the latter field value tend to appear higher in the ranked query result set.
- `occurrences`: sort by number of occurrences, with field values having the highest number of occurrences appearing
first.
- `alphaAscending`/`alphaDescending`: sort field values alphabetically.
- `alphaAscendingNatural`/`alphaDescendingNatural`: sort field values alphabetically using [natural sorting](https://en.wikipedia.org/wiki/Natural_sort_order).
- `computedFieldAscending`/`computedFieldDescending`: sort on the value of the first computed field for each Group
By operation result (see the `ComputedFields` Group By parameter).
- `chiSquare`: sort based on the relative frequency of field values in the query result set compared to their
frequency in the entire index. This means that a field value that does not appear often in the index, but does
appear often in the query result set will tend to appear higher.
- `noSort`: do not sort the results of the Group By operation. The field values will be appear in a random order.
**Default:** `score`'
example: ComputedFieldDescending
default: score
computedFields:
type: array
description: 'The computed fields to evaluate for each Group By value.
A computed field stores the result of an aggregate operation performed on the values of a specific numerical field
for all the query result items that share the same Group By `field` value.'
items:
$ref: '#/components/schemas/RestComputedField'
queryOverride:
type: string
description: 'The query expression that should override the basic query expression on which the Group By operation
is being performed (see the `q` query parameter).
**Note:** If _any_ query override parameter (e.g., `queryOverride`, `advancedQueryOverride`, etc.) is set in a
Group By operation, **all** original parts of the query expression (i.e., `q`, `aq`, `cq`, and `dq`) will be ignored.'
example: Coveo Cloud V2 platform
advancedQueryOverride:
type: string
description: 'The query expression that should override the advanced query expression on which the Group By operation
is being performed (see the `aq` query parameter).
**Note:** If _any_ query override parameter (e.g., `queryOverride`, `advancedQueryOverride`, etc.) is set in a
Group By operation, **all** original parts of the query expression (i.e., `q`, `aq`, `cq`, and `dq`) will be ignored.'
example: '@year==2017'
constantQueryOverride:
type: string
description: 'The query expression that should override the constant query expression on which the Group By operation
is being performed (see the `cq` query parameter).
**Note:** If _any_ query override parameter (e.g., `queryOverride`, `advancedQueryOverride`, etc.) is set in a
Group By operation, **all** original parts of the query expression (i.e., `q`, `aq`, `cq`, and `dq`) will be ignored.'
example: '@filetype==forumpost'
disjunctionQueryOverride:
type: string
description: 'The query expression that should override the disjuntion query expression on which the Group By operation
is being performed (see the `dq` query parameter).
**Note:** If _any_ query override parameter (e.g., `queryOverride`, `advancedQueryOverride`, etc.) is set in a
Group By operation, **all** original parts of the query expression (i.e., `q`, `aq`, `cq`, and `dq`) will be ignored.'
example: '@date=2016-12-01..2016-12-31'
lookupField:
type: string
description: 'This property is exposed for backward compatibility reasons. The issues this property was used as
a workaround for do not exist in the Coveo Cloud V2 platform.
The name of an additional field whose value must be retrieved.'
deprecated: true
thoroughLookup:
type: boolean
description: 'This parameter is exposed for backward compatibility reasons. The issues this parameter was used as
a workaround for do not exist in the Coveo Cloud V2 platform.
Whether to scan for lookup values.'
default: false
deprecated: true
filterFacetCount:
type: boolean
description: 'Whether to exclude folded result parents when estimating the result count for each facet value.
**Note:** The target folding field must be a facet field with the **Use cache for nested queries** options enabled
(see [Manage fields](https://docs.coveo.com/en/1833/)).
**Default:** `true`'
default: true
RestFacetRequestBase:
type: object
required:
- field
properties:
field:
type: string
description: 'The name of the field on which to base the facet request.
**Note:** Must reference a field whose **Facet** option is enabled (see [Manage fields](https://docs.coveo.com/en/1833/)).'
example: author
facetId:
type: string
description: 'The unique identifier of the facet in the search interface.
**Note:** Must match `^[A-Za-z0-9-_]{1,60}$.'
example: author-1
type:
type: string
description: 'The kind of values to request for the facet.
**Allowed values:**
- `specific`: Request facet values representing specific values (e.g., Alice Smith, Bob Jones, etc.).
- `dateRange`: Request facet values representing ranges of dates (e.g., 2019-07-01..2019-07-31, 2019-08-01..2019-08-01,
etc.).
- `numericalRange`: Request facet values representing ranges of numbers (e.g., 0..10, 11..20, etc.).
- `hierarchical`: Request facet values representing hierarchically structured categories (e.g., Electronics >
Entertainment > Gaming Consoles;, Electronics > Computers > Laptops, etc.).'
enum:
- specific
- dateRange
- numericalRange
- hierarchical
default: specific
filterFacetCount:
type: boolean
description: 'Whether to exclude folded result parents when estimating the result count for each facet value.
**Note:** The target folding field must be a facet field with the **Use cache for nested queries** options enabled
(see [Manage fields](https://docs.coveo.com/en/1833/)).'
default: true
injectionDepth:
type: integer
description: 'The maximum number of items to scan for facet values.
**Note:** A high `injectionDepth` may negatively impact the facet request performance.'
format: int32
default: 1000
isFieldExpanded:
type: boolean
description: Whether to make this facet request in the context of requesting more facet values. In most cases, to
request more facet values, set `isFieldExpanded` to `true` and increase `numberOfResults`.
default: false
preventAutoSelect:
type: boolean
description: Whether to prevent Coveo ML from automatically selecting values.
default: false
resultsMustMatch:
type: string
enum:
- atLeastOneValue
- allValues
description: 'Specifies how a result must match the selected values.
**Allowed values:**
- `atLeastOneValue`: A result will match if at least **one** of the corresponding facet values is selected.
- `allValues`: A result will match if **all** corresponding facet values are selected.
**Default:** `atLeastOneValue`'
default: atLeastOneValue
RestFacetValueBase:
type: object
properties:
state:
type: string
enum:
- idle
- selected
- excluded
default: idle
description: The current facet value state in the search interface.
previousState:
type: string
enum:
- idle
- selected
- excluded
description: 'The previous facet value state in the search interface.
**Default:** The value provided in the `state` property.'
preventAutoSelect:
type: boolean
default: false
description: Whether to prevent Coveo ML from automatically selecting the facet value.
RestFacetValueSpecificBase:
type: object
required:
- value
properties:
value:
type: string
example: Alice Smith
description: The facet value name.
RestFacetSpecificValue:
allOf:
- $ref: '#/components/schemas/RestFacetValueBase'
- $ref: '#/components/schemas/RestFacetValueSpecificBase'
RestFacetRequestSpecificSortCriteriaString:
type: string
description: 'The sort criterion to apply to the returned facet values.
**Allowed values**:
- `score`: Sort values in descending score order. Facet value scores are based on the number of occurrences and their
position in the ranked query result set.
- `alphanumeric`: Sort values in ascending alphanumeric order.
- `alphanumericNatural`: Sort values in ascending alphanumeric order using [natural sorting](https://en.wikipedia.org/wiki/Natural_sort_order).
- `occurrences`: sort by number of occurrences, with field values having the highest number of occurrences appearing
first.
**Notes:**
- The Coveo ML DNE feature only works with the `score` sort criterion.
By default:
- When `isFieldExpanded` is `false` in the facet request, and `moreValuesAvailable` is `true` in the corresponding
facet response, use `score`
- Otherwise, use `alphanumeric`.
'
RestFacetRequestSpecificSortCriteriaExplicitScore:
type: object
required:
- type
properties:
type:
type: string
enum:
- score
description: 'Sort values in descending score order. Facet value scores are based on the number of occurrences and
their position in the ranked query result set.
**Notes:**
- The Coveo ML DNE feature only works with the `score` sort criterion.
'
RestFacetRequestSpecificSortCriteriaExplicitCustomSort:
type: object
required:
- type
- customSort
deprecated: true
description: 'The `customSort` sortCriteria has been deprecated. You should leverage the `customSort` attribute of the
facet request.
'
properties:
type:
type: string
enum:
- custom
description: "Specifies a custom order by which facet values must be sorted.\nSpecified values will appear at the\
\ top of the list and remaining values will be sorted according to the default sort.\n\nThe default sort for remaining\
\ values:\n - When `isFieldExpanded` is `false` in the facet request, and `moreValuesAvailable` is `true` in\
\ the corresponding facet response, the default sort value is `score`.\n - Otherwise, the default sort value\
\ is `alphanumeric`.\n"
customSort:
type: array
minItems: 1
maxItems: 25
description: 'Facet values that must appear at the top, in this order.
For example, if you have a facet for bed sizes, you might have:
- Simple
- Twin
- Queen
- King
'
items:
type: string
example:
- Simple
- Twin
- Queen
- King
RestFacetRequestSpecificSortCriteriaExplicitAlphanumeric:
type: object
required:
- type
properties:
type:
type: string
enum:
- alphanumeric
description: 'Sort values in alphanumeric order.
'
order:
type: string
enum:
- ascending
- descending
default: ascending
description: '**Default:** ascending
'
RestFacetRequestSpecificSortCriteriaExplicitAlphanumericNatural:
type: object
required:
- type
properties:
type:
type: string
enum:
- alphanumericNatural
description: 'Sort values in ascending or descending alphanumeric order using [natural sorting](https://en.wikipedia.org/wiki/Natural_sort_order).
'
order:
type: string
enum:
- ascending
- descending
default: ascending
description: '**Default:** ascending
'
RestFacetRequestSpecificSortCriteriaExplicitOccurences:
type: object
required:
- type
properties:
type:
type: string
enum:
- occurences
description: 'Sort by number of occurrences, with field values having the highest number of occurrences appearing
first.
'
RestFacetRequestSpecificSortCriteriaExplicit:
oneOf:
- $ref: '#/components/schemas/RestFacetRequestSpecificSortCriteriaExplicitScore'
- $ref: '#/components/schemas/RestFacetRequestSpecificSortCriteriaExplicitCustomSort'
- $ref: '#/components/schemas/RestFacetRequestSpecificSortCriteriaExplicitAlphanumeric'
- $ref: '#/components/schemas/RestFacetRequestSpecificSortCriteriaExplicitAlphanumericNatural'
- $ref: '#/components/schemas/RestFacetRequestSpecificSortCriteriaExplicitOccurences'
discriminator:
propertyName: type
mapping:
score: '#/components/schemas/RestFacetRequestSpecificSortCriteriaExplicitScore'
custom: '#/components/schemas/RestFacetRequestSpecificSortCriteriaExplicitCustomSort'
alphanumeric: '#/components/schemas/RestFacetRequestSpecificSortCriteriaExplicitAlphanumeric'
alphanumericNatural: '#/components/schemas/RestFacetRequestSpecificSortCriteriaExplicitAlphanumericNatural'
occurences: '#/components/schemas/RestFacetRequestSpecificSortCriteriaExplicitOccurences'
RestFacetRequestSpecificSortCriteria:
oneOf:
- $ref: '#/components/schemas/RestFacetRequestSpecificSortCriteriaString'
- $ref: '#/components/schemas/RestFacetRequestSpecificSortCriteriaExplicit'
RestFacetRequestSpecificBaseAllowedValuesSimple:
type: object
description: 'The field values allowed in the facet operation results.
If you do not explicitly specify an array of `allowedValues`, or if you specify an empty array, all field values are
allowed.'
required:
- type
- values
properties:
type:
type: string
enum:
- simple
values:
type: array
minItems: 1
maxItems: 25
pattern: .*[^*]$
items:
type: string
description: 'Simple values that must not end with a trailing wildcard.
'
example:
- Anonymous
- Bob Jones
RestFacetRequestSpecificBaseAllowedValues:
oneOf:
- $ref: '#/components/schemas/RestFacetRequestSpecificBaseAllowedValuesSimple'
discriminator:
propertyName: type
mapping:
simple: '#/components/schemas/RestFacetRequestSpecificBaseAllowedValuesSimple'
RestFacetRequestSpecificBase:
type: object
properties:
type:
type: string
enum:
- specific
description: Request facet values representing specific values (e.g., Alice Smith, Bob Jones, etc.).
currentValues:
type: array
description: 'The values displayed by the facet in the search interface at the moment of the request.
**Default:** `[]`'
items:
$ref: '#/components/schemas/RestFacetSpecificValue'
numberOfValues:
type: integer
description: 'The maximum number of facet values to fetch.
**Notes:**
- If `freezeCurrentValues` is `true` or if requesting range facet values, `numberOfValues` is automatically set
to the `currentValues` array length.'
format: int32
default: 8
freezeCurrentValues:
type: boolean
description: 'Whether to include the facet request''s `currentValues` in corresponding facet response''s `values`
array.
**Notes:**
- Setting this to `true` is useful to ensure that the facet does not move around while the end-user is interacting
with it in the search interface.'
default: false
sortCriteria:
$ref: '#/components/schemas/RestFacetRequestSpecificSortCriteria'
customSort:
type: array
maxItems: 100
description: 'When defined, identifies the facet values that must appear at the top, in this order.
This parameter can be used in conjunction with the `sortCriteria` parameter. Facet values not
part of the customSort list will be sorted according to the `sortCriteria`.
For example, if you have a facet for bed sizes, you might have:
- Simple
- Twin
- Queen
- King
'
items:
type: string
example:
- Simple
- Twin
- Queen
- King
allowedValues:
$ref: '#/components/schemas/RestFacetRequestSpecificBaseAllowedValues'
RestFacetRequestSpecific:
allOf:
- $ref: '#/components/schemas/RestFacetRequestBase'
- $ref: '#/components/schemas/RestFacetRequestSpecificBase'
RestFacetRequestRangeBase:
type: object
properties:
numberOfValues:
type: integer
format: int32
default: 8
description: 'The maximum number of facet values to fetch.
**Note:**
- If `freezeCurrentValues` is `true` or `generateAutomaticRanges` is `false`, `numberOfValues` is automatically
set to the length of the `currentValues` array.'
freezeCurrentValues:
type: boolean
default: false
description: 'Whether to include the `currentValues` array from the facet request in the `values` array of the corresponding
facet response.
**Note:**
- Setting this to `true` keeps the facet from moving around while the end-user interacts with it in the search
interface.'
generateAutomaticRanges:
type: boolean
default: false
description: 'Whether to automatically generate range values for this facet.
**Notes:**
- Setting this to `true` is only effective if the referenced `field` is of a corresponding type (i.e., date or
numeric).
- Automatic range generation will fail if the referenced `field` is dynamically generated by a query function.
- Enabling the [**Use cache for numeric queries**](https://docs.coveo.com/en/1833/#use-cache-for-numeric-queries)
option on the referenced `field` will speed up automatic range generation.'
sortCriteria:
type: string
default: ascending
description: 'The criterion to use for sorting returned facet values.
**Allowed values**:
- `ascending`: Sort in ascending order of range facet values.
- `descending`: Sort in descending order of range facet values.
'
RestFacetValueRangeBase:
type: object
properties:
endInclusive:
type: boolean
default: false
example: true
description: Whether to include the `end` value in the range.
RestFacetValueDateRangeBase:
type: object
required:
- start
- end
properties:
start:
type: string
pattern: ^\d{4}\/\d{2}\/\d{2}@\d{2}:\d{2}:\d{2}$
example: 2019/01/01@00:00:00
description: 'The value to start the range at.
**Note:** Timezone of date ranges are determined by the timezone parameter of the search request.'
end:
type: string
pattern: ^\d{4}\/\d{2}\/\d{2}@\d{2}:\d{2}:\d{2}$
example: 2019/12/31@23:59:59
description: 'The value to end the range at. Must be greater (or later) than the `start` value.
**Note:** Timezone of date ranges are determined by the timezone parameter of the search request.'
RestFacetValueDateRange:
allOf:
- $ref: '#/components/schemas/RestFacetValueBase'
- $ref: '#/components/schemas/RestFacetValueRangeBase'
- $ref: '#/components/schemas/RestFacetValueDateRangeBase'
RestFacetRequestDateRangeBase:
type: object
required:
- type
properties:
type:
type: string
description: Request facet values that represent ranges of dates (e.g., 2019-07-01..2019-07-31, 2019-08-01..2019-08-01,
etc.).
enum:
- dateRange
currentValues:
type: array
items:
$ref: '#/components/schemas/RestFacetValueDateRange'
default: []
description: The values displayed by the facet in the search interface at the moment of the request.
RestFacetRequestDateRange:
allOf:
- $ref: '#/components/schemas/RestFacetRequestBase'
- $ref: '#/components/schemas/RestFacetRequestRangeBase'
- $ref: '#/components/schemas/RestFacetRequestDateRangeBase'
RestFacetValueNumericalRangeBase:
type: object
required:
- start
- end
properties:
start:
anyOf:
- type: integer
format: int64
example: 0
description: The value to start the range at.
- type: number
format: double
example: 0
description: The value to start the range at.
end:
anyOf:
- type: integer
format: int64
example: 100
description: The value to end the range at. Must be greater (or later) than the `start` value.
- type: number
format: double
example: 100
description: The value to end the range at. Must be greater (or later) than the `start` value.
RestFacetValueNumericalRange:
allOf:
- $ref: '#/components/schemas/RestFacetValueBase'
- $ref: '#/components/schemas/RestFacetValueRangeBase'
- $ref: '#/components/schemas/RestFacetValueNumericalRangeBase'
RestFacetRequestNumericalRangeBase:
type: object
required:
- type
properties:
type:
type: string
description: Request facet values that represent ranges of numbers (e.g., 0..10, 11..20, etc.).
enum:
- numericalRange
currentValues:
type: array
items:
$ref: '#/components/schemas/RestFacetValueNumericalRange'
default: []
description: The values displayed by the facet in the search interface at the moment of the request.
rangeAlgorithm:
type: string
enum:
- equiprobable
- even
default: even
description: 'Determines which algorithm is used to generate the ranges if `generateAutomaticRanges` is enabled.
**Equiprobable**
This algorithm creates ranges which represent the distribution of the results. For example,
if you have a single facet value that matches most of the results, the `equiprobable` algorithm will resize the
ranges to balance the weights.
| Start | End | Matching results |
|-------|------|------------------|
| 0 | 62 | 100 |
| 62 | 423 | 100 |
| 423 | 1500 | 100 |
**Even**
This algorithm creates ranges of the same length. For example, it could generate the following price ranges:
| Start | End | Matching results |
|-------|------|------------------|
| 0 | 500 | 299 |
| 500 | 1000 | 0 |
| 1000 | 1500 | 1 |'
RestFacetRequestNumericalRange:
allOf:
- $ref: '#/components/schemas/RestFacetRequestBase'
- $ref: '#/components/schemas/RestFacetRequestRangeBase'
- $ref: '#/components/schemas/RestFacetRequestNumericalRangeBase'
RestFacetValueHierarchical:
allOf:
- $ref: '#/components/schemas/RestFacetValueBase'
- $ref: '#/components/schemas/RestFacetValueHierarchicalBase'
RestFacetValueHierarchicalBase:
type: object
required:
- value
properties:
children:
type: array
items:
$ref: '#/components/schemas/RestFacetValueHierarchical'
description: 'The children of this hierarchical facet value.
Each child is a full-fledged hierarchical facet value that may in turn have its own children and so forth, up
to a maximum depth of 50 levels.'
retrieveChildren:
type: boolean
default: false
example: true
description: Whether to retrieve the children of this hierarchical facet value. Can only be used on leaf values.
retrieveCount:
type: integer
format: int32
default: 5
example: 7
description: The maximum number of children to retrieve for this hierarchical facet value. Ignored if `retrieveChildren`
is `false`.
value:
type: string
example: electronics
description: This represents a single path segment.
RestFacetRequestHierarchicalBase:
type: object
required:
- type
properties:
type:
type: string
description: Request facet values that represent hierarchically structured categories (e.g., Electronics > Computers
> Laptops).
enum:
- hierarchical
basePath:
type: array
items:
type: string
example:
- Doors
- Metal
description: The base path shared by all values for the facet.
currentValues:
type: array
items:
$ref: '#/components/schemas/RestFacetValueHierarchical'
default: []
description: The values displayed by the facet in the search interface at the moment of the request.
filterByBasePath:
type: boolean
default: true
example: true
description: Whether to use `basePath` as a filter for the results.
numberOfValues:
type: integer
format: int32
default: 8
description: "The maximum number of facet values to fetch.\n\n**Note:**\n - `numberOfValues` is not taken into\
\ account when no elements in the `currentValues` array have `retrieveChildren` set to `true`. This is considered\
\ an exact facet retrieval and only returns values in `currentValues`."
delimitingCharacter:
type: string
default: ;
description: "The character to use to split field values into a hierarchical sequence.\n\n**Examples**:\n- In the\
\ multi-value field\n\n `c;c>folder2;c>folder2>folder3;`\n\n the delimiting character is `>`.\n\n- In the hierarchical\
\ field\n\n `c;folder2;folder3;`\n\n the delimiting character is `;`."
sortCriteria:
type: string
default: occurrences
description: 'The criterion to use for sorting returned facet values.
**Allowed values**:
- `score`: Sort values in descending score order.
- `alphanumeric`: Sort values in ascending alphanumeric order.
- `alphanumericNatural`: Sort values in ascending alphanumeric order using [natural sorting](https://en.wikipedia.org/wiki/Natural_sort_order).
- `occurrences`: Sort values in descending order by their number of occurrences.
**Note:**
- The Coveo ML [DNE feature](https://docs.coveo.com/en/3383) only works with the `score` sort criterion.
'
RestFacetRequestHierarchical:
allOf:
- $ref: '#/components/schemas/RestFacetRequestBase'
- $ref: '#/components/schemas/RestFacetRequestHierarchicalBase'
RestFacetRequest:
oneOf:
- $ref: '#/components/schemas/RestFacetRequestSpecific'
- $ref: '#/components/schemas/RestFacetRequestHierarchical'
- $ref: '#/components/schemas/RestFacetRequestDateRange'
- $ref: '#/components/schemas/RestFacetRequestNumericalRange'
discriminator:
propertyName: type
mapping:
specific: '#/components/schemas/RestFacetRequestSpecific'
dateRange: '#/components/schemas/RestFacetRequestDateRange'
numericalRange: '#/components/schemas/RestFacetRequestNumericalRange'
hierarchical: '#/components/schemas/RestFacetRequestHierarchical'
RestAutomaticFacetScope:
type: object
description: 'To determine which fields are relevant for the current query, we consider all facet and multi-value facet
fields that have the parameter "automaticFacetsCandidate": true.
Among these fields, those matching the "fields.toExclude" attribute within the query/pipeline payload will be excluded
and no longer be considered as relevant.
However, excluded fields that do match the "fields.toInclude" attribute within the query/pipeline payload will still
be considered relevant.'
properties:
toInclude:
type: array
items:
type: string
toExclude:
type: array
items:
type: string
RestFacetOptions:
type: object
nullable: true
properties:
freezeFacetOrder:
type: boolean
description: 'Whether facets should be returned in the same order they were requested.
**Note:** Setting this to `true` entirely prevents automatic score-based facet reordering. To allow automatic
facet reordering, but only take into account the scores generated by a Coveo ML DNE model, set `enableIndexFacetOrdering`
to `false` instead.
**Default:** `false`'
default: false
enableIndexFacetOrdering:
type: boolean
description: 'Whether to take the scores generated by the index into account when reordering facets.
**Note:** Setting this to `false` implies that only the scores generated by a Coveo ML DNE model will be taken
into account when automatically reordering facets. To disable automatic facet reordering entirely, set `freezeFacetOrder`
to `true` instead.
**Default:** `true`'
default: true
RestCategoryFacetRequest:
required:
- field
type: object
properties:
field:
type: string
description: 'The name of the field in which to look for hierarchical values.
**Note:** You must ensure that the **Multi-value facet** option is enabled for this field in your index (see [Manage
fields](https://docs.coveo.com/en/1833/)).'
example: '@categories'
path:
type: array
description: The retrieved sequence of hierarchical field values.
example:
- Doors
- Metal
items:
type: string
maximumNumberOfValues:
type: integer
description: 'The maximum number of values to return.
**Default:** `10`'
format: int32
example: 5
default: 10
minimum: 0
injectionDepth:
type: integer
description: 'The maximum number of query result items to scan.
**Note:** Specifying a high `injectionDepth` value can negatively impact query performance.
**Default:** `1000`'
format: int32
example: 1500
default: 1000
delimitingCharacter:
type: string
description: 'The character to use to split field values into a hierarchical sequence.
**Example**:
For a multi-value `field` containing the following values:
`c; c>folder2; c>folder2>folder3;`
The delimiting character is `>`.
**Default:** `|`'
example: '>'
default: '|'
filterFacetCount:
type: boolean
description: 'Whether to exclude folded result parents when estimating the result count for each facet value.
**Note:** The target folding field must be a facet field with the **Use cache for nested queries** options enabled
(see [Manage fields](https://docs.coveo.com/en/1833/)).
**Default:** `true`'
RestRankingFunction:
required:
- expression
type: object
properties:
expression:
type: string
description: 'A mathematical expression to evaluate for each query result. The result of this expression for a given
query result generates a boost which is then added to the ranking score of that query result.
**Note:** Query ranking function expressions support the [ExprTk](http://www.partow.net/programming/exprtk/index.html)
library syntax. However, the following statements are disabled:
- `if`/`else`
- `switch`
- `while`
- `repeat until`
The following time constants are also available in query ranking functions:
- `NOW`: A value corresponding to the precise moment when the query reaches the index.
- `YEAR`: A value corresponding to the duration of a year (i.e., 365.25 days).
- `WEEK`: A value corresponding to the duration of a week.
- `DAY`: A value corresponding to the duration of a day.
**Tip:** If your query ranking function expression references certain numeric fields, you should ensure that the
**Use cache for computed fields** option is enabled for each of those fields in order to speed up evaluation (see
[Manage fields](https://docs.coveo.com/en/1833/)).'
example: -sqrt(dist(@longitude, @latitude, 46.8167, -71.2167))
normalizeWeight:
type: boolean
description: 'Whether to normalize the ranking score boosts resulting from the evaluation of this query ranking
function using the standard index scale.
Unless you want to completely override the index ranking and use the results of this query ranking function directly
to boost the ranking scores of query results, you should set this to `true`.
**Default:** `false`'
example: true
default: false
modifier:
type: integer
description: 'The maximum boost this query ranking function can add to the ranking score of any given query result.
This property only has a meaning if `normalizeWeight` is set to `true`.
**Default:** `600`'
format: int64
example: 100
default: 600
RestQueryFunction:
required:
- fieldName
- function
type: object
properties:
function:
type: string
description: 'The mathematical expression whose output should be stored in a dynamic, temporary field.
**Notes:**
- The `function` expression can be defined using the [ExprTk](http://www.partow.net/programming/exprtk/index.html)
library syntax, but control and loop structures (e.g., if-then-else, while loop, etc.) are **not** supported.
- If the `function` expression references a numeric field, enable the **Use cache for computed fields** option
on that field to speed up evaluation (see [Manage fields](https://docs.coveo.com/en/1833/)).'
example: '@numberoflikes+1'
fieldName:
type: string
description: 'The name of the dynamic, temporary field in which to store the query function expression output.
**Note:** The `fieldName` value must not correspond to an existing field in the index.'
example: numberoflikesplusone
filter:
type: string
description: A query expression to specify which result items that the query function should apply to.
example: '@filetype==forumpost'
allowMissingFields:
type: boolean
default: false
description: 'Whether a document should be considered by the query function when one or more referenced fields are
missing.
When set to `true`, the missing fields will be assigned a `NaN` value, and the query function should handle `NaN`
values by replacing them with a default value.
For example:
```
var price1 := @price == @price ? @price : 0;
var price2 := @price_store2 == @price_store2 ? @price_store2 : 0;
price1 + price2
```
> **Note**: To be considered by the query function, a document must have at least one defined field. Documents
with all fields missing will be excluded.
'
RestUserActionParameter:
type: object
properties:
tagViewsOfUser:
type: string
description: 'The user ID or visitor ID to retrieve user actions for.
**Note:** Only effective with authenticated users.
**Examples:**
- `asmith@example.com`
- `c7ab60e2-e6b8-41e8-be6a-ad5c8edc662e`'
RestCommerceParameters:
type: object
properties:
catalogId:
type: string
description: The unique identifier of the catalog to query.
filter:
type: string
description: A mandatory query expression to apply if the commerce request affects the query.
operation:
type: string
description: The way the commerce request should affect query results.
enum:
- selectCatalogObjects
- excludeCatalogObjects
RestFieldAliases:
type: object
maxProperties: 1000
additionalProperties:
type: string
minLength: 1
maxLength: 510
pattern: ^[a-z][a-z0-9_]+\.[a-zA-Z0-9_]+$
description: 'A key-value store where each pair corresponds to the name of an alias, along with the key to target within
which dictionary field to query.
**Note:** This cannot be used at the same time as `dictionaryFieldContext`.
**Note:** Using this parameter requires either:
- `allowedDictionaryFieldKeys` in the authentication token.
- The `EXPLORE_DICTIONARY_FIELDS` privilege on the authenticated user.
**Example:** The same behaviour as `dictionaryFieldContext` can be implemented using this parameter. Suppose that
in your index, the `@price` dictionary field contains different values for its `storea` and `storeb` keys. Including
`"fieldAliases": { "price": "price.storea" }` in the query means that any part of the query expression that targets
the `@price` field will in fact only query the `storea` values of that field. This is similar to using `"dictionaryFieldContext":
{ "price": "storea" }`.
**Example:** Suppose that in your index, the `@price` dictionary field contains different values for its `storea`
and `storeb` keys. Including `"fieldAliases": { "price_a": "price.storea", "price_b": "price.storeb" }` in the query
means that any part of the query expression that targets the `@price_a` field will in fact only query the `storea`
values of that field, and similarly for `@price_b` and `storeb`.'
example:
price_a: price.storeA
price_b: price.storeB
RestQueryParametersBase:
type: object
properties:
q:
$ref: '#/components/schemas/Q'
aq:
$ref: '#/components/schemas/AQ'
cq:
$ref: '#/components/schemas/CQ'
dq:
$ref: '#/components/schemas/DQ'
lq:
$ref: '#/components/schemas/LQ'
queryCorrection:
type: object
required:
- enabled
description: "This parameter controls the behavior of the Coveo query correction feature.\n\nOnce enabled, this\
\ feature will:\n - Attempt to correct your query if it doesn't return enough results.\n - If corrections are\
\ found, the API will automatically correct your query.\n\nQuery corrections are derived from the index's _Did\
\ You Mean_ feature and ML query corrections.\n\nCorrection information will be returned in the `queryCorrection`\
\ property of the response.\n\nIf the query was automatically corrected, it will return:\n\n - The original query\n\
\ - The corrected query\n\nOtherwise, it will return:\n\n - A list of corrections generated by our system.\n\
\nThis feature is off by default for backward compatiblity reasons.\n"
properties:
enabled:
type: boolean
description: 'Whether or not this feature should be enabled. If it''s set to false, other `queryCorrection`
properties will be ignored.
> **Note:**
> You don''t have to set `enableDidYouMean` or `enableMlDidYouMean` to use this feature. The `queryCorrection`
parameter takes precedence over them.
'
options:
type: object
properties:
automaticallyCorrect:
type: string
enum:
- never
- whenNoResults
default: whenNoResults
description: "If set to `whenNoResults`, there are no results returned by the query and the original basic\
\ query expression (`q`) appears to have been misspelled, the Search API will attempt to correct the `q`\
\ value by either:\n\n - applying keyword corrections, if any were provided by the _Did You Mean_ index\
\ feature, or otherwise\n - replacing the original `q` value with the highest ranked Coveo ML query suggestion\
\ that will return results.\n\n If the `q` value was corrected, the Search API will then automatically\
\ fetch results from the index using the corrected `q` rather than the original one.\n\nIf set to `never`,\
\ potential corrections found by the _Did You Mean_ index feature will be returned instead of being automatically\
\ applied.\n"
enableDidYouMean:
type: boolean
description: 'Whether to enable the _Did You Mean_ feature of the index, which populates the `queryCorrections`
property of a successful response with keyword correction suggestions.
**Notes:**
- The Did You Mean feature only processes the basic query expression (see the `q` parameter).
- When both `enableDidYouMean` and `enableMLDidYouMean` parameter are set to `true`, the output of both features
will appear in the `queryCorrections` array.
- The Did You Mean feature will return no corrections when the query is processed by an automatic relevance tuning
(ART) model whose Intelligent Term Detection (ITD) feature is enabled.
**Default:** `false`'
example: true
default: false
mlDidYouMeanMaxCandidates:
type: integer
description: 'The maximum number of Coveo ML Did You Mean candidates to request from the query suggestions model.
**Default:** `3`'
format: int32
example: 5
default: 3
mlDidYouMeanMinScore:
type: number
description: 'The minimum score a query suggestion may have to be allowed as a candidate for the Coveo ML query
suggestions Did You Mean feature. For best results, value should typically be in range [`0.8`, `2`].
**Default:** `1.0`'
format: double
example: 0.8
default: 1
mlDidYouMeanUseFacetCount:
type: boolean
description: 'Whether to use facet counts for the Coveo ML Did You Mean feature. Can improve results, but requires
more processing.
**Default:** `false`'
example: true
default: false
enableMLDidYouMean:
type: boolean
description: '**Important:** This feature is still in an experimental state.
Whether to enable the Coveo ML query suggestions _Did You Mean_ feature, which populates the `queryCorrections`
property of a successful response with keyword correction suggestions.
**Notes:**
- The Coveo ML query suggestions Did You Mean feature only processes the basic query expression (see the `q` parameter).
- When both `enableDidYouMean` and `enableMLDidYouMean` parameter are set to `true`, the output of both features
will appear in the `queryCorrections` array.
**Default:** `false`'
example: true
default: false
partialMatch:
type: boolean
description: 'Whether to convert a basic expression containing at least `partialMatchKeywords` to a _partial match
expression_, so that any item containing at least `partialMatchThreshold` of those keywords will match the expression.
If you do not set this parameter to `true`, an item must contain all of the basic expression keywords to match
the expression.
**Notes:**
- This feature only applies to the basic expression (`q`) of a query, and to the basic `queryOverride` of its
Group By operations.
- When the `enableQuerySyntax` parameter is set to `true`, this feature has no effect on a basic expression containing
advanced Coveo Cloud query syntax (field expressions, operators, etc.).
**Default:** `false`'
example: true
default: false
partialMatchKeywords:
type: integer
description: 'The minimum number of keywords that need to be present in a basic expression to convert it to a partial
match expression.
**Notes:**
- This parameter has no meaning unless the `partialMatch` parameter is set to `true`.
- Repeated keywords in a basic expression count as a single keyword.
- Thesaurus expansions in a basic expression count towards the `partialMatchKeywords` count.
- Stemming expansions **do not** count towards the `partialMatchKeywords` count.
See also the `partialMatchThreshold` parameter.
**Default:** `5`'
format: int32
example: 4
default: 5
partialMatchThreshold:
type: string
description: 'An absolute or relative value indicating the minimum number (rounded up) of partial match expression
keywords an item must contain to match the expression.
If specified, the `partialMatchThreshold` value must either be:
- a 32-bits unsigned integer (e.g., `3`),
- a percentage value between 0% and 100% (e.g., `75%`),
- the empty string, or
- the `all` string.
The `""` and the `all` value are both equivalent to `100%`.
**Notes:**
- This parameter has no meaning unless the `partialMatch` parameter is set to `true`.
- A keyword and its stemming expansions count as a single keyword when evaluating whether an item meets the `partialMatchThreshold`.
See also the `partialMatchKeywords` parameter.
**Examples:**
- `3`
- `75%`
- `all`
**Default:** `50%`'
example: 75%
default: 50%
lqPartialMatchMaxKeywords:
type: integer
description: 'The maximum number of keywords from the large query expression (see the `lq` parameter) that will
be included in the partial match expression in case the Coveo ML Intelligent Term Detection (ITD) feature cannot
extract relevant keywords from the large query expression.
**Note:** This parameter applies as a fallback setting when no Coveo ML automatic relevance tuning model is available
in the query pipeline to process a query that contains a non-null large query expression (`lq`).
Setting this parameter to a high value can negatively impact the performance of queries, while setting it too
low can produce less relevant results.
See also the `lqPartialMatchThreshold` parameter.
**Default value**: `100`'
format: int32
example: 20
default: 100
lqPartialMatchKeywords:
type: integer
description: 'The minimum number of keywords that need to be present in the large query expression (see the `lq`
parameter) to convert it to a partial match expression in case the Coveo ML Intelligent Term Detection (ITD) feature
cannot extract relevant keywords from the large query expression.
**Note:** This parameter applies as a fallback setting when no Coveo ML automatic relevance tuning model is available
in the query pipeline to process a query that contains a non-null large query expression (`lq`).
See also the `lqPartialMatchThreshold` parameter.
**Default**: `5`'
format: int32
example: 4
default: 5
lqPartialMatchThreshold:
type: string
description: 'An absolute or relative value indicating the minimum number of partial match expression keywords an
item must contain to match the large query expression in case the Coveo ML Intelligent Term Detection (ITD) feature
cannot extract relevant keywords from the large query expression.
If specified, the `lqPartialMatchThreshold` value must either be:
- a 32-bits unsigned integer (e.g., `3`),
- a percentage value between 0% and 100% (e.g., `75%`),
- the empty string (`""`), or
- the `all` string.
The `""` and `all` values are both equivalent to `100%`.
**Note:** This parameter applies when no Coveo ML automatic relevance tuning model is available in the query pipeline
to process a query that contains a non-null large query expression (`lq`).
See also the `lqPartialMatchKeywords` parameter.
**Examples:**
- `3`
- `75%`
- `all`
**Default:** `50%`'
example: 75%
default: 50%
wildcards:
type: boolean
description: 'Whether to enable the *wildcards* feature of the index in order to expand basic expression keywords
(see the `q` parameter) containing wildcard characters (`*`) to the possible matching keywords. See also the `questionMark`
parameter.
See [Using Wildcards in Queries](https://docs.coveo.com/en/1580/).
**Default:** `false`'
example: true
default: false
questionMark:
type: boolean
description: 'Whether to enable question mark characters (`?`) in the *wildcards* feature of the index in order
to expand basic expression keywords (see the `q` parameter) containing question mark characters (`?`) to the possible
matching keywords.
**Note:** Setting this parameter to `true` has no effect unless you also set the `wildcards` parameter to `true`.
See [Using Wildcards in Queries](https://docs.coveo.com/en/1580/).
**Default:** `false`'
example: true
default: false
enableQuerySyntax:
type: boolean
description: 'Whether to interpret advanced Coveo Cloud query syntax as such in the basic query expression (see
the `q` parameter). See also the `lowercaseOperators` parameter.
**Default:** `true`'
example: true
default: true
lowercaseOperators:
type: boolean
description: 'Whether to treat the `AND`, `NEAR`, `NOT`, and `OR` keywords in the basic query expression (see the
`q` parameter) as Coveo Cloud query syntax operators even if those keywords are in lowercase.
**Note:** Setting this parameter to `true` has no effect unless you also set the `enableQuerySyntax` parameter
to `true`.
**Example:** If you set this parameter, and the `enableQuerySyntax` parameter to `true`, the index interprets
the `near` keyword in the basic query expression `service center near me` as the `NEAR` Coveo Cloud query syntax
operator.
**Default:** `false`'
example: false
default: false
excerptLength:
type: integer
description: 'The maximum length of result excerpts (in number of characters).
An *excerpt* is a segmented text generated at query time by the index from the body of an item. When a query is
performed, the *excerpt* yields relevant item body sections in which the queried terms are highlighted.
An *excerpt* includes the most relevant sentences in which the queried keywords appear, in the order in which
they appear in the item, up to the specified number of characters.
**Note:** The maximum length you set using this parameter also applies to retrieved first sentences, if those
are included in the results (see the `retrieveFirstSentences` parameter).
**Default:** `200`'
format: int32
example: 250
default: 200
retrieveFirstSentences:
type: boolean
description: 'Whether to include the first sentences of textual items in the query results.
First sentences are typically useful when rendering result items such as emails, since the first few sentences
of these kinds of items are often more relevant than a contextually generated excerpt (see the `excerptLength`
parameter).
**Note:** The maximum length of the retrieved sentences (in number of characters) is determined by the value of
the `excerptLength` parameter.
**Default:** `false`'
example: true
default: false
fieldsToInclude:
type: array
description: 'The names of the fields to include with each item in the query results. If specified, no other fields
will be included.
**Note:** If you specify both an array of fields to include and an array of fields to exclude (see the `fieldsToExclude`
parameter), the `fieldsToExclude` parameter has no effect at all.
If you do not explicitly specify an array of values for this parameter (or for the `fieldsToExclude` parameter),
each query result item will include all of its available fields.'
example:
- clickableuri
- author
- date
- filetype
- language
- conversationid
- messageid
- childid
- adjustednumberoflikes
items:
type: string
fieldsToExclude:
type: array
description: 'The names of the fields to exclude from the query results. All other fields will be included with
each item in the query result.
**Note:** If you specify both an array of fields to include (see the `fieldsToInclude` parameter) and an array
of fields to exclude, the `fieldsToExclude` parameter has no effect at all.
If you do not explicitly specify an array of values for this parameter (or for the `fieldsToInclude` parameter),
each query result item will include all of its available fields.'
example:
- documenttype
- size
- source
items:
type: string
groupBy:
type: array
description: The Group By operations to perform on the query results, typically to extract facets.
items:
$ref: '#/components/schemas/RestGroupBy'
facets:
type: array
description: The facet operations to perform on the query results.
items:
$ref: '#/components/schemas/RestFacetRequest'
generateAutomaticFacets:
type: object
description: Generate facets based on the most relevant fields in the index.
properties:
desiredCount:
type: integer
format: int32
description: The desired number of automatically generated facets.
minimum: 0
maximum: 20
generationStrategy:
type: string
description: "Defines the strategy used to decide which facets will be automatically generated.\n - `mostRelevant`:\
\ Returns a maximum of `desiredCount` **relevant** facets. If fewer relevant facets are available, only those\
\ will be returned. This option prioritizes quality over quantity.\n - `matchDesiredCount`: Returns all available\
\ `desiredCount` facets in your organization, even if some have lower relevance. This option prioritizes quantity\
\ over quality."
enum:
- mostRelevant
- matchDesiredCount
default: mostRelevant
numberOfValues:
type: integer
format: int32
description: The desired number of automatically generated facet values.
default: 8
minimum: 1
fields:
$ref: '#/components/schemas/RestAutomaticFacetScope'
currentFacets:
type: array
items:
type: object
required:
- field
- currentValues
properties:
field:
type: string
description: 'The name of the field on which to base the facet request.
**Note:** Must reference a field whose **Facet** option is enabled (see [Manage fields](https://docs.coveo.com/en/1833/)).'
example: author
label:
type: string
description: A human-readable title that describes the facet.
type:
type: string
enum:
- specific
description: Request facet values representing specific values (e.g., Alice Smith, Bob Jones, etc.).
currentValues:
type: array
description: 'The values displayed by the facet in the search interface at the moment of the request.
**Default:** `[]`'
items:
$ref: '#/components/schemas/RestFacetSpecificValue'
sortCriteria:
type: string
enum:
- score
- occurrences
- alphaAscending
- alphaDescending
description: 'The criterion to use when sorting the Group By operation results.
**Allowed values:**
- `score`: sort using the score value which is computed from the number of occurrences of a field value, and
also from the position where query result items with this field value appear in the ranked query result set.
When using this sort criterion, a field value with 100 occurrences might appear after one with only 10 occurrences,
if the occurrences of the latter field value tend to appear higher in the ranked query result set.
- `occurrences`: sort by occurrences, with field values that have the highest number of occurrences appearing
first.
- `alphaAscending`/`alphaDescending`: sort field values alphabetically.'
example: score
tags:
type: array
description: 'Optional tag filters used to scope automatic facet candidates by property.
If you leave this parameter empty or undefined, automatic facet candidates are not tag filtered.'
maxItems: 50
items:
type: string
maxLength: 64
pattern: ^[A-Za-z0-9._:-]+$
facetOptions:
$ref: '#/components/schemas/RestFacetOptions'
categoryFacets:
type: array
description: Data to easily query a hierarchical field using a path of hierarchical values.
items:
$ref: '#/components/schemas/RestCategoryFacetRequest'
sortCriteria:
type: string
description: 'The criteria to use for sorting the query results.
**Allowed values:**
- `relevancy`: use standard index ranking factors (adjacency, TDIDF, etc.) and custom ranking expressions (QREs
and QRFs) to compute a ranking `score` for each query result item, and sort the query results by descending `score`
value.
- `date ascending`/`date descending`: use the `@date` field to sort the query results. This field typically contains
the last modification date of each item.
- `qre`: use only custom ranking expressions (QREs and QRFs) to compute a ranking `score` for each query result
item, and sort the query results by descending `score` value.
- `nosort`: do not sort the query results; the index will return result items in an essentially random order.
- `@[field] ascending`/`@[field] descending`: sort using the value of a specific sortable field (replace `[field]`
by the target field name).
You can specify a list of comma-separated sort criteria. However, this only works when combining:
- two or more field criteria (e.g., `@views descending,@likes descending`).
- a single date criteria with one or more field criteria (e.g., `date ascending,@views descending`).
**Examples:**
- `date ascending`
- `@author ascending`
- `date descending,@views descending,@likes descending`
**Default:** `relevancy`'
example: DateDescending
default: Relevancy
rankingFunctions:
type: array
description: 'The array of [ranking functions](https://docs.coveo.com/en/1448/) to execute on each query result
item.
The result of a ranking function is added to the result score, which can affect sorting (see the `Relevancy` and
`qre` values of the `sortCriteria` parameter).'
items:
$ref: '#/components/schemas/RestRankingFunction'
queryFunctions:
type: array
description: 'The array of [query functions](https://docs.coveo.com/en/1451/) to execute on each query result item.
The result of a query function is stored in a temporary, dynamic field created at query time.'
items:
$ref: '#/components/schemas/RestQueryFunction'
firstResult:
type: integer
description: 'The 0-based position of the first result to return in the non-paginated result set.
Along with the `numberOfResults` parameter, this allows you to retrieve a specific page of result items.
**Note:** This can''t be greater than the `maximumResults` value configured for your index. By default, `maximumResults`
is set to 5,000 items.
**Default:** `0`'
format: int32
example: 2
default: 0
numberOfResults:
type: integer
description: 'The number of results to return.
Along with the `firstResult` parameter, this allows you to retrieve a specific page of result items.
This parameter also defines the maximum number of results which can be returned by the Coveo ML Recommendations
feature.
**Note:** The maximum `numberOfResults` value is 2,000 items.
**Default:** `10`'
format: int32
example: 5
default: 10
minimum: 0
enableDuplicateFiltering:
type: boolean
description: 'Whether to filter out duplicates, so that items resembling one another only appear once in the query
results.
**Notes:**
- Two items must be at least 85% similar to one another to be considered duplicates.
- When a pair of duplicates is found, only the higher-ranked item of the two is kept in the result set.
- Enabling this feature can make the total result count less precise, since only results up to those being retrieved
(see the `firstResult` and `numberOfResults` parameters) are submitted to duplicate filtering.
- Duplicate filtering and [result folding](https://docs.coveo.com/en/1466/) are mutually exclusive.
**Default:** `false`'
example: true
default: false
filterField:
type: string
description: 'The `@`-prefixed name of the field to use to group items into distinct folded query results (see [Result
Folding](https://docs.coveo.com/en/1466/)).
Use a field whose value is identical for all items to group under the same folded query result.
See also the `parentField`, `childField`, and `filterFieldRange` parameters.
**Notes:**:
- Result folding and duplicate filtering (using the `enableDuplicateFiltering` parameter) are mutually exclusive.'
example: '@foldingcollection'
parentField:
type: string
description: 'The `@`-prefixed name of the field to use to be able to identify an item as a parent in a folded query
result (see [Result Folding](https://docs.coveo.com/en/1466/)).
Use a field whose value can uniquely identify each item. All items whose `childField` value is identical to the
`parentField` value of another item are considered children of that other item.
See also the `filterField`, `childField`, and `filterFieldRange` parameters.
**Notes:**
- In the index, the values of the `parentField` must only contain alphanumerical characters. Using a `childField`
whose values contain non-indexable characters (such as underscores) will make folding fail.
- The values of the `parentField` must contain 60 characters or less (60 being the default maximum of characters
for a word in the index).
- Result folding and duplicate filtering (using the `enableDuplicateFiltering` parameter) are mutually exclusive.'
example: '@foldingchild'
childField:
type: string
description: 'The `@`-prefixed name of the field to use to be able to identify an item as a child of another item
in a folded query result (see [Result Folding](https://docs.coveo.com/en/1466/)).
Use a field whose value points to the `parentField` value of the intended parent. Whenever an item is a child
of another item, its `childField` value must be identical to the `parentField` value of that other item.
See also the `filterField`, `parentField`, and `filterFieldRange` parameters.
**Notes:**
- In the index, the values of the `childField` must only contain alphanumerical characters. Using a `childField`
whose values contain non-indexable characters (such as underscores) will make folding fail.
- The values of the `childField` must contain 60 characters or less (60 being the default maximum of characters
for a word in the index).
- Result folding and duplicate filtering (using the `enableDuplicateFiltering` parameter) are mutually exclusive.'
example: '@foldingparent'
filterFieldRange:
type: integer
description: 'The maximum number of items to include in the `childResults` array of a folded query result (see [Result
Folding](https://docs.coveo.com/en/1466/)).
See also the `filterField`, `parentField`, and `childField`.
**Notes:**:
- Result folding and duplicate filtering (using the `enableDuplicateFiltering` parameter) are mutually exclusive.
**Default:** `5`'
format: int32
example: 8
default: 5
summaryLength:
type: integer
description: 'The length of the automatically generated item summary.
The Coveo Platform uses a linguistic algorithm that relies on term frequency and proximity to generate an item
*summary* made of sentences identified to be the most important ones in the item.
This *summary* is generated independently from the query, as opposed to a result item *excerpt*, which is generated
based on query keywords.
**Default:** `0`'
format: int32
default: 0
sortField:
type: string
description: This parameter is exposed for backward compatibility reasons. Use the `sortCriteria` parameter along
with the `@[field] ascending/@[field] descending` syntax instead.
deprecated: true
disableQuerySyntax:
type: boolean
description: This parameter is exposed for backward compatibility reasons. Use the `enableQuerySyntax` parameter
instead.
default: false
deprecated: true
staticQuery:
type: boolean
description: 'Whether to execute this query in a way that does not count against the allowed number of queries per
month of a Coveo Cloud organization (QPM), but may produce cached/outdated query results (see [Rendering Static
Content Using Persistent Queries](https://docs.coveo.com/en/1009/)).
**Note:** Setting this parameter to `true` overwrites the `maximumAge` parameter value for this query.
**Default:** `false`'
example: true
default: false
userActions:
$ref: '#/components/schemas/RestUserActionParameter'
commerce:
$ref: '#/components/schemas/RestCommerceParameters'
dictionaryFieldContext:
type: object
additionalProperties:
type: string
description: 'A key-value store where each pair corresponds to the name of a dictionary field to query, along with
the key to target within that field.
**Example:** Suppose that in your index, the `@price` dictionary field contains different values for its `storeA`
and `storeB` keys. Including `"dictionaryFieldContext": { "price": "storeA" }` in the query means that any part
of the query expression that targets the `@price` field will in fact only query the `storeA` values of that field.'
example:
price: storeA
freeTextSearchFields:
type: array
description: 'The fields to use when performing free-text search.
When provided, only these fields are searched for free-text terms.'
maxItems: 5
items:
type: string
minLength: 1
maxLength: 510
pattern: ^@?[a-zA-Z0-9_]+$
fieldAliases:
$ref: '#/components/schemas/RestFieldAliases'
Pipeline:
type: string
nullable: true
description: 'The name of the query pipeline to use for this request (bypassing its conditions, if it has any).
You can pass an empty `pipeline` value to use an empty query pipeline (i.e., `?pipeline=` or `"pipeline": ""`).
If a query does not contain the `pipeline` parameter, the first query pipeline whose conditions are met by the request
is used (query pipelines without conditions are not evaluated). Should the request fail to meet the conditions of
each evaluated query pipeline, the default query pipeline of the target Coveo Cloud organization is used (bypassing
its conditions, if it has any).
**Notes:**
- This parameter will be overridden if the search request is authenticated by a [search token](https://docs.coveo.com/en/56/)
that enforces a specific [`pipeline`](https://docs.coveo.com/en/56/#pipeline-string-optional), or a [`searchHub`](https://docs.coveo.com/en/56/#searchhub-string-optional)
that routes queries to a specific `pipeline` via a query pipeline condition.
- For reporting purposes, when logging a **Search** usage analytics event for a query, the `queryPipeline` field of
that event should be set to the final `pipeline` value used in the query execution. This value is determined from
the query response. If no pipeline was specified, it uses the `"default"` value.
See also [Managing Query Pipelines](https://docs.coveo.com/en/1450/).
'
example: CustomerQueryPipeline
MaximumAge:
type: integer
nullable: true
description: 'The maximum age of cached results, in milliseconds.
If the results of a specific request are available in the cache, and if those results are no older than the `maximumAge`
value, the service returns those results rather than forwarding a new query to the index.
Such cache hits improve responsiveness but still count as queries in your queries per month (QPM) count.
**Note:** This parameter is automatically overridden when `staticQuery` is set to `true`.
**Default:** `-1` (which corresponds to the internal default value (15 minutes)'
format: int32
example: 1800000
default: -1
SearchHub:
type: string
nullable: true
description: 'The first level of origin of the request, typically the identifier of the graphical search interface from
which the request originates.
Coveo Machine Learning models use this information to provide contextually relevant output.
**Notes:**
- This parameter will be overridden if the search request is authenticated by a [search token](https://docs.coveo.com/en/56/)
that enforces a specific [`pipeline`](https://docs.coveo.com/en/56/#pipeline-string-optional), or a [`searchHub`](https://docs.coveo.com/en/56/#searchhub-string-optional)
that routes queries to a specific `pipeline` via a query pipeline condition.
- When logging a **Search** usage analytics event for a query, the `originLevel1` field of that event should be set
to the value of the `searchHub` search request parameter.
See also the `tab` parameter.
'
example: CustomerPortal
Tab:
type: string
nullable: true
description: 'The second level of origin of the request, typically the identifier of the selected tab in the graphical
search interface from which the request originates.
Coveo Machine Learning models use this information to provide contextually relevant output.
**Note:** When logging a **Search** usage analytics event for a query, the `originLevel2` field of that event should
be set to the `tab` value of the query (or to the `"default"` string, if no `tab` value was specified in the query).
See also the `searchHub` parameter.
'
example: ForumTab
Referrer:
type: string
nullable: true
description: 'The third level of origin of the request, typically the URL of the page that linked to the search interface
from which the request originates (e.g., in JavaScript, this would correspond to the `document.referrer` value).
Coveo Machine Learning models may use this information to provide contextually relevant output.
**Note:** When logging a **Search** usage analytics event for a query, the `originLevel3` field of that event should
be set to the `referrer` value of the query, if specified.
See also the `context` parameter.
'
example: http://www.example.com/
Context:
type: object
nullable: true
additionalProperties: true
description: 'The custom context information to send along with the request. Must be a dictionary of key-value pairs
(JSON) where each key is a string, and each value is either a string or an array of strings.
Coveo Machine Learning models may use this information to provide contextually relevant output. Moreover, this information
can be referred to in query expressions and QPL statements by using the `$context` object.
**Note:** When logging a **Search** usage analytics event for a query, the `customData` field of that event should
include the same data as the `context` parameter of the query. However, each `context` key included in `customData`
must be prefixed by `context_` (e.g., the `userRoles` key in `context` becomes `context_userRoles` in `customData`).
See also the `referrer` parameter.
**Example** `{"userAgeRange":"25-35","userRoles":["PremiumCustomer","ProductReviewer"]}`'
ActionHistory:
type: object
properties:
name:
type: string
description: 'The action history event name.
Possible values:
- **Query**
- **PageView**'
example: PageView
value:
description: The action history value, which is either a query expression or a page URI, depending on the action
history event `name`.
time:
type: string
description: The time when the action history event was sent from the client.
ActionsHistory:
type: array
nullable: true
items:
$ref: '#/components/schemas/ActionHistory'
description: 'The query and page view actions previously made by the current user.
Coveo Machine Learning event recommendations models use this information to provide contextually relevant output.
**Note:** Page view actions are typically populated by the [coveo.analytics.js](https://github.com/coveo/coveo.analytics.js)
script.'
example:
- name: Query
value: Machine learning powered search
time: '2017-08-16T11:33:29.427Z'
- name: PageView
value: http://www.example.com/
time: '2017-08-15T17:34:08.398Z'
Recommendation:
type: string
nullable: true
description: 'The identifier of the recommendation interface from which the request originates (see [`CoveoRecommendation`](https://coveo.github.io/search-ui/components/recommendation.html)).
Coveo Machine Learning event recommendations models may use this information to provide contextually relevant output.
'
example: Recommendation
Locale:
type: string
nullable: true
description: 'The locale of the current user. Must comply with IETF''s [BCP 47](http://www.rfc-editor.org/rfc/bcp/bcp47.txt)
definition.
Coveo Machine Learning models use this information to provide contextually relevant output. Moreover, this information
can be referred to in query expressions and QPL statements by using the `$locale` object.
**Note:** When logging a **Search** usage analytics event, the `language` field of that event should match the language
part of the `locale` value of the query (e.g., `en-US` in `locale` becomes `en` in `language`).
'
example: en-US
Timezone:
type: string
nullable: true
description: 'The [tz database](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) identifier of the time
zone to use to correctly interpret dates in the query expression and result items.
If not specified, the default time zone of the server hosting the index is used.
**Note:** While no Coveo Machine Learning model uses this information, it can nevertheless affect the ranking scores
(and thus, potentially the order) of result items, as ranking expressions may be based on time constants.
'
example: America/New_York
Format:
type: string
nullable: true
description: 'The format of a successful response.
- Use `json` to get the response in the JSON format.
- Use `xlsx` to generate an Excel file containing the results (binary).
**Note:** Debug information (see the `debug` parameter) can only appear in a response in the JSON format.
**Default:** `json`
'
example: json
default: json
Debug:
type: boolean
nullable: true
description: 'Whether to force a successful response to include debug information.
**Notes:**
- Debug information can only appear in responses in the JSON format (see the `format` parameter).
- Avoid setting this parameter to `true` in production, as it has a negative impact on query performance.
**Default:** `false`
'
example: false
default: false
IndexToken:
type: string
nullable: true
description: 'The Base64 encoded identifier of the index mirror to forward the request to. See also the `index` parameter.
If you do not specify an `indexToken` (or `index`) value, any index mirror could be used.
**Note:** Passing an `indexToken` (or `index`) value has no effect when the results of a specific request can be returned
from cache (see the `maximumAge` parameter).
'
example: ZXhhbXBsZWluZGV4bWlycm9yLS4uLg==
VisitorId:
type: string
nullable: true
deprecated: true
description: 'A GUID which represents the current user, who can either be authenticated or anonymous.
`visitorId` is deprecated and has been replaced by [`clientId`](https://docs.coveo.com/en/masb0234/) in newer versions
of the Coveo UI libraries. For compatibility, the new first-party cookie and local storage values are still named
`coveo_visitorId`.
For older versions of the JavaScript Search Framework, the visitor ID is generated by the Coveo Usage Analytics service
and stored in a non-expiring third-party cookie. **Note:** Third-party cookies [have also been deprecated](https://docs.coveo.com/en/m54b9238/).
This is unrelated to the deprecation of `visitorId`.
'
example: 5cb98953-9c13-42ff-8176-e6fcba6a50bf
Language:
type: string
nullable: true
description: This parameter is exposed for backward compatibility reasons. Use the `locale` parameter instead.
deprecated: true
MlParameters:
type: object
nullable: true
additionalProperties: true
description: 'A map of options to pass to the Coveo ML models associated with the request''s target query pipeline.
**Available parameters:**
- `considerUserContext` (boolean): Whether the models should attempt to leverage the `context` object of the request
to personalize their output. Applies to CR models only. Default is `true`.
- `maxActionsHistoryItemsToConsider` (unsigned integer): The maximum number of items in the `actionsHistory` array
of the request that should be taken into account by the models. Applies to CR models only. By default, all `actionsHistory`
items are considered.
- `num` (unsigned integer): The maximum number of recommendations/suggestions to request from the models. Must be
in range [1, 50], if specified. Applies to ART, CR, and QS models. Default depends on model configuration.
- `padding` (string enum): The kind of padding the models should complete their output with, if their maximum number
of recommendations/suggestions (i.e., `num`) has not been reached. Applies to CR models only. Allowed values are `popular`
(i.e., pad recommendations with all time most popular items) and `trending` (i.e., pad recommendations with items
that have recently been increasingly popular). By default, no padding applies.
- `wordSelection` (string): The ITD keyword selection options the models should use. Applies only to ART models with
ITD enabled. If specified, must be a string in the format `option:value`. The only available option is `wordsKept`
(i.e., the maximum number of `lq` keywords to inject in `q`); its default value is `5`.
- `minNumberOfWords` (unsigned integer): The minimum number of words a query suggestion may contain to be returned
by the model. Applies to QS models only. Must be in range [1, 10] Default is `1`, which implies that the model will
return all candidates.
- `itemId` (string): The unique identifier (e.g., SKU) of a product to get recommendations for. Only applies when
querying a Product Recommendations model with an association strategy considering a single item as an input.
- `itemIds` (array of strings): The unique identifiers (e.g., SKUs) of the products to get recommendations for. Only
applies when querying a Product Recommendations model with an association strategy considering multiple items as an
input.
- `categoryFilter` (string): The name of a category of products to get recommendations for.
- `brandFilter` (string): The name of a brand of products to get recommendations for.
- `filters` (map of strings): The dimensions along with the values to be used at query time by the model as filters
for potential suggestions. Only applies to ART, QS, and DNE models that don''t use the default `filterFields` advanced
parameter values. **Example:** `"filters": { "originContext": "", "originLevel2": "" }`.
**Examples:**
- `{"num": 3, "padding": "trending", "maxActionsHistoryItemsToConsider": 10, "considerUserContext": false}`
- `{"wordSelection": "wordsKept:4"}`
'
example:
num: 3
padding: trending
PipelineRuleParameters:
type: object
nullable: true
additionalProperties: true
maxProperties: 255
description: "This defines generic parameters to be used by rules.\nIt defines the \"scopes\", or in other words, the\
\ rules in which the parameters should be used.\nThe generic parameters are defined within a particular scope and\
\ are only be accessible inside of it.\nThis is a read-only parameter, so its value will not be overridden.\n\n`{\n\
\ \"scope\": {\n \"parameterName\" : \"parameterValue\"\n }\n}`\n\nWhile using Gen AI, if additional document\
\ fields are required for the resulting\ncitations, these fields can be specified through the 'citationsFieldToInclude'\n\
property of the 'mlGenerativeQuestionAnswering' scope.\n\n> **Note:**\n> Getting dictionary fields for citations is\
\ not supported.\n\n**Examples:**\n- `{\"mlGenerativeQuestionAnswering\": { \"responseFormat\": { \"answerStyle\"\
: \"bullet\" } } }`\n- `{\"mlGenerativeQuestionAnswering\": { \"citationsFieldToInclude\": [\"field1\", \"field2\"\
] } }`\n\nMax Size: 1KB\n"
example:
genqa:
responseFormat:
answerStyle: bullet
IndexType:
type: string
nullable: true
description: 'The type of index against which to execute the query. Must correspond to an index that has been configured
for the target Coveo Cloud organization.
**Default:** `coveo`
'
example: coveo
default: coveo
Index:
type: string
nullable: true
description: 'The identifier of the index mirror to forward the request to. See also the `indexToken` parameter.
If you do not specify an `index` (or `indexToken`) value, any index mirror could be used.
**Note:** Passing an `index` (or `indexToken`) value has no effect when the results of a specific request can be returned
from cache (see the `maximumAge` parameter).
'
example: myorg-nvoqun-Indexer1-pbi2nbuw
LogicalIndex:
type: string
nullable: true
description: 'The identifier for a logical group of indexes that have been configured to include documents from the
same sources.
If you do not specify a `logicalIndex` value, the `default` grouping will be used, typically including all indexes.
'
example: webcontentonly
default: default
MaximumTimeoutMs:
type: integer
nullable: true
description: 'The maximum number of milliseconds to allow the request to last before timing out.
**Maximum:** 10000
**Minimum/Default:** 0, meaning that Coveo determines the most appropriate timeout to use.
'
format: int32
example: 10000
default: 0
AnalyticsRequestParameters:
type: object
nullable: true
properties:
capture:
type: boolean
description: 'Whether the search api call should be tracked for analytics and machine learning purposes.
When set to `true`, be sure to set the `actionCause` parameter. When not provided, it defaults to `false`.
See [Standard actions and Usage Analytics reference](docs.coveo.com/en/1389)).'
trackingId:
type: string
description: A value to identify which web property an event is related to.
userId:
type: string
description: '> This property is deprecated; it should not be populated by Search API V2 searches. Instead, specify
the ID of the user in the search token.'
deprecated: true
clientId:
type: string
description: 'A GUID which represents the current client.
If your implementation uses the Atomic or Headless libraries, or newer versions of the JavaScript Search Framework,
then the [client ID](https://docs.coveo.com/en/masb0234/) is generated automatically in client-side code. This
GUID is held in a browser''s local storage as well as a top level domain first-party cookie (`coveo_visitorId`)
that expires after 1 year. **Note:** The cookie takes precedence over the value in the browser''s local storage.
If you have a custom Coveo implementation, you will have to generate a [UUID v4]()-formatted
GUID. You will need to send this ID as `analytics.clientId` in every event that is sent to Coveo UA and the Search
API.
Coveo Machine Learning models may use this information to provide contextually relevant output.
**Note** The `clientId` replaces the deprecated `visitorId`. For compatibility, the cookie and local storage values
are still named `coveo_visitorId`.'
documentLocation:
type: string
description: 'The URL of the current page or component.
If not present, the referrer is obtained from the [Referer](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer)
header.
**Note**: This information can be obtained from `coveo.analytics.js`.'
documentReferrer:
type: string
description: 'Typically the URL of the page that linked to the search interface from which the request originates
(e.g., in JavaScript, this would correspond to the `document.referrer` value).
Coveo Machine Learning models may use this information to provide contextually relevant output.
**Note**: This information can be obtained from `coveo.analytics.js`.'
pageId:
description: 'A GUID representing the page ID.
**Note**: This information can be obtained from `coveo.analytics.js`.'
anyOf:
- type: string
nullable: true
- type: integer
userIp:
type: string
description: 'The user IP. If not present, the IP is obtained from the [X-Forwarded-For](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-For)
and [Forwarded](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Forwarded) headers.
**Note**: This information is required when endpoints are behind a proxy.
**Example**: `127.0. 0.1`'
clientRequestId:
type: string
description: 'A GUID generated by the client representing the current request.
This information is used to identify operations across different apis related to the same request.'
clientTimestamp:
type: string
description: Client ISO 8601 timestamp with milliseconds.
userAgent:
type: string
description: 'The user agent of the request. If not present, the user agent is obtained from the [User-Agent](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/User-Agent)
header.
**Note**: This information is required when endpoints are behind a proxy.'
actionCause:
type: string
description: 'The type of operation that triggered this event.
See [Standard actions and Usage Analytics reference](docs.coveo.com/en/1389)).'
example: facetSelect
originContext:
type: string
example: CommunitySearch
description: The origin of the event. Used to specify the deployment from which the user performs the action. Suggested
values are Search, InternalSearch, CommunitySearch, or the originLevel1 value
customData:
type: object
description: 'The user defined dimensions and their values. Keys can only contain alphanumeric or underscore characters.
Whitespaces in keys are converted to underscores. Uppercase characters in keys are converted to lowercase characters.
The value could be any valid JSON, but it is handled as string over Coveo usage analytics. It is highly recommended
that you
create your custom dimension before adding customData'
RestCommonQueryParameters:
type: object
properties:
pipeline:
$ref: '#/components/schemas/Pipeline'
maximumAge:
$ref: '#/components/schemas/MaximumAge'
searchHub:
$ref: '#/components/schemas/SearchHub'
tab:
$ref: '#/components/schemas/Tab'
referrer:
$ref: '#/components/schemas/Referrer'
context:
$ref: '#/components/schemas/Context'
actionsHistory:
$ref: '#/components/schemas/ActionsHistory'
recommendation:
$ref: '#/components/schemas/Recommendation'
locale:
$ref: '#/components/schemas/Locale'
timezone:
$ref: '#/components/schemas/Timezone'
format:
$ref: '#/components/schemas/Format'
debug:
$ref: '#/components/schemas/Debug'
indexToken:
$ref: '#/components/schemas/IndexToken'
visitorId:
$ref: '#/components/schemas/VisitorId'
language:
$ref: '#/components/schemas/Language'
mlParameters:
$ref: '#/components/schemas/MlParameters'
pipelineRuleParameters:
$ref: '#/components/schemas/PipelineRuleParameters'
indexType:
$ref: '#/components/schemas/IndexType'
index:
$ref: '#/components/schemas/Index'
logicalIndex:
$ref: '#/components/schemas/LogicalIndex'
maximumTimeoutMs:
$ref: '#/components/schemas/MaximumTimeoutMs'
analytics:
$ref: '#/components/schemas/AnalyticsRequestParameters'
commerce:
$ref: '#/components/schemas/RestCommerceParameters'
RestQueryParameters:
allOf:
- $ref: '#/components/schemas/RestQueryParametersBase'
- $ref: '#/components/schemas/RestCommonQueryParameters'
RestException:
required:
- code
type: object
properties:
code:
type: string
context:
type: string
RestTriggerResponse:
required:
- content
- type
type: object
properties:
type:
type: string
description: The type of Coveo Cloud query pipeline **Trigger** statement (see [Manage trigger rules](https://docs.coveo.com/en/3413/)).
example: notify
enum:
- notify
- execute
- query
- redirect
content: {}
RestWordCorrection:
required:
- correctedWord
- length
- offset
- originalWord
type: object
properties:
offset:
type: integer
description: The offset (in number of characters) of the corrected word, from the beginning of the resulting query
expression correction suggestion.
format: int32
example: 15
length:
type: integer
description: The length (in number of characters) of the corrected word.
format: int32
example: 8
originalWord:
type: string
description: The original, un-corrected word.
example: plattfomr
correctedWord:
type: string
description: The suggested word correction.
example: platform
RestQueryCorrection:
required:
- correctedQuery
- wordCorrections
type: object
properties:
correctedQuery:
type: string
description: The resulting query expression correction suggestion.
example: Coveo Cloud V2 platform
wordCorrections:
type: array
description: The word correction suggestions.
items:
$ref: '#/components/schemas/RestWordCorrection'
RestGroupByValue:
required:
- computedFieldResults
- lookupValue
- numberOfResults
- score
- value
- valueType
type: object
properties:
value:
type: string
description: The Group By value name.
example: Bob Jones
numberOfResults:
type: integer
description: The number of query result items having this field value.
format: int32
example: 42
score:
type: integer
description: The Group By value score, computed from the `numberOfResults` value as well as from the position of
the items having this value in the ranked query result set.
format: int32
example: 0
valueType:
type: string
description: The type of Group By value.
example: Standard
computedFieldResults:
type: array
description: The results of the computed fields (see the `computedFields` Group By parameter).
example:
- 243.72
items:
type: number
format: float
lookupValue:
type: string
description: '> This property is deprecated; it should normally not be populated if the query was sent against a
Coveo Cloud V2 index.
The lookup field value name.'
deprecated: true
Value:
type: string
description: '> This property is deprecated; it should not be populated by Search API V2 searches.'
deprecated: true
NumberOfResults:
type: integer
description: '> This property is deprecated; it should not be populated by Search API V2 searches.'
format: int32
deprecated: true
Score:
type: integer
description: '> This property is deprecated; it should not be populated by Search API V2 searches.'
format: int32
deprecated: true
ComputedFieldResults:
type: array
description: '> This property is deprecated; it should not be populated by Search API V2 searches.'
deprecated: true
items:
type: number
format: double
LookupValue:
type: string
description: '> This property is deprecated; it should not be populated by Search API V2 searches.'
deprecated: true
RestGroupByResult:
required:
- field
- globalComputedFieldResults
- values
type: object
properties:
field:
type: string
description: The field on which the Group By operation was executed.
example: '@author'
values:
type: array
description: The resulting Group By values.
example:
- value: Bob Jones
numberOfResults: 42
score: 0
valueType: Standard
computedFieldResults:
- 243.72
lookupValue: ''
- value: Erika Miller
numberOfResults: 37
score: 0
valueType: Standard
computedFieldResults:
- 201.82
lookupValue: ''
- value: David Allen
numberOfResults: 24
score: 0
valueType: Standard
computedFieldResults:
- 177.56
lookupValue: ''
- value: Carrie Green
numberOfResults: 11
score: 0
valueType: Standard
computedFieldResults:
- 143.92
lookupValue: ''
- value: Anonymous
numberOfResults: 77
score: 0
valueType: Standard
computedFieldResults:
- 122.85
lookupValue: ''
items:
$ref: '#/components/schemas/RestGroupByValue'
globalComputedFieldResults:
type: array
description: The global computed fields that were processed by the index.
items:
type: number
format: double
Field:
type: string
description: '> This property is deprecated and Coveo Cloud V1 only; The lowercase `field` should be used instead.'
deprecated: true
GlobalComputedFieldResults:
type: array
description: '> This property is deprecated and V1 only; The lowercase `globalComputedFieldResults` should be used
instead.'
deprecated: true
items:
type: number
format: double
RestCategoryFacetValue:
type: array
items:
type: object
properties:
value:
type: string
numberOfResults:
type: integer
format: int64
minimum: 0
RestCategoryFacetResponse:
type: object
properties:
field:
type: string
values:
$ref: '#/components/schemas/RestCategoryFacetValue'
parentValues:
$ref: '#/components/schemas/RestCategoryFacetValue'
RestFacetResultValue:
required:
- numberOfResults
- state
type: object
additionalProperties: false
properties:
value:
type: string
description: 'The facet value name.
**Note:** In the case of a hierarchical facet value, this represents a single path segment.'
example: Alice Smith
state:
type: string
description: 'The current facet value state in the search interface.
**Default:** `idle`'
enum:
- idle
- selected
- excluded
numberOfResults:
type: integer
description: 'The number of query results that can be expected if the facet value is selected in the search interface.
**Note:** This property only gets populated when the facet currently has no selected or excluded values.'
format: int64
start:
description: The start of the range.
anyOf:
- type: string
example: '2001-07-20T23:01:05'
- type: integer
format: int64
- type: number
end:
description: The end of the range.
anyOf:
- type: string
example: '2001-07-20T23:01:05'
- type: integer
format: int64
- type: number
endInclusive:
type: boolean
description: 'Whether to include the `end` value in the range.
**Default:** `false`'
example: true
default: false
isSuggested:
type: boolean
isAutoSelected:
type: boolean
description: Whether the facet value was automatically selected by Coveo ML.
RestHierarchicalFacetResponseValue:
required:
- numberOfResults
- path
- state
- value
type: object
properties:
value:
type: string
description: 'The facet value name.
**Note:** In the case of a hierarchical facet value, this represents a single path segment.'
example: Alice Smith
state:
type: string
description: 'The current facet value state in the search interface.
**Default:** `idle`'
enum:
- idle
- selected
- excluded
numberOfResults:
type: integer
description: 'The number of query results that can be expected if the facet value is selected in the search interface.
**Note:** This property only gets populated when the facet currently has no selected or excluded values.'
format: int64
children:
type: array
description: 'The children of this hierarchical facet value.
Each child is a full-fledged hierarchical facet value that may in turn have its own children and so forth, up
to a maximum depth of 50 levels.'
items:
$ref: '#/components/schemas/RestHierarchicalFacetResponseValue'
isAutoSelected:
type: boolean
description: Whether the facet value was automatically selected by Coveo ML.
moreValuesAvailable:
type: boolean
description: Whether additional values are available for the facet.
path:
type: array
items:
type: string
isLeafValue:
type: boolean
description: Whether the hierarchical value is a childless node.
RestFacetResultDomain:
description: 'The domain of the facet. It represents the lowest and highest values possible for this facet.
**Note:** This property is only populated when the facet is a range facet and `generateAutomaticRanges: true` was
requested.
'
type: object
properties:
start:
description: The start of the domain. It represents the lowest value possible for this facet.
anyOf:
- type: string
example: '2001-07-20T23:01:05'
- type: integer
format: int64
- type: number
end:
description: The end of the domain. It represents the highest value possible for this facet.
anyOf:
- type: string
example: '2001-07-20T23:01:05'
- type: integer
format: int64
- type: number
RestFacetResult:
required:
- field
- indexScore
- moreValuesAvailable
- values
type: object
properties:
field:
type: string
description: 'The name of the field on which the facet is based.
**Example: `author`'
example: author
moreValuesAvailable:
type: boolean
description: Whether additional values are available for the facet.
values:
type: array
description: The returned facet values.
items:
oneOf:
- $ref: '#/components/schemas/RestFacetResultValue'
- $ref: '#/components/schemas/RestHierarchicalFacetResponseValue'
mlScore:
type: number
description: The ranking score computed by Coveo ML DNE for this facet.
format: double
indexScore:
type: number
description: The ranking score computed by the index for this facet.
format: double
isFromAutoSelect:
type: boolean
description: Whether the facet was recommended by Coveo ML.
label:
type: string
description: A human-readable title that describes the facet.
domain:
$ref: '#/components/schemas/RestFacetResultDomain'
RestSuggestedFacetValue:
required:
- value
type: object
properties:
value:
type: string
description: 'A DNE facet value suggestion.
**Example**: `Alice Smith`'
path:
type: array
description: "The path to the suggested facet value (only applies to hierarchical facet value suggestions).\n\n\
**Example:** If the suggested hierarchical facet value is `Parrot`, the returned path could be `[\"Animals\",\
\ \"Birds\", \"Parrot\"]`.\n "
items:
type: string
RestSuggestedFacet:
required:
- field
- values
type: object
properties:
field:
type: string
description: 'The name of the field on which the DNE facet suggestion is based.
**Example**: `author`'
example: author
values:
type: array
description: 'The name of the field on which the DNE facet suggestion is based.
**Example**: `author`'
items:
$ref: '#/components/schemas/RestSuggestedFacetValue'
RankingInfoWeights:
type: object
description: 'Map of ranking factors and respective scores.
'
additionalProperties:
type: number
format: float
example:
title: 1000
uri: 500
source: 240
RankingInfoTermsWeight:
type: object
required:
- term
- weightInfo
properties:
term:
type: object
additionalProperties:
$ref: '#/components/schemas/RankingInfoWeights'
description: 'The weight factors applied to a specific term.
'
weightInfo:
$ref: '#/components/schemas/RankingInfoWeights'
description: 'A summary of the weight factors applied for these terms.
'
RankingInfoQueryRankingExpressionRule:
type: object
required:
- type
properties:
id:
type: string
description: The id of the rule that was applied.
type:
type: string
description: The type of rule that was applied
example: ranking_expression
RankingInfoQueryRankingExpression:
type: object
required:
- expression
- origin
- score
properties:
expression:
type: string
description: The ranking expression.
origin:
type: string
description: The origin of the ranking expression.
example: query_pipeline
rule:
$ref: '#/components/schemas/RankingInfoQueryRankingExpressionRule'
score:
type: number
format: float
description: The score resulting from this ranking expression.
RankingInfoWeightComposition:
type: object
properties:
termsWeights:
type: array
items:
$ref: '#/components/schemas/RankingInfoTermsWeight'
rankingFunctions:
type: array
items:
$ref: '#/components/schemas/RankingInfoQueryRankingExpression'
queryRankingExpressions:
type: array
items:
$ref: '#/components/schemas/RankingInfoQueryRankingExpression'
RankingInfo:
type: object
required:
- documentWeights
- totalWeight
properties:
documentWeights:
$ref: '#/components/schemas/RankingInfoWeights'
description: 'Summary of all the weight factors applied to the item. The sum of each factor gives the total weight.
'
totalWeight:
type: number
format: float
description: 'Sum of the document''s weights.
'
weightComposition:
$ref: '#/components/schemas/RankingInfoWeightComposition'
RestHighlightResponse:
required:
- length
- offset
type: object
properties:
length:
type: integer
description: The length (in number of characters) of the word to highlight.
format: int64
example: 5
offset:
type: integer
description: The 0-based index position of the first character of the word to highlight in the string.
format: int64
example: 15
RestQueryResult:
required:
- absentTerms
- childResults
- clickUri
- excerpt
- excerptHighlights
- firstSentences
- firstSentencesHighlights
- flags
- hasHtmlVersion
- hasMobileHtmlVersion
- isRecommendation
- isTopResult
- isUserActionView
- parentResult
- percentScore
- printableUri
- printableUriHighlights
- rankingInfo
- rating
- raw
- score
- summary
- summaryHighlights
- title
- titleHighlights
- totalNumberOfChildResults
- uniqueId
- primaryid
- uri
type: object
properties:
title:
type: string
description: "The item title. \n \n**Note:** When logging a **Click** usage analytics event for an opened query\
\ result item, the `documentTitle` field of that event should be set to the `title` value of the opened query\
\ result item."
example: Differences between Coveo Cloud V2 and V1
uri:
type: string
description: 'The item URI.
**Notes:**
- Avoid using the `uri` value to create hyperlinks to the item. Use the `ClickUri` value instead.
- When logging a **Click** usage analytics event for an opened query result item, the `documentUrl` field of that
event should be set to the `uri` value of the opened query result item.'
example: https://example.com/Root:0/topic:898/post:2
printableUri:
type: string
description: 'The human readable item URI.
**Note:** Avoid using the `printableUri` value to create hyperlinks to the item. Use the `ClickUri` value instead.'
example: https://example.com/topic:898/post:2
clickUri:
type: string
description: 'The hyperlinkable item URI.
**Notes:**
- Use the `clickUri` value when you want to create hyperlinks to the item, rather than the `uri` or `printableUri`
value.
- The `clickUri` value is not necessarily unique for each item.'
example: https://example.com/t/1/898/2
uniqueId:
type: string
description: The unique item identifier. You should consider the `uniqueId` value as an opaque string.
example: 84.72597$https://example.com/Root:0/Topic:898/Post:2
primaryid:
type: string
nullable: true
description: The primary identifier of the item. See [primaryid field](https://docs.coveo.com/en/pa9c0434) for more
details.
example: KVUVKMCSIZLEYVLVMNLGQ4JQK4XDMNBQGY4C4ZDFMZQXK3DU
excerpt:
type: string
description: The contextual excerpt generated for the item (see the `excerptLength` query parameter).
example: '... the new Coveo Cloud V2 and Coveo Cloud V1 ... the main differences between the two Coveo Cloud versions
...'
firstSentences:
type: string
nullable: true
description: The first sentences retrieved from the item (see the `retrieveFirstSentences` query parameter).
example: Hello, I know Coveo currently hosts organizations in two independent cloud platforms, the new Coveo Cloud
V2 and Coveo Cloud V1, the original Coveo offering in the cloud. I would like to learn the main differences between
the two Coveo Cloud versions ...
summary:
type: string
nullable: true
description: The item summary (see the `summaryLength` query parameter).
flags:
type: string
description: The flags that are set on the item by the index. Distinct values are separated by semicolons.
example: HasHtmlVersion;HasMobileHtmlVersion
hasHtmlVersion:
type: boolean
description: Whether the index contains an HTML version of this item.
example: true
hasMobileHtmlVersion:
type: boolean
description: Whether the index contains a mobile HTML version of this item.
example: true
score:
type: integer
description: The total ranking score computed for the item (see the `sortCriteria` and `rankingFunctions` query
parameters).
format: int32
example: 1626
percentScore:
type: number
description: The item ranking score expressed as a percentage (see the `sortCriteria` and `rankingFunctions` query
parameters).
format: double
example: 90.73539
rankingInfo:
type: string
nullable: true
description: The raw debug information generated by the index to detail how the item was ranked. This property is
`null` unless the `debug` query parameter is set to `true`.
example: 'Document weights:
Title: 0; Quality: 180; Date: 596; Adjacency: 0; Source: 500; Custom: 350; Collaborative rating: 0; QRE: 0; Ranking
functions: 0;
Total weight: 1626'
rating:
type: number
description: '**Note:** The value of this property is always `3`.'
format: double
example: 3
isTopResult:
type: boolean
description: Whether the item score was boosted by a featured result rule in the query pipeline.
example: false
isRecommendation:
type: boolean
description: Whether the item score was boosted as a Coveo ML recommendation.
example: false
isUserActionView:
type: boolean
description: Whether the item score was boosted as a Coveo ML recommendation.
example: false
rankingModifier:
type: string
description: "If applicable, represents the type of ranking modification that was applied to this result. \n \n\
**Note:** When logging a **Click** usage analytics event for an opened query result item, the `rankingModifier`\
\ field of that event should be set to the `rankingModifier` value of the opened query result item, if available."
example: TopResult
titleHighlights:
type: array
description: The length and offset of each word to highlight in the item `title` string.
items:
$ref: '#/components/schemas/RestHighlightResponse'
firstSentencesHighlights:
type: array
description: The length and offset of each word to highlight in the item `firstSentences` string.
items:
$ref: '#/components/schemas/RestHighlightResponse'
excerptHighlights:
type: array
description: The length and offset of each word to highlight in the item `excerpt` string.
items:
$ref: '#/components/schemas/RestHighlightResponse'
printableUriHighlights:
type: array
description: The length and offset of each word to highlight in the item `printableUri` string.
items:
$ref: '#/components/schemas/RestHighlightResponse'
summaryHighlights:
type: array
description: The length and offset of each word to highlight in the item `summary` string.
items:
$ref: '#/components/schemas/RestHighlightResponse'
parentResult:
$ref: '#/components/schemas/RestQueryParentResult'
childResults:
type: array
description: An array of references to the children of this item, if result folding was applied (see the `filterField`
query parameter). The query results contained in this field will have both their parent and child results set
to `null`.
items:
anyOf:
- $ref: '#/components/schemas/RestQueryResult'
totalNumberOfChildResults:
type: integer
description: The total number of children available in the index for this item, if result folding was applied (see
the `filterField` query parameter).
format: int64
absentTerms:
type: array
description: 'The basic query expression terms which this query result item does not match.
**Note:**
> This property is populated by terms from the query pipeline-processed `q` value (not from the original `q` value).'
example:
- platform
- native
- solution
items:
type: string
raw:
type: object
additionalProperties: true
description: The values of the fields which were retrieved for this item (see the `fieldsToInclude` and `fieldsToExclude`
query parameters).
example:
clickableuri: https://example.com/t/1/898/2
author: Anonymous
date: 1502796809427
filetype: forumpost
language:
- English
conversationid: 898
messageid: 2
childid: 2
adjustednumberoflikes: 46
Title:
type: string
description: '> This property is deprecated; it should not be populated by Search API V2 searches.'
deprecated: true
Uri:
type: string
description: '> This property is deprecated; it should not be populated by Search API V2 searches.'
deprecated: true
PrintableUri:
type: string
description: '> This property is deprecated; it should not be populated by Search API V2 searches.'
deprecated: true
ClickUri:
type: string
description: '> This property is deprecated; it should not be populated by Search API V2 searches.'
deprecated: true
UniqueId:
type: string
description: '> This property is deprecated; it should not be populated by Search API V2 searches.'
deprecated: true
Excerpt:
type: string
description: '> This property is deprecated; it should not be populated by Search API V2 searches.'
deprecated: true
FirstSentences:
type: string
description: '> This property is deprecated; it should not be populated by Search API V2 searches.'
deprecated: true
RestQueryParentResult:
anyOf:
- $ref: '#/components/schemas/RestQueryResult'
- type: object
nullable: true
RestContentId:
type: object
required:
- contentIdKey
- contentIdValue
properties:
contentIdKey:
type: string
contentIdValue:
type: string
RestQuestionAnswer:
type: object
required:
- answerFound
- question
- answerSnippet
- documentId
- relatedQuestions
- score
properties:
answerFound:
type: boolean
question:
type: string
answerSnippet:
type: string
documentId:
$ref: '#/components/schemas/RestContentId'
score:
type: number
relatedQuestions:
type: array
items:
type: object
required:
- question
- answerSnippet
- documentId
- score
properties:
question:
type: string
answerSnippet:
type: string
documentId:
$ref: '#/components/schemas/RestContentId'
score:
type: number
raw:
type: object
additionalProperties: true
RestQueryResponse:
required:
- apiVersion
- categoryFacets
- duration
- facets
- groupByResults
- index
- indexDuration
- phrasesToHighlight
- pipeline
- refinedKeywords
- requestDuration
- results
- searchUid
- suggestedFacets
- termsToHighlight
- totalCount
- totalCountFiltered
- triggers
type: object
properties:
totalCount:
type: integer
description: "The total number of items matching the query for the current user (security trimming applied). \n\
\ \n**Note:** When logging a **Search** usage analytics event for a query, the `numberOfResults` field of that\
\ event should be set to the `totalCount` value of the query (for reporting purposes)."
format: int32
example: 250
totalCountFiltered:
type: integer
description: The total number of items matching the query for the current user (security trimming applied) after
duplicate filtering has been applied (see the `duplicateFiltering` query parameter).
format: int32
example: 245
duration:
type: integer
description: The `requestDuration` added to the computing time (in milliseconds) that was required by the Search
API.
format: int32
example: 1235
indexDuration:
type: integer
description: The time (in milliseconds) that was required by the index to find the query items.
format: int32
example: 1175
requestDuration:
type: integer
description: The `indexDuration` added to the time (in milliseconds) that was required to establish a connection
between the Search API server and the index server.
format: int32
example: 1181
searchUid:
type: string
description: "The query [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier). Each query sent to\
\ the Search API has its own randomly generated `searchUid`. \n \n**Note:** When logging a **Search** or **Custom**\
\ usage analytics event for a query, or a **Click** usage analytics event for an opened query result item, the\
\ `searchQueryUid` field of that event should be set to the `searchUid` value of the query response."
example: a0e4773c-39c3-423c-90cd-c03a640ecde5
pipeline:
$ref: '#/components/schemas/Pipeline'
apiVersion:
type: integer
description: The version of the Search API that sent the query.
format: int32
example: 2
splitTestRun:
type: string
description: The name of the active A/B test for the query pipeline. This field appears only when an A/B test is
active. Use it to identify the test associated with the query.
example: CustomerQueryPipeline-mirror-1725560351
exception:
$ref: '#/components/schemas/RestException'
isFallbackToAdmin:
type: boolean
description: Whether the admin session ID was allowed and used by the Coveo for Salesforce search engine. The value
will be set to `true` when it is the case, and might be absent or set to `false` otherwise.
warnings:
type: array
description: The errors that did not make the query fail, but should be addressed. They might be security issues,
deprecated behaviors, or any other kind of concern.
items:
type: string
errors:
type: array
description: The errors that critically changed the query behaviour. These should be addressed right away to prevent
future errors.
items:
type: string
index:
type: string
description: The identifier of the index mirror against which the query was executed (see the `indexToken` query
parameter).
example: mycoveocloudv2organizationid-cqjd206sta1xb9qyxfhhnsu294-Indexer-2-9rbfxhp1n07cth80ckzeh3zotc
indexToken:
$ref: '#/components/schemas/IndexToken'
triggers:
type: array
description: 'The actions to perform by the client based on the Trigger statements defined in query pipelines (see
the `pipeline` query parameter).
**Note:**
> A Trigger statement must have a condition. Otherwise, the Search API ignores it and does not include it in the
`triggers` array of the query response (see [Manage trigger rules](https://docs.coveo.com/en/3413/)).'
items:
$ref: '#/components/schemas/RestTriggerResponse'
termsToHighlight:
type: object
additionalProperties:
type: array
items:
type: string
description: The terms to highlight in each query result item. Includes all basic query expression keywords, as
well as any word stemmed from a basic query expression keyword (see the `q` query parameter), unless this keyword
was preceded by the no stemming Coveo Cloud query syntax operator (`+`).
example:
coveo: []
cloud:
- clouds
v2: []
platform:
- platforms
phrasesToHighlight:
type: object
additionalProperties:
type: object
additionalProperties:
type: array
items:
type: string
description: The phrases to highlight in each query result item. This property is populated when the basic query
expression (see the `q` query parameter) contains one or several exact phrase match requests (terms between double
quote characters).
example:
cloud v2:
cloud: []
v2: []
queryCorrection:
type: object
description: 'Property returned when the `queryCorrection` feature is enabled.
It will either return:
- The `originalQuery` and `correctedQuery` if the query was automatically corrected.
- A list of `corrections` that could be be manually applied afterward.
'
properties:
originalQuery:
type: string
description: 'If the query was automatically corrected, this property indicates the original basic query expression
(`q`) that triggered the automatic query correction.
'
correctedQuery:
type: string
description: 'If the query was automatically corrected, this property indicates the corrected basic query expression
(`q`) that was executed instead of the original one.
'
corrections:
type: array
description: 'If the query wasn''t automatically corrected, this property contains the basic query expression
(`q`) keyword corrections suggested by the _Did You Mean_ index feature.
'
items:
$ref: '#/components/schemas/RestQueryCorrection'
correctedQueryTrigger:
type: string
description: 'If the query was automatically corrected, this property indicates which strategy triggered the
correction.
Possible values: `whenNoResults`, `alwaysOnQS`
'
queryCorrections:
type: array
description: The query corrections suggested by the index, if the `enableDidYouMean` query parameter was set to
`true`.
example: []
items:
$ref: '#/components/schemas/RestQueryCorrection'
refinedKeywords:
type: array
description: The refined keywords used by the Coveo ML automatic relevance tuning model.
example:
- v2
- platform
- cloud
- coveo
items:
type: string
groupByResults:
type: array
description: The Group By results returned by the query. These results are included in the order they were requested
in the `groupBy` query parameter.
items:
$ref: '#/components/schemas/RestGroupByResult'
categoryFacets:
type: array
description: Hierarchical data results corresponding the to hierarchical data in the query.
items:
$ref: '#/components/schemas/RestCategoryFacetResponse'
facets:
type: array
description: The facet results returned by the query. These results are included in the order they were requested
in the `facets` query parameter.
items:
$ref: '#/components/schemas/RestFacetResult'
generateAutomaticFacets:
type: object
description: Automatically generated facets based on the `generateAutomaticFacets` request parameter.
properties:
facets:
type: array
items:
$ref: '#/components/schemas/RestFacetResult'
suggestedFacets:
type: array
description: A DNE facet suggestion.
items:
$ref: '#/components/schemas/RestSuggestedFacet'
results:
type: array
description: The items returned for the query.
items:
$ref: '#/components/schemas/RestQueryResult'
questionAnswer:
$ref: '#/components/schemas/RestQuestionAnswer'
extendedResults:
type: object
description: "Additional response attributes coming from the execution of query pipeline integrations.\n\nCurrently\
\ supported properties:\n - `generativeQuestionAnsweringId`: A stream ID to access the generated answer."
additionalProperties:
type: string
example:
generativeQuestionAnsweringId: queryStream01_coveo_c784a8f6-aa62-4b24-9ca0-d6b483feaa31
RestFacetSearchParametersSpecific:
required:
- field
type: object
properties:
field:
type: string
description: The name of the field against which to execute the facet search request.
example: color
type:
type: string
description: 'The facet type to search against.
**Allowed values:**
- `specific`
- `hierarchical`
**Default:** `specific`'
enum:
- specific
- hierarchical
numberOfValues:
type: integer
description: 'The maximum number of values to fetch.
**Default:** `10`'
format: int32
default: 10
query:
type: string
description: 'The string to match.
**Note:** Typically, this should be set to the text that the end user typed in the facet search box, to which
wildcard characters (`*`) may be added.'
example: '*oran*'
captions:
type: object
additionalProperties:
type: string
description: 'A dictionary that maps index field values to facet value display names.
**Note:**
When specifying display captions for hierarchical facet values, you can use full values (e.g., `all;electronics;laptops`),
and/or for "leaf" values (e.g., `laptops`) as keys. If a hierchical facet value can be mapped to two different
display captions, the most specific mapping (i.e., the one whose key is the full value) applies.
**Examples:**
- Specific (i.e., scalar) facet values: `{"#FF8000": "Orange", "#8000FF": "Purple"}`
- Hierarchical facet values:** `{"all;electronics;laptops": "Laptops", "smartphones": "Smart Phones"} '
example:
acme_productA: ACME Product A
acme_productB: ACME Product B
filterFacetCount:
type: boolean
description: 'Whether to exclude folded result parents when estimating the result count for each facet value.
**Note:** The target folding field must be a facet field with the **Use cache for nested queries** options enabled
(see [Manage fields](https://docs.coveo.com/en/1833/)).
**Default:** `false`'
example:
- - Electronics
- Entertainment
- Gaming Consoles
- - Appliances
- Kitchen
items:
type: array
items:
type: string
sortCriteria:
type: string
enum:
- score
- alphanumeric
- alphanumericNatural
- occurrences
default: alphanumeric
description: 'The sort criterion to apply to the returned facet values.
**Allowed values**:
- `alphanumeric`: Sort values in ascending alphanumeric order.
- `alphanumericNatural`: Sort values in ascending alphanumeric order using [natural sorting](https://en.wikipedia.org/wiki/Natural_sort_order).
- `occurrences`: Sort by number of occurrences, so that field values with the highest number of occurrences appear
first.
- `score`: Sort values in descending score order. Facet value scores are based on the number of occurrences and
their position in the ranked query result set.
'
ignoreValues:
type: array
items:
type: string
description: A list of index field values to filter out from the facet search results.
example:
- '#FF00FF'
- '#00FFFF'
searchContext:
$ref: '#/components/schemas/RestQueryParameters'
RestFacetSearchParametersHierarchical:
required:
- field
type: object
properties:
field:
type: string
description: The name of the field against which to execute the facet search request.
example: color
type:
type: string
description: 'The kind of facet against which the search request is being made.
**Allowed values:**
- `specific`
- `hierarchical`
**Default:** `specific`'
enum:
- specific
- hierarchical
numberOfValues:
type: integer
description: "The maximum number of values to fetch.\n\n**Note:**\n - `numberOfValues` is not taken into account\
\ when no elements in the `currentValues` array have `retrieveChildren` set to `true`. This is considered an exact\
\ facet retrieval and only returns values in `currentValues`.\n**Default: `10`"
format: int32
default: 10
query:
type: string
description: 'The string to match.
**Note:** Typically, this should be set to the text entered by the end-user in the facet search box, to which
one or more wildcard characters (`*`) may be added.'
example: '*oran*'
captions:
type: object
additionalProperties:
type: string
description: "A dictionary that maps index field values to facet value display names.\n\n**Note:**\n\nWhen specifying\
\ display captions for hierarchical facet values, you can use full values (e.g., `all;electronics;laptops`), and/or\
\ for \\\"leaf\\\" values (e.g., `laptops`) as keys.\nIf both are provided, the full value takes priority.\n\n\
**Examples:**\n\n - Specific (i.e., scalar) facet values: `{\\\"#FF8000\\\": \\\"Orange\\\", \\\"#8000FF\\\"\
: \\\"Purple\\\"}`\n - Hierarchical facet values:** `{\\\"all;electronics;laptops\\\": \\\"Laptops\\\", \\\"\
smartphones\\\": \\\"Smart Phones\\\"} \""
example:
acme_productA: ACME Product A
acme_productB: ACME Product B
filterFacetCount:
type: boolean
description: 'Whether to exclude folded result parents when estimating the result count for each facet value.
**Note:** The target folding field must be a facet field with the **Use cache for nested queries** options enabled
(see [Manage fields](https://docs.coveo.com/en/1833/)).
**Default:** `false`'
example:
- - Electronics
- Entertainment
- Gaming Consoles
- - Appliances
- Kitchen
items:
type: array
items:
type: string
sortCriteria:
type: string
enum:
- score
- alphanumeric
- alphanumericNatural
- occurrences
default: alphanumeric
description: 'The sort criterion to apply to the returned facet values.
**Allowed values**:
- `alphanumeric`: Sort values in ascending alphanumeric order.
- `alphanumericNatural`: Sort values in ascending alphanumeric order using [natural sorting](https://en.wikipedia.org/wiki/Natural_sort_order).
- `occurrences`: Sort by number of occurrences, so that field values with the highest number of occurrences appear
first.
- `score`: Sort values in descending score order. Facet value scores are based on the number of occurrences and
their position in the ranked query result set.
'
ignorePaths:
type: array
items:
type: array
items:
type: string
description: A list of paths to filter out from the hierarchical facet search results.
delimitingCharacter:
type: string
description: 'The character to use to split field values into a hierarchical sequence.
**Example**:
For a multi-value field containing the following values:
`c; c>folder2; c>folder2>folder3;`
The delimiting character is `>`.
For a hierarchical field containing the following values:
`c;folder2;folder3;`
The delimiting character is `;`.
**Default:** `;`'
basePath:
type: array
description: 'The shared base path for all values in the facet to search against.
If a `basePath` is specified, the search request will be executed against hierarchical values that begin with
that base path only (i.e., other hierarchical values will be filtered out).'
example:
- Doors
- Metal
items:
type: string
searchContext:
$ref: '#/components/schemas/RestQueryParameters'
RestFacetSearchParameters:
oneOf:
- $ref: '#/components/schemas/RestFacetSearchParametersSpecific'
- $ref: '#/components/schemas/RestFacetSearchParametersHierarchical'
discriminator:
propertyName: type
mapping:
specific: '#/components/schemas/RestFacetSearchParametersSpecific'
hierarchical: '#/components/schemas/RestFacetSearchParametersHierarchical'
RestFacetSearchResultValue:
required:
- count
- displayValue
- rawValue
type: object
properties:
displayValue:
type: string
description: The custom facet value display name, as specified in the `captions` argument of the facet search request.
example: Orange
rawValue:
type: string
description: The original facet value, as retrieved from the field in the index.
example: '#FF8000'
count:
type: integer
description: An estimate number of result items matching both the current query and the filter expression that would
get generated if the facet value were selected.
format: int64
RestFacetSearchResponse:
required:
- moreValuesAvailable
- values
type: object
properties:
values:
type: array
description: The returned facet values.
items:
$ref: '#/components/schemas/RestFacetSearchResultValue'
moreValuesAvailable:
type: boolean
description: Whether additional facet values matching the request are available.
PreprocessingOutput:
required:
- triggers
type: object
properties:
triggers:
type: array
description: The query response output generated by _trigger_ rules in the query pipeline (i.e., by `execute`, `notify`,
`query`, and `redirect` rules).
items:
type: object
additionalProperties: {}
ParsedQueryResponse:
type: object
properties:
basicExpression:
type: string
description: 'The basic query expression, typically the keywords entered by the end user in a query box.
**Note:** When logging a **Search** usage analytics event for a query, the `queryText` field of that event should
be set to the `q` value of the corresponding query.'
example: Coveo "Cloud V2" platform
advancedExpression:
type: string
description: 'The advanced query expression, typically generated by code (e.g., when toggling facet values).
**Note:** When logging a **Search** usage analytics event for a query, the `advancedQuery` field of that event
should be set to the `aq` value of the corresponding query (for reporting purposes).'
example: '@year==2017'
largeExpression:
type: string
description: The large query expression, typically populated with a case description, long textual query, or any
other form of text that can help refine a query. The Coveo ML Intelligent Term Detection (ITD) feature can extract
relevant keywords from the large query expression and inject those keywords in the basic query expression (see
the `q` parameter).
example: I am looking for an enterprise-class native cloud SaaS/PaaS solution that provides a unified and secure
way to search for contextually relevant content across multiple enterprise systems.
constantExpression:
type: string
description: 'The constant query expression, typically populated with expressions that must apply to all queries
sent from a specific search interface (e.g., from a specific tab). Once evaluated, the result sets of those expressions
are kept in a special cache.
**Tip:** Avoid including dynamic content in the constant query expression. Otherwise you risk filling up the cache
with useless data, which can have a negative impact on performance.
**Notes:**
- Other parts of the query expression can also benefit from the index cache (see the `maximumAge` parameter).
However, using the constant query expression allows you to explicitly cache specific result sets.
- Temporal keywords (`now`, `today`, `yesterday`) in the constant query expression are only re-evaluated once
per 3-4 minutes; therefore, you should avoid basing `cq` expressions on temporal keywords if you require split
second accuracy.'
example: '@documenttype==forumpost'
disjunctionExpression:
type: string
description: The disjunction query expression, typically populated by Coveo ML automatic relevance tuning models
to ensure that relevant items are included in the query results. The disjunction query expression is merged with
the other parts of the query expression using an `OR` operator. The resulting query expression is `(((q aq) OR
(dq)) cq)`.
example: '@permanentid=aadd702687c62910d6da8347304ec2cedfd0b06d5b4d2794a555ce5688bd'
mandatoryExpression:
type: string
description: 'The filter query expression to apply when authenticating a query with this search token.
This expression will be merged with the constant part of the query expression (`cq`) using an `AND` operator.
The filter can also be used in query pipeline condition statements (e.g., `when $constantQuery contains \"@source==KnowledgeBase\"`).'
example: '@source==KnowledgeBase'
PlanSearchResponse:
type: object
required:
- pipeline
properties:
preprocessingOutput:
$ref: '#/components/schemas/PreprocessingOutput'
parsedInput:
$ref: '#/components/schemas/ParsedQueryResponse'
RestQuerySuggestParametersBase:
type: object
properties:
q:
type: string
description: 'The *basic query* expression, typically the keywords entered by the end user in a query box.
'
example: Coveo "Cloud V2" platform
autoCompleter:
type: string
description: This parameter is exposed for backward compatibility reasons.
deprecated: true
count:
type: integer
description: 'The desired number of query suggestions.
'
format: int32
enableWordCompletion:
type: boolean
description: 'Whether to attempt to complete the last word of the current basic query expression (see the `q` parameter)
and boost the ranking score of the resulting expression so that it is returned as the first query suggestion.
'
RestQuerySuggestParameters:
allOf:
- $ref: '#/components/schemas/RestQuerySuggestParametersBase'
- $ref: '#/components/schemas/RestCommonQueryParameters'
QuerySuggestResponse:
type: object
properties:
completions:
type: array
items:
properties:
expression:
type: string
score:
type: number
format: double
highlighted:
type: string
executableConfidence:
type: number
format: double
objectId:
type: string
responseId:
type: string
executionReport:
type: array
items: {}
required:
- completions
- responseId
example:
completions:
- expression: brown boot
score: 61.04
highlighted: (brown) [boot]
executableConfidence: 0.9
objectId: 9919344e-c495-4620-b0c1-ec2cb721f96e
responseId: e1a4c9dd-71d2-4e68-9589-11bc3e640da0
RestListFieldValuesParameterBase:
required:
- field
properties:
field:
type: string
description: 'The name of the field from which to retrieve values.
'
example: '@author'
lookupField:
type: string
description: 'This parameter is exposed for backward compatibility reasons.
The name of an additional field from which to retrieve values.'
deprecated: true
ignoreAccents:
type: boolean
description: 'Whether to treat accentuated characters as non-accentuated characters when retrieving field values
(e.g., treat `é`, `è`, `ê`, etc., as `e`).
**Default:** `true`
'
sortCriteria:
type: string
nullable: true
description: 'The sort criteria to use.
Use:
- `occurrences` to sort by number of occurrences, with field values having the highest number of occurrences appearing
first.
- `nosort` to avoid sorting the results of the Group By operation. The field values will appear in an unspecified
order.
**Default:** `occurrences`
'
maximumNumberOfValues:
type: integer
description: 'The maximum number of field values to return.
**Default:** `10`
'
format: int32
minimum: 0
queryOverride:
type: string
description: 'A different basic query expression (q) use.
'
constantQueryOverride:
type: string
description: 'A different constant query expression (cq) to use.
'
disjunctionQueryOverride:
type: string
description: 'A different disjunction query expression (dq) to use.
'
pattern:
type: string
description: 'The pattern that the field values must match.
See also the `patternType` parameter."
'
patternType:
type: string
description: 'The type of pattern that is being used to list field values.
Use:
- `wildcard` to parse the specified `pattern` as a wildcard expression.
- `regularexpression` to parse the specified `pattern` as a regular expression.
- `editdistance` to apply the Edit Distance algorithm to match values that are close to the specified `pattern`.
- `phonetic` to apply a phonetic algorithm to match values that are phonetically similar to the specified `pattern`.
**Default:** `wildcard`
'
fieldAliases:
$ref: '#/components/schemas/RestFieldAliases'
dictionaryFieldContext:
type: object
description: 'A key-value store where each pair corresponds to the name of a dictionary field to query, along with
the key to target within that field.
**Example:** Suppose that in your index, the `@price` dictionary field contains different values for its `storeA`
and `storeB` keys. Including `"dictionaryFieldContext": { "price": "storeA" }` in the query means that any part
of the query expression that targets the `@price` field will in fact only query the `storeA` values of that field.
**Note:** This parameter will be overridden if the request is authenticated by a [search token](https://docs.coveo.com/en/56/)
that enforces a specific [`dictionaryFieldContext`](https://docs.coveo.com/en/56/#dictionaryfieldcontext-object-optional).
'
RestListFieldValuesParameter:
allOf:
- $ref: '#/components/schemas/RestListFieldValuesParameterBase'
- $ref: '#/components/schemas/RestCommonQueryParameters'
ListFieldValuesValuesResponse:
type: object
properties:
value:
type: string
lookupValue:
type: string
numberOfResults:
type: integer
required:
- value
- lookupValue
- numberOfResults
ListFieldValuesResponse:
type: object
properties:
values:
type: array
items:
$ref: '#/components/schemas/ListFieldValuesValuesResponse'
required:
- results
example:
values:
- value: red
lookupValue: red
numberOfResults: 182
- value: green
lookupValue: green
numberOfResults: 142
RestListFieldValuesBatchParameterBase:
required:
- batch
properties:
batch:
type: array
description: 'An array of parameters to retrieve field values.
'
items:
$ref: '#/components/schemas/RestListFieldValuesParameter'
RestListFieldValuesBatchParameter:
allOf:
- $ref: '#/components/schemas/RestListFieldValuesBatchParameterBase'
- $ref: '#/components/schemas/RestCommonQueryParameters'
ListFieldValuesBatchResponse:
type: object
properties:
batch:
type: array
description: A list of values per requested field.
items:
type: array
description: The values of a field.
items:
$ref: '#/components/schemas/ListFieldValuesValuesResponse'
required:
- batch
example:
batch:
- - value: red
lookupValue: red
numberOfResults: 182
- value: green
lookupValue: green
numberOfResults: 142
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.
ListFieldsResponse:
type: object
properties:
fields:
type: array
items:
type: object
properties:
type:
type: string
name:
type: string
nativeName:
type: string
description:
type: string
defaultValue:
type: string
fieldType:
type: string
fieldSourceType:
type: string
includeInQuery:
type: boolean
includeInResults:
type: boolean
groupByField:
type: boolean
splitGroupByField:
type: boolean
sortByField:
type: boolean
required:
- type
- name
- nativeName
- description
- defaultValue
- fieldType
- fieldSourceType
- includeInQuery
- includeInResults
- groupByField
- splitGroupByField
- sortByField
example:
type: text
name: '@author'
nativeName: author
description: ''
defaultValue: ''
fieldType: LargeString
fieldSourceType: System
includeInQuery: false
includeInResults: false
groupByField: false
splitGroupByField: false
sortByField: false
FindFieldsRequest:
type: object
properties:
q:
type: string
default: ''
description: 'The *basic query* expression, typically the keywords entered by the end user in a query box.
'
example: Coveo "Cloud V2" platform
dictionaryFieldContext:
type: object
additionalProperties:
type: string
description: 'A key-value store where each pair corresponds to the name of a dictionary field to query, along with
the key to target within that field.
**Example:** Suppose that in your index, the `@price` dictionary field contains different values for its `storeA`
and `storeB` keys. Including `"dictionaryFieldContext": { "price": "storeA" }` in the query means that any part
of the query expression that targets the `@price` field will in fact only query the `storeA` values of that field.'
example:
price: storeA
FindFieldsResponse:
type: object
required:
- fields
properties:
fields:
type: array
items:
type: object
properties:
name:
type: string
required:
- name
example:
name: '@author'
RestUserId:
required:
- authCookie
- infos
- name
- password
- provider
- type
type: object
properties:
name:
type: string
description: 'The name of the security identity to impersonate.
This value can also be used in query pipeline condition statements (e.g., `when $identity is \"asmith@example.com\"`)'
example: asmith@example.com
type:
type: string
description: 'The type of the security identity to impersonate.
**Default:** `User`'
example: User
enum:
- User
- Group
- VirtualGroup
- Unknown
provider:
type: string
description: The security identity provider containing the security identity to impersonate.
example: Email Security Provider
infos:
type: object
additionalProperties:
type: string
description: Additional custom information about the security identity to impersonate.
example: {}
authCookie:
type: string
example: ''
password:
type: string
description: This parameter is exposed for backward compatibility reasons only.
deprecated: true
RestAllowedDictionaryFieldKeys:
type: object
maxProperties: 100
additionalProperties:
type: array
maxItems: 100
items:
type: string
maxLength: 255
pattern: ^\*$
description: 'The [dictionary field](https://docs.coveo.com/en/2036/) keys to allow access to when authenticating a
query with this search token.
This value controls which fields may be specified in the `fieldAliases` parameter of the query.
The top-level keys of the parameter are the names of the dictionary fields to which to allow access. The values are
arrays of field sub-keys to authorize. The special value `*` may be given to authorize all sub-keys of a field.
**Note:** Currently only `*` is supported, which allows all sub-keys.
**Note:** By default no fields are allowed.
**Note:** This cannot be used at the same time as `dictionaryFieldContext`.
**Example:** Suppose that in your index, the `@price` and `@size` dictionary fields contains different values for
its `storea` and `storeb` keys. If the token has `"allowedDictionaryFieldKeys": { "price": ["*"] }`, a query can include
`"fieldAliases": { "price_a": "price.storea" }` in the query but `"fieldAliases": { "size_a": "sizes.storea" }` will
not work unless it is also included in the token.'
example:
price:
- '*'
size:
- '*'
CommerceParameters:
type: object
properties:
catalogId:
type: string
filter:
type: string
operation:
type: string
RestTokenParams:
required:
- userIds
type: object
properties:
userIds:
type: array
description: The security identities to impersonate when authenticating a query with this search token.
items:
$ref: '#/components/schemas/RestUserId'
userDisplayName:
type: string
description: 'The `userDisplayName` to pass when logging usage analytics search events.
This information is leveraged in the **Analytics** section of the Coveo Cloud administration console.'
example: Alice Smith
userGroups:
type: array
description: 'The `userGroups` to pass when logging usage analytics search events.
This information is leveraged in the **Analytics** section of the Coveo Cloud administration console.
User groups can be also be used in query pipeline condition statements (e.g., `when $groups contains \"Employees\"`).'
example:
- Tech support agents
- Employees
items:
type: string
canSeeUserProfileOf:
type: array
description: 'The `username` and/or `visitorId` values whose corresponding usage analytics-recorded user profiles
can be accessed using the search token.
**Note:** This property is meant to be used when generating search tokens for users requiring contextual information
about other users to improve search relevance (e.g., support agents using an insight panel).'
example:
- bjones@acme.com
- dmoore@acme.com
items:
type: string
pipeline:
type: string
description: 'The name of the query pipeline to use when authenticating a query with this search token.
This query pipeline will take precedence over the possible output of all other query pipeline routing mechanisms
when using this search token (see [Query Pipeline Routing Mechanisms and Rules](https://docs.coveo.com/en/1666/)).'
example: InternalSearch
filter:
type: string
description: 'The filter query expression to apply when authenticating a query with this search token.
This expression will be merged with the constant part of the query expression (`cq`) using an `AND` operator.
The filter can also be used in query pipeline condition statements (e.g., `when $constantQuery contains \"@source==KnowledgeBase\"`).'
example: '@source==KnowledgeBase'
searchHub:
type: string
description: 'The name of the search hub to enforce when authenticating a query with this search token.
This value will override the `searchhub` parameter of the query itself, and will be passed as the `originLevel1`
property value when logging usage analytics search events.
The search hub can also be used in query pipeline condition statements (e.g., `when $searchhub is \"CommunityHub\"`).'
example: SupportHub
dictionaryFieldContext:
type: object
description: 'The [dictionary field](https://docs.coveo.com/en/2036/) context to enforce when authenticating a query
with this search token.
This value will override the `dictionaryFieldContext` parameter of the query itself.
A dictionary field context is a key-value store where each pair corresponds to the name of a dictionary field
to query, along with
the key to target within that field.
For example, suppose that in your index, the `@price` dictionary field contains different values for its `storeA`
and `storeB` keys.
Including `"dictionaryFieldContext": { "price": "storeA" }` when creating a search token means that, for any query
made with that
search token, any part of the query expression that targets the `@price` field will in fact only query the `storeA`
values of that field.
**Note:** This cannot be used at the same time as `allowedDictionaryFieldKeys`.'
allowedDictionaryFieldKeys:
$ref: '#/components/schemas/RestAllowedDictionaryFieldKeys'
salesforceOrganizationId:
type: string
description: '**Internal:** The ID of Salesforce organization, used to differentiate Salesforce organizations linked
to the same Coveo organization.'
example: 00Df23090018W5bEAG
validFor:
type: integer
description: 'The number of milliseconds the search token will remain valid for once it has been created.
**Minimum value:** `900000` (i.e., 15 minutes)
**Maximum/default:** `86400000` (i.e., 24 hours)'
format: int32
example: 3600000
default: 86400000
salesforceUser:
type: string
description: '**Internal:** This property is exposed for internal use by the Coveo for Salesforce integration.'
salesforceCommunityUrl:
type: string
description: '**Internal:** This property is exposed for internal use by the Coveo for Salesforce integration.'
salesforceFallbackToAdmin:
type: boolean
description: '**Internal:** This property is exposed for internal use by the Coveo for Salesforce integration.'
usertype:
type: string
description: '**Internal:** This property is exposed for internal use by the Coveo for Salesforce integration.'
licenseDefinitionKey:
type: string
description: '**Internal:** This property is exposed for internal use by the Coveo for Salesforce integration.'
superUserToken:
type: string
description: This property is exposed for backward compatibility reasons only.
deprecated: true
commerce:
$ref: '#/components/schemas/CommerceParameters'
scope:
type: integer
description: This property is exposed for backward compatibility reasons only.
format: int32
deprecated: true
RestTokenResponse:
type: object
properties:
token:
type: string
RetrievePassageRequestContextValue:
oneOf:
- type: string
- type: array
items:
type: string
RetrievePassagesRequestV3:
type: object
required:
- query
- localization
properties:
query:
type: string
description: 'The query for which to retrieve the passage(s).
'
example: What are the benefits of using solar energy?
maxLength: 1000
filter:
type: string
description: 'A filter expression that will be applied during the first stage retrieval.
The expression must comply with the Coveo Query Language (CQL) syntax.
'
example: '@source=="acme"
'
additionalFields:
type: array
maxItems: 20
items:
type: string
pattern: ^([a-z][a-z0-9_]{0,254})$
example:
- clickableuri
description: 'The fields to include in the response.
When omitted, only the identifier of the document will be returned.
'
maxPassages:
type: integer
format: int32
minimum: 1
maximum: 20
default: 5
description: The maximum number of passage(s) to retrieve.
example: 5
pipeline:
$ref: '#/components/schemas/Pipeline'
searchHub:
type: string
description: 'The first level of origin of the request, typically the identifier of the graphical search interface
from which the request originates.
Coveo Machine Learning models use this information to provide contextually relevant output.
**Notes:**
- This parameter will be overridden if the search request is authenticated by a [search token](https://docs.coveo.com/en/56/)
that enforces a specific [`pipeline`](https://docs.coveo.com/en/56/#pipeline-string-optional), or a [`searchHub`](https://docs.coveo.com/en/56/#searchhub-string-optional)
that routes queries to a specific `pipeline` via a query pipeline condition.
- When logging a **Search** usage analytics event for a query, the `originLevel1` field of that event should be
set to the value of the `searchHub` search request parameter.
'
example: Main
localization:
type: object
required:
- locale
description: Localization parameter.
properties:
locale:
type: string
description: 'The locale of the current user. Must comply with IETF''s BCP 47 definition.
Coveo Machine Learning models use this information to provide contextually relevant output. Moreover, this
information can be referred to in query expressions and QPL statements by using the $locale object.
Note: When logging a Search usage analytics event, the language field of that event should match the language
part of the locale value of the query (e.g., en-US in locale becomes en in language).
'
example: en-CA
timezone:
type: string
description: The [tz database identifier](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) of the
user's time zone. Used for interpreting dates in query expressions and retrieving passages.
example: America/Montreal
context:
type: object
nullable: true
additionalProperties:
$ref: '#/components/schemas/RetrievePassageRequestContextValue'
description: 'The custom context information to send along with the request. Must be a dictionary of key-value pairs
(JSON) where each key is a string, and each value is either a string or an array of strings.
Coveo Machine Learning models may use this information to provide contextually relevant output. Moreover, this
information can be referred to in query expressions and QPL statements by using the `$context` object.'
example:
userAgeRange: 25-35
userRoles:
- PremiumCustomer
- ProductReviewer
analytics:
type: object
nullable: false
additionalProperties: false
properties:
capture:
type: boolean
description: 'Whether the API call should be tracked for analytics. When not provided, it defaults to `false`.
'
clientId:
type: string
pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$
description: A UUID identifying the client or agent that generated the event.
userAgent:
type: string
description: 'The user agent of the request. If not present, the user agent is obtained from the [User-Agent](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/User-Agent)
header.
**Note**: This information is required when endpoints are behind a proxy.
'
PassageDocumentV3:
type: object
required:
- title
- primaryid
properties:
title:
type: string
example: The Benefits of Solar Energy
primaryid:
type: string
description: 'The primary identifier of the document.
'
example: bDMzdA
additionalProperties: true
PassageV3:
type: object
required:
- text
- relevanceScore
- document
properties:
text:
type: string
description: The text associated to this passage.
minLength: 0
maxLength: 6000
example: Solar energy has several benefits including reducing electricity bills, providing a renewable energy source,
and lowering carbon footprint."
relevanceScore:
type: number
format: float
example: 0.85
description: 'A score that indicates the relevance of a passage.
The score computation is based on cosine similarity between the passage and the query.
The computation logic and value range may change in the future.
Example values:
- A value of -1 (minimum) indicates that the passage is the semantic opposite of the query.
- A value of 0 indicates that the passage is not semantically similar to the query.
- A value of 1 (maximum) indicates that the passage is semantically similar to the query.
'
document:
$ref: '#/components/schemas/PassageDocumentV3'
RetrievePassagesResponseV3:
type: object
required:
- items
- responseId
description: A response with the passage(s) retrieved from the user query.
properties:
items:
type: array
items:
$ref: '#/components/schemas/PassageV3'
responseId:
type: string
description: 'A unique identifier for the retrieval request. This identifier can be used to track the retrieval
request.
'
example: c0857557-5579-4f5e-8958-9befd7d1d4a8
ParseQueryExpressionToStructuredRequest:
type: object
required:
- query
properties:
query:
type: string
description: A query using the Coveo query syntax.
example: '@altpopulation>=90000 AND @altcapital AND NOT (@source=="Youtube" OR @author=="JohnSmith")'
QuerySyntaxExpressionV2:
type: object
required:
- type
- value
properties:
type:
type: string
enum:
- querySyntax
description: A search expression that may contain advanced query syntax.
value:
type: string
example: '@author ~= "name"'
KeywordExpressionV2:
description: Test
type: object
required:
- type
- value
properties:
type:
type: string
enum:
- keyword
description: An expression to match a literal in an item. The `value` may also be expanded with stemming.
value:
type: string
stemming:
type: boolean
default: true
description: 'Whether to enable stemming or not. See [About Stemming](https://docs.coveo.com/en/1576/) to learn
more.
'
QueryExpressionV2:
oneOf:
- $ref: '#/components/schemas/QueryExpressionSupportedV2'
- $ref: '#/components/schemas/NewExpressionV2'
NotExpressionV2:
type: object
required:
- type
- expression
properties:
type:
type: string
enum:
- not
description: An expression that returns all of the items in which the `expression` evaluates to `false`.
expression:
$ref: '#/components/schemas/QueryExpressionV2'
NotKeywordExpressionV2:
allOf:
- $ref: '#/components/schemas/NotExpressionV2'
- type: object
required:
- expression
properties:
expression:
$ref: '#/components/schemas/KeywordExpressionV2'
ExactMatchExpressionV2:
type: object
required:
- type
- value
properties:
type:
type: string
enum:
- exactMatch
description: An expression that must appear in its entirety at least once in an item for that item to be returned.
value:
type: string
TermsToContainExpressionV2:
type: object
required:
- type
- terms
properties:
type:
type: string
enum:
- wordsToContain
terms:
type: array
items:
type: string
description: 'The list of terms that must exist in the item.
'
description: 'An expression where each terms should exist in an item.
'
TextExpressionSupportedV2:
oneOf:
- $ref: '#/components/schemas/KeywordExpressionV2'
- $ref: '#/components/schemas/NotKeywordExpressionV2'
- $ref: '#/components/schemas/ExactMatchExpressionV2'
- $ref: '#/components/schemas/TermsToContainExpressionV2'
- $ref: '#/components/schemas/QuerySyntaxExpressionV2'
discriminator:
propertyName: type
mapping:
keyword: '#/components/schemas/KeywordExpressionV2'
not: '#/components/schemas/NotKeywordExpressionV2'
exactMatch: '#/components/schemas/ExactMatchExpressionV2'
termsToContain: '#/components/schemas/TermsToContainExpressionV2'
querySyntax: '#/components/schemas/QuerySyntaxExpressionV2'
NewExpressionV2:
description: As the expressions evolve, new expressions types might be added. To be forward compatible, you should always
handle cases where something else could be returned.
TextExpressionV2:
oneOf:
- $ref: '#/components/schemas/TextExpressionSupportedV2'
- $ref: '#/components/schemas/NewExpressionV2'
NearExpressionV2:
type: object
required:
- type
- startTerm
- otherTerms
properties:
type:
type: string
enum:
- near
description: 'An expression that returns all of the items in which the specified `startTerm` appears no more than
`maxKeywordsFrom` the `endTerm`, for each element in `nearTerms`.
For example, this expression could return items in which the term `apple` is no more than 5 keywords apart from
`grocery`.'
startTerm:
$ref: '#/components/schemas/TextExpressionV2'
otherTerms:
type: array
items:
type: object
required:
- endTerm
properties:
maxKeywordsFrom:
type: integer
format: int32
description: 'The `endTerm` can be, at most, this number of keywords from the `startTerm`.
**Example:**
- `startTerm` = `foo`
- `maxKeywordsFrom` = `5`
- `endTerm` = `bar`
The furthest apart that these two terms could be is:
`foo termA termB termC termD bar`'
endTerm:
$ref: '#/components/schemas/TextExpressionV2'
minItems: 1
description: Defines a term that the `startTerm` must be near and the maximum distance that the `startTerm` can
be from the `endTerm`.
QueryExtensionInvocationExpressionV2:
type: object
required:
- type
- name
- arguments
properties:
type:
type: string
enum:
- queryExtension
description: An expression that invokes a query extension.
name:
type: string
description: The name of the query extension to invoke.
arguments:
type: object
description: The arguments to provide to the query extension.
additionalProperties:
oneOf:
- type: number
- type: string
- type: boolean
- $ref: '#/components/schemas/QueryExpressionV2'
ObjectAccessExpressionV2:
type: object
required:
- type
- objectName
properties:
type:
type: string
enum:
- objectAccess
description: An expression that returns a property of an object.
objectName:
type: string
description: The name of the object to access.
example: context
properties:
type: array
description: 'An array of path segments to the property of the object to return.
Given the *objectName* **context** and the *properties* `[userProfile, lastPurchase]`, the following property
will be returned:
> **context**`.userProfile.lastPurchase`'
items:
type: string
example:
- userProfile
- lastPurchase
FieldOperatorV2:
type: string
enum:
- contains
- isExactly
- lowerThan
- lowerThanOrEqual
- greaterThan
- greaterThanOrEqual
- phoneticMatch
- fuzzyMatch
- regexMatch
- wildcardMatch
- differentThan
description: The comparison to make against the `value`.
DateRangeValueV2:
type: object
required:
- type
- dateRange
properties:
type:
type: string
enum:
- dateRange
description: A range of dates to compare to the `fieldName`.
dateRange:
type: object
required:
- from
- to
properties:
from:
type: string
format: date-time
to:
type: string
format: date-time
DateValueV2:
type: object
required:
- type
- dateValue
properties:
type:
type: string
enum:
- date
description: A specific date to compare to the `fieldName`.
dateValue:
type: string
format: date-time
StringValueV2:
type: object
required:
- type
- value
properties:
type:
type: string
enum:
- string
value:
type: string
description: 'A value containing a string.
'
NumericValueV2:
type: object
required:
- type
- numeric
properties:
type:
type: string
enum:
- numeric
description: A numeric value to compare to.
numericValue:
type: number
UnknownValueV2:
type: object
required:
- type
- value
properties:
type:
type: string
enum:
- unknown
value:
type: string
description: 'The value as it was parsed.
'
FieldValueSupportedV2:
oneOf:
- $ref: '#/components/schemas/DateRangeValueV2'
- $ref: '#/components/schemas/DateValueV2'
- $ref: '#/components/schemas/StringValueV2'
- $ref: '#/components/schemas/NumericValueV2'
- $ref: '#/components/schemas/UnknownValueV2'
- $ref: '#/components/schemas/ObjectAccessExpressionV2'
- $ref: '#/components/schemas/QueryExtensionInvocationExpressionV2'
- $ref: '#/components/schemas/QuerySyntaxExpressionV2'
discriminator:
propertyName: type
mapping:
dateRange: '#/components/schemas/DateRangeValueV2'
date: '#/components/schemas/DateValueV2'
string: '#/components/schemas/StringValueV2'
objectAccess: '#/components/schemas/ObjectAccessExpressionV2'
numeric: '#/components/schemas/NumericValueV2'
queryExtension: '#/components/schemas/QueryExtensionInvocationExpressionV2'
unknown: '#/components/schemas/UnknownValueV2'
querySyntax: '#/components/schemas/QuerySyntaxExpressionV2'
FieldValueV2:
oneOf:
- $ref: '#/components/schemas/FieldValueSupportedV2'
- $ref: '#/components/schemas/NewExpressionV2'
FieldExpressionV2:
type: object
required:
- type
- fieldName
- operator
- value
properties:
type:
type: string
enum:
- fieldExpression
description: An expression that uses an `operator` to compare a `fieldName` to a `value`. Returns all of the items
for which this expression evaluates to `true`.
fieldName:
type: string
description: The name of a field to compare to the `value`.
operator:
$ref: '#/components/schemas/FieldOperatorV2'
value:
$ref: '#/components/schemas/FieldValueV2'
FieldExistsExpressionV2:
type: object
required:
- type
- fieldName
properties:
type:
type: string
enum:
- fieldExists
description: An expression that returns all of the items that have a field matching `fieldName`.
fieldName:
type: string
OrExpressionV2:
type: object
required:
- type
- expressions
properties:
type:
type: string
enum:
- or
description: A list of expressions to join with a logical `OR`.
expressions:
type: array
items:
$ref: '#/components/schemas/QueryExpressionV2'
AndExpressionV2:
type: object
required:
- type
- expressions
properties:
type:
type: string
enum:
- and
description: A list of expressions to join with a logical `AND`.
expressions:
type: array
items:
$ref: '#/components/schemas/QueryExpressionV2'
EmptyExpressionV2:
type: object
required:
- type
properties:
type:
type: string
enum:
- empty
description: An empty value. This is returned when the optimized parsed query expression is empty.
QueryExpressionSupportedV2:
oneOf:
- $ref: '#/components/schemas/AndExpressionV2'
- $ref: '#/components/schemas/OrExpressionV2'
- $ref: '#/components/schemas/NotExpressionV2'
- $ref: '#/components/schemas/FieldExpressionV2'
- $ref: '#/components/schemas/FieldExistsExpressionV2'
- $ref: '#/components/schemas/KeywordExpressionV2'
- $ref: '#/components/schemas/ExactMatchExpressionV2'
- $ref: '#/components/schemas/TermsToContainExpressionV2'
- $ref: '#/components/schemas/ObjectAccessExpressionV2'
- $ref: '#/components/schemas/QueryExtensionInvocationExpressionV2'
- $ref: '#/components/schemas/NearExpressionV2'
- $ref: '#/components/schemas/EmptyExpressionV2'
- $ref: '#/components/schemas/QuerySyntaxExpressionV2'
discriminator:
propertyName: type
mapping:
querySyntax: '#/components/schemas/QuerySyntaxExpressionV2'
near: '#/components/schemas/NearExpressionV2'
queryExtension: '#/components/schemas/QueryExtensionInvocationExpressionV2'
objectAccess: '#/components/schemas/ObjectAccessExpressionV2'
termsToContain: '#/components/schemas/TermsToContainExpressionV2'
exactMatch: '#/components/schemas/ExactMatchExpressionV2'
keyword: '#/components/schemas/KeywordExpressionV2'
fieldExpression: '#/components/schemas/FieldExpressionV2'
fieldExists: '#/components/schemas/FieldExistsExpressionV2'
not: '#/components/schemas/NotExpressionV2'
or: '#/components/schemas/OrExpressionV2'
and: '#/components/schemas/AndExpressionV2'
ParseQueryExpressionToStructuredResponse:
type: object
required:
- query
properties:
structured:
$ref: '#/components/schemas/QueryExpressionV2'
description: A structured version of the parsed query.
ProblemDetailResponse:
type: object
description: The Problem Details JSON Object [[RFC7807](https://tools.ietf.org/html/rfc7807)].
minProperties: 1
properties:
status:
type: integer
minimum: 400
maximum: 599
description: The HTTP status code.
title:
type: string
description: A short, human-readable summary of the problem type. This **shouldn't** change from one occurrence
of the problem to another, except for localization purposes.
type:
type: string
format: URI
description: A URI reference [[RFC3986](https://tools.ietf.org/html/rfc3986)] that identifies and provides human-readable
documentation for the problem type. When this isn't present, its value is assumed to be "about:blank".
detail:
type: string
description: A human-readable explanation which is specific to this occurrence of the problem.
instance:
type: string
format: URI
description: A URI reference [[RFC3986](https://tools.ietf.org/html/rfc3986)] that identifies the specific occurrence
of the problem. It may or may not yield further information if dereferenced.
TransformationBase:
type: object
required:
- operation
properties:
operation:
type: string
enum:
- ADD_RANKING_RULE
- EDIT_RANKING_RULE
- ADD_THESAURUS_RULE
- REMOVE_THESAURUS_RULE
- EDIT_THESAURUS_RULE
- ADD_FILTER_RULE
- EDIT_FILTER_RULE
description: The identifier of the operation to preview.
discriminator:
propertyName: operation
mapping:
ADD_RANKING_RULE: '#/components/schemas/AddResultRankings'
EDIT_RANKING_RULE: '#/components/schemas/EditResultRankings'
ADD_THESAURUS_RULE: '#/components/schemas/AddThesaurusRule'
REMOVE_THESAURUS_RULE: '#/components/schemas/RemoveThesaurusRule'
EDIT_THESAURUS_RULE: '#/components/schemas/EditThesaurusRule'
ADD_FILTER_RULE: '#/components/schemas/AddFilterRule'
EDIT_FILTER_RULE: '#/components/schemas/EditFilterRule'
PredicateMatchOperator:
type: object
properties:
kind:
type: string
description: The kind of match operator.
example: is
enum:
- is
- contains
- matches
PredicateLocale:
type: object
properties:
kind:
type: string
description: The kind of locale.
example: all
enum:
- all
- unspecified
- specific
code:
type: string
description: An additional condition expressed with the [Query Pipeline Language (QPL)](https://docs.coveo.com/1449/).
example: when $browser is "firefox"
PredicateBasicExpression:
type: object
required:
- kind
properties:
kind:
type: string
enum:
- basicExpressionAndLocalePredicate
basicQueryExpression:
type: string
description: The value to compare with the search query’s actual `q` value.
example: gaming laptop
matchOperator:
$ref: '#/components/schemas/PredicateMatchOperator'
locale:
$ref: '#/components/schemas/PredicateLocale'
PredicateQpl:
type: object
required:
- kind
- code
properties:
kind:
type: string
enum:
- qplPredicate
code:
type: string
description: The [query pipeline language (QPL)](https://docs.coveo.com/en/1449/) definition of the condition.
example: when $query doesn''t end with `gaming laptop`
Predicate:
oneOf:
- $ref: '#/components/schemas/PredicateBasicExpression'
- $ref: '#/components/schemas/PredicateQpl'
discriminator:
propertyName: kind
mapping:
basicExpressionAndLocalePredicate: '#/components/schemas/PredicateBasicExpression'
qplPredicate: '#/components/schemas/PredicateQpl'
ResultRankingRuleCondition:
type: object
properties:
reference:
type: string
description: The ID of a mandatory condition to satisfy.
example: 3896e64f-2132-463a-81c8-26f2e9f89e0a
ResultRankingRuleBase:
type: object
required:
- name
properties:
name:
type: string
description: The name of the result ranking.
example: Back to School
defaultMatchOperator:
$ref: '#/components/schemas/PredicateMatchOperator'
predicates:
type: array
description: The non-QPL conditions under which the rule may apply. The rule will apply when any of these are satisfied.
example:
- kind: basicExpressionAndLocalePredicate
basicQueryExpression: video game
locale:
kind: all
items:
$ref: '#/components/schemas/Predicate'
condition:
$ref: '#/components/schemas/ResultRankingRuleCondition'
description:
type: string
description: The intended purpose of this result ranking.
example: Back to school promotion.
enabled:
type: boolean
description: Whether this result ranking should be used by the query pipeline.
example: true
default: true
statementGroupId:
type: string
description: The unique identifier of the statement group.
example: 679adb80-444e-11ea-b77f-2e728ce88125
ResultRankingRuleTargetUniqueId:
type: object
required:
- uniqueId
properties:
uniqueId:
type: string
description: Select a document by unique id (@urihash value).
example:
uniqueId: d4248b95a27
ResultRankingRuleLocalizedContentLocaleAuto:
required:
- default
type: object
properties:
default:
type: string
description: The default locale of the Knowledge Article to default to if it's not available in the user's locale.
example: en-US
ResultRankingRuleLocalizedContentLocale:
type: object
properties:
auto:
$ref: '#/components/schemas/ResultRankingRuleLocalizedContentLocaleAuto'
specific:
type: string
description: The locale code of the KB article to show.
example:
code: en-US
description: Exactly one field should be defined.
ResultRankingRuleLocalizedContent:
required:
- familyId
- familyIdField
- locale
- localeField
type: object
properties:
familyId:
type: string
description: The ID of the KB article to show.
example: '112233'
locale:
$ref: '#/components/schemas/ResultRankingRuleLocalizedContentLocale'
familyIdField:
type: string
description: Field that identifies the knowledge article.
example: '@sfarticlenumber'
localeField:
type: string
description: Field that identifies the locale of the document.
example: '@locale'
ResultRankingRuleTargetLocalizedContent:
type: object
required:
- localizedContent
properties:
localizedContent:
$ref: '#/components/schemas/ResultRankingRuleLocalizedContent'
ResultRankingRuleTargetQueryExpression:
type: object
required:
- queryExpression
properties:
queryExpression:
type: string
description: Select documents using a query expression.
example:
queryExpression: '@source==TopSource'
ResultRankingRuleTargetFeaturedResults:
oneOf:
- $ref: '#/components/schemas/ResultRankingRuleTargetUniqueId'
- $ref: '#/components/schemas/ResultRankingRuleTargetLocalizedContent'
- $ref: '#/components/schemas/ResultRankingRuleTargetQueryExpression'
ResultRankingRuleFeaturedResultsBase:
type: object
required:
- kind
- targets
properties:
kind:
type: string
description: The kind of result ranking.
enum:
- featured_result
targets:
type: array
description: Documents that will show up when conditions and predicates are met.
example:
- uniqueId: 2228d0a698fd
- localizedContent:
familyId: '112233'
locale:
auto:
default: en-US
familyIdField: '@sfarticlenumber'
localeField: '@locale'
- queryExpression: '@permanentid="6cdw9d02d17"'
items:
$ref: '#/components/schemas/ResultRankingRuleTargetFeaturedResults'
matchQuery:
type: boolean
description: When set to true, a featured result item must match the basic part (q) of the query expression, meaning
it will only appear if it matches the search request provided by the user.
example: true
default: false
matchAdvancedQuery:
type: boolean
description: When set to true, a featured result item must match the advanced part (aq) of the query expression,
meaning it will only appear if it matches the selected filters in the search interface.
example: true
default: true
includeInFacets:
type: boolean
example: true
default: true
ResultRankingRuleFeaturedResultsCreateRequest:
allOf:
- $ref: '#/components/schemas/ResultRankingRuleBase'
- $ref: '#/components/schemas/ResultRankingRuleFeaturedResultsBase'
ResultRankingRuleRankingExpressionBase:
type: object
required:
- kind
- targets
- rankingModifier
properties:
kind:
type: string
description: The kind of result ranking.
enum:
- ranking_expression
targets:
type: array
description: Documents that will show up when conditions and predicates are met.
example:
- queryExpression: '@permanentid="6cdw9d02d17"'
items:
$ref: '#/components/schemas/ResultRankingRuleTargetQueryExpression'
rankingModifier:
type: integer
description: 'The ranking score modifier to apply.
Use a positive value to promote the target, or a negative value to demote it.
**Note:** If you do not specify a value for this parameter, the target will receive a significant boost, causing
it to appear at the top of the ranked query result set.'
format: int32
example: 1000
isConstant:
type: boolean
description: 'Whether to treat the expression as a constant query expression (cq) (and cache its result set).
**Note:** You should set this option to ''true'' only when the expression is constant for all users. You should
leave this option to ''false'' if the expression is based on end-user input (e.g., @concepts=$splitValues(text:
$query, separator: ''\s'')) or if it contains a nested query.'
example: true
applyToEveryResult:
type: boolean
description: Whether to apply the QRE to every item in the expression query result set, regardless of its current
ranking score. When this option is set to 'false', the QRE only applies to query result set items whose current
ranking score is considered high enough by the index.
example: true
targetsMode:
type: string
enum:
- simple
- advanced
description: Define whether rules are simple or advanced. It will influence how it will be loaded in the AdminUI.
ResultRankingRuleRankingExpressionCreateRequest:
allOf:
- $ref: '#/components/schemas/ResultRankingRuleBase'
- $ref: '#/components/schemas/ResultRankingRuleRankingExpressionBase'
ResultRankingRuleCreateRequest:
oneOf:
- $ref: '#/components/schemas/ResultRankingRuleFeaturedResultsCreateRequest'
- $ref: '#/components/schemas/ResultRankingRuleRankingExpressionCreateRequest'
discriminator:
propertyName: kind
mapping:
featured_result: '#/components/schemas/ResultRankingRuleFeaturedResultsCreateRequest'
ranking_expression: '#/components/schemas/ResultRankingRuleRankingExpressionCreateRequest'
AddResultRankings:
description: 'When `operation=ADD_RANKING_RULE`, the transformation is used to preview
the effect of adding a ranking rule.'
allOf:
- $ref: '#/components/schemas/TransformationBase'
- type: object
required:
- resultRanking
properties:
resultRanking:
$ref: '#/components/schemas/ResultRankingRuleCreateRequest'
EditResultRankings:
description: 'When `operation=EDIT_RANKING_RULE`, the transformation is used to preview
the effect of editing a ranking rule.'
allOf:
- $ref: '#/components/schemas/TransformationBase'
- type: object
required:
- id
- resultRanking
properties:
id:
type: string
description: The identifier of the result ranking rule
resultRanking:
$ref: '#/components/schemas/ResultRankingRuleUpdateRequest'
IncomingStatement:
required:
- definition
- feature
type: object
properties:
id:
type: string
description: The unique identifier of this statement.
description:
type: string
description: The intended purpose of this statement in an actual implementation.
example: Spotlight the Coveo brand in query results.
feature:
type: string
description: The query pipeline feature expressed by this statement (see [Query Pipeline Language (QPL)](https://docs.coveo.com/en/1449/)).
example: ranking
enum:
- filter
- trigger
- ranking
- stop
- thesaurus
- top
- topClicks
- querySuggest
- rankingweight
- recommendation
- queryParamOverride
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: boost `coveo` by 100
parent:
type: string
description: The unique identifier of the condition that must be met for this statement to apply.
example: 45a7892e-a63f-4c8e-8795-ab38c8c18d7e
AddThesaurusRule:
description: 'When `operation=ADD_THESAURUS_RULE`, the transformation is used to preview
the effect of adding a thesaurus rule.'
allOf:
- $ref: '#/components/schemas/TransformationBase'
- type: object
required:
- thesaurus
properties:
thesaurus:
$ref: '#/components/schemas/IncomingStatement'
RemoveThesaurusRule:
description: 'When `operation=REMOVE_THESAURUS_RULE`, the transformation is used to preview
the effect of removing a thesaurus rule.'
allOf:
- $ref: '#/components/schemas/TransformationBase'
- type: object
required:
- id
properties:
id:
type: string
description: The identifier of the thesaurus rule
EditThesaurusRule:
description: 'When `operation=EDIT_THESAURUS_RULE`, the transformation is used to preview
the effect of updating a thesaurus rule.'
allOf:
- $ref: '#/components/schemas/TransformationBase'
- type: object
required:
- thesaurus
- id
properties:
id:
type: string
description: The identifier of the thesaurus rule
thesaurus:
$ref: '#/components/schemas/IncomingStatement'
AddFilterRule:
description: 'When `operation=ADD_FILTER_RULE`, the transformation is used to preview
the effect of adding a filter rule.'
allOf:
- $ref: '#/components/schemas/TransformationBase'
- type: object
required:
- filter
properties:
filter:
$ref: '#/components/schemas/IncomingStatement'
EditFilterRule:
description: 'When `operation=EDIT_FILTER_RULE`, the transformation is used to preview
the effect of updating a filter rule.'
allOf:
- $ref: '#/components/schemas/TransformationBase'
- type: object
required:
- filter
- id
properties:
id:
type: string
description: The identifier of the filter rule
filter:
$ref: '#/components/schemas/IncomingStatement'
ResultRankingRuleUpdateRequest:
oneOf:
- $ref: '#/components/schemas/ResultRankingRuleFeaturedResultsCreateRequest'
- $ref: '#/components/schemas/ResultRankingRuleRankingExpressionCreateRequest'
discriminator:
propertyName: kind
mapping:
featured_result: '#/components/schemas/ResultRankingRuleFeaturedResultsCreateRequest'
ranking_expression: '#/components/schemas/ResultRankingRuleRankingExpressionCreateRequest'
Transformation:
oneOf:
- $ref: '#/components/schemas/EditResultRankings'
- $ref: '#/components/schemas/AddResultRankings'
- $ref: '#/components/schemas/AddThesaurusRule'
- $ref: '#/components/schemas/RemoveThesaurusRule'
- $ref: '#/components/schemas/AddFilterRule'
- $ref: '#/components/schemas/EditFilterRule'
TransformPipelinePreviewRequest:
type: object
required:
- query
- transform
properties:
query:
$ref: '#/components/schemas/RestQueryParameters'
transform:
type: array
items:
$ref: '#/components/schemas/Transformation'
TransformPipelinePreviewResponse:
type: object
properties:
query:
$ref: '#/components/schemas/RestQueryResponse'
InspectReplayRequest:
type: object
required:
- id
properties:
id:
type: string
description: The SearchUID of the request to replay.
dateRange:
type: object
description: The date range within which to look for the request.
required:
- from
properties:
from:
type: string
format: date-time
description: The inclusive date at which to start looking for the request.
to:
type: string
format: date-time
description: The inclusive date at which to stop looking for the SearchUID. When omitted searches up until the
most recent requests.
ReplayExecutionStepBase:
type: object
required:
- durationInMs
properties:
durationInMs:
type: number
description: 'Duration of the replay step in milliseconds.
'
ReplayCondition:
type: object
required:
- id
properties:
id:
type: string
description: The id of the condition
ReplayExecutionStepPipelineSelectionPipeline:
type: object
required:
- id
- name
properties:
id:
type: string
description: The identifier of the selected query pipeline
name:
type: string
description: The name of the selected query pipeline
condition:
$ref: '#/components/schemas/ReplayCondition'
ReplayExecutionStepPipelineSelection:
type: object
required:
- type
- name
- selectedPipeline
- selectionCause
properties:
type:
type: string
enum:
- pipelineSelection
name:
type: string
enum:
- Pipeline selection
selectedPipeline:
$ref: '#/components/schemas/ReplayExecutionStepPipelineSelectionPipeline'
selectionCause:
type: object
required:
- type
properties:
type:
type: string
enum:
- AUTHENTICATION_PIPELINE
- AUTHENTICATION_SEARCH_HUB
- PARAMETER_PIPELINE
- CONDITION_ROUTING
- DEFAULT
description: "Defines the reason for the selection of the `selectedPipeline`. The query pipeline selection goes\
\ through these steps:\n\n #### **AUTHENTICATION_PIPELINE**\n A query pipeline was specified in the authentication\
\ token.\n\n #### **AUTHENTICATION_SEARCH_HUB**\n A searchHub was specified in the authentication token.\
\ Since `selectedPipeline` has a condition based on the value of this searchHub, the request was routed to\
\ this query pipeline.\n\n #### **PARAMETER_PIPELINE**\n The `pipeline` query parameter was provided with\
\ a query pipeline.\n\n #### **CONDITION_ROUTING**\n The query pipeline was resolved through a condition\
\ routing.\n\n #### **DEFAULT**\n As no query pipelines were resolved, the default query pipeline was selected.\n"
abTest:
type: object
required:
- originalPipeline
- targetPipeline
description: 'When an AB test is enabled on the selected query pipeline, information about the original pipeline
is displayed here.
It helps to better understand which query pipeline was initially selected. In some cases, the `originalPipeline`
might be
the same as the `selectedPipeline`. It depends on how the AB test assigned the request to the query pipeline.
'
properties:
originalPipeline:
$ref: '#/components/schemas/ReplayExecutionStepPipelineSelectionPipeline'
targetPipeline:
$ref: '#/components/schemas/ReplayExecutionStepPipelineSelectionPipeline'
ListOfExecutionSteps:
type: object
required:
- appliedCount
properties:
totalCount:
type: integer
description: 'Total number of rules of this feature.
'
appliedCount:
type: integer
description: 'Total number of rules that were applied.
'
ReplayRule:
type: object
required:
- id
properties:
id:
type: string
description: 'The identifier of the rule
'
condition:
$ref: '#/components/schemas/ReplayCondition'
ReplayExecutionStepTriggersRule:
allOf:
- $ref: '#/components/schemas/ReplayRule'
ReplayExecutionStepTriggers:
type: object
required:
- type
- name
properties:
type:
type: string
enum:
- triggers
name:
type: string
enum:
- Triggers
applied:
type: array
items:
$ref: '#/components/schemas/ReplayExecutionStepTriggersRule'
ReplayModelRule:
type: object
required:
- id
- modelId
properties:
id:
type: string
description: 'The identifier of the association
'
modelId:
type: string
description: 'The identifier of the model
'
condition:
$ref: '#/components/schemas/ReplayCondition'
ReplayExecutionStepDNERule:
allOf:
- $ref: '#/components/schemas/ReplayModelRule'
ReplayExecutionStepDNE:
type: object
required:
- type
- name
- applied
properties:
type:
type: string
enum:
- dne
name:
type: string
enum:
- Dynamic Navigation Experience
applied:
type: array
items:
$ref: '#/components/schemas/ReplayExecutionStepDNERule'
ReplayAffectedResults:
type: object
properties:
affectedResultsPosition:
type: array
description: 'An array of `results` position. Each item represent a position in `results` where the result was affected
by the rule.
'
items:
type: integer
ReplayExecutionStepARTRule:
allOf:
- $ref: '#/components/schemas/ReplayModelRule'
- $ref: '#/components/schemas/ReplayAffectedResults'
ReplayExecutionStepART:
type: object
required:
- type
- name
properties:
type:
type: string
enum:
- art
name:
type: string
enum:
- Automatic Relevance Tuning
applied:
type: array
items:
$ref: '#/components/schemas/ReplayExecutionStepARTRule'
ReplayExecutionStepProductRecommendationRule:
allOf:
- $ref: '#/components/schemas/ReplayModelRule'
- $ref: '#/components/schemas/ReplayAffectedResults'
ReplayExecutionStepProductRecommendation:
type: object
required:
- type
- name
properties:
type:
type: string
enum:
- productRecommendation
name:
type: string
enum:
- Product Recommendation
applied:
type: array
items:
$ref: '#/components/schemas/ReplayExecutionStepProductRecommendationRule'
ReplayExecutionStepContentRecommendationRule:
allOf:
- $ref: '#/components/schemas/ReplayModelRule'
- $ref: '#/components/schemas/ReplayAffectedResults'
ReplayExecutionStepContentRecommendation:
type: object
required:
- type
- name
properties:
type:
type: string
enum:
- contentRecommendation
name:
type: string
enum:
- Content Recommendation
applied:
type: array
items:
$ref: '#/components/schemas/ReplayExecutionStepContentRecommendationRule'
ReplayExecutionStepRankingWeightsRule:
allOf:
- $ref: '#/components/schemas/ReplayRule'
ReplayExecutionStepRankingWeights:
type: object
required:
- type
- name
properties:
type:
type: string
enum:
- rankingWeights
name:
type: string
enum:
- Ranking Weights
applied:
type: array
items:
$ref: '#/components/schemas/ReplayExecutionStepRankingWeightsRule'
ReplayExecutionStepFeaturedResultsRule:
allOf:
- $ref: '#/components/schemas/ReplayRule'
- $ref: '#/components/schemas/ReplayAffectedResults'
ReplayExecutionStepFeaturedResults:
type: object
required:
- type
- name
properties:
type:
type: string
enum:
- featuredResults
name:
type: string
enum:
- Featured Results
applied:
type: array
items:
$ref: '#/components/schemas/ReplayExecutionStepFeaturedResultsRule'
ReplayExecutionStepRankingExpressionsRuleBase:
type: object
properties:
boost:
type: number
description: 'The boost applied by the rule to the results.
'
ReplayExecutionStepRankingExpressionsRule:
allOf:
- $ref: '#/components/schemas/ReplayRule'
- $ref: '#/components/schemas/ReplayAffectedResults'
- $ref: '#/components/schemas/ReplayExecutionStepRankingExpressionsRuleBase'
ReplayExecutionStepRankingExpressions:
type: object
required:
- type
- name
properties:
type:
type: string
enum:
- rankingExpressions
name:
type: string
enum:
- Ranking Expressions
applied:
type: array
items:
$ref: '#/components/schemas/ReplayExecutionStepRankingExpressionsRule'
ReplayAffectedRequestParameter:
type: object
required:
- name
properties:
name:
type: string
description: 'The name of the parameter that was changed.
'
value:
description: 'The new value assigned to this parameter.
'
ReplayAffectedRequestParameters:
type: object
required:
- affectedRequestParameters
properties:
affectedRequestParameters:
type: array
description: 'A list of request parameters that were affected by the rule.
'
items:
$ref: '#/components/schemas/ReplayAffectedRequestParameter'
ReplayExecutionStepFiltersRule:
allOf:
- $ref: '#/components/schemas/ReplayRule'
- $ref: '#/components/schemas/ReplayAffectedRequestParameters'
ReplayExecutionStepFilters:
type: object
required:
- type
- name
properties:
type:
type: string
enum:
- filters
name:
type: string
enum:
- Filters
applied:
type: array
items:
$ref: '#/components/schemas/ReplayExecutionStepFiltersRule'
ReplayExecutionStepStopWordsRule:
allOf:
- $ref: '#/components/schemas/ReplayRule'
- $ref: '#/components/schemas/ReplayAffectedRequestParameters'
ReplayExecutionStepStopWords:
type: object
required:
- type
- name
properties:
type:
type: string
enum:
- stopWords
name:
type: string
enum:
- Stop Words
applied:
type: array
items:
$ref: '#/components/schemas/ReplayExecutionStepStopWordsRule'
ReplayExecutionStepThesaurusRule:
allOf:
- $ref: '#/components/schemas/ReplayRule'
- $ref: '#/components/schemas/ReplayAffectedRequestParameters'
ReplayExecutionStepThesaurus:
type: object
required:
- type
- name
properties:
type:
type: string
enum:
- thesaurus
name:
type: string
enum:
- Thesaurus
applied:
type: array
items:
$ref: '#/components/schemas/ReplayExecutionStepThesaurusRule'
ReplayExecutionStepParamOverridesRule:
allOf:
- $ref: '#/components/schemas/ReplayRule'
- $ref: '#/components/schemas/ReplayAffectedRequestParameters'
ReplayExecutionStepParamOverrides:
type: object
required:
- type
- name
properties:
type:
type: string
enum:
- paramOverrides
name:
type: string
enum:
- Query param overrides
applied:
type: array
items:
$ref: '#/components/schemas/ReplayExecutionStepParamOverridesRule'
ReplayIntegrationsBase:
type: object
required:
- id
- integrationType
properties:
id:
type: string
description: 'The identifier of the rule
'
condition:
$ref: '#/components/schemas/ReplayCondition'
integrationType:
type: string
description: 'The name of the pipeline integration being applied
'
RankingOrigin:
type: object
properties:
id:
type: string
maxLength: 255
type:
type: string
maxLength: 255
origin:
type: string
maxLength: 255
required:
- type
- origin
IntegrationRankingExpression:
type: object
properties:
expression:
type: string
maxLength: 2000
modifier:
type: integer
isConstant:
type: boolean
applyToEveryResults:
type: boolean
description: known as `isDeterministic` in the Index API
tag:
type: string
description: Value used to populate the `rankingModifier` on documents.
origin:
$ref: '#/components/schemas/RankingOrigin'
required:
- expression
- modifier
- isConstant
- applyToEveryResults
IntegrationRankingFunction:
type: object
properties:
expression:
type: string
maxLength: 2000
normalizeWeight:
type: boolean
modifier:
type: integer
origin:
$ref: '#/components/schemas/RankingOrigin'
top:
type: integer
format: int64
required:
- expression
- normalizeWeight
IntegrationQueryFunction:
type: object
properties:
function:
type: string
maxLength: 2000
fieldName:
type: string
maxLength: 255
filterExpression:
type: string
maxLength: 50000
origin:
$ref: '#/components/schemas/RankingOrigin'
top:
type: integer
format: int64
allowMissingFields:
type: boolean
required:
- function
- fieldName
FeatureVector:
type: object
maxProperties: 5000
additionalProperties:
type: array
maxItems: 10000
items:
type: number
DictionaryFieldContext:
type: object
maxProperties: 255
additionalProperties:
type: string
maxLength: 255
PreprocessingStateResponse:
type: object
properties:
q:
type: string
maxLength: 50000
aq:
type: string
maxLength: 50000
cq:
type: string
maxLength: 50000
dq:
type: string
maxLength: 15000
fieldsToInclude:
type: array
maxItems: 255
items:
type: string
maxLength: 255
fieldsToExclude:
type: array
maxItems: 255
items:
type: string
maxLength: 255
firstResult:
type: integer
rankingExpressions:
type: array
maxItems: 500
items:
$ref: '#/components/schemas/IntegrationRankingExpression'
rankingFunctions:
type: array
maxItems: 500
items:
$ref: '#/components/schemas/IntegrationRankingFunction'
queryFunctions:
type: array
maxItems: 500
items:
$ref: '#/components/schemas/IntegrationQueryFunction'
featureVectors:
$ref: '#/components/schemas/FeatureVector'
dictionaryFieldContext:
$ref: '#/components/schemas/DictionaryFieldContext'
warnings:
type: array
maxItems: 100
items:
type: string
maxLength: 255
ReplayIntegrationsPreprocessingChanges:
type: object
properties:
preprocessingStateChanges:
$ref: '#/components/schemas/PreprocessingStateResponse'
IntegrationErrorInfo:
type: object
required:
- type
- message
properties:
type:
type: string
description: 'The type of the error.
'
details:
type: string
description: 'The details of the error.
'
ReplayIntegrationsProcessingFailure:
type: object
required:
- error
properties:
error:
$ref: '#/components/schemas/IntegrationErrorInfo'
ReplayIntegrationPreprocessingOutcome:
anyOf:
- $ref: '#/components/schemas/ReplayIntegrationsPreprocessingChanges'
- $ref: '#/components/schemas/ReplayIntegrationsProcessingFailure'
ReplayIntegrationsPreprocessingRule:
allOf:
- $ref: '#/components/schemas/ReplayIntegrationsBase'
- $ref: '#/components/schemas/ReplayIntegrationPreprocessingOutcome'
ReplayExecutionStepIntegrationsPreprocessingRule:
allOf:
- $ref: '#/components/schemas/ReplayIntegrationsPreprocessingRule'
ReplayExecutionStepPreprocessingIntegrations:
type: object
required:
- type
- name
properties:
type:
type: string
enum:
- preprocessingIntegrations
name:
type: string
enum:
- Preprocessing Integrations
applied:
type: array
items:
$ref: '#/components/schemas/ReplayExecutionStepIntegrationsPreprocessingRule'
PostprocessingStateResponse:
type: object
properties:
extendedResults:
type: object
maxProperties: 100
additionalProperties:
type: string
maxLength: 100
ReplayIntegrationsPostprocessingChanges:
type: object
properties:
postprocessingStateChanges:
$ref: '#/components/schemas/PostprocessingStateResponse'
ReplayIntegrationPostprocessingOutcome:
anyOf:
- $ref: '#/components/schemas/ReplayIntegrationsPostprocessingChanges'
- $ref: '#/components/schemas/ReplayIntegrationsProcessingFailure'
ReplayIntegrationsPostprocessingRule:
allOf:
- $ref: '#/components/schemas/ReplayIntegrationsBase'
- $ref: '#/components/schemas/ReplayIntegrationPostprocessingOutcome'
ReplayExecutionStepIntegrationsPostprocessingRule:
allOf:
- $ref: '#/components/schemas/ReplayIntegrationsPostprocessingRule'
ReplayExecutionStepPostprocessingIntegrations:
type: object
required:
- type
- name
properties:
type:
type: string
enum:
- postprocessingIntegrations
name:
type: string
enum:
- Postprocessing Integrations
rankedResults:
type: array
description: 'Compared to the `results` property, `rankedResults` only return a list of document identifiers and
their associated score.
This property allows to get the score of documents beyond the request page without affecting query performance.
This information impacts how the Generate Answering model will generate citations.'
items:
type: object
required:
- identifier
properties:
identifier:
type: string
description: Item identifier. Usually corresponds to the [permanentId](https://docs.coveo.com/en/1913/leverage-machine-learning/about-the-permanentid-field)
field).
score:
type: integer
applied:
type: array
items:
$ref: '#/components/schemas/ReplayExecutionStepIntegrationsPostprocessingRule'
ReplayExecutionStepRulesBase:
oneOf:
- $ref: '#/components/schemas/ReplayExecutionStepParamOverrides'
- $ref: '#/components/schemas/ReplayExecutionStepThesaurus'
- $ref: '#/components/schemas/ReplayExecutionStepStopWords'
- $ref: '#/components/schemas/ReplayExecutionStepFilters'
- $ref: '#/components/schemas/ReplayExecutionStepRankingExpressions'
- $ref: '#/components/schemas/ReplayExecutionStepFeaturedResults'
- $ref: '#/components/schemas/ReplayExecutionStepRankingWeights'
- $ref: '#/components/schemas/ReplayExecutionStepContentRecommendation'
- $ref: '#/components/schemas/ReplayExecutionStepProductRecommendation'
- $ref: '#/components/schemas/ReplayExecutionStepART'
- $ref: '#/components/schemas/ReplayExecutionStepDNE'
- $ref: '#/components/schemas/ReplayExecutionStepTriggers'
- $ref: '#/components/schemas/ReplayExecutionStepPreprocessingIntegrations'
- $ref: '#/components/schemas/ReplayExecutionStepPostprocessingIntegrations'
discriminator:
propertyName: type
mapping:
triggers: '#/components/schemas/ReplayExecutionStepTriggers'
dne: '#/components/schemas/ReplayExecutionStepDNE'
art: '#/components/schemas/ReplayExecutionStepART'
productRecommendation: '#/components/schemas/ReplayExecutionStepProductRecommendation'
contentRecommendation: '#/components/schemas/ReplayExecutionStepContentRecommendation'
rankingWeights: '#/components/schemas/ReplayExecutionStepRankingWeights'
featuredResults: '#/components/schemas/ReplayExecutionStepFeaturedResults'
rankingExpressions: '#/components/schemas/ReplayExecutionStepRankingExpressions'
filters: '#/components/schemas/ReplayExecutionStepFilters'
stopWords: '#/components/schemas/ReplayExecutionStepStopWords'
thesaurus: '#/components/schemas/ReplayExecutionStepThesaurus'
paramOverrides: '#/components/schemas/ReplayExecutionStepParamOverrides'
preprocessingIntegrations: '#/components/schemas/ReplayExecutionStepPreprocessingIntegrations'
postprocessingIntegrations: '#/components/schemas/ReplayExecutionStepPostprocessingIntegrations'
ReplayExecutionStepRules:
allOf:
- $ref: '#/components/schemas/ListOfExecutionSteps'
- $ref: '#/components/schemas/ReplayExecutionStepRulesBase'
ReplayExecutionStepIndexQuery:
type: object
required:
- type
- name
- request
properties:
type:
type: string
enum:
- indexQuery
name:
type: string
enum:
- Index query
request:
description: 'The raw request parameters sent to the index.
'
ReplayExecutionStepSpecific:
oneOf:
- $ref: '#/components/schemas/ReplayExecutionStepPipelineSelection'
- $ref: '#/components/schemas/ReplayExecutionStepRules'
- $ref: '#/components/schemas/ReplayExecutionStepIndexQuery'
ReplayExecutionStep:
allOf:
- $ref: '#/components/schemas/ReplayExecutionStepBase'
- $ref: '#/components/schemas/ReplayExecutionStepSpecific'
ReplayRankingInfoWeights:
type: object
description: 'Map of ranking factors and respective scores.
'
additionalProperties:
type: number
format: float
example:
title: 1000
uri: 500
source: 240
ReplayRankingInfoTermsWeight:
type: object
required:
- term
- weightInfo
properties:
term:
type: object
additionalProperties:
$ref: '#/components/schemas/ReplayRankingInfoWeights'
description: 'The weight factors applied to a specific term.
'
weightInfo:
$ref: '#/components/schemas/ReplayRankingInfoWeights'
description: 'A summary of the weight factors applied for these terms.
'
ReplayRankingInfoQueryRankingExpressionRule:
type: object
required:
- type
properties:
id:
type: string
description: The id of the rule that was applied.
type:
type: string
description: The type of rule that was applied
example: ranking_expression
ReplayRankingInfoQueryRankingExpression:
type: object
required:
- expression
- origin
- score
properties:
expression:
type: string
description: The ranking expression.
origin:
type: string
description: The origin of the ranking expression.
example: query_pipeline
rule:
$ref: '#/components/schemas/ReplayRankingInfoQueryRankingExpressionRule'
score:
type: number
format: float
description: The score resulting from this ranking expression.
ReplayRankingInfoWeightComposition:
type: object
properties:
termsWeights:
type: array
items:
$ref: '#/components/schemas/ReplayRankingInfoTermsWeight'
rankingFunctions:
type: array
items:
$ref: '#/components/schemas/ReplayRankingInfoQueryRankingExpression'
queryRankingExpressions:
type: array
items:
$ref: '#/components/schemas/ReplayRankingInfoQueryRankingExpression'
ReplayRankingInfo:
type: object
required:
- documentWeights
- totalWeight
properties:
documentWeights:
$ref: '#/components/schemas/ReplayRankingInfoWeights'
description: 'Summary of all the weight factors applied to the item. The sum of each factor gives the total weight.
'
totalWeight:
type: number
format: float
description: 'Sum of the document''s weights.
'
weightComposition:
$ref: '#/components/schemas/ReplayRankingInfoWeightComposition'
ReplayResult:
type: object
required:
- title
- clickUri
- fields
properties:
title:
type: string
clickUri:
type: string
description: 'The hyperlinkable item URI.
**Notes:**
- Use the `clickUri` value when you want to create hyperlinks to the item, rather than the `uri` or `printableUri`
value.
- The `clickUri` value is not necessarily unique for each item.'
example: https://example.com/t/1/898/2
rankingInfo:
$ref: '#/components/schemas/ReplayRankingInfo'
fields:
type: object
additionalProperties: true
description: 'The list of fields that were included in the results.
'
InspectReplayResponse:
type: object
required:
- requestParameters
- execution
- results
- totalResultsCount
properties:
requestParameters:
type: object
additionalProperties: true
example:
q: adventure books
aq: '@author=john'
execution:
type: array
items:
$ref: '#/components/schemas/ReplayExecutionStep'
results:
type: array
items:
$ref: '#/components/schemas/ReplayResult'
totalResultsCount:
type: integer
description: 'The total number of items matching the query for the current user (security trimming applied).
'
InspectSearchRequest:
type: object
required:
- searchParameters
properties:
searchParameters:
$ref: '#/components/schemas/RestQueryParameters'
InspectSearchResponse:
type: object
required:
- execution
- results
- totalResultsCount
properties:
execution:
type: array
items:
$ref: '#/components/schemas/ReplayExecutionStep'
results:
type: array
items:
$ref: '#/components/schemas/ReplayResult'
totalResultsCount:
type: integer
description: 'The total number of items matching the query for the current user (security trimming applied).
'
GetDocumentDictionaryFieldsResponseV3:
type: object
required:
- items
properties:
items:
type: array
minItems: 0
maxItems: 25000
items:
type: object
required:
- field
- keyValueCount
properties:
field:
type: string
description: The name of the dictionary field.
keyValueCount:
type: integer
description: The number of unique key-value pairs for this dictionary field.
minimum: 0
maximum: 100000
ListDictionaryFieldValuesResponseV3:
type: object
required:
- items
- totalPages
- totalEntries
properties:
items:
type: array
description: The list of key-value pairs for the requested page.
minItems: 0
maxItems: 1000
items:
type: object
required:
- key
- value
properties:
key:
type: string
description: The key of the dictionary entry.
value:
description: The value of the dictionary entry.
anyOf:
- type: string
- type: integer
- type: number
- type: array
items:
type: string
totalPages:
type: integer
description: The total number of pages available based on the `perPage` parameter.
minimum: 0
totalEntries:
type: integer
description: The total number of key-value pairs in the dictionary field (after applying any filter).
minimum: 0
CreateStatementGroupResponse:
required:
- id
- name
- type
type: object
properties:
id:
type: string
description: The unique identifier of the statement group.
example: 679adb80-444e-11ea-b77f-2e728ce88125
name:
type: string
description: The name of the statement group.
example: Community
type:
type: string
description: The type name of the statement group.
enum:
- campaign
- permanent
isActive:
type: boolean
description: The start date of the campaign.
example: false
campaignStart:
type: string
description: The start date of the campaign.
example: '2001-07-20T23:01:05'
campaignEnd:
type: string
description: The end date of the campaign.
example: '2002-09-07T10:07:20'
description:
type: string
description: The intended purpose of this statement group.
example: Provide contextually relevant query recommendations/results to Community site users.
conditionId:
type: string
description: 'The condition that must be met by a query in order to route that query through this query pipeline.
Typically, each query pipeline except the default one should have a condition, and you should ensure that the
conditions you set on query pipelines are mutually exclusive.
**Note:**
A query cannot be routed through a query pipeline that does not have a condition unless:
- That query pipeline is set as the default query pipeline (see the `isDefault` property), or
- That query pipeline is enforced through the `pipeline` parameter of the query itself, in which case the query
pipeline condition is bypassed.'
CreateAssociationRequest:
required:
- modelId
type: object
properties:
modelId:
type: string
description: The unique identifier of the ML model to create an association with.
example: mycoveocloudorganization_topclicks_My_ART_Model
rankingModifier:
type: integer
description: "The ranking score modifier the ML model should apply to each item it recommends.\n\nUsed by the following\
\ ML models:\n - Automatic relevance tuning (default value: `1000`)\n - Event recommendation (default value:\
\ `1000`)\""
format: int32
example: 500
matchBasicExpression:
type: boolean
description: 'Whether all items recommended by the ML model should match the basic query expression (e.g., end-user
input in the search box).
Used by the following ML models:
- Automatic relevance tuning (default value: `false`)'
matchAdvancedExpression:
type: boolean
description: 'Whether all items recommended by the ML model should match the advanced query expression (e.g., facet
selections).
Used by the following ML models:
- Automatic relevance tuning (default value: `true`)'
intelligentTermDetection:
type: boolean
description: "Whether the ML model should use the Intelligent Term Detection (ITD) feature to refine queries by\
\ extracting relevant keywords from the large query expression and injecting those in the basic query expression.\n\
\ \nUsed by the following ML models:\n- Automatic relevance tuning (default value: `false`)"
intelligentTermDetectionPartialMatchThreshold:
type: string
description: 'An absolute or relative value indicating the minimum number (rounded up) of partial match expression
keywords an item must contain to match the expression refined by the Intelligent Term Detection (ITD) feature.
If specified, the `intelligentTermDetectionPartialMatchKeywords` value must either be:
- a number between 1 and 10
- a percentage value between 1% and 100% (e.g., `75%`)
**Examples:**
- `3`
- `75%`
**Notes:**
- This parameter has no meaning unless the `intelligentTermDetection` parameter is set to `true`.
Used by the following ML model:
- Automatic relevance tuning (default value: `60%`)'
example: 75%
default: 60%
intelligentTermDetectionPartialMatchKeywords:
type: integer
description: 'The minimum number of keywords that need to be present in an Intelligent Term Detection (ITD) response
to convert it to a partial match expression.
**Notes:**
- This parameter has no meaning unless the `intelligentTermDetection` parameter is set to `true`.
Used by the following ML model:
- Automatic relevance tuning (default value: `1`)'
format: int32
example: 4
default: 1
condition:
type: string
description: The unique identifier of the condition that must be satisfied for a request to be processed by the
ML model.
example: 45a7892e-a63f-4c8e-8795-ab38c8c18d7e
maxRecommendations:
type: integer
description: 'The maximum number of recommendations the ML model should return. This should be set to a relatively
low value (typically well below 50), otherwise some of the recommended items may not actually be relevant. (Automatic
relevance tuning default value: 5. Query suggest default value: 10)'
format: int32
cacheMaximumAge:
type: string
description: 'The maximum age of cached query results the ML model should accept, in the ISO - 8601 format only
including the seconds and milliseconds part. **Default:** `PT1800S`.
For each incoming query to be processed by the ML model, if a result set for an identical previously made query
is available in cache and this result set is not older than the specified value, the ML model makes recommendations
based on that cached query result set. Otherwise, the query is executed against the index.'
example: PT300S
enableWordCompletion:
type: boolean
description: 'Whether the ML model should attempt to complete the last word of the basic query expression and increase
the ranking score of the resulting expression so that it is returned as the first completion suggestion.
Used by the following ML models:
- Query suggestions (default value: `true`)'
description:
type: string
description: The ML model association description.
exclusive:
type: boolean
description: 'Whether the Search API should only return items which were recommended by the ML model, even if other
items matching the query were found in the index.
Used by the following ML models:
- Event recommendations (default value: `true`)
- Product recommendations (default value: `true`)'
customQueryParameters:
type: object
additionalProperties: true
description: 'The additional parameters to send to Coveo ML.
Among other things, this can be used to specify the [`strategy`](https://docs.coveo.com/en/p85e0425/) to use when
querying a Product Recommendations model (for example, `{ "strategy": "frequentBought" }`. The valid `strategy`
values are:
- `cart`
- `frequentBought`
- `frequentViewed`
- `popularBought`
- `popularViewed`
- `recentlyBought`
- `recentlyViewed`
- `user`'
useAdvancedConfiguration:
type: boolean
description: '**Internal:** This property is exposed for internal use by the Coveo Cloud administration console.
Whether the administration console should show the advanced editor for this association.
**Note:** Properties not supported by the standard editor may not be preserved if managed via direct API calls
or the advanced editor.
**Default:** `false`'
dynamicNavigationExperience:
$ref: '#/components/schemas/DynamicNavigationExperienceConfiguration'
contentIdKeys:
type: array
description: 'The names of the fields to use to uniquely identify items in the index.
**Default:** `["permanentid","urihash"]`'
items:
type: string
statementGroupId:
type: string
description: The unique identifier of the statement group.
example: 679adb80-444e-11ea-b77f-2e728ce88125
passageRetrieval:
$ref: '#/components/schemas/PassageRetrievalConfiguration'
FeaturedResultRulePredicate:
type: object
properties:
basicQueryExpression:
type: string
description: The expression to match against.
example: gaming laptop
matchOperator:
$ref: '#/components/schemas/FeaturedResultRuleMatchOperator'
locale:
$ref: '#/components/schemas/FeaturedResultRulePredicateLocale'
FeaturedResultRuleLocalizedContentLocaleAuto:
required:
- default
type: object
properties:
default:
type: string
description: The default locale of the Knowledge Article to default to if it's not available in the user's locale.
example: en-US
FeaturedResultRuleTarget:
type: object
properties:
uniqueId:
type: string
description: Select a document by unique id (@urihash value).
example: '{ "uniqueId": "3d4248b95a27" }'
localizedContent:
$ref: '#/components/schemas/FeaturedResultRuleLocalizedContent'
queryExpression:
type: string
description: Select documents using a query expression.
example: '{ "queryExpression": "@source==TopSource" }'
RestDebugRankingExpressionGroup:
required:
- numberOfDocuments
- rankingExpressions
type: object
properties:
rankingExpressions:
type: array
items:
$ref: '#/components/schemas/RestDebugRankingExpression'
numberOfDocuments:
type: integer
format: int32
OutgoingReferencedContextProperty:
required:
- feature
- pipelineId
- propertyName
type: object
properties:
propertyName:
type: string
description: The name of the referenced context property.
example: userRole
feature:
type: string
description: The query pipeline feature in which this context property was referenced (see [Query Pipeline Language
(QPL)](https://docs.coveo.com/en/1449/)).
example: boost
enum:
- filter
- trigger
- ranking
- stop
- thesaurus
- top
- topClicks
- querySuggest
- rankingweight
- recommendation
- queryParamOverride
pipelineId:
type: string
description: The unique identifier of the query pipeline associated to this context property.
example: 120deecf-7822-4d7b-885f-53f184a3a76c
EditAssociationRequest:
type: object
properties:
rankingModifier:
type: integer
description: "The ranking score modifier the ML model should apply to each item it recommends.\n \nUsed by the following\
\ ML models:\n- Automatic relevance tuning (default value: `1000`)\n- Event recommendation (default value: `1000`)"
format: int32
example: 500
matchBasicExpression:
type: boolean
description: 'Whether all items recommended by the ML model should match the basic query expression (e.g., end-user
input in the search box).
Used by the following ML models:
- Automatic relevance tuning (default value: `false`)'
matchAdvancedExpression:
type: boolean
description: 'Whether all items recommended by the ML model should match the advanced query expression (e.g., facet
selections).
Used by the following ML models:
- Automatic relevance tuning (default value: `true`)'
intelligentTermDetection:
type: boolean
description: "Whether the ML model should use the Intelligent Term Detection (ITD) feature to refine queries by\
\ extracting relevant keywords from the large query expression and injecting those in the basic query expression.\n\
\ \nUsed by the following ML models:\n- Automatic relevance tuning (default value: `false`)"
intelligentTermDetectionPartialMatchThreshold:
type: string
description: 'An absolute or relative value indicating the minimum number (rounded up) of partial match expression
keywords an item must contain to match the expression refined by the Intelligent Term Detection (ITD) feature.
If specified, the `intelligentTermDetectionPartialMatchKeywords` value must either be:
- a number between 1 and 10
- a percentage value between 1% and 100% (e.g., `75%`)
**Examples:**
- `3`
- `75%`
**Notes:**
- This parameter has no meaning unless the `intelligentTermDetection` parameter is set to `true`.
Used by the following ML model:
- Automatic relevance tuning (default value: `60%`)'
example: 75%
default: 60%
intelligentTermDetectionPartialMatchKeywords:
type: integer
description: 'The minimum number of keywords that need to be present in an Intelligent Term Detection (ITD) response
to convert it to a partial match expression.
**Notes:**
- This parameter has no meaning unless the `intelligentTermDetection` parameter is set to `true`.
Used by the following ML model:
- Automatic relevance tuning (default value: `1`)'
format: int32
example: 4
default: 1
condition:
type: string
description: The unique identifier of the condition that must be satisfied for a request to be processed by the
ML model.
example: 45a7892e-a63f-4c8e-8795-ab38c8c18d7e
maxRecommendations:
type: integer
description: 'The maximum number of recommendations the ML model should return. This should be set to a relatively
low value (typically well below 50), otherwise some of the recommended items may not actually be relevant. (Automatic
relevance tuning default value: 5. Query suggest default value: 10)'
format: int32
cacheMaximumAge:
type: string
description: 'The maximum age of cached query results the ML model should accept, in the ISO - 8601 format only
including the seconds and milliseconds part. **Default:** `PT1800S`.
For each incoming query to be processed by the ML model, if a result set for an identical previously made query
is available in cache and this result set is not older than the specified value, the ML model makes recommendations
based on that cached query result set. Otherwise, the query is executed against the index.'
example: PT300S
enableWordCompletion:
type: boolean
description: 'Whether the ML model should attempt to complete the last word of the basic query expression and increase
the ranking score of the resulting expression so that it is returned as the first completion suggestion.
Used by the following ML models:
- Query suggestions (default value: `true`)'
description:
type: string
description: The ML model association description.
exclusive:
type: boolean
description: 'Whether the Search API should only return items which were recommended by the ML model, even if other
items matching the query were found in the index.
Used by the following ML models:
- Event recommendations (default value: `true`)
- Product recommendations (default value: `true`)'
customQueryParameters:
type: object
additionalProperties: true
description: 'The additional parameters to send to Coveo ML.
Among other things, this can be used to specify the [`strategy`](https://docs.coveo.com/en/p85e0425/) to use when
querying a Product Recommendations model (for example, `{ "strategy": "frequentBought" }`. The valid `strategy`
values are:
- `cart`
- `frequentBought`
- `frequentViewed`
- `popularBought`
- `popularViewed`
- `recentlyBought`
- `recentlyViewed`
- `user`'
useAdvancedConfiguration:
type: boolean
description: '**Internal:** This property is exposed for internal use by the Coveo Cloud administration console.
Whether the administration console should show the advanced editor for this association.
**Note:** Properties not supported by the standard editor may not be preserved if managed via direct API calls
or the advanced editor.
**Default:** `false`'
dynamicNavigationExperience:
$ref: '#/components/schemas/DynamicNavigationExperienceConfiguration'
contentIdKeys:
type: array
description: 'The names of the fields to use to uniquely identify items in the index.
**Default:** `["permanentid","urihash"]`'
items:
type: string
statementGroupId:
type: string
description: The unique identifier of the statement group.
example: 679adb80-444e-11ea-b77f-2e728ce88125
passageRetrieval:
$ref: '#/components/schemas/PassageRetrievalConfiguration'
RestDebugUserIdentity:
required:
- name
- provider
- type
type: object
properties:
name:
type: string
provider:
type: string
type:
type: string
authCookie:
type: string
infos:
type: object
additionalProperties:
type: string
RestOperationValidationRequestCreateStatementGroupRequest:
required:
- operationType
type: object
properties:
operationType:
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
model:
$ref: '#/components/schemas/CreateOrUpdateStatementGroup'
resourceId:
type: string
description: 'The identifier of the resource. '
example: id
FeaturedResultRule:
required:
- defaultMatchOperator
- name
- predicates
- targets
type: object
properties:
name:
type: string
example: winterPromotion01
defaultMatchOperator:
$ref: '#/components/schemas/FeaturedResultRuleMatchOperator'
predicates:
type: array
description: Search queries that will trigger this featured result to be shown.
example:
- basicQueryExpression: video game
locale:
all: {}
items:
$ref: '#/components/schemas/FeaturedResultRulePredicate'
targets:
type: array
description: Documents that will be shown as featured results.
example:
- uniqueId: 2228d0a698fd
- localizedContent:
familyId: '112233'
locale:
auto:
default: en-US
familyIdField: '@sfarticlenumber'
localeField: '@locale'
- queryExpression: '@permanentid="6cdw9d02d17"'
items:
$ref: '#/components/schemas/FeaturedResultRuleTarget'
qplPredicates:
type: array
items:
$ref: '#/components/schemas/FeaturedResultQPLCodePredicate'
matchQuery:
type: boolean
matchAdvancedQuery:
type: boolean
includeInFacets:
type: boolean
description:
type: string
isMigrated:
type: boolean
deprecated: true
condition:
$ref: '#/components/schemas/FeaturedResultRuleCondition'
enabled:
type: boolean
description: Whether this featured result should be used by the query pipeline.
example: true
rankingModifier:
type: integer
description: 'The ranking score modifier to apply.
Use a positive value to promote the target, or a negative value to demote it.
**Note:** If you do not specify a value for this parameter, the target will receive a significant boost, causing
it to appear at the top of the ranked query result set.'
format: int32
example: 1000
FeaturedResultRuleBatchValidationRequest:
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/FeaturedResultRuleValidationRequest'
AssociationBatchValidationRequest:
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/AssociationValidationRequest'
RestBatchOperationValidationRequestCreateStatementGroupRequest:
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/RestOperationValidationRequestCreateStatementGroupRequest'
AssociationSingleValidationRequest:
required:
- operation
type: object
properties:
operation:
$ref: '#/components/schemas/AssociationValidationRequest'
ResultRankingRuleOperationValidateCreate:
type: object
required:
- operationType
- model
properties:
operationType:
type: string
enum:
- CREATE
description: 'Validate the creation of a ResultRanking rule.
'
model:
$ref: '#/components/schemas/ResultRankingRuleCreateRequest'
ResultRankingRuleOperationValidateUpdate:
type: object
required:
- operationType
- resourceId
- model
properties:
operationType:
type: string
enum:
- UPDATE
description: 'Validate the update of a ResultRanking rule.
'
model:
$ref: '#/components/schemas/ResultRankingRuleUpdateRequest'
resourceId:
type: string
description: 'The identifier of the resource. '
example: id
ResultRankingValidationRequest:
oneOf:
- $ref: '#/components/schemas/ResultRankingRuleOperationValidateCreate'
- $ref: '#/components/schemas/ResultRankingRuleOperationValidateUpdate'
- $ref: '#/components/schemas/OperationValidateDelete'
discriminator:
propertyName: operationType
mapping:
CREATE: '#/components/schemas/ResultRankingRuleOperationValidateCreate'
UPDATE: '#/components/schemas/ResultRankingRuleOperationValidateUpdate'
DELETE: '#/components/schemas/OperationValidateDelete'
ResultRankingSingleOperationValidate:
required:
- operation
type: object
properties:
operation:
$ref: '#/components/schemas/ResultRankingValidationRequest'
ResultRankingBatchOperationValidate:
required:
- operations
type: object
properties:
operations:
type: array
description: A list of operations to validate.
items:
$ref: '#/components/schemas/ResultRankingValidationRequest'
ResultRankingLocalizedContentFields:
required:
- familyIdField
- localeField
type: object
properties:
familyIdField:
type: string
description: The field holding the id of a document that has multiple localized version.
example: sfarticlenumber
localeField:
type: string
description: The field holding the locale of a document.
example: locale
MlPipelineAssociationWithGroupAndCondition:
type: object
required:
- id
- position
- modelId
- modelStatus
properties:
id:
type: string
position:
type: integer
minimum: 0
modelId:
type: string
modelDisplayName:
type: string
modelEngine:
type: string
modelStatus:
type: string
condition:
type: string
conditionDefinition:
type: string
rankingModifier:
type: integer
maxRecommendations:
type: integer
exclusive:
type: boolean
enableWordCompletion:
type: boolean
intelligentTermDetection:
type: boolean
intelligentTermDetectionPartialMatchThreshold:
type: string
intelligentTermDetectionPartialMatchKeywords:
type: integer
matchBasicExpression:
type: boolean
matchAdvancedExpression:
type: boolean
customQueryParameters:
type: object
additionalProperties: true
useAdvancedConfiguration:
type: boolean
dynamicNavigationExperience:
type: object
associatedGroup: {}
contentIdKeys:
type: array
items:
type: string
description:
type: string
passageRetrieval:
$ref: '#/components/schemas/PassageRetrievalConfiguration'
ListStatementGroupsResponse:
required:
- groupComposition
- groups
- totalCount
type: object
properties:
groups:
type: array
items:
$ref: '#/components/schemas/GetStatementGroup'
totalCount:
type: integer
description: The total number of matching statements across all pages of results.
format: int32
example: 1
groupComposition:
$ref: '#/components/schemas/PipelineGroupsComposition'
UpdateFeaturedResultRuleRequest:
required:
- defaultMatchOperator
- name
- predicates
- targets
type: object
properties:
name:
type: string
example: winterPromotion01
defaultMatchOperator:
$ref: '#/components/schemas/FeaturedResultRuleMatchOperator'
predicates:
type: array
description: Search queries that will trigger this featured result to be shown.
example:
- basicQueryExpression: video game
locale:
all: {}
items:
$ref: '#/components/schemas/FeaturedResultRulePredicate'
targets:
type: array
description: Documents that will be shown as featured results.
example:
- uniqueId: 2228d0a698fd
- localizedContent:
familyId: '112233'
locale:
auto:
default: en-US
familyIdField: '@sfarticlenumber'
localeField: '@locale'
- queryExpression: '@permanentid="6cdw9d02d17"'
items:
$ref: '#/components/schemas/FeaturedResultRuleTarget'
condition:
$ref: '#/components/schemas/FeaturedResultRuleCondition'
qplPredicates:
type: array
items:
$ref: '#/components/schemas/FeaturedResultQPLCodePredicate'
matchQuery:
type: boolean
matchAdvancedQuery:
type: boolean
includeInFacets:
type: boolean
description:
type: string
enabled:
type: boolean
description: Whether this featured result should be used by the query pipeline.
example: true
rankingModifier:
type: integer
description: 'The ranking score modifier to apply.
Use a positive value to promote the target, or a negative value to demote it.
**Note:** If you do not specify a value for this parameter, the target will receive a significant boost, causing
it to appear at the top of the ranked query result set.'
format: int32
example: 1000
statementGroupId:
type: string
description: The unique identifier of the statement group.
example: 679adb80-444e-11ea-b77f-2e728ce88125
AutomaticSelectionConfiguration:
type: object
properties:
isEnabled:
type: boolean
description: Whether to enable automatic facet value selection.
default: true
FeaturedResultRuleLocalizedContent:
required:
- familyId
- familyIdField
- locale
- localeField
type: object
properties:
familyId:
type: string
description: The ID of the KB article to show.
example: '112233'
locale:
$ref: '#/components/schemas/FeaturedResultRuleLocalizedContentLocale'
familyIdField:
type: string
description: Field that identifies the knowledge article.
example: '@sfarticlenumber'
localeField:
type: string
description: Field that identifies the locale of the document.
example: '@locale'
FeaturedResultRuleValidationRequest:
required:
- operationType
type: object
properties:
operationType:
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
model:
$ref: '#/components/schemas/CreateFeaturedResultRuleRequest'
resourceId:
type: string
description: 'The identifier of the resource. '
example: id
FeaturedResultRuleLocalizedContentLocale:
type: object
properties:
auto:
$ref: '#/components/schemas/FeaturedResultRuleLocalizedContentLocaleAuto'
specific:
type: string
description: The locale code of the KB article to show.
example: '{ "code": "en-US" }'
description: Exactly one field should be defined.
RestDebugTopResult:
required:
- applyToEveryResult
- exclusive
- expression
- includeInFacets
- isConstant
- matchAdvancedQuery
- matchQuery
type: object
properties:
expression:
type: string
matchQuery:
type: boolean
matchAdvancedQuery:
type: boolean
exclusive:
type: boolean
modifier:
type: integer
format: int32
isConstant:
type: boolean
includeInFacets:
type: boolean
applyToEveryResult:
type: boolean
CreateFeaturedResultRuleRequest:
required:
- defaultMatchOperator
- name
- predicates
- targets
type: object
properties:
name:
type: string
example: winterPromotion01
defaultMatchOperator:
$ref: '#/components/schemas/FeaturedResultRuleMatchOperator'
predicates:
type: array
description: Search queries that will trigger this featured result to be shown.
example:
- basicQueryExpression: video game
locale:
all: {}
items:
$ref: '#/components/schemas/FeaturedResultRulePredicate'
targets:
type: array
description: Documents that will be shown as featured results.
example:
- uniqueId: 2228d0a698fd
- localizedContent:
familyId: '112233'
locale:
auto:
default: en-US
familyIdField: '@sfarticlenumber'
localeField: '@locale'
- queryExpression: '@permanentid="6cdw9d02d17"'
items:
$ref: '#/components/schemas/FeaturedResultRuleTarget'
condition:
$ref: '#/components/schemas/FeaturedResultRuleCondition'
qplPredicates:
type: array
items:
$ref: '#/components/schemas/FeaturedResultQPLCodePredicate'
matchQuery:
type: boolean
matchAdvancedQuery:
type: boolean
includeInFacets:
type: boolean
description:
type: string
enabled:
type: boolean
description: Whether this featured result should be used by the query pipeline.
example: true
rankingModifier:
type: integer
description: 'The ranking score modifier to apply.
Use a positive value to promote the target, or a negative value to demote it.
**Note:** If you do not specify a value for this parameter, the target will receive a significant boost, causing
it to appear at the top of the ranked query result set.'
format: int32
example: 1000
statementGroupId:
type: string
description: The unique identifier of the statement group.
example: 679adb80-444e-11ea-b77f-2e728ce88125
FeaturedResultQPLCodePredicate:
required:
- code
type: object
properties:
code:
type: string
FeaturedResultRuleLocaleSpecific:
required:
- code
type: object
properties:
code:
type: string
AdminTrustedUris:
type: object
StatementAssociatedGroup:
required:
- id
- isActive
- name
type: object
properties:
id:
type: string
name:
type: string
isActive:
type: boolean
RestRelatedQuestionAnswer:
type: object
RestDebugRankingExpression:
required:
- applyToEveryResult
- expression
- isConstant
- modifier
type: object
properties:
expression:
type: string
modifier:
type: integer
format: int32
isConstant:
type: boolean
applyToEveryResult:
type: boolean
FeaturedResultSingleRuleValidationRequest:
required:
- operation
type: object
properties:
operation:
$ref: '#/components/schemas/FeaturedResultRuleValidationRequest'
TogglePermanentGroupRequest:
type: object
properties:
isActive:
type: boolean
description: Whether or not the group is active.
FeaturedResultRuleMatchOperator:
type: object
properties:
is:
$ref: '#/components/schemas/FeaturedResultRuleEmptyUnionCase'
contains:
$ref: '#/components/schemas/FeaturedResultRuleEmptyUnionCase'
matches:
$ref: '#/components/schemas/FeaturedResultRuleEmptyUnionCase'
FeaturedResultRulePredicateLocale:
type: object
properties:
all:
$ref: '#/components/schemas/FeaturedResultRuleEmptyUnionCase'
unspecified:
$ref: '#/components/schemas/FeaturedResultRuleEmptyUnionCase'
specific:
$ref: '#/components/schemas/FeaturedResultRuleLocaleSpecific'
FeaturedResultRuleCondition:
type: object
properties:
reference:
type: string
description: The ID of a mandatory condition to satisfy.
example: 3896e64f-2132-463a-81c8-26f2e9f89e0a
RestSingleOperationValidationRequestCreateStatementGroupRequest:
required:
- operation
type: object
properties:
operation:
$ref: '#/components/schemas/RestOperationValidationRequestCreateStatementGroupRequest'
AssociationValidationRequest:
required:
- operationType
type: object
properties:
operationType:
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
model:
type: object
oneOf:
- $ref: '#/components/schemas/CreateAssociationRequest'
- $ref: '#/components/schemas/EditAssociationRequest'
resourceId:
type: string
description: 'The identifier of the resource. '
example: id
AssociationWithConditionResponseBody:
required:
- rules
- totalEntries
- totalPages
type: object
properties:
rules:
type: array
items:
$ref: '#/components/schemas/MlPipelineAssociationWithGroupAndCondition'
totalEntries:
type: integer
format: int32
totalPages:
type: integer
format: int32
FeaturedResultRuleEmptyUnionCase:
type: object
AssociationRequest:
type: object
PipelineGroupsComposition:
required:
- campaignGroupCount
- permanentGroupCount
- activeGroupCount
- inactiveGroupCount
- expiredGroupCount
- notStartedGroupCount
type: object
properties:
activeGroupCount:
type: integer
description: The number of active groups in the pipeline.
format: int32
inactiveGroupCount:
type: integer
description: The number of inactive groups in the pipeline.
format: int32
expiredGroupCount:
type: integer
description: The number of expired groups in the pipeline.
format: int32
notStartedGroupCount:
type: integer
description: The number of groups not started in the pipeline.
format: int32
campaignGroupCount:
type: integer
description: The number of campaign groups in the pipeline.
format: int32
permanentGroupCount:
type: integer
description: The number of permanent groups in the pipeline.
format: int32
IdentifiedFeaturedResultRuleIdOnlyResponse:
type: object
required:
- id
properties:
id:
type: string
description: The identifier of the featured results rule
IdentifiedFeaturedResultRule:
type: object
required:
- id
- rule
properties:
id:
type: string
description: The identifier of the featured results rule
rule:
$ref: '#/components/schemas/FeaturedResultRule'
DynamicNavigationExperienceConfiguration:
type: object
properties:
automaticSelection:
$ref: '#/components/schemas/AutomaticSelectionConfiguration'
PassageRetrievalConfiguration:
type: object
properties:
numberOfDocumentsToConsider:
type: integer
description: The number of documents to consider for passage retrieval.
format: int32
minimum: 1
default: 40
maximum: 100
OperationValidateDelete:
required:
- operationType
- resourceId
type: object
properties:
operationType:
type: string
enum:
- DELETE
description: Validate a delete operation on the resource.
resourceId:
type: string
description: The identifier of the resource.
example: id
ListFeatureActiveStateResponse:
type: object
required:
- featureActiveState
properties:
featureActiveState:
type: array
items:
$ref: '#/components/schemas/FeatureActiveState'
FeatureActiveState:
type: object
required:
- feature
- active
properties:
feature:
type: string
description: The name of the QueryPipeline feature
active:
type: boolean
description: Whether the feature is active or not.
SubFeature:
type: string
description: 'The query pipeline sub-feature expressed by this statement.
**Allowed values:**
- Parameter overrides: `queryParamOverride` and `querySuggestParamOverride`.'
enum:
- queryParamOverride
- querySuggestParamOverride
BooleanExpression:
oneOf:
- $ref: '#/components/schemas/CompoundBooleanExpression'
- $ref: '#/components/schemas/OperatorExpression'
- $ref: '#/components/schemas/IsBetweenOperator'
- type: boolean
CompoundBooleanExpression:
type: object
required:
- operator
- left
properties:
operator:
type: string
left:
$ref: '#/components/schemas/BooleanExpression'
right:
$ref: '#/components/schemas/BooleanExpression'
OperatorLeftHandSide:
type: object
required:
- object
properties:
object:
type: string
key:
type: string
keys:
type: array
items:
type: string
OperatorRightHandSide:
oneOf:
- type: string
- type: number
- type: integer
format: int32
- type: boolean
OperatorExpression:
type: object
required:
- operator
- left
properties:
operator:
type: string
left:
$ref: '#/components/schemas/OperatorLeftHandSide'
right:
$ref: '#/components/schemas/OperatorRightHandSide'
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
ConditionDetailed:
type: object
required:
- condition
properties:
condition:
$ref: '#/components/schemas/BooleanExpression'
OutgoingConditionFeature:
type: string
description: '> This property is exposed for backward compatibility reasons.'
deprecated: true
enum:
- when
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
OutgoingCondition:
allOf:
- $ref: '#/components/schemas/OutgoingConditionBase'
OutgoingStatement:
required:
- childrenCount
- definition
- detailed
- feature
- id
- position
- ready
type: object
properties:
id:
type: string
description: The unique identifier of this statement.
example: 0befc717-dfd7-4962-9b85-28f5c26fd23b
description:
type: string
description: The intended purpose of this statement in an actual implementation.
example: Spotlight the Coveo brand in query results.
feature:
type: string
description: The query pipeline feature expressed by this statement (see [Query Pipeline Language (QPL)](https://docs.coveo.com/en/1449/)).
example: ranking
enum:
- filter
- trigger
- ranking
- stop
- thesaurus
- top
- topClicks
- querySuggest
- rankingweight
- recommendation
- queryParamOverride
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: boost `coveo` by 100
parent:
$ref: '#/components/schemas/OutgoingCondition'
condition:
$ref: '#/components/schemas/OutgoingCondition'
position:
type: integer
description: 'The 1-based position of this statement relative to other statements in the same query pipeline.
Query pipeline statements are evaluated sequentially from the lowest to the highest position, which implies that
higher-positioned statements can override or complement lower-positioned ones.
**Example:**
If a query pipeline contains the following statements:
- `replace dog cat` (position 1)
- `replace cat feline` (position 2)
That pipeline will replace the keyword `dog` in a query by the keyword `feline`.'
format: int32
example: 2
ready:
type: boolean
description: 'Whether the underlying Coveo Machine Learning model is ready.
This property only has a meaning with `recommendation`, `topClicks`, and `querySuggest` statements.'
example: false
detailed: {}
warnings:
type: array
description: The warning messages that apply to this query pipeline statement.
example:
- The Salesforce index does not support the use of keywords in a ranking expression.
items:
type: string
displayName:
type: string
description: 'The display name for this Machine Learning model.
This property only has a meaning with `recommendation`, `topClicks`, and `querySuggest` statements.'
example: ''
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
statementGroupId:
deprecated: true
type: string
description: Deprecated. Do not use.
OutgoingStatements:
required:
- statements
- totalCount
- totalEntries
- totalPages
type: object
properties:
statements:
type: array
description: The matching statements in the current page of results.
items:
$ref: '#/components/schemas/OutgoingStatement'
totalEntries:
type: integer
description: The total number of matching statements across all pages of results.
format: int32
example: 1
totalPages:
type: integer
description: The total number of available pages of results.
format: int32
example: 1
totalCount:
type: integer
description: '> This property is exposed for backward compatibility reasons. Use the `totalEntries` property instead.
The total number of matching entries across all pages of results.'
format: int32
example: 1
deprecated: true
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
BulkDeleteStatementsRequest:
type: object
required:
- ids
properties:
ids:
type: array
description: A list of resource identifiers to delete. A maximum of **100** can be sent.
maxItems: 100
items:
type: string
maxLength: 38
BulkDeleteResultStatementsResponse:
type: object
IncomingCopyStatements:
required:
- destinationPipelineId
- statementIds
type: object
properties:
statementIds:
type: array
description: The unique identifiers of the query pipeline statements to copy.
example:
- 4f0a9531-4fab-45fd-a1e3-eb07a5aceccb
items:
type: string
destinationPipelineId:
type: string
description: The unique identifier of the query pipeline to copy the statements to.
example: 120deecf-7822-4d7b-885f-53f184a3a76
IncomingMoveStatement:
type: object
properties:
position:
type: integer
description: 'The 1-based position of this statement relative to other statements in the target query pipeline.
Use either this property or the `after` property (not both) to move this statement.'
format: int32
after:
type: string
description: 'The unique identifier of the statement after which to move this statement in the target query pipeline.
Use either this property or the `position` property (not both) to move this statement.'
example: 0befc717-dfd7-4962-9b85-28f5c26fd23b
pageSize:
type: integer
description: '> This parameter is exposed for backward compatibility reasons only.'
format: int32
deprecated: true
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
RestOperationValidationRequestIncomingStatement:
required:
- operationType
type: object
properties:
operationType:
$ref: '#/components/schemas/ValidationOperationType'
model:
$ref: '#/components/schemas/IncomingStatement'
resourceId:
type: string
description: The identifier of the resource when `operationType` is `UPDATE` or `DELETE`.
example: id
RestSingleOperationValidationRequestIncomingStatement:
required:
- operation
type: object
properties:
operation:
$ref: '#/components/schemas/RestOperationValidationRequestIncomingStatement'
RestOperationValidationError:
required:
- message
type: object
properties:
message:
type: string
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.
RestSingleOperationValidationResponse:
required:
- result
type: object
properties:
result:
$ref: '#/components/schemas/RestOperationValidationResponse'
RestBatchOperationValidationRequestIncomingStatement:
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/RestOperationValidationRequestIncomingStatement'
RestBatchOperationValidationResponse:
required:
- results
type: object
properties:
results:
type: array
description: The list of operation validation results.
items:
$ref: '#/components/schemas/RestOperationValidationResponse'
ResultRankingRuleStatus:
type: string
enum:
- active
- inactive
ResultRankingRuleType:
type: string
enum:
- featuredResults
- rankingExpressions
ResultRankingRuleResponseBase:
type: object
required:
- name
properties:
name:
type: string
description: The name of the result ranking.
example: Back to School
defaultMatchOperator:
$ref: '#/components/schemas/PredicateMatchOperator'
predicates:
type: array
description: The non-QPL conditions under which the rule may apply. The rule will apply when any of these are satisfied.
example:
- kind: basicExpressionAndLocalePredicate
basicQueryExpression: video game
locale:
kind: all
items:
$ref: '#/components/schemas/Predicate'
condition:
$ref: '#/components/schemas/ResultRankingRuleCondition'
description:
type: string
description: The intended purpose of this result ranking.
example: Back to school promotion.
enabled:
type: boolean
description: Whether this result ranking should be used by the query pipeline.
example: true
default: true
isMigrated:
type: boolean
description: Whether this result ranking uses the latest features and is not managed by a legacy client.
example: true
default: true
ResultRankingRuleConditionListResponse:
type: object
properties:
reference:
type: string
description: The ID of a mandatory condition to satisfy.
example: 3896e64f-2132-463a-81c8-26f2e9f89e0a
detailed:
$ref: '#/components/schemas/ConditionDetailed'
ResultRankingRuleListResponseBase:
allOf:
- $ref: '#/components/schemas/ResultRankingRuleResponseBase'
- type: object
properties:
condition:
$ref: '#/components/schemas/ResultRankingRuleConditionListResponse'
ResultRankingRuleFeaturedResultsListResponse:
allOf:
- $ref: '#/components/schemas/ResultRankingRuleListResponseBase'
- $ref: '#/components/schemas/ResultRankingRuleFeaturedResultsBase'
ResultRankingRuleRankingExpressionListResponse:
allOf:
- $ref: '#/components/schemas/ResultRankingRuleListResponseBase'
- $ref: '#/components/schemas/ResultRankingRuleRankingExpressionBase'
ResultRankingRuleListResponse:
oneOf:
- $ref: '#/components/schemas/ResultRankingRuleFeaturedResultsListResponse'
- $ref: '#/components/schemas/ResultRankingRuleRankingExpressionListResponse'
discriminator:
propertyName: kind
mapping:
featured_result: '#/components/schemas/ResultRankingRuleFeaturedResultsListResponse'
ranking_expression: '#/components/schemas/ResultRankingRuleRankingExpressionListResponse'
StatementGroupStatus:
type: string
description: The status of the campaign.
enum:
- active
- inactive
- expired
- notStarted
ResultRankingRuleAssociatedGroupWithStatus:
type: object
required:
- id
- name
properties:
id:
type: string
description: The unique identifier of the associated statement group.
example: 679adb80-444e-11ea-b77f-2e728ce88125
name:
type: string
description: The unique name of the associated statement group.
example: Community
status:
$ref: '#/components/schemas/StatementGroupStatus'
ResultRankingRuleIdentifiedWithGroupStatusListResponse:
type: object
required:
- id
- resultRanking
properties:
id:
type: string
description: The identifier of the result ranking rule
resultRanking:
$ref: '#/components/schemas/ResultRankingRuleListResponse'
associatedGroup:
$ref: '#/components/schemas/ResultRankingRuleAssociatedGroupWithStatus'
ByGroup:
required:
- associated
- orphaned
type: object
properties:
associated:
type: object
additionalProperties:
type: integer
format: int32
orphaned:
type: integer
format: int32
ByStatus:
required:
- active
- inactive
type: object
properties:
active:
type: integer
format: int32
inactive:
type: integer
format: int32
ByType:
required:
- featuredResults
- rankingExpressions
type: object
properties:
rankingExpressions:
type: integer
format: int32
featuredResults:
type: integer
format: int32
ResultRankingGroupByResponse:
required:
- groups
- status
- type
type: object
properties:
groups:
$ref: '#/components/schemas/ByGroup'
status:
$ref: '#/components/schemas/ByStatus'
type:
$ref: '#/components/schemas/ByType'
ResultRankingListResponse:
required:
- resultRankings
- totalCount
- totalPages
- groupedBy
type: object
properties:
resultRankings:
type: array
items:
$ref: '#/components/schemas/ResultRankingRuleIdentifiedWithGroupStatusListResponse'
totalCount:
type: integer
format: int32
totalPages:
type: integer
format: int32
groupedBy:
$ref: '#/components/schemas/ResultRankingGroupByResponse'
ResultRankingRuleIdOnlyResponse:
type: object
required:
- id
properties:
id:
type: string
description: The identifier of the result ranking rule
ResultRankingRuleGetBaseResponse:
type: object
required:
- id
properties:
id:
type: string
description: The identifier of the result ranking rule.
associatedGroup:
$ref: '#/components/schemas/ResultRankingRuleAssociatedGroupWithStatus'
ResultRankingRuleFeaturedResultsGetResponse:
allOf:
- $ref: '#/components/schemas/ResultRankingRuleResponseBase'
- $ref: '#/components/schemas/ResultRankingRuleGetBaseResponse'
- $ref: '#/components/schemas/ResultRankingRuleFeaturedResultsBase'
ResultRankingRuleRankingExpressionGetResponse:
allOf:
- $ref: '#/components/schemas/ResultRankingRuleResponseBase'
- $ref: '#/components/schemas/ResultRankingRuleGetBaseResponse'
- $ref: '#/components/schemas/ResultRankingRuleRankingExpressionBase'
ResultRankingRuleGetResponse:
oneOf:
- $ref: '#/components/schemas/ResultRankingRuleFeaturedResultsGetResponse'
- $ref: '#/components/schemas/ResultRankingRuleRankingExpressionGetResponse'
discriminator:
propertyName: kind
mapping:
featured_result: '#/components/schemas/ResultRankingRuleFeaturedResultsGetResponse'
ranking_expression: '#/components/schemas/ResultRankingRuleRankingExpressionGetResponse'
ResultRankingRuleFeaturedResultsResponse:
allOf:
- $ref: '#/components/schemas/ResultRankingRuleResponseBase'
- $ref: '#/components/schemas/ResultRankingRuleFeaturedResultsBase'
ResultRankingRuleRankingExpressionResponse:
allOf:
- $ref: '#/components/schemas/ResultRankingRuleResponseBase'
- $ref: '#/components/schemas/ResultRankingRuleRankingExpressionBase'
ResultRankingRuleResponse:
oneOf:
- $ref: '#/components/schemas/ResultRankingRuleFeaturedResultsResponse'
- $ref: '#/components/schemas/ResultRankingRuleRankingExpressionResponse'
discriminator:
propertyName: kind
mapping:
featured_result: '#/components/schemas/ResultRankingRuleFeaturedResultsResponse'
ranking_expression: '#/components/schemas/ResultRankingRuleRankingExpressionResponse'
BulkGetResultRankingRuleIdentifiedWithGroupStatusResponse:
type: object
required:
- id
- resultRanking
properties:
id:
type: string
description: The identifier of the result ranking rule
resultRanking:
$ref: '#/components/schemas/ResultRankingRuleResponse'
associatedGroup:
$ref: '#/components/schemas/ResultRankingRuleAssociatedGroupWithStatus'
ResultRankingBulkGetResponse:
required:
- resultRankings
- totalCount
- totalPages
- groupedBy
type: object
properties:
resultRankings:
type: array
items:
$ref: '#/components/schemas/BulkGetResultRankingRuleIdentifiedWithGroupStatusResponse'
totalCount:
type: integer
format: int32
totalPages:
type: integer
format: int32
groupedBy:
$ref: '#/components/schemas/ResultRankingGroupByResponse'
BulkDeleteResultRankingRulesRequest:
type: object
required:
- ids
properties:
ids:
type: array
description: A list of resource identifiers to delete. A maximum of **100** can be sent.
maxItems: 100
items:
type: string
maxLength: 38
BulkDeleteResultRankingRulesResponse:
type: object
CopyResultRankingRulesRequest:
required:
- destinationPipelineId
- resultRankingIds
type: object
properties:
destinationPipelineId:
type: string
description: The unique identifier of the query pipeline to copy the statements to.
example: 120deecf-7822-4d7b-885f-53f184a3a76
resultRankingIds:
type: array
maxItems: 15
description: The unique identifiers of the result ranking rules to copy.
example:
- 4f0a9531-4fab-45fd-a1e3-eb07a5aceccb
items:
type: string
minItems: 1
ResultRankingRuleIdentifiedResponse:
type: object
required:
- id
- resultRanking
properties:
id:
type: string
description: The identifier of the result ranking rule
resultRanking:
$ref: '#/components/schemas/ResultRankingRuleResponse'
CopyResultRankingRulesResponse:
type: object
required:
- resultRankings
properties:
resultRankings:
type: array
items:
$ref: '#/components/schemas/ResultRankingRuleIdentifiedResponse'
ResultRankingRuleIdentifiedWithGroupStatusResponse:
type: object
required:
- id
- resultRanking
properties:
id:
type: string
description: The identifier of the result ranking rule
resultRanking:
$ref: '#/components/schemas/ResultRankingRuleResponse'
associatedGroup:
$ref: '#/components/schemas/ResultRankingRuleAssociatedGroupWithStatus'
StatementGroupType:
type: string
description: The type name of the statement group.
enum:
- campaign
- permanent
StatementGroupComposition:
required:
- otherStatementCount
- resultRankingStatementCount
type: object
properties:
resultRankingStatementCount:
type: integer
description: The number of result ranking statements in this group.
format: int32
otherStatementCount:
type: integer
description: The number of other types of statements in this group.
format: int32
GetStatementGroupBase:
required:
- id
- type
- name
- statementComposition
- createdAt
- warnings
type: object
properties:
id:
type: string
description: The unique identifier of the statement group.
example: 679adb80-444e-11ea-b77f-2e728ce88125
name:
type: string
description: The name of the statement group.
example: Community
type:
$ref: '#/components/schemas/StatementGroupType'
description:
type: string
description: The intended purpose of this statement group.
example: Provide contextually relevant query recommendations/results to Community site users.
conditionId:
type: string
description: 'The condition that must be met by a query in order to route that query through this query pipeline.
Typically, each query pipeline except the default one should have a condition, and you should ensure that the
conditions you set on query pipelines are mutually exclusive.
**Note:**
A query cannot be routed through a query pipeline that does not have a condition unless:
- That query pipeline is set as the default query pipeline (see the `isDefault` property), or
- That query pipeline is enforced through the `pipeline` parameter of the query itself, in which case the query
pipeline condition is bypassed.'
conditionDefinition:
type: string
description: 'The condition that must be met by a query in order to route that query through this query pipeline.
Typically, each query pipeline except the default one should have a condition, and you should ensure that the
conditions you set on query pipelines are mutually exclusive.
**Note:**
A query cannot be routed through a query pipeline that does not have a condition unless:
- That query pipeline is set as the default query pipeline (see the `isDefault` property), or
- That query pipeline is enforced through the `pipeline` parameter of the query itself, in which case the query
pipeline condition is bypassed.'
conditionDetailed:
description: A structured representation of the condition.
createdAt:
type: string
createdBy:
type: string
statementComposition:
$ref: '#/components/schemas/StatementGroupComposition'
modifiedAt:
type: string
modifiedBy:
type: string
warnings:
type: array
items:
type: string
GetCampaignGroupBase:
type: object
properties:
campaignStart:
type: string
description: The start date of the campaign.
example: '2001-07-20T23:01:05-04:00'
campaignEnd:
type: string
description: The end date of the campaign.
example: '2002-09-07T10:07:20-04:00'
status:
$ref: '#/components/schemas/StatementGroupStatus'
GetCampaignGroup:
allOf:
- $ref: '#/components/schemas/GetStatementGroupBase'
- $ref: '#/components/schemas/GetCampaignGroupBase'
GetPermanentGroupBase:
type: object
required:
- isActive
properties:
isActive:
type: boolean
description: Whether or not the group is active.
status:
type: string
description: The status of the group.
enum:
- active
- inactive
GetPermanentGroup:
allOf:
- $ref: '#/components/schemas/GetStatementGroupBase'
- $ref: '#/components/schemas/GetPermanentGroupBase'
GetStatementGroup:
oneOf:
- $ref: '#/components/schemas/GetCampaignGroup'
- $ref: '#/components/schemas/GetPermanentGroup'
discriminator:
propertyName: type
mapping:
campaign: '#/components/schemas/GetCampaignGroup'
permanent: '#/components/schemas/GetPermanentGroup'
CreateOrUpdateStatementGroupBase:
type: object
required:
- type
- name
properties:
name:
type: string
description: The name of the statement group.
example: Community
type:
$ref: '#/components/schemas/StatementGroupType'
description:
type: string
description: The intended purpose of this statement group.
example: Provide contextually relevant query recommendations/results to Community site users.
conditionId:
type: string
description: 'The condition that must be met by a query in order to route that query through this query pipeline.
Typically, each query pipeline except the default one should have a condition, and you should ensure that the
conditions you set on query pipelines are mutually exclusive.
**Note:**
A query cannot be routed through a query pipeline that does not have a condition unless:
- That query pipeline is set as the default query pipeline (see the `isDefault` property), or
- That query pipeline is enforced through the `pipeline` parameter of the query itself, in which case the query
pipeline condition is bypassed.'
CreateOrUpdateCampaignGroupBase:
type: object
required:
- campaignStart
- campaignEnd
properties:
campaignStart:
type: string
description: The start date of the campaign.
example: '2001-07-20T23:01:05-04:00'
campaignEnd:
type: string
description: The end date of the campaign.
example: '2002-09-07T10:07:20-04:00'
CreateOrUpdateCampaignGroup:
allOf:
- $ref: '#/components/schemas/CreateOrUpdateStatementGroupBase'
- $ref: '#/components/schemas/CreateOrUpdateCampaignGroupBase'
CreateOrUpdatePermanentGroupBase:
type: object
required:
- isActive
properties:
isActive:
type: boolean
description: Whether or not the group is active.
CreateOrUpdatePermanentGroup:
allOf:
- $ref: '#/components/schemas/CreateOrUpdateStatementGroupBase'
- $ref: '#/components/schemas/CreateOrUpdatePermanentGroupBase'
CreateOrUpdateStatementGroup:
oneOf:
- $ref: '#/components/schemas/CreateOrUpdateCampaignGroup'
- $ref: '#/components/schemas/CreateOrUpdatePermanentGroup'
discriminator:
propertyName: type
mapping:
campaign: '#/components/schemas/CreateOrUpdateCampaignGroup'
permanent: '#/components/schemas/CreateOrUpdatePermanentGroup'
example:
name: Community
type: campaign
description: Provides contextually relevant query recommendations/results to Community site users.
campaignStart: '2001-07-20T23:01:05-04:00'
campaignEnd: '2002-09-07T10:07:20-04:00'
StatementGroupAssociationItem:
type: object
description: An object representing a rule to associate to a group.
required:
- featureType
- ruleId
properties:
featureType:
type: string
enum:
- resultRankings
description: The query pipeline feature that's enabled by this rule.
ruleId:
type: string
description: The unique identifier of the rule.
example: 493e51a8-bc9b-462d-9534-08a0995ecd55
DissociateStatementGroupAssociationsRequest:
type: object
properties:
associations:
type: array
maxItems: 50
description: 'The rules that should be dissociated from their group, if any.
If a rule is not associated to a group, it won''t be updated.
**Note:**: Invalid rule IDs will cause the request to fail.'
items:
$ref: '#/components/schemas/StatementGroupAssociationItem'
UpdateStatementGroupAssociationsRequest:
type: object
properties:
toAdd:
type: array
maxItems: 50
description: 'The rules to add to this group.
If you specify a rule from another group, it will be removed from the original group and added to this one instead.
**Note:** Invalid rule IDs will cause the request to fail.'
items:
$ref: '#/components/schemas/StatementGroupAssociationItem'
toRemove:
type: array
maxItems: 50
description: 'The rules to remove from this group.
**Note:** Orphaned rules, rules that are associated with another group, and non-existent rules will be ignored.'
items:
$ref: '#/components/schemas/StatementGroupAssociationItem'
UpdateStatementGroupAssociationsResponse:
type: object
required:
- associatedRules
properties:
associatedRules:
type: array
description: The rules associated with this group.
items:
$ref: '#/components/schemas/StatementGroupAssociationItem'
SettingResponseBase:
type: object
required:
- id
- description
- modifiedBy
- modifiedAt
- name
- position
properties:
id:
type: string
description: The unique identifier of this setting.
example: 7152a557-5fd8-4ec4-a8e7-a74544c17291
description:
type: string
conditionId:
type: string
description: The unique identifier of the condition that must be met for this statement to apply.
example: 45a7892e-a63f-4c8e-8795-ab38c8c18d7e
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'
name:
type: string
description: The name of the setting to configure.
position:
type: integer
description: The 0-based position of this query pipeline setting to other query pipeline settings in this query
pipeline.
minimum: 0
format: int32
StringSettingResponse:
allOf:
- $ref: '#/components/schemas/SettingResponseBase'
- type: object
required:
- value
properties:
value:
type: string
type:
type: string
default: STRING
BooleanSettingResponse:
allOf:
- $ref: '#/components/schemas/SettingResponseBase'
- type: object
required:
- value
properties:
value:
type: boolean
type:
type: string
default: BOOLEAN
IntegerSettingResponse:
allOf:
- $ref: '#/components/schemas/SettingResponseBase'
- type: object
required:
- value
properties:
value:
type: integer
format: int32
type:
type: string
default: INTEGER
DoubleSettingResponse:
allOf:
- $ref: '#/components/schemas/SettingResponseBase'
- type: object
required:
- value
properties:
value:
type: number
format: double
type:
type: string
default: DOUBLE
StructuredSettingBooleanValue:
type: boolean
StructuredSettingStringValue:
type: string
StructuredSettingIntegerValue:
type: integer
format: int32
StructuredSettingDoubleValue:
type: number
StructuredSettingListValue:
type: array
items:
oneOf:
- $ref: '#/components/schemas/StructuredSettingBooleanValue'
- $ref: '#/components/schemas/StructuredSettingStringValue'
- $ref: '#/components/schemas/StructuredSettingIntegerValue'
- $ref: '#/components/schemas/StructuredSettingDoubleValue'
- $ref: '#/components/schemas/StructuredSettingListValue'
- $ref: '#/components/schemas/StructuredSettingValue'
StructuredSettingValue:
type: object
additionalProperties:
oneOf:
- $ref: '#/components/schemas/StructuredSettingBooleanValue'
- $ref: '#/components/schemas/StructuredSettingStringValue'
- $ref: '#/components/schemas/StructuredSettingIntegerValue'
- $ref: '#/components/schemas/StructuredSettingDoubleValue'
- $ref: '#/components/schemas/StructuredSettingListValue'
- $ref: '#/components/schemas/StructuredSettingValue'
minProperties: 1
maxProperties: 10
StructuredSettingResponse:
allOf:
- $ref: '#/components/schemas/SettingResponseBase'
- type: object
required:
- value
properties:
value:
$ref: '#/components/schemas/StructuredSettingValue'
type:
type: string
default: STRUCTURED
SettingResponse:
oneOf:
- $ref: '#/components/schemas/BooleanSettingResponse'
- $ref: '#/components/schemas/IntegerSettingResponse'
- $ref: '#/components/schemas/DoubleSettingResponse'
- $ref: '#/components/schemas/StringSettingResponse'
- $ref: '#/components/schemas/StructuredSettingResponse'
discriminator:
propertyName: name
mapping:
aq: '#/components/schemas/StringSettingResponse'
cq: '#/components/schemas/StringSettingResponse'
childField: '#/components/schemas/StringSettingResponse'
commerce.catalogId: '#/components/schemas/StringSettingResponse'
commerce.filter: '#/components/schemas/StringSettingResponse'
debug: '#/components/schemas/BooleanSettingResponse'
dq: '#/components/schemas/StringSettingResponse'
enableDidYouMean: '#/components/schemas/BooleanSettingResponse'
enableDuplicateFiltering: '#/components/schemas/BooleanSettingResponse'
enableFallbackSearchOnEmptyQueryResults: '#/components/schemas/BooleanSettingResponse'
enableMLDidYouMean: '#/components/schemas/BooleanSettingResponse'
enableQuerySyntax: '#/components/schemas/BooleanSettingResponse'
enableTermPermutations: '#/components/schemas/BooleanSettingResponse'
excerptLength: '#/components/schemas/IntegerSettingResponse'
facetOptions.enableIndexFacetOrdering: '#/components/schemas/BooleanSettingResponse'
facetOptions.freezeFacetOrder: '#/components/schemas/BooleanSettingResponse'
filterField: '#/components/schemas/StringSettingResponse'
filterFieldRange: '#/components/schemas/IntegerSettingResponse'
firstResult: '#/components/schemas/IntegerSettingResponse'
forwardLanguageToCoveoIndex: '#/components/schemas/BooleanSettingResponse'
isGuestUser: '#/components/schemas/BooleanSettingResponse'
index: '#/components/schemas/StringSettingResponse'
locale: '#/components/schemas/StringSettingResponse'
logicalIndex: '#/components/schemas/StringSettingResponse'
lowercaseOperators: '#/components/schemas/BooleanSettingResponse'
lq: '#/components/schemas/StringSettingResponse'
logicalIndexAggregation: '#/components/schemas/StringSettingResponse'
lqPartialMatchKeywords: '#/components/schemas/IntegerSettingResponse'
lqPartialMatchMaxKeywords: '#/components/schemas/IntegerSettingResponse'
lqPartialMatchThreshold: '#/components/schemas/StringSettingResponse'
maximumAge: '#/components/schemas/IntegerSettingResponse'
maximumTimeoutMs: '#/components/schemas/IntegerSettingResponse'
mlDidYouMeanUseFacetCount: '#/components/schemas/BooleanSettingResponse'
mlDidYouMeanMaxCandidates: '#/components/schemas/IntegerSettingResponse'
mlDidYouMeanMinScore: '#/components/schemas/DoubleSettingResponse'
numberOfResults: '#/components/schemas/IntegerSettingResponse'
opensearch.enabled: '#/components/schemas/BooleanSettingResponse'
parentField: '#/components/schemas/StringSettingResponse'
partialMatch: '#/components/schemas/BooleanSettingResponse'
partialMatchKeywords: '#/components/schemas/IntegerSettingResponse'
partialMatchThreshold: '#/components/schemas/StringSettingResponse'
partialMatchOptions: '#/components/schemas/StructuredSettingResponse'
q: '#/components/schemas/StringSettingResponse'
queryCorrection.options.automaticallyCorrect: '#/components/schemas/StringSettingResponse'
queryCorrection.enabled: '#/components/schemas/BooleanSettingResponse'
questionMark: '#/components/schemas/BooleanSettingResponse'
recommendation: '#/components/schemas/StringSettingResponse'
retrieveFirstSentences: '#/components/schemas/BooleanSettingResponse'
searchHub: '#/components/schemas/StringSettingResponse'
sortCriteria: '#/components/schemas/StringSettingResponse'
sortCriteriaOptions: '#/components/schemas/StructuredSettingResponse'
staticQuery: '#/components/schemas/BooleanSettingResponse'
summaryLength: '#/components/schemas/IntegerSettingResponse'
tab: '#/components/schemas/StringSettingResponse'
timezone: '#/components/schemas/StringSettingResponse'
wildcards: '#/components/schemas/BooleanSettingResponse'
alwaysOnQSCorrection: '#/components/schemas/StructuredSettingResponse'
example: "{\n \"id\": \"554c7b6f-6bba-4b30-b306-bff0f3792a35\",\n \"description\": \"\",\n \"modifiedBy\": \"bjones@example.com\"\
,\n \"modifiedAt\": \"2024-09-09T18:14:07.000Z\",\n \"name\": \"enableQuerySyntax\",\n \"position\": 1,\n \"value\"\
: true,\n \"type\": \"BOOLEAN\"\n}\n"
ListSettingsResponse:
type: object
required:
- items
- totalEntries
- totalPages
properties:
items:
type: array
items:
$ref: '#/components/schemas/SettingResponse'
totalEntries:
type: integer
format: int64
description: The total number of entries matching this request.
totalPages:
type: integer
format: int32
description: The total number of pages matching this request.
CatalogIdSettingResponseExpanded:
allOf:
- $ref: '#/components/schemas/StringSettingResponse'
- type: object
required:
- additionalInformation
properties:
conditionDetailed: {}
additionalInformation:
type: object
description: Additional information about the catalog.
properties:
name:
type: string
description: The name of the catalog.
GeneralSettingResponseExpanded:
allOf:
- $ref: '#/components/schemas/SettingResponse'
- type: object
properties:
conditionDetailed: {}
SettingResponseExpanded:
oneOf:
- $ref: '#/components/schemas/CatalogIdSettingResponseExpanded'
- $ref: '#/components/schemas/GeneralSettingResponseExpanded'
ListSettingsResponseExpanded:
type: object
required:
- items
- totalEntries
- totalPages
properties:
items:
type: array
items:
$ref: '#/components/schemas/SettingResponseExpanded'
totalEntries:
type: integer
format: int64
description: The total number of entries matching this request.
totalPages:
type: integer
format: int32
description: The total number of pages matching this request.
SettingRequestBase:
type: object
required:
- name
properties:
description:
type: string
default: ''
maxLength: 500
conditionId:
type: string
description: The unique identifier of the condition that must be met for this statement to apply.
example: 45a7892e-a63f-4c8e-8795-ab38c8c18d7e
maxLength: 50
StringSettingRequest:
allOf:
- $ref: '#/components/schemas/SettingRequestBase'
- type: object
required:
- name
- value
properties:
name:
type: string
description: The name of the setting to configure.
maxLength: 100
enum:
- aq
- cq
- childField
- commerce.catalogId
- commerce.filter
- dq
- filterField
- index
- locale
- logicalIndex
- lq
- lqPartialMatchThreshold
- logicalIndexAggregation
- parentField
- partialMatchThreshold
- q
- queryCorrection.options.automaticallyCorrect
- recommendation
- searchHub
- sortCriteria
- tab
- timezone
- alwaysOnQSCorrection
value:
type: string
maxLength: 7000
BooleanSettingRequest:
allOf:
- $ref: '#/components/schemas/SettingRequestBase'
- type: object
required:
- name
- value
properties:
name:
type: string
description: The name of the setting to configure.
maxLength: 100
enum:
- debug
- enableDidYouMean
- enableDuplicateFiltering
- enableFallbackSearchOnEmptyQueryResults
- enableMLDidYouMean
- enableQuerySyntax
- enableTermPermutations
- facetOptions.enableIndexFacetOrdering
- facetOptions.freezeFacetOrder
- forwardLanguageToCoveoIndex
- isGuestUser
- lowercaseOperators
- mlDidYouMeanUseFacetCount
- opensearch.enabled
- partialMatch
- queryCorrection.enabled
- questionMark
- retrieveFirstSentences
- staticQuery
- wildcards
value:
type: boolean
IntegerSettingRequest:
allOf:
- $ref: '#/components/schemas/SettingRequestBase'
- type: object
required:
- name
- value
properties:
name:
type: string
description: The name of the setting to configure.
maxLength: 100
enum:
- excerptLength
- filterFieldRange
- firstResult
- lqPartialMatchKeywords
- lqPartialMatchMaxKeywords
- maximumAge
- maximumTimeoutMs
- mlDidYouMeanMaxCandidates
- numberOfResults
- partialMatchKeywords
- summaryLength
value:
type: integer
format: int32
DoubleSettingRequest:
allOf:
- $ref: '#/components/schemas/SettingRequestBase'
- type: object
required:
- name
- value
properties:
name:
type: string
description: The name of the setting to configure.
maxLength: 100
enum:
- mlDidYouMeanMinScore
value:
type: number
format: double
StructuredSettingRequest:
allOf:
- $ref: '#/components/schemas/SettingRequestBase'
- type: object
required:
- name
- value
properties:
name:
type: string
description: The name of the setting to configure.
maxLength: 100
enum:
- partialMatchOptions
- sortCriteriaOptions
- queryCorrection
- alwaysOnQSCorrection
value:
$ref: '#/components/schemas/StructuredSettingValue'
SettingRequest:
oneOf:
- $ref: '#/components/schemas/BooleanSettingRequest'
- $ref: '#/components/schemas/IntegerSettingRequest'
- $ref: '#/components/schemas/DoubleSettingRequest'
- $ref: '#/components/schemas/StringSettingRequest'
- $ref: '#/components/schemas/StructuredSettingRequest'
discriminator:
propertyName: name
mapping:
aq: '#/components/schemas/StringSettingRequest'
cq: '#/components/schemas/StringSettingRequest'
childField: '#/components/schemas/StringSettingRequest'
commerce.catalogId: '#/components/schemas/StringSettingRequest'
commerce.filter: '#/components/schemas/StringSettingRequest'
debug: '#/components/schemas/BooleanSettingRequest'
dq: '#/components/schemas/StringSettingRequest'
enableDidYouMean: '#/components/schemas/BooleanSettingRequest'
enableDuplicateFiltering: '#/components/schemas/BooleanSettingRequest'
enableFallbackSearchOnEmptyQueryResults: '#/components/schemas/BooleanSettingRequest'
enableMLDidYouMean: '#/components/schemas/BooleanSettingRequest'
enableQuerySyntax: '#/components/schemas/BooleanSettingRequest'
enableTermPermutations: '#/components/schemas/BooleanSettingRequest'
excerptLength: '#/components/schemas/IntegerSettingRequest'
facetOptions.enableIndexFacetOrdering: '#/components/schemas/BooleanSettingRequest'
facetOptions.freezeFacetOrder: '#/components/schemas/BooleanSettingRequest'
filterField: '#/components/schemas/StringSettingRequest'
filterFieldRange: '#/components/schemas/IntegerSettingRequest'
firstResult: '#/components/schemas/IntegerSettingRequest'
forwardLanguageToCoveoIndex: '#/components/schemas/BooleanSettingRequest'
isGuestUser: '#/components/schemas/BooleanSettingRequest'
index: '#/components/schemas/StringSettingRequest'
locale: '#/components/schemas/StringSettingRequest'
logicalIndex: '#/components/schemas/StringSettingRequest'
lowercaseOperators: '#/components/schemas/BooleanSettingRequest'
lq: '#/components/schemas/StringSettingRequest'
logicalIndexAggregation: '#/components/schemas/StringSettingRequest'
lqPartialMatchKeywords: '#/components/schemas/IntegerSettingRequest'
lqPartialMatchMaxKeywords: '#/components/schemas/IntegerSettingRequest'
lqPartialMatchThreshold: '#/components/schemas/StringSettingRequest'
maximumAge: '#/components/schemas/IntegerSettingRequest'
maximumTimeoutMs: '#/components/schemas/IntegerSettingRequest'
mlDidYouMeanUseFacetCount: '#/components/schemas/BooleanSettingRequest'
mlDidYouMeanMaxCandidates: '#/components/schemas/IntegerSettingRequest'
mlDidYouMeanMinScore: '#/components/schemas/DoubleSettingRequest'
numberOfResults: '#/components/schemas/IntegerSettingRequest'
opensearch.enabled: '#/components/schemas/BooleanSettingRequest'
parentField: '#/components/schemas/StringSettingRequest'
partialMatch: '#/components/schemas/BooleanSettingRequest'
partialMatchKeywords: '#/components/schemas/IntegerSettingRequest'
partialMatchThreshold: '#/components/schemas/StringSettingRequest'
partialMatchOptions: '#/components/schemas/StructuredSettingRequest'
q: '#/components/schemas/StringSettingRequest'
queryCorrection: '#/components/schemas/StructuredSettingRequest'
queryCorrection.options.automaticallyCorrect: '#/components/schemas/StringSettingRequest'
queryCorrection.enabled: '#/components/schemas/BooleanSettingRequest'
questionMark: '#/components/schemas/BooleanSettingRequest'
recommendation: '#/components/schemas/StringSettingRequest'
retrieveFirstSentences: '#/components/schemas/BooleanSettingRequest'
searchHub: '#/components/schemas/StringSettingRequest'
sortCriteria: '#/components/schemas/StringSettingRequest'
sortCriteriaOptions: '#/components/schemas/StructuredSettingRequest'
staticQuery: '#/components/schemas/BooleanSettingRequest'
summaryLength: '#/components/schemas/IntegerSettingRequest'
tab: '#/components/schemas/StringSettingRequest'
timezone: '#/components/schemas/StringSettingRequest'
wildcards: '#/components/schemas/BooleanSettingRequest'
alwaysOnQSCorrection: '#/components/schemas/StructuredSettingRequest'
MoveSettingRequestToPosition:
type: object
required:
- position
properties:
position:
type: integer
description: 'The 1-based position of this setting in relation to other settings within the target query pipeline.
Use either this property or the `after` property (but not both) to determine the new position of the setting.'
format: int32
MoveSettingRequestAfter:
type: object
required:
- after
properties:
after:
type: string
description: 'The unique identifier of an existing setting in the target query pipeline after which the current
setting is moved to a position immediately after this referenced setting.
Use either this property or the `position` property (but not both) to determine the new location of the setting.'
example: 0befc717-dfd7-4962-9b85-28f5c26fd23b
MoveSettingRequest:
oneOf:
- $ref: '#/components/schemas/MoveSettingRequestToPosition'
- $ref: '#/components/schemas/MoveSettingRequestAfter'
BulkDeleteSettingsRequest:
type: object
required:
- ids
properties:
ids:
type: array
description: A list of resource identifiers to delete. A maximum of **100** can be deleted.
maxItems: 100
items:
type: string
maxLength: 38
CopySettingsRequest:
required:
- destinationPipelineId
- ids
type: object
properties:
destinationPipelineId:
type: string
description: The unique identifier of the query pipeline to which the settings are copied.
example: 120deecf-7822-4d7b-885f-53f184a3a76
ids:
type: array
minItems: 1
maxItems: 15
description: The unique identifiers of the pipeline settings to copy.
example:
- 4f0a9531-4fab-45fd-a1e3-eb07a5aceccb
items:
type: string
CopySettingsResponse:
type: object
required:
- items
properties:
items:
type: array
items:
$ref: '#/components/schemas/SettingResponse'
RestOperationValidationRequestSetting:
required:
- operationType
type: object
properties:
operationType:
$ref: '#/components/schemas/ValidationOperationType'
model:
$ref: '#/components/schemas/SettingRequest'
resourceId:
type: string
description: The identifier of the resource when `operationType` is `UPDATE` or `DELETE`.
example: id
RestSingleOperationValidationRequestSetting:
required:
- operation
type: object
properties:
operation:
$ref: '#/components/schemas/RestOperationValidationRequestSetting'
RestBatchOperationValidationRequestSetting:
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/RestOperationValidationRequestSetting'
UpdateSettingRequest:
type: object
required:
- value
properties:
description:
type: string
default: ''
maxLength: 500
conditionId:
type: string
description: The unique identifier of the condition that must be met for this statement to apply.
example: 45a7892e-a63f-4c8e-8795-ab38c8c18d7e
maxLength: 50
value:
oneOf:
- type: boolean
- type: integer
format: int32
- type: number
format: double
- type: string
maxLength: 7000
- $ref: '#/components/schemas/StructuredSettingValue'
IntegerSettingSchema:
type: object
required:
- minimumValue
- maximumValue
- type
properties:
type:
type: string
enum:
- INTEGER
defaultValue:
type: integer
format: int32
minimumValue:
type: integer
format: int32
description: The inclusive minimum value of this setting.
maximumValue:
type: integer
format: int32
description: The inclusive maximum value of this setting.
DoubleSettingSchema:
type: object
required:
- type
- minimumValue
- maximumValue
properties:
type:
type: string
enum:
- DOUBLE
defaultValue:
type: number
format: double
minimumValue:
type: number
format: double
description: The inclusive minimum value of this setting.
maximumValue:
type: number
format: double
description: The inclusive maximum value of this setting.
BooleanSettingSchema:
type: object
required:
- type
properties:
type:
type: string
enum:
- BOOLEAN
defaultValue:
type: boolean
StringSettingSchema:
type: object
required:
- type
properties:
type:
type: string
enum:
- STRING
defaultValue:
type: string
allowedValues:
type: array
items:
type: string
SettingSchema:
oneOf:
- $ref: '#/components/schemas/IntegerSettingSchema'
- $ref: '#/components/schemas/DoubleSettingSchema'
- $ref: '#/components/schemas/BooleanSettingSchema'
- $ref: '#/components/schemas/StringSettingSchema'
- $ref: '#/components/schemas/StructuredSettingSchema'
- $ref: '#/components/schemas/ListSettingSchema'
discriminator:
propertyName: type
mapping:
INTEGER: '#/components/schemas/IntegerSettingSchema'
DOUBLE: '#/components/schemas/DoubleSettingSchema'
BOOLEAN: '#/components/schemas/BooleanSettingSchema'
STRING: '#/components/schemas/StringSettingSchema'
STRUCTURED: '#/components/schemas/StructuredSettingSchema'
LIST: '#/components/schemas/ListSettingSchema'
ListSettingSchema:
type: object
required:
- items
- type
- minimumLength
- maximumLength
properties:
type:
type: string
enum:
- LIST
items:
$ref: '#/components/schemas/SettingSchema'
minimumLength:
type: integer
format: int32
description: The minimum number of items in the list.
maximumLength:
type: integer
format: int32
description: The maximum number of items in the list.
StructuredSettingSchema:
type: object
required:
- properties
- type
- required
properties:
type:
type: string
enum:
- STRUCTURED
defaultValue:
$ref: '#/components/schemas/StructuredSettingValue'
properties:
type: object
additionalProperties:
oneOf:
- $ref: '#/components/schemas/IntegerSettingSchema'
- $ref: '#/components/schemas/DoubleSettingSchema'
- $ref: '#/components/schemas/BooleanSettingSchema'
- $ref: '#/components/schemas/StringSettingSchema'
- $ref: '#/components/schemas/ListSettingSchema'
- $ref: '#/components/schemas/StructuredSettingSchema'
required:
type: array
description: The list of required properties for this structured setting.
items:
type: string
TopLevelSettingSchema:
allOf:
- type: object
required:
- name
- isAvailable
properties:
name:
type: string
isAvailable:
type: boolean
description: 'Whether this setting can be used in query pipelines.
If set to`false`, this setting is unavailable for query pipelines.'
- $ref: '#/components/schemas/SettingSchema'
ListSettingsMetadataResponse:
type: object
required:
- page
- perPage
- totalEntries
- totalPages
- items
properties:
page:
type: integer
description: The 0-based number of the page of setting schemas to get.
format: int32
minimum: 0
default: 0
perPage:
type: integer
description: The number of setting schemas to include per page.
format: int32
minimum: 1
maximum: 200
default: 20
totalEntries:
type: integer
description: The total number of available setting schemas.
format: int32
minimum: 0
totalPages:
type: integer
description: The total number of available setting schema pages.
format: int32
minimum: 0
items:
type: array
items:
$ref: '#/components/schemas/TopLevelSettingSchema'
OutgoingPipelineDetailed:
allOf:
- $ref: '#/components/schemas/OutgoingPipeline'
- $ref: '#/components/schemas/OutgoingPipelineDetailedBase'
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.
'
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'
IncomingDuplicatePipelinePermissions:
type: object
properties:
groupsThatCanEdit:
type: array
items:
$ref: '#/components/schemas/IdentifiedResource'
apiKeysThatCanEdit:
type: array
items:
$ref: '#/components/schemas/IdentifiedResource'
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.
RestSingleOperationValidationRequestIncomingPipeline:
required:
- operation
type: object
properties:
operation:
$ref: '#/components/schemas/RestOperationValidationRequestIncomingPipeline'
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'
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
OutgoingConditions:
required:
- statements
- totalCount
- totalEntries
- totalPages
type: object
properties:
statements:
type: array
description: The matching statements in the current page of results.
items:
$ref: '#/components/schemas/ListConditionsResponseItem'
totalEntries:
type: integer
description: The total number of matching statements across all pages of results.
format: int32
example: 1
totalCount:
type: integer
description: '> This property is exposed for backward compatibility reasons. Use the `totalEntries` property instead.
The total number of matching entries across all pages of results.'
deprecated: true
format: int32
example: 1
totalPages:
type: integer
description: The total number of available pages of results.
format: int32
example: 1
IncomingCondition:
required:
- definition
type: object
properties:
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/)).
maxLength: 10000
example: when $searchhub is "community"
IncomingConditionReference:
required:
- id
type: object
properties:
id:
type: string
description: The unique identifier of this condition.
example: 45a7892e-a63f-4c8e-8795-ab38c8c18d7e
RestSingleOperationValidationRequestIncomingCondition:
required:
- operation
type: object
properties:
operation:
$ref: '#/components/schemas/RestOperationValidationRequestIncomingCondition'
RestBatchOperationValidationRequestIncomingCondition:
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/RestOperationValidationRequestIncomingCondition'
RestOperationValidationRequestIncomingCondition:
required:
- operationType
type: object
properties:
operationType:
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
model:
$ref: '#/components/schemas/IncomingCondition'
resourceId:
type: string
description: 'The identifier of the resource. '
example: id
IdentifiedResource:
required:
- id
type: object
properties:
id:
type: string
BulkDeleteConditionsRequest:
type: object
required:
- ids
properties:
ids:
type: array
description: A list of resource identifiers to delete. A maximum of **100** can be sent.
maxItems: 100
items:
type: string
maxLength: 38
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
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'
PipelineAduiConfigurationTooltipsDismissed:
type: object
required:
- id
properties:
id:
type: string
maxLength: 255
description: 'The identifier of the tooltip that was dismissed.
'
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'
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'
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.
ProjectIds:
type: object
required:
- projectIds
properties:
projectIds:
type: array
items:
type: string
OutgoingPipelineWithProject:
allOf:
- $ref: '#/components/schemas/OutgoingPipeline'
- $ref: '#/components/schemas/ProjectIds'
OutgoingPipelinesWithProjects:
type: object
required:
- items
- totalEntries
properties:
items:
type: array
items:
$ref: '#/components/schemas/OutgoingPipelineWithProject'
totalEntries:
type: integer
format: int32
description: The total number of pipelines matching the listing parameters.
ListConditionsResponseItemExpanded:
type: object
properties:
associations:
type: object
required:
- total
properties:
total:
type: integer
minimum: 0
ListConditionsResponseItem:
allOf:
- $ref: '#/components/schemas/OutgoingConditionBase'
- $ref: '#/components/schemas/ListConditionsResponseItemExpanded'
ConditionAssociationType:
type: string
enum:
- pipelines
- pipelineStatements
- pipelineStatementGroups
ConditionAssociationPipelineStatementType:
type: string
enum:
- filter
- queryParamOverride
- rankingweight
- stopWord
- thesaurus
- trigger
- featuredResult
- rankingExpression
- unmanagedMlStatement
AssociationItemBase:
type: object
required:
- associationType
- id
- pipelineId
- pipelineName
properties:
associationType:
$ref: '#/components/schemas/ConditionAssociationType'
id:
type: string
format: uuid
description: Primary key of the associated entity.
pipelineId:
type: string
description: Pipeline ID the row belongs to.
pipelineName:
type: string
description: Human-readable name of the pipeline.
ConditionPipelineAssociation:
allOf:
- $ref: '#/components/schemas/AssociationItemBase'
- type: object
properties:
associationType:
type: string
enum:
- pipelines
description: For pipeline associations, `pipelineId` will equal `id`.
ConditionPipelineStatementAssociation:
allOf:
- $ref: '#/components/schemas/AssociationItemBase'
- type: object
required:
- pipelineStatementType
properties:
associationType:
type: string
enum:
- pipelineStatements
pipelineStatementType:
description: The type of `pipelineStatements` association.
$ref: '#/components/schemas/ConditionAssociationPipelineStatementType'
ConditionPipelineStatementGroupAssociation:
allOf:
- $ref: '#/components/schemas/AssociationItemBase'
- type: object
properties:
associationType:
type: string
enum:
- pipelineStatementGroups
ConditionAssociationItemUnion:
oneOf:
- $ref: '#/components/schemas/ConditionPipelineAssociation'
- $ref: '#/components/schemas/ConditionPipelineStatementAssociation'
- $ref: '#/components/schemas/ConditionPipelineStatementGroupAssociation'
discriminator:
propertyName: associationType
mapping:
pipelines: '#/components/schemas/ConditionPipelineAssociation'
pipelineStatements: '#/components/schemas/ConditionPipelineStatementAssociation'
pipelineStatementGroups: '#/components/schemas/ConditionPipelineStatementGroupAssociation'
ConditionAssociationListResponse:
type: object
required:
- items
- totalEntries
- totalPages
properties:
conditionId:
type: string
description: The condition ID used for the lookup.
items:
type: array
description: The matching associations on the current results page.
items:
$ref: '#/components/schemas/ConditionAssociationItemUnion'
totalEntries:
type: integer
format: int32
description: The total number of matching associations across all results pages.
example: 1
totalPages:
type: integer
format: int32
description: The total number of available results pages.
example: 1
RankedResult:
type: object
required:
- score
- primaryid
properties:
score:
type: number
format: float
description: The Coveo index's ranking score computed for the item.
example: 250
primaryid:
type: string
description: 'The primaryid of the document.
'
example: KVUVKMCSIZLEYVLVMNLGQ4JQK4XDMNBQGY4C4ZDFMZQXK3DU
DebugRetrievePassagesResponse:
type: object
required:
- firstStageRetrievalResults
- passages
- responseId
description: A response with the passage(s) retrieved from the user query.
properties:
firstStageRetrievalResults:
type: array
items:
$ref: '#/components/schemas/RankedResult'
description: 'The list of results retrieved during the first stage of retrieval.
'
example:
- score: 460
primaryid: '#AVUVKMCSIZLEYVLVMNLGQ4JQK4XDMNBQGY4C4ZDFMZQXK3DU'
- score: 120
primaryid: BVUVKMCSIZLEYVLVMNLGQ4JQK4XDMNBQGY4C4ZDFMZQXK3DU
- score: 60
primaryid: CVUVKMCSIZLEYVLVMNLGQ4JQK4XDMNBQGY4C4ZDFMZQXK3DU
passages:
type: array
items:
$ref: '#/components/schemas/PassageV3'
description: 'The list of passages retrieved during the second stage of retrieval based on the results and the semantic
query.
'
responseId:
type: string
description: 'A unique identifier for the retrieval request. This identifier can be used to track the request.
'
example: c0857557-5579-4f5e-8958-9befd7d1d4a8
warnings:
type: array
description: A list of warnings that occurred during the retrieval. They can provide insights on why the retrieval
wasn't successful or was less relevant than expected.
items:
type: string
example:
- No index items matched your query, therefore no passages could be retrieved. Try rephrasing your query or checking
whether the query pipeline filters are too restrictive.
- No passages were retrieved for the query. Review whether your passage retrieval model is up-to-date and is trained
on the documents relevant to your query.
CreatedSharePointAuthentication:
required:
- id
type: object
properties:
id:
type: string
description: The unique identifier of this SharePoint claims authentication provider.
example: beffaaed-1c4b-44c0-ad9a-ce95b9b169e5
IncomingSharePointAuthentication:
required:
- expiration
- name
- provider
- uri
type: object
properties:
name:
type: string
description: The name of this SharePoint claims authentication provider.
example: My SharePoint Claims Authentication Provider
uri:
type: string
description: 'The URI of the page that serves the claims information for this SharePoint server.
**Note:**
> This page is part of the Coveo SharePoint integration. You must install this package on your SharePoint server
if you want to implement claims authentication in a search page (see [Installing the Coveo Web Service, Search
Box, and Search Interface into SharePoint](http://www.coveo.com/go?dest=adminhelp70&lcid=9&context=4218)).'
example: https://hostname.com/_layouts/CES/SearchApiClaims.aspx
provider:
type: string
description: The name of the security identity provider which is associated to your SharePoint source in your Coveo
Cloud organization.
example: My SharePoint Server Security Identity Provider
secret:
type: string
description: The string to use when signing claims information. This should be a random string. The longer the string,
the safer.
example: k7dbdcu3HMTtdcRtZzx4uLvKB&T9kG8O12cQ2vOcaWiNmerw3RLQLpcCAnPL8wN
expiration:
type: integer
description: 'The amount of time (in milliseconds) the browser cookie that stores the claims information should
last.
Setting this property to `0` expires the cookie when the browser session ends.
**Note:**
> When cookies aren''t supported by your browser, a JWT token will be used instead. For JWT tokens, the expiration
> must be between 15 minutes and 24 hours. Any value outside of these limits will be capped, with the exception
of a 0 value
> which will be converted to the longest supported value (24 hours).'
format: int32
example: 86400000
enforceTrustedUris:
type: boolean
default: true
OutgoingSharePointAuthentication:
required:
- expiration
- id
- name
- organization
- protocol
- provider
- secret
- uri
- enforceTrustedUris
type: object
properties:
id:
type: string
description: The unique identifier of this SharePoint claims authentication provider.
example: beffaaed-1c4b-44c0-ad9a-ce95b9b169e5
name:
type: string
description: The name of this SharePoint claims authentication provider.
example: My SharePoint Claims Authentication Provider
organization:
type: string
description: The unique identifier of the Coveo Cloud organization that contains this SharePoint claims authentication
provider.
example: mycoveocloudv2organization
uri:
type: string
description: 'The URI of the page that serves the claims information for this SharePoint server.
**Note:**
> This page is part of the Coveo SharePoint integration. You must install this package on your SharePoint server
if you want to implement claims authentication in a search page (see [Installing the Coveo Web Service, Search
Box, and Search Interface into SharePoint](http://www.coveo.com/go?dest=adminhelp70&lcid=9&context=4218)).'
example: https://hostname.com/_layouts/CES/SearchApiClaims.aspx
provider:
type: string
description: The name of the security identity provider which is associated to your SharePoint source in your Coveo
Cloud organization.
example: My SharePoint Server Security Identity Provider
secret:
type: string
description: The string to use when signing claims information. This should be a random string. The longer the string,
the safer.
example: k7dbdcu3HMTtdcRtZzx4uLvKB&T9kG8O12cQ2vOcaWiNmerw3RLQLpcCAnPL8wN
expiration:
type: integer
description: 'The amount of time (in milliseconds) the browser cookie that stores the claims information should
last.
Setting this property to `0` expires the cookie when the browser session ends.'
format: int32
example: 86400000
protocol:
type: string
description: A value indicating that this is a SharePoint claims authentication provider. This property can be useful
when listing all authentication providers in a Coveo Cloud organization.
example: SharePoint
enum:
- SharePoint
enforceTrustedUris:
type: boolean
description: A value indicating whether redirects that do not match a configured trusted URI will be blocked.
example: true
CreatedSamlAuthentication:
required:
- id
type: object
properties:
id:
type: string
IncomingSamlAuthentication:
required:
- expiration
- metadata
- name
type: object
properties:
name:
type: string
relyingPartyIdentifier:
type: string
assertionConsumerServiceUrl:
type: string
metadata:
type: string
expiration:
type: integer
format: int32
enforceTrustedUris:
type: boolean
default: true
OutgoingAuthentication:
oneOf:
- $ref: '#/components/schemas/OutgoingSamlAuthentication'
- $ref: '#/components/schemas/OutgoingSharePointAuthentication'
OutgoingSamlAuthentication:
required:
- expiration
- id
- metadata
- name
- organization
- protocol
- secret
- enforceTrustedUris
type: object
properties:
id:
type: string
name:
type: string
organization:
type: string
relyingPartyIdentifier:
type: string
assertionConsumerServiceUrl:
type: string
metadata:
type: string
provider:
deprecated: true
type: string
secret:
type: string
expiration:
type: integer
format: int32
protocol:
type: string
enum:
- SAML
enforceTrustedUris:
type: boolean
TrustedUri:
required:
- id
- uriPrefix
type: object
properties:
id:
type: string
description: The unique identifier of the trusted search page URI entry.
example: 371af96a-18a2-11e8-accf-0ed5f89f718b
uriPrefix:
type: string
description: The trusted search page URI.
example: https://example.com
ListTrustedUriResponse:
required:
- items
- totalCount
type: object
properties:
totalCount:
type: integer
description: The total number of items.
format: int32
example: 1
items:
type: array
description: The items contained in the page.
items:
$ref: '#/components/schemas/TrustedUri'
ListRecentUntrustedUriResponse:
required:
- items
- totalCount
type: object
properties:
totalCount:
type: integer
description: The total number of items.
format: int32
example: 1
items:
type: array
description: The items contained in the page.
items:
required:
- uriPrefix
- date
type: object
properties:
uriPrefix:
type: string
description: The untrusted URI.
example: https://evil.example.com
date:
type: string
format: date-time
description: When the URI was seen
example: '2023-09-28T15:17:30.826Z'
CreateTrustedUriRequest:
required:
- trustedUri
type: object
properties:
trustedUri:
type: object
required:
- uriPrefix
properties:
uriPrefix:
type: string
description: The URI to trust. Any search page whose URI begins with this prefix will be trusted by the target
Coveo Cloud organization.
example: https://example.com
CreateTrustedUriResponse:
required:
- trustedUri
type: object
properties:
trustedUri:
$ref: '#/components/schemas/TrustedUri'
securitySchemes:
oauth2:
type: oauth2
description: This API uses OAuth 2 with the implicit grant flow.
flows:
implicit:
authorizationUrl: https://platform.cloud.coveo.com/oauth/authorize
scopes:
full: required
platformTokens:
type: http
description: Platform tokens are used to authenticate requests to the platform as a specific user. See [Use platform
token authentication](https://docs.coveo.com/en/n3ge0020).
scheme: bearer
bearerFormat: JWT
searchTokens:
type: http
description: Search tokens are used to authenticate search-related API requests. See [Use search token authentication](https://docs.coveo.com/en/56).
scheme: bearer
bearerFormat: JWT
apiKey:
description: API keys are used to authenticate requests to the platform as a specific user. See [Use API key authentication
with the Search API](https://docs.coveo.com/en/105).
type: http
scheme: bearer
parameters:
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
ViewAllContentQuery:
name: viewAllContent
in: query
description: Whether to bypass document permissions. Only effective if the access token grants the **Search - View all
content** privilege.
schema:
type: boolean
AnalyticsRequestParameters:
name: analytics
in: query
content:
application/json:
schema:
$ref: '#/components/schemas/AnalyticsRequestParameters'
Pipeline:
name: pipeline
in: query
description: 'The name of the query pipeline to use for this request (bypassing its conditions, if it has any).
You can pass an empty `pipeline` value to use an empty query pipeline (i.e., `?pipeline=` or `"pipeline": ""`).
If a query does not contain the `pipeline` parameter, the first query pipeline whose conditions are met by the request
is used (query pipelines without conditions are not evaluated). Should the request fail to meet the conditions of
each evaluated query pipeline, the default query pipeline of the target Coveo Cloud organization is used (bypassing
its conditions, if it has any).
**Notes:**
- This parameter will be overridden if the search request is authenticated by a [search token](https://docs.coveo.com/en/56/)
that enforces a specific [`pipeline`](https://docs.coveo.com/en/56/#pipeline-string-optional), or a [`searchHub`](https://docs.coveo.com/en/56/#searchhub-string-optional)
that routes queries to a specific `pipeline` via a query pipeline condition.
- For reporting purposes, when logging a **Search** usage analytics event for a query, the `queryPipeline` field of
that event should be set to the final `pipeline` value used in the query execution. This value is determined from
the query response. If no pipeline was specified, it uses the `"default"` value.
- When using this parameter to list field values, not all query pipeline rules are supported. The only supported ones
are [stop](https://docs.coveo.com/en/1446), [thesaurus](https://docs.coveo.com/en/3405) and [queryParamOverride](https://docs.coveo.com/en/1491).
See also [Managing Query Pipelines](https://docs.coveo.com/en/1450/).
'
schema:
type: string
SearchHub:
name: searchHub
in: query
description: 'The first level of origin of the request, typically the identifier of the graphical search interface from
which the request originates.
Coveo Machine Learning models use this information to provide contextually relevant output.
**Notes:**
- This parameter will be overridden if the search request is authenticated by a [search token](https://docs.coveo.com/en/56/)
that enforces a specific [`pipeline`](https://docs.coveo.com/en/56/#pipeline-string-optional), or a [`searchHub`](https://docs.coveo.com/en/56/#searchhub-string-optional)
that routes queries to a specific `pipeline` via a query pipeline condition.
- When logging a **Search** usage analytics event for a query, the `originLevel1` field of that event should be set
to the value of the `searchHub` search request parameter.
See also the `tab` parameter.
'
schema:
type: string
Locale:
name: locale
in: query
description: 'The locale of the current user. Must comply with IETF''s [BCP 47](http://www.rfc-editor.org/rfc/bcp/bcp47.txt)
definition.
Coveo Machine Learning models use this information to provide contextually relevant output. Moreover, this information
can be referred to in query expressions and QPL statements by using the `$locale` object.
**Note:** When logging a **Search** usage analytics event, the `language` field of that event should match the language
part of the `locale` value of the query (e.g., `en-US` in `locale` becomes `en` in `language`).
'
schema:
type: string
Timezone:
name: timezone
in: query
description: 'The [tz database](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) identifier of the time
zone to use to correctly interpret dates in the query expression and result items.
If not specified, the default time zone of the server hosting the index is used.
**Note:** While no Coveo Machine Learning model uses this information, it can nevertheless affect the ranking scores
(and thus, potentially the order) of result items, as ranking expressions may be based on time constants.
'
schema:
type: string
IndexToken:
name: indexToken
in: query
description: 'The Base64 encoded identifier of the index mirror to forward the request to. See also the `index` parameter.
If you do not specify an `indexToken` (or `index`) value, any index mirror could be used.
**Note:** Passing an `indexToken` (or `index`) value has no effect when the results of a specific request can be returned
from cache (see the `maximumAge` parameter).
'
schema:
type: string
Index:
name: index
in: query
description: 'The identifier of the index mirror to forward the request to. See also the `indexToken` parameter.
If you do not specify an `index` (or `indexToken`) value, any index mirror could be used.
**Note:** Passing an `index` (or `indexToken`) value has no effect when the results of a specific request can be returned
from cache (see the `maximumAge` parameter).
'
schema:
type: string
LogicalIndex:
name: logicalIndex
in: query
description: 'The identifier for a logical group of indexes that have been configured to include documents from the
same sources.
If you do not specify a `logicalIndex` value, the `default` grouping will be used, typically including all indexes.
'
schema:
type: string
Tab:
name: tab
in: query
description: "The second level of origin of the request, typically the identifier of the selected tab in the graphical\
\ search interface from which the request originates.\n\nCoveo Machine Learning models use this information to provide\
\ contextually relevant output.\n\n**Note:** When logging a **Search** usage analytics event for a query, the `originLevel2`\
\ field of that event should be set to the `tab` value of the query (or to the `\"default\"` string, if no `tab` value\
\ was specified in the query).\n\n See also the `searchHub` parameter.\n"
schema:
type: string
Referrer:
name: referrer
in: query
description: 'The third level of origin of the request, typically the URL of the page that linked to the search interface
from which the request originates (e.g., in JavaScript, this would correspond to the `document.referrer` value).
Coveo Machine Learning models may use this information to provide contextually relevant output.
**Note:** When logging a **Search** usage analytics event for a query, the `originLevel3` field of that event should
be set to the `referrer` value of the query, if specified.
See also the `context` parameter.
'
schema:
type: string
Context:
name: context
in: query
description: 'The custom context information to send along with the request. Must be a dictionary of key-value pairs
(JSON) where each key is a string, and each value is either a string or an array of strings.
Coveo Machine Learning models may use this information to provide contextually relevant output. Moreover, this information
can be referred to in query expressions and QPL statements by using the `$context` object.
**Note:** When logging a **Search** usage analytics event for a query, the `customData` field of that event should
include the same data as the `context` parameter of the query. However, each `context` key included in `customData`
must be prefixed by `context_` (e.g., the `userRoles` key in `context` becomes `context_userRoles` in `customData`).
See also the `referrer` parameter.
**Example** `{"userAgeRange":"25-35","userRoles":["PremiumCustomer","ProductReviewer"]}`
'
content:
application/json:
schema:
type: object
MaximumTimeoutMs:
name: maximumTimeoutMs
in: query
description: 'The maximum number of milliseconds to allow the request to last before timing out.
**Maximum:** 10000
**Minimum/Default:** 0, meaning that Coveo determines the most appropriate timeout to use.
'
schema:
type: integer
format: int32
PipelineIdPath:
name: pipelineId
in: path
description: The unique identifier of the target query pipeline.
required: true
schema:
type: string
PrimaryIdDocumentPath:
name: primaryId
in: path
description: The primary ID of the document for which to retrieve information. The primary ID is the value of the field
specified as the `primaryId` in the source configuration of the index.
required: true
schema:
type: string
minLength: 42
maxLength: 60
FeaturedResultIdPath:
name: featuredResultId
in: path
description: The unique identifier of the featured result.
required: true
schema:
type: string
Q:
name: q
in: query
description: 'The basic query expression, typically the keywords entered by the end user in a query box.
**Note:** When logging a **Search** usage analytics event for a query, the `queryText` field of that event should
be set to the `q` value of the corresponding query.
'
schema:
type: string
AQ:
name: aq
in: query
description: 'The advanced query expression, typically generated by code (e.g., when toggling facet values).
**Note:** When logging a **Search** usage analytics event for a query, the `advancedQuery` field of that event should
be set to the `aq` value of the corresponding query (for reporting purposes).
'
schema:
type: string
CQ:
name: cq
in: query
description: 'The constant query expression, typically populated with expressions that must apply to all queries sent
from a specific search interface (e.g., from a specific tab). Once evaluated, the result sets of those expressions
are kept in a special cache.
**Tip:** Avoid including dynamic content in the constant query expression. Otherwise you risk filling up the cache
with useless data, which can have a negative impact on performance.
**Notes:**
- Other parts of the query expression can also benefit from the index cache (see the `maximumAge` parameter). However,
using the constant query expression allows you to explicitly cache specific result sets.
- Temporal keywords (`now`, `today`, `yesterday`) in the constant query expression are only re-evaluated once per
3-4 minutes; therefore, you should avoid basing `cq` expressions on temporal keywords if you require split second
accuracy.
'
schema:
type: string
DQ:
name: dq
in: query
description: 'The disjunction query expression, typically populated by Coveo ML automatic relevance tuning models to
ensure that relevant items are included in the query results. The disjunction query expression is merged with the
other parts of the query expression using an `OR` operator. The resulting query expression is `(((q aq) OR (dq)) cq)`.
'
schema:
type: string
LQ:
name: lq
in: query
description: 'The large query expression, typically populated with a case description, long textual query, or any other
form of text that can help refine a query. The Coveo ML Intelligent Term Detection (ITD) feature can extract relevant
keywords from the large query expression and inject those keywords in the basic query expression (see the `q` parameter).
'
schema:
type: string
EnableDidYouMean:
name: enableDidYouMean
in: query
description: 'Whether to enable the _Did You Mean_ feature of the index, which populates the `queryCorrections` property
of a successful response with keyword correction suggestions.
**Notes:**
- The Did You Mean feature only processes the basic query expression (see the `q` parameter).
- When both `enableDidYouMean` and `enableMLDidYouMean` parameter are set to `true`, the output of both features will
appear in the `queryCorrections` array.
- The Did You Mean feature will return no corrections when the query is processed by an automatic relevance tuning
(ART) model whose Intelligent Term Detection (ITD) feature is enabled.
**Default:** `false`
'
schema:
type: boolean
MlDidYouMeanMaxCandidates:
name: mlDidYouMeanMaxCandidates
in: query
description: 'The maximum number of Coveo ML Did You Mean candidates to request from the query suggestions model.
**Default:** `3`
'
schema:
type: integer
format: int32
MlDidYouMeanMinScore:
name: mlDidYouMeanMinScore
in: query
description: 'The minimum score a query suggestion may have to be allowed as a candidate for the Coveo ML query suggestions
Did You Mean feature. For best results, value should typically be in range [`0.8`, `2`].
**Default:** `1.0`
'
schema:
type: number
format: double
MlDidYouMeanUseFacetCount:
name: mlDidYouMeanUseFacetCount
in: query
description: 'Whether to use facet counts for the Coveo ML Did You Mean feature. Can improve results, but requires more
processing.
**Default:** `false`
'
schema:
type: boolean
EnableMlDidYouMean:
name: enableMLDidYouMean
in: query
description: '**Important:** This feature is still in an experimental state.
Whether to enable the Coveo ML query suggestions _Did You Mean_ feature, which populates the `queryCorrections` property
of a successful response with keyword correction suggestions.
**Notes:**
- The Coveo ML query suggestions Did You Mean feature only processes the basic query expression (see the `q` parameter).
- When both `enableDidYouMean` and `enableMLDidYouMean` parameter are set to `true`, the output of both features will
appear in the `queryCorrections` array.
**Default:** `false`
'
schema:
type: boolean
PartialMatch:
name: partialMatch
in: query
description: 'Whether to convert a basic expression containing at least `partialMatchKeywords` to a _partial match expression_,
so that any item containing at least `partialMatchThreshold` of those keywords will match the expression.
If you do not set this parameter to `true`, an item must contain all of the basic expression keywords to match the
expression.
**Notes:**
- This feature only applies to the basic expression (`q`) of a query, and to the basic `queryOverride` of its Group
By operations.
- When the `enableQuerySyntax` parameter is set to `true`, this feature has no effect on a basic expression containing
advanced Coveo Cloud query syntax (field expressions, operators, etc.).
**Default:** `false`
'
schema:
type: boolean
PartialMatchKeywords:
name: partialMatchKeywords
in: query
description: 'The minimum number of keywords that need to be present in a basic expression to convert it to a partial
match expression.
**Notes:**
- This parameter has no meaning unless the `partialMatch` parameter is set to `true`.
- Repeated keywords in a basic expression count as a single keyword.
- Thesaurus expansions in a basic expression count towards the `partialMatchKeywords` count.
- Stemming expansions **do not** count towards the `partialMatchKeywords` count.
See also the `partialMatchThreshold` parameter.
**Default:** `5`
'
schema:
type: integer
format: int32
PartialMatchThreshold:
name: partialMatchThreshold
in: query
description: 'An absolute or relative value indicating the minimum number (rounded up) of partial match expression keywords
an item must contain to match the expression.
If specified, the `partialMatchThreshold` value must either be:
- a 32-bits unsigned integer (e.g., `3`),
- a percentage value between 0% and 100% (e.g., `75%`),
- the empty string, or
- the `all` string.
The `""` and the `all` value are both equivalent to `100%`.
**Notes:**
- This parameter has no meaning unless the `partialMatch` parameter is set to `true`.
- A keyword and its stemming expansions count as a single keyword when evaluating whether an item meets the `partialMatchThreshold`.
See also the `partialMatchKeywords` parameter.
**Examples:**
- `3`
- `75%`
- `all`
**Default:** `50%`'
schema:
type: string
LqPartialMatchMaxKeywords:
name: lqPartialMatchMaxKeywords
in: query
description: 'The maximum number of keywords from the large query expression (see the `lq` parameter) that will be included
in the partial match expression in case the Coveo ML Intelligent Term Detection (ITD) feature cannot extract relevant
keywords from the large query expression.
**Note:** This parameter applies as a fallback setting when no Coveo ML automatic relevance tuning model is available
in the query pipeline to process a query that contains a non-null large query expression (`lq`).
Setting this parameter to a high value can negatively impact the performance of queries, while setting it too low
can produce less relevant results.
See also the `lqPartialMatchThreshold` parameter.
**Default**: `100`
'
schema:
type: integer
default: 100
LqPartialMatchKeywords:
name: lqPartialMatchKeywords
in: query
description: 'The minimum number of keywords that need to be present in the large query expression (see the `lq` parameter)
to convert it to a partial match expression in case the Coveo ML Intelligent Term Detection (ITD) feature cannot extract
relevant keywords from the large query expression.
**Note:** This parameter applies as a fallback setting when no Coveo ML automatic relevance tuning model is available
in the query pipeline to process a query that contains a non-null large query expression (`lq`).
See also the `lqPartialMatchThreshold` parameter.
**Default**: `5`
'
schema:
type: integer
format: int32
LqPartialMatchThreshold:
name: lqPartialMatchThreshold
in: query
description: 'An absolute or relative value indicating the minimum number of partial match expression keywords an item
must contain to match the large query expression in case the Coveo ML Intelligent Term Detection (ITD) feature cannot
extract relevant keywords from the large query expression.
If specified, the `lqPartialMatchThreshold` value must either be:
- a 32-bits unsigned integer (e.g., `3`),
- a percentage value between 0% and 100% (e.g., `75%`),
- the empty string (`""`), or
- the `all` string.
The `""` and `all` values are both equivalent to `100%`.
**Note:** This parameter applies when no Coveo ML automatic relevance tuning model is available in the query pipeline
to process a query that contains a non-null large query expression (`lq`).
See also the `lqPartialMatchKeywords` parameter.
**Examples:**
- `3`
- `75%`
- `all`
**Default:** `50%`
'
schema:
type: string
QuestionMark:
name: questionMark
in: query
description: 'Whether to enable question mark characters (`?`) in the *wildcards* feature of the index in order to expand
basic expression keywords (see the `q` parameter) containing question mark characters (`?`) to the possible matching
keywords.
**Note:** Setting this parameter to `true` has no effect unless you also set the `wildcards` parameter to `true`.
See [Using Wildcards in Queries](https://docs.coveo.com/en/1580/).
**Default:** `false`
'
schema:
type: boolean
default: false
Wildcards:
name: wildcards
in: query
description: 'Whether to enable the *wildcards* feature of the index in order to expand basic expression keywords (see
the `q` parameter) containing wildcard characters (`*`) to the possible matching keywords. See also the `questionMark`
parameter.
See [Using Wildcards in Queries](https://docs.coveo.com/en/1580/).
**Default:** `false`
'
schema:
type: boolean
EnableQuerySyntax:
name: enableQuerySyntax
in: query
description: 'Whether to interpret advanced Coveo Cloud query syntax as such in the basic query expression (see the
`q` parameter). See also the `lowercaseOperators` parameter.
**Default:** `true`
'
schema:
type: boolean
LowerCaseOperators:
name: lowercaseOperators
in: query
description: 'Whether to treat the `AND`, `NEAR`, `NOT`, and `OR` keywords in the basic query expression (see the `q`
parameter) as Coveo Cloud query syntax operators even if those keywords are in lowercase.
**Note:** Setting this parameter to `true` has no effect unless you also set the `enableQuerySyntax` parameter to
`true`.
**Example:** If you set this parameter, and the `enableQuerySyntax` parameter to `true`, the index interprets the
`near` keyword in the basic query expression `service center near me` as the `NEAR` Coveo Cloud query syntax operator.
**Default:** `false`
'
schema:
type: boolean
ExcerptLength:
name: excerptLength
in: query
description: 'The maximum length of result excerpts (in number of characters).
An *excerpt* is a segmented text generated at query time by the index from the body of an item. When a query is performed,
the *excerpt* yields relevant item body sections in which the queried terms are highlighted.
An *excerpt* includes the most relevant sentences in which the queried keywords appear, in the order in which they
appear in the item, up to the specified number of characters.
**Note:** The maximum length you set using this parameter also applies to retrieved first sentences, if those are
included in the results (see the `retrieveFirstSentences` parameter).
**Default:** `200`
'
schema:
type: integer
format: int32
RetrieveFirstSentences:
name: retrieveFirstSentences
in: query
description: 'Whether to include the first sentences of textual items in the query results.
First sentences are typically useful when rendering result items such as emails, since the first few sentences of
these kinds of items are often more relevant than a contextually generated excerpt (see the `excerptLength` parameter).
**Note:** The maximum length of the retrieved sentences (in number of characters) is determined by the value of the
`excerptLength` parameter.
**Default:** `false`
'
schema:
type: boolean
FieldsToInclude:
name: fieldsToInclude
in: query
description: 'The names of the fields to include with each item in the query results. If specified, no other fields
will be included.
**Note:** If you specify both an array of fields to include and an array of fields to exclude (see the `fieldsToExclude`
parameter), the `fieldsToExclude` parameter has no effect at all.
If you do not explicitly specify an array of values for this parameter (or for the `fieldsToExclude` parameter), each
query result item will include all of its available fields.
'
content:
application/json:
schema:
type: array
items:
type: string
FieldsToExclude:
name: fieldsToExclude
in: query
description: 'The names of the fields to exclude from the query results. All other fields will be included with each
item in the query result.
**Note:** If you specify both an array of fields to include (see the `fieldsToInclude` parameter) and an array of
fields to exclude, the `fieldsToExclude` parameter has no effect at all.
If you do not explicitly specify an array of values for this parameter (or for the `fieldsToInclude` parameter), each
query result item will include all of its available fields.
'
content:
application/json:
schema:
type: array
items:
type: string
GroupBy:
name: groupBy
in: query
description: 'The Group By operations to perform on the query results, typically to extract facets.
'
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/RestGroupBy'
Facets:
name: facets
in: query
description: 'The facet operations to perform on the query results.
'
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/RestFacetRequest'
FacetOptions:
name: facetOptions
in: query
description: 'The global configuration options that apply to all facet requests performed along with the query (see
the `facets` query parameter).
'
content:
application/json:
schema:
$ref: '#/components/schemas/RestFacetOptions'
CategoryFacets:
name: categoryFacets
in: query
description: 'Data to easily query a hierarchical field using a path of hierarchical values.
'
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/RestCategoryFacetRequest'
SortCriteria:
name: sortCriteria
in: query
description: 'The criteria to use for sorting the query results.
**Allowed values:**
- `relevancy`: use standard index ranking factors (adjacency, TDIDF, etc.) and custom ranking expressions (QREs and
QRFs) to compute a ranking `score` for each query result item, and sort the query results by descending `score` value.
- `date ascending`/`date descending`: use the `@date` field to sort the query results. This field typically contains
the last modification date of each item.
- `qre`: use only custom ranking expressions (QREs and QRFs) to compute a ranking `score` for each query result item,
and sort the query results by descending `score` value.
- `nosort`: do not sort the query results; the index will return result items in an essentially random order.
- `@[field] ascending`/`@[field] descending`: sort using the value of a specific sortable field (replace `[field]`
by the target field name).
You can specify a list of comma-separated sort criteria which will be applied sequentially, i.e., if there''s a tie
on the 1st criterion, the API uses the 2nd criterion to break the tie.
However, this only works when combining:
- a `relevancy` criterion followed by one or more field or `date` criteria.
- a `qre` criterion followed by one or more field or `date` criteria.
- two or more field criteria (e.g., `@views descending,@likes descending`).
- a single `date` criterion and one or more field criteria in any order (e.g., `@views descending, date ascending`).
**Examples:**
- `date ascending`
- `@author ascending`
- `date descending,@views descending,@likes descending`
**Default:** `relevancy`
'
schema:
type: string
RankingFunctions:
name: rankingFunctions
in: query
description: 'The array of [ranking functions](https://docs.coveo.com/en/1448/) to execute on each query result item.
The result of a ranking function is added to the result score, which can affect sorting (see the `Relevancy` and `qre`
values of the `sortCriteria` parameter).
'
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/RestRankingFunction'
QueryFunctions:
name: queryFunctions
in: query
description: 'The array of [query functions](https://docs.coveo.com/en/1451/) to execute on each query result item.
The result of a query function is stored in a temporary, dynamic field created at query time.
'
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/RestQueryFunction'
FirstResult:
name: firstResult
in: query
description: 'The 0-based position of the first result to return in the non-paginated result set.
Along with the `numberOfResults` parameter, this allows you to retrieve a specific page of result items.
**Note:** This can''t be greater than the `maximumResults` value configured for your index. By default, `maximumResults`
is set to 5,000 items.
**Default:** `0`
'
schema:
type: integer
format: int32
NumberOfResults:
name: numberOfResults
in: query
description: 'The number of results to return.
Along with the `firstResult` parameter, this allows you to retrieve a specific page of result items.
This parameter also defines the maximum number of results which can be returned by the Coveo ML Recommendations feature.
**Note:** The maximum `numberOfResults` value is 2,000 items.
**Default:** `10`
'
schema:
type: integer
format: int32
minimum: 0
EnableDuplicateFiltering:
name: enableDuplicateFiltering
in: query
description: 'Whether to filter out duplicates, so that items resembling one another only appear once in the query results.
**Notes:**
- Two items must be at least 85% similar to one another to be considered duplicates.
- When a pair of duplicates is found, only the higher-ranked item of the two is kept in the result set.
- Enabling this feature can make the total result count less precise, since only results up to those being retrieved
(see the `firstResult` and `numberOfResults` parameters) are submitted to duplicate filtering.
- Duplicate filtering and [result folding](https://docs.coveo.com/en/1466/) are mutually exclusive.
**Default:** `false`
'
schema:
type: boolean
FilterField:
name: filterField
in: query
description: 'The `@`-prefixed name of the field to use to group items into distinct folded query results (see [Result
Folding](https://docs.coveo.com/en/1466/)).
Use a field whose value is identical for all items to group under the same folded query result.
See also the `parentField`, `childField`, and `filterFieldRange` parameters.
**Notes:**
- Result folding and duplicate filtering (using the `enableDuplicateFiltering` parameter) are mutually exclusive.
'
schema:
type: string
ParentField:
name: parentField
in: query
description: 'The `@`-prefixed name of the field to use to be able to identify an item as a parent in a folded query
result (see [Result Folding](https://docs.coveo.com/en/1466/)).
Use a field whose value can uniquely identify each item. All items whose `childField` value is identical to the `parentField`
value of another item are considered children of that other item.
See also the `filterField`, `childField`, and `filterFieldRange` parameters.
**Notes:**
- In the index, the values of the `parentField` must only contain alphanumerical characters. Using a `childField`
whose values contain non-indexable characters (such as underscores) will make folding fail.
- The values of the `parentField` must contain 60 characters or less (60 being the default maximum of characters for
a word in the index).
- Result folding and duplicate filtering (using the `enableDuplicateFiltering` parameter) are mutually exclusive.
'
schema:
type: string
ChildField:
name: childField
in: query
description: 'The `@`-prefixed name of the field to use to be able to identify an item as a child of another item in
a folded query result (see [Result Folding](https://docs.coveo.com/en/1466/)).
Use a field whose value points to the `parentField` value of the intended parent. Whenever an item is a child of another
item, its `childField` value must be identical to the `parentField` value of that other item.
See also the `filterField`, `parentField`, and `filterFieldRange` parameters.
**Notes:**
- In the index, the values of the `childField` must only contain alphanumerical characters. Using a `childField` whose
values contain non-indexable characters (such as underscores) will make folding fail.
- The values of the `childField` must contain 60 characters or less (60 being the default maximum of characters for
a word in the index).
- Result folding and duplicate filtering (using the `enableDuplicateFiltering` parameter) are mutually exclusive.
'
schema:
type: string
FilterFieldRange:
name: filterFieldRange
in: query
description: 'The maximum number of items to include in the `childResults` array of a folded query result (see [Result
Folding](https://docs.coveo.com/en/1466/)).
See also the `filterField`, `parentField`, and `childField`.
**Notes:**
- Result folding and duplicate filtering (using the `enableDuplicateFiltering` parameter) are mutually exclusive.
**Default:** `5`
'
schema:
type: integer
format: int32
SummaryLength:
name: summaryLength
in: query
description: 'The length of the automatically generated item summary.
The Coveo Platform uses a linguistic algorithm that relies on term frequency and proximity to generate an item *summary*
made of sentences identified to be the most important ones in the item.
This *summary* is generated independently from the query, as opposed to a result item *excerpt*, which is generated
based on query keywords.
**Default:** `0`
'
schema:
type: integer
format: int32
SortField:
name: sortField
in: query
description: This parameter is exposed for backward compatibility reasons. Use the `sortCriteria` parameter along with
the `@[field] ascending/@[field] descending` syntax instead.
schema:
type: string
deprecated: true
DisableQuerySyntax:
name: disableQuerySyntax
in: query
deprecated: true
description: This parameter is exposed for backward compatibility reasons. Use the `enableQuerySyntax` parameter instead.
schema:
type: boolean
StaticQuery:
name: staticQuery
in: query
description: 'Whether to execute this query in a way that does not count against the allowed number of queries per month
of a Coveo Cloud organization (QPM), but may produce cached/outdated query results (see [Rendering Static Content
Using Persistent Queries](https://docs.coveo.com/en/1009/)).
**Note:** Setting this parameter to `true` overwrites the `maximumAge` parameter value for this query.
**Default:** `false`
'
schema:
type: boolean
UserActionParameter:
name: userActions
in: query
description: The parameters allowing user actions to be retrieved in query results.
content:
application/json:
schema:
$ref: '#/components/schemas/RestUserActionParameter'
CommerceParameters:
name: commerce
in: query
description: The parameters for Coveo for Commerce.
content:
application/json:
schema:
$ref: '#/components/schemas/RestCommerceParameters'
DictionaryFieldContext:
name: dictionaryFieldContext
in: query
description: 'A key-value store where each pair corresponds to the name of a dictionary field to query, along with the
key to target within that field.
**Example:** Suppose that in your index, the `@price` dictionary field contains different values for its `storeA`
and `storeB` keys. Including `"dictionaryFieldContext": { "price": "storeA" }` in the query means that any part of
the query expression that targets the `@price` field will in fact only query the `storeA` values of that field.
**Note:** This cannot be used at the same time as `fieldAliases`.
**Note:** This parameter will be overridden if the search request is authenticated by a [search token](https://docs.coveo.com/en/56/)
that enforces a specific [`dictionaryFieldContext`](https://docs.coveo.com/en/56/#dictionaryfieldcontext-object-optional).
'
content:
application/json:
schema:
type: object
MaximumAge:
name: maximumAge
in: query
description: 'The maximum age of cached results, in milliseconds.
If the results of a specific request are available in the cache, and if those results are no older than the `maximumAge`
value, the service returns those results rather than forwarding a new query to the index.
Such cache hits improve responsiveness but still count as queries in your queries per month (QPM) count.
**Note:** This parameter is automatically overridden when `staticQuery` is set to `true`.
**Default:** `-1` (which corresponds to the internal default value (15 minutes)
'
schema:
type: integer
format: int32
ActionsHistory:
name: actionsHistory
in: query
description: 'The query and page view actions previously made by the current user.
Coveo Machine Learning event recommendations models use this information to provide contextually relevant output.
**Note:** Page view actions are typically populated by the [coveo.analytics.js](https://github.com/coveo/coveo.analytics.js)
script.'
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ActionHistory'
Recommendation:
name: recommendation
in: query
description: 'The identifier of the recommendation interface from which the request originates (see [`CoveoRecommendation`](https://coveo.github.io/search-ui/components/recommendation.html)).
Coveo Machine Learning event recommendations models may use this information to provide contextually relevant output.
'
schema:
type: string
Format:
name: format
in: query
description: 'The format of a successful response.
- Use `json` to get the response in the JSON format.
- Use `xlsx` to generate an Excel file containing the results (binary).
**Note:** Debug information (see the `debug` parameter) can only appear in a response in the JSON format.
**Default:** `json`
'
schema:
type: string
Debug:
name: debug
in: query
description: 'Whether to force a successful response to include debug information.
**Notes:**
- Debug information can only appear in responses in the JSON format (see the `format` parameter).
- Avoid setting this parameter to `true` in production, as it has a negative impact on query performance.
**Default:** `false`
'
schema:
type: boolean
VisitorId:
name: visitorId
in: query
deprecated: true
description: 'A GUID which represents the current user, who can either be authenticated or anonymous.
`visitorId` is deprecated and has been replaced by [`clientId`](https://docs.coveo.com/en/masb0234/) in newer versions
of the Coveo UI libraries. For compatibility, the new first-party cookie and local storage values are still named
`coveo_visitorId`.
For older versions of the JavaScript Search Framework, the visitor ID is generated by the Coveo Usage Analytics service
and stored in a non-expiring third-party cookie. **Note:** Third-party cookies [have also been deprecated](https://docs.coveo.com/en/m54b9238/).
This is unrelated to the deprecation of `visitorId`.
'
schema:
type: string
IsGuestUser:
name: isGuestUser
in: query
description: 'Whether the current user is anonymous.
Coveo Machine Learning models may use this information to provide contextually relevant output.
**Note:** When logging a **Search** usage analytics event for a query, the `anonymous` field of that event should
be set to the `isGuestUser` value of the query.
**Default:** `false`
'
schema:
type: boolean
Language:
name: language
in: query
description: This parameter is exposed for backward compatibility reasons. Use the `locale` parameter instead.
schema:
type: string
deprecated: true
MlParameters:
name: mlParameters
in: query
description: 'A map of options to pass to the Coveo ML models associated with the request''s target query pipeline.
**Available parameters:**
- `considerUserContext` (boolean): Whether the models should attempt to leverage the `context` object of the request
to personalize their output. Applies to CR models only. Default is `true`.
- `maxActionsHistoryItemsToConsider` (unsigned integer): The maximum number of items in the `actionsHistory` array
of the request that should be taken into account by the models. Applies to CR models only. By default, all `actionsHistory`
items are considered.
- `num` (unsigned integer): The maximum number of recommendations/suggestions to request from the models. Must be
in range [1, 50], if specified. Applies to ART, CR, and QS models. Default depends on model configuration.
- `padding` (string enum): The kind of padding the models should complete their output with, if their maximum number
of recommendations/suggestions (i.e., `num`) has not been reached. Applies to CR models only. Allowed values are `popular`
(i.e., pad recommendations with all time most popular items) and `trending` (i.e., pad recommendations with items
that have recently been increasingly popular). By default, no padding applies.
- `wordSelection` (string): The ITD keyword selection options the models should use. Applies only to ART models with
ITD enabled. If specified, must be a string in the format `option:value`. The only available option is `wordsKept`
(i.e., the maximum number of `lq` keywords to inject in `q`); its default value is `5`.
- `minNumberOfWords` (unsigned integer): The minimum number of words a query suggestion may contain to be returned
by the model. Applies to QS models only. Must be in range [1, 10] Default is `1`, which implies that the model will
return all candidates.
- `itemId` (string): The unique identifier (e.g., SKU) of a product to get recommendations for. Only applies when
querying a Product Recommendations model with an association strategy considering a single item as an input.
- `itemIds` (array of strings): The unique identifiers (e.g., SKUs) of the products to get recommendations for. Only
applies when querying a Product Recommendations model with an association strategy considering multiple items as an
input.
- `categoryFilter` (string): The name of a category of products to get recommendations for.
- `brandFilter` (string): The name of a brand of products to get recommendations for.
- `filters` (map of strings): The dimensions along with the values to be used at query time by the model as filters
for potential suggestions. Only applies to ART, QS, and DNE models that don''t use the default `filterFields` advanced
parameter values. **Example:** `"filters": { "originContext": "", "originLevel2": "" }`.
**Examples:**
- `{"num": 3, "padding": "trending", "maxActionsHistoryItemsToConsider": 10, "considerUserContext": false}`
- `{"wordSelection": "wordsKept:4"}`
'
content:
application/json:
schema:
type: object
additionalProperties: true
IndexType:
name: indexType
in: query
description: 'The type of index against which to execute the query. Must correspond to an index that has been configured
for the target Coveo Cloud organization.
**Default:** `coveo`
'
schema:
type: string
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
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
PerPage:
name: perPage
in: query
description: The number of results to include per page.
schema:
type: integer
format: int32
minimum: 0
maximum: 200
default: 20
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
SubFeature:
name: subFeature
in: query
style: form
explode: true
description: 'The query pipeline sub-feature to match.
**Allowed values:**
- Parameter overrides: `queryParamOverride` and `querySuggestParamOverride`.
By default, results are not required to match a specific query pipeline sub-feature.'
schema:
type: array
items:
$ref: '#/components/schemas/SubFeature'
StatementIdPath:
name: statementId
in: path
description: The unique identifier of the target statement.
required: true
schema:
type: string
StatementGroupSortBy:
name: sortBy
in: query
description: 'The sort criteria to apply on the results.
`name` : Sort results in alphabetical order
`status`: Sort results according to their activation status (i.e., `Active`, `Inactive`, `Not Yet Started`, `Expire`)'
schema:
type: string
default: status
enum:
- name
- status
StatementGroupTypeParam:
name: types
in: query
description: The type name of the statement group.
content:
application/json:
schema:
type: array
minItems: 1
items:
$ref: '#/components/schemas/StatementGroupType'
StatementGroupStatusParam:
name: status
in: query
description: The status of the statement group.
content:
application/json:
schema:
type: array
minItems: 1
items:
$ref: '#/components/schemas/StatementGroupStatus'
OrganizationIdQueryRequired:
name: organizationId
in: query
description: The unique identifier of the target Coveo Cloud organization.
required: true
schema:
type: string
StatementGroupIdPath:
name: statementGroupId
in: path
description: The unique identifier of the statement group.
required: true
schema:
type: string
example: 679adb80-444e-11ea-b77f-2e728ce88125
Expand:
name: expand
in: query
description: Expand related resources in the payload such as conditions.
schema:
type: boolean
default: false
SettingId:
name: settingId
in: path
description: The unique identifier of the query pipeline setting.
required: true
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
AssociationTypeParam:
name: associationTypes
in: query
description: Optional filter of association types to include. If you leave this parameter undefined or empty, all association
types are included.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ConditionAssociationType'
PipelineStatementTypeParam:
in: query
name: pipelineStatementType
description: 'Optional filter to include only associations whose `associationType` is `pipelineStatements` and whose
`pipelineStatementType` matches the specified value.
Must be used in conjunction with `associationTypes= ["pipelineStatements"]`.'
schema:
$ref: '#/components/schemas/ConditionAssociationPipelineStatementType'
PipelineNameParam:
in: query
name: pipelineName
description: Optional filter to match the pipeline name of the object associated with this condition.
schema:
type: string
OrganizationIdPath:
name: organizationId
in: path
description: The unique identifier of the target Coveo Cloud organization.
required: true
schema:
type: string
responses:
NotFound:
description: 'Not Found (see: https://docs.coveo.com/en/1471/build-a-search-ui/troubleshoot-query-error-codes#404-not_found)'
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
example:
statusCode: 404
message: The requested Search API endpoint does not exist.
errorCode: NOT_FOUND
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.
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
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
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
PassageRetrievalUnprocessableEntity:
description: Unprocessable Entity
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
examples:
MissingModel:
summary: Error returned when the model is missing.
value:
errorCode: UNPROCESSABLE_ENTITY
message: This API requires an ML Passage Retrieval model associated to the pipeline.
ModelUnavailable:
summary: Error returned when the model is unavailable.
value:
errorCode: UNPROCESSABLE_ENTITY
message: The Passage Retrieval model is not available. Please review whether the model exists and is ready
to be used. If the model was just created, it may take a few minutes before it's available. If the problem
persists, reach out to Coveo Support.
InternalServerError:
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
examples:
InternalError:
summary: Internal Server Error
value:
statusCode: 500
message: Internal error.
OrganizationPaused:
summary: 'Organization Paused (see: https://docs.coveo.com/en/1471/build-a-search-ui/troubleshoot-query-error-codes#500-organization_paused)'
value:
statusCode: 500
message: The organization is paused due to inactivity.
errorCode: ORGANIZATION_PAUSED
FacetSearchFailure:
summary: 'Facet Search Failure (see: https://docs.coveo.com/en/1471/build-a-search-ui/troubleshoot-query-error-codes#500-facet_search_failure)'
value:
statusCode: 500
message: Facet search failed due to internal index issues.
errorCode: FACET_SEARCH_FAILURE
PassageRetrievalServerUnavailable:
description: Server unavailable
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
examples:
ModelTemporaryUnavailable:
summary: Error returned when the model is temporarily unavailable.
value:
errorCode: SERVER_UNAVAILABLE
message: The Passage Retrieval model is temporarily unavailable. Please retry the request. If the problem
persists, reach out to Coveo Support.
IndexUnavailable:
summary: Error returned when the index is not available.
value:
errorCode: SERVER_UNAVAILABLE
message: Due to a temporary issue with Coveo indexes, no available index could process the request.
InternalLimitExceeded:
summary: Error returned when the size of passages was larger than expected.
value:
errorCode: INTERNAL_ERROR
message: An internal limit on the size of passages was exceeded.
AuthenticationTimeout:
description: Authentication Timeout
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
example:
statusCode: 419
message: Authentication timeout.
OriginalRequestNotFound:
description: Unable to find the request
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ErrorMessage'
example:
status: 404
title: ORIGINAL_QUERY_NOT_FOUND
detail: The query that you attempted to replay wasn't found.
UnsupportedRegion:
description: Region is not currently supported by the service.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ErrorMessage'
example:
status: 422
title: UNSUPPORTED_REGION
detail: The request you attempted to replay was made in a region that isn't currently supported by the service.
ReplaySearchTooBroad:
description: Search parameters too broad
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ErrorMessage'
example:
status: 503
title: SEARCH_CRITERIA_TOO_BROAD
detail: The `dateRange` provided to find your query to reload was too large. Reduce the time window of your search.
If you don't know when the query was executed, split the `dateRange` into multiple calls.
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
UnprocessableEntity:
description: Unprocessable Entity
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
example:
statusCode: 422
message: Unprocessable entity.
UnprocessableStatementGroupAssociations422:
description: The request to update the rules associated with the statement group could not be processed
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetailResponse'
example:
status: 422
title: Unprocessable request
detail: 'The request could not be completed due to missing rules: []'
ExpiredToken:
description: 'Expired Token (see: https://docs.coveo.com/en/1471/build-a-search-ui/troubleshoot-query-error-codes#419)'
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
example:
statusCode: 419
message: Search token has expired.
x-tagGroups:
- name: Coveo Search API
tags:
- Search V3
- Passages V3
- Analysis V3
- Search V2
- Statements V2
- Result rankings
- Machine learning associations
- Statement groups
- Pipelines
- Statements V1
- Conditions
- Passages Alpha
- Organizations