Coveo Statements V2 API

The Statements V2 API from Coveo — 10 operation(s) for statements v2.

Documentation

Specifications

Schemas & Data

📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-schema/coveo-search-passagev3-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-schema/coveo-search-restfacetrequest-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-schema/coveo-search-restfacetresult-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-schema/coveo-search-restfacetresultvalue-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-schema/coveo-search-restgroupby-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-schema/coveo-search-restgroupbyresult-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-schema/coveo-search-restgroupbyvalue-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-schema/coveo-search-resthighlightresponse-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-schema/coveo-search-restquerycorrection-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-schema/coveo-search-restqueryfunction-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-schema/coveo-search-restqueryparameters-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-schema/coveo-search-restqueryparentresult-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-schema/coveo-search-restqueryresponse-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-schema/coveo-search-restqueryresult-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-schema/coveo-search-restrankingfunction-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-schema/coveo-search-retrievepassagesrequestv3-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-schema/coveo-search-retrievepassagesresponsev3-schema.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-structure/coveo-search-passagev3-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-structure/coveo-search-restfacetrequest-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-structure/coveo-search-restfacetresult-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-structure/coveo-search-restfacetresultvalue-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-structure/coveo-search-restgroupby-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-structure/coveo-search-restgroupbyresult-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-structure/coveo-search-restgroupbyvalue-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-structure/coveo-search-resthighlightresponse-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-structure/coveo-search-restquerycorrection-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-structure/coveo-search-restqueryfunction-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-structure/coveo-search-restqueryparameters-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-structure/coveo-search-restqueryparentresult-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-structure/coveo-search-restqueryresponse-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-structure/coveo-search-restqueryresult-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-structure/coveo-search-restrankingfunction-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-structure/coveo-search-retrievepassagesrequestv3-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/json-structure/coveo-search-retrievepassagesresponsev3-structure.json

Other Resources

OpenAPI Specification

coveo-statements-v2-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Coveo Activity Activities Statements V2 API
  description: API for Coveo Platform
  termsOfService: https://www.coveo.com/en/support/terms-agreements
  contact:
    name: Coveo
    url: https://connect.coveo.com/s/discussions
  version: 1.0.0
servers:
- url: https://platform.cloud.coveo.com
  description: Coveo public API endpoint
security:
- oauth2:
  - full
tags:
- name: Statements V2
  x-displayName: Statements
paths:
  /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.

        <details>

        <summary>Privilege(s) required</summary>


        ```json

        {"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"*"}

        ```

        </details>'
      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.

        <details>

        <summary>Privilege(s) required</summary>


        ```json

        {"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"{pipelineId}"}

        ```

        </details>'
      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.

        <details>

        <summary>Privilege(s) required</summary>


        ```json

        {"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"*"}

        ```

        </details>'
      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.

        <details>

        <summary>Privilege(s) required</summary>


        ```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}"}

        ```

        </details>'
      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.

        <details>

        <summary>Privilege(s) required</summary>


        ```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}"}

        ```

        </details>'
      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.

        <details>

        <summary>Privilege(s) required</summary>


        ```json

        {"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"*"}

        ```

        </details>'
      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.

        <details>

        <summary>Privilege(s) required</summary>


        ```json

        {"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"{pipelineId}"}

        ```

        </details>'
      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.

        <details>

        <summary>Privilege(s) required</summary>


        ```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}"}

        ```

        </details>'
      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.

        <details>

        <summary>Privilege(s) required</summary>


        ```json

        {"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"*"}

        ```

        </details>'
      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.

        <details>

        <summary>Privilege(s) required</summary>


        ```json

        {"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"{pipelineId}"}

        ```

        </details>'
      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.

        <details>

        <summary>Privilege(s) required</summary>


        ```json

        {"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"EDIT","targetId":"{pipelineId}"}

        ```

        </details>'
      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.

        <details>

        <summary>Privilege(s) required</summary>


        ```json

        {"level":"NORMAL","owner":"SEARCH_API","targetDomain":"QUERY_PIPELINE","type":"VIEW","targetId":"{pipelineId}"}

        ```

        </details>'
      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<details>\n<summary>Privilege(s) required</summary>\n\n```json\n{\"level\":\"NORMAL\",\"owner\":\"SEARCH_API\",\"targetDomain\":\"QUERY_PIPELINE\",\"type\":\"VIEW\",\"targetId\":\"{pipelineId}\"}\n```\n</details>"
      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
components:
  schemas:
    RestSingleOperationValidationRequestIncomingStatement:
      required:
      - operation
      type: object
      properties:
        operation:
          $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'
    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
    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
    ConditionDetailed:
      type: object
      required:
      - condition
      properties:
        condition:
          $ref: '#/components/schemas/BooleanExpression'
    OutgoingConditionBase:
      required:
      - childrenCount
      - definition
      - detailed
      - feature
      - id
      - position
      - ready
      type: object
      properties:
        id:
          type: string
          description: The unique identifier of this statement.
          example: 45a7892e-a63f-4c8e-8795-ab38c8c18d7e
        description:
          type: string
          description: The intended purpose of this statement in an actual implementation.
          example: If the query originates from the community site...
        definition:
          type: string
          description: The query pipeline language expression that defines this statement (see [Query Pipeline Language (QPL)](https://docs.coveo.com/en/1449/)).
          example: when $searchhub is "community"
        detailed:
          $ref: '#/components/schemas/ConditionDetailed'
        modifiedBy:
          type: string
          description: The identifier of the Coveo Cloud platform user who last modified this.
          example: bjones@example.com
        modifiedAt:
          type: string
          format: date-time
          description: The last time this was modified.
          example: '2021-02-16T15:15:17Z'
        childrenCount:
          type: integer
          description: '> This property is exposed for backward compatibility reasons.'
          format: int32
          deprecated: true
        feature:
          $ref: '#/components/schemas/OutgoingConditionFeature'
        parent:
          type: string
          description: '> This property is exposed for backward compatibility reasons.'
          deprecated: true
        condition:
          type: string
          description: '> This property is exposed for backward compatibility reasons.'
          deprecated: true
        position:
          type: integer
          description: '> This property is exposed for backward compatibility reasons.'
          format: int32
          deprecated: true
        ready:
          type: boolean
          description: '> This property is exposed for backward compatibility reasons.'
          deprecated: true
    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
    OutgoingConditionFeature:
      type: string
      description: '> This property is exposed for backward compatibility reasons.'
      deprecated: true
      enum:
      - when
    BooleanExpression:
      oneOf:
      - $ref: '#/components/schemas/CompoundBooleanExpression'
      - $ref: '#/components/schemas/OperatorExpression'
      - $ref: '#/components/schemas/IsBetweenOperator'
      - type: boolean
    RestSingleOperationValidationResponse:
      required:
      - result
      type: object
      properties:
        result:
          $ref: '#/components/schemas/RestOperationValidationResponse'
    ErrorMessage:
      type: object
      additionalProperties: true
      properties:
        statusCode:
          type: number
          example: 404
        errorCode:
          type: string
          example: ORGANIZATION_DOES_NOT_EXIST
        message:
          type: string
          example: The organization does not exist in the search api.
    CompoundBooleanExpression:
      type: object
      required:
      - operator
      - left
      properties:
        operator:
          type: string
        left:
          $ref: '#/components/schemas/BooleanExpression'
        right:
          $ref: '#/components/schemas/BooleanExpression'
    OperatorRightHandSide:
      oneOf:
      - type: string
      - type: number
      - type: integer
        format: int32
      - type: boolean
    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.
    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.
    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
    IncomingMoveStatement:
      type: object
      properties:
        position:
          type: integer
          description: 'The 1-based position of this statement relative to other 

# --- truncated at 32 KB (43 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/coveo/refs/heads/main/openapi/coveo-statements-v2-api-openapi.yml