openapi: 3.0.0 info: title: 'OpenAPI Specification Agents - Conversation Beta: OData Protocol API' description: AI API to chat with Celonis Agents and run their tools. x-audience: EX version: v1.2.0 servers: - url: https://30f873b4-88d4-49ba-b327-6f651d7b99e6.remockly.com security: - BearerAuth: [] - ApiKeyAuth: [] tags: - name: 'Beta: OData Protocol' paths: /intelligence/api/odata/{km_id}.svc/$metadata: get: operationId: odataMetadataResult tags: - 'Beta: OData Protocol' summary: OData metadata endpoint description: OData Knowledge Model $metadata parameters: - name: km_id in: path required: true schema: type: string example: open-purchase-requisition.purchase-requisition-km - $ref: '#/components/parameters/odataFormatParam' responses: '200': description: List of Record data content: application/json: schema: $ref: '#/components/schemas/ODataServiceResultPage' application/xml: schema: $ref: '#/components/schemas/ODataServiceResultPage' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '415': $ref: '#/components/responses/NotSupportedFormat' '429': $ref: '#/components/responses/TooManyRequests' '500': $ref: '#/components/responses/InternalError' '503': $ref: '#/components/responses/ServiceUnavailable' /intelligence/api/odata/{km_id}.svc: get: operationId: odataServiceDefinitionResult tags: - 'Beta: OData Protocol' summary: OData service definition endpoint description: OData Knowledge Model service definition endpoint parameters: - name: km_id in: path required: true schema: type: string example: open-purchase-requisition.purchase-requisition-km - $ref: '#/components/parameters/odataFormatParam' responses: '200': description: List of Record data content: application/json: schema: $ref: '#/components/schemas/ODataServiceDefinitionResultPage' application/xml: schema: $ref: '#/components/schemas/ODataServiceDefinitionXMLResultPage' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '415': $ref: '#/components/responses/NotSupportedFormat' '429': $ref: '#/components/responses/TooManyRequests' '500': $ref: '#/components/responses/InternalError' '503': $ref: '#/components/responses/ServiceUnavailable' /intelligence/api/odata/{km_id}.svc/{record_id}_entries: get: operationId: odataServiceDataResult tags: - 'Beta: OData Protocol' summary: OData service data endpoint description: OData Knowledge Model service data endpoint parameters: - name: km_id in: path required: true schema: type: string example: open-purchase-requisition.purchase-requisition-km - name: record_id in: path required: true schema: type: string example: MATERIALS - $ref: '#/components/parameters/odataFormatParam' - $ref: '#/components/parameters/odataSelectParam' - $ref: '#/components/parameters/odataTopParam' - $ref: '#/components/parameters/odataSkipParam' - $ref: '#/components/parameters/odataFilterParam' - $ref: '#/components/parameters/odataFilterIdParam' - $ref: '#/components/parameters/odataOrderByParam' - $ref: '#/components/parameters/odataCountParam' responses: '200': description: List of Record data content: application/json: schema: $ref: '#/components/schemas/ODataServiceDataResultPage' application/xml: schema: $ref: '#/components/schemas/ODataServiceDataXMLResultPage' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '415': $ref: '#/components/responses/NotSupportedFormat' '429': $ref: '#/components/responses/TooManyRequests' '500': $ref: '#/components/responses/InternalError' '503': $ref: '#/components/responses/ServiceUnavailable' components: schemas: ODataServiceDefinitionXMLResultPage: title: OData Service Definition result page type: object properties: '@odata.context': type: string description: OData $metadata URI example: https://team.domain.celonis.cloud/intelligence/api/odata/kmid.svc/$metadata workspace: type: object properties: title: type: string example: ODataKnowledgeModel.Container collection: type: array items: type: object properties: name: type: string example: km_record_entries xml: attribute: true href: type: string example: km_record_entries xml: attribute: true title: type: string example: km_record_entries ODataServiceDefinitionResultPage: title: OData Service Definition result page type: object properties: '@odata.context': type: string description: OData $metadata URI example: https://team.domain.celonis.cloud/intelligence/api/odata/kmid.svc/$metadata value: type: array items: type: object properties: name: type: string example: km_record_entries url: type: string example: km_record_entries ODataServiceResultPage: title: OData Service result page type: object properties: $Version: type: string example: 4.01 additionalProperties: type: object properties: $Kind: type: string example: EntityType additionalProperties: type: object properties: $Type: type: string example: null ODataServiceDataXMLResultPage: title: OData Service Data XML result page type: object properties: feed: type: object properties: context: type: string description: OData $metadata URI example: https://team.domain.celonis.cloud/intelligence/api/odata/kmid.svc/$metadata#km_record_entries xml: attribute: true entry: type: array items: type: object properties: updated: type: string format: datatime category: type: object properties: term: type: string xml: attribute: true example: '#ODataKnowledgeModel.DELIVERY_ITEM' content: type: object properties: type: type: string example: application/xml xml: attribute: true properties: type: object additionalProperties: type: object example: field_id1: value1 field_id2: value2 ODataServiceDataResultPage: title: OData Service Data result page type: object properties: '@odata.context': type: string description: OData $metadata URI example: https://team.domain.celonis.cloud/intelligence/api/odata/kmid.svc/$metadata#km_record_entries value: type: array items: type: object additionalProperties: type: object example: field_id1: value1 field_id2: value2 errorDTO: title: Error type: object description: This [RFC7807] specification is to define common error formats for those applications that need one, so that they aren't required to define their own, or worse, tempted to redefine the semantics of existing HTTP status codes. This definition was copied from https://datatracker.ietf.org/doc/html/rfc7807 properties: title: type: string description: A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4). This definition was copied from https://datatracker.ietf.org/doc/html/rfc7807 status: type: integer description: The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem. This definition was copied from https://datatracker.ietf.org/doc/html/rfc7807 detail: type: string description: The details of the Error errorCode: type: string description: Unique Identifier of the Error type: type: string description: A URI reference [RFC3986] that identifies the problem type. This definition was copied from https://datatracker.ietf.org/doc/html/rfc7807 authErrorDTO: title: Authentication Error type: object properties: error: type: string responses: NotSupportedFormat: description: Unsupported media type requested. content: application/problem+json: schema: $ref: '#/components/schemas/errorDTO' NotFound: description: The specified resource was not found content: application/problem+json: schema: $ref: '#/components/schemas/errorDTO' ServiceUnavailable: description: Service Unavailable. content: application/problem+json: schema: $ref: '#/components/schemas/errorDTO' Forbidden: description: Forbidden. content: application/problem+json: schema: $ref: '#/components/schemas/errorDTO' Unauthorized: description: Unauthorized access. content: application/problem+json: schema: $ref: '#/components/schemas/authErrorDTO' TooManyRequests: description: Too Many Requests. headers: X-RateLimit-Limit: description: Request limit per hour. schema: type: integer format: int32 X-RateLimit-Remaining: description: The number of requests left for the time window. schema: type: integer format: int32 X-RateLimit-Reset: description: The UTC date/time at which the current rate limit window resets. schema: type: string format: date-time content: application/problem+json: schema: $ref: '#/components/schemas/errorDTO' InternalError: description: Internal Server Error. content: application/problem+json: schema: $ref: '#/components/schemas/errorDTO' BadRequest: description: Bad Request. content: application/problem+json: schema: $ref: '#/components/schemas/errorDTO' parameters: odataFormatParam: in: query name: $format required: false schema: type: string description: The $format system query option allows clients to request a response in a particular format and is useful for clients without access to request headers for standard content-type negotiation. example: json odataSelectParam: in: query name: $select required: false schema: type: array items: type: string description: The $select system query option allows clients to request a specific set of properties for each entity or complex type. example: active,approval odataTopParam: in: query name: $top required: false schema: type: integer description: The $top system query option requests the number of items in the queried collection to be included in the result. example: 10 odataOrderByParam: in: query name: $orderby required: false schema: type: string description: The $orderby system query option allows clients to request resources in a particular order. example: field1 odataSkipParam: in: query name: $skip required: false schema: type: integer description: The $skip query option requests the number of items in the queried collection that are to be skipped and not included in the result. example: 100 odataFilterIdParam: in: query name: filterid required: false schema: type: string description: The filterid is a custom query option allows clients to filter a collection of resources using pre-defined knowledge model filter. example: filterid odataFilterParam: in: query name: $filter required: false schema: type: string description: The $filter system query option allows clients to filter a collection of resources that are addressed by a request URL. example: field1 eq 'value1' odataCountParam: in: query name: $count required: false schema: type: boolean description: The $count system query option allows clients to request a count of the matching resources included with the resources in the response. The $count query option has a Boolean value of true or false. example: true securitySchemes: BearerAuth: type: http scheme: bearer bearerFormat: JWT ApiKeyAuth: type: apiKey in: header name: AppKey