openapi: 3.0.3 info: title: |- A sample API conforming to the standard OGC API - Processes - Part 1: Core version: 1.0.0 description: |- This document is an API definition document provided alongside the OGC API - Processes standard. The OGC API - Processes Standard specifies a processing interface to communicate over a RESTful protocol using JavaScript Object Notation (JSON) encodings. The specification allows for the wrapping of computational tasks into executable processes that can be offered by a server and be invoked by a client application. contact: name: "Open Geospatial Consortium (OGC)" email: standards-team@ogc.org url: 'https://www.ogc.org/contacts' license: name: OGC license url: "http://www.ogc.org/legal/" paths: /: get: summary: landing page of this API description: >- The landing page provides links to the: * The APIDefinition (no fixed path), * The Conformance statements (path /conformance), * The processes metadata (path /processes), * The endpoint for job monitoring (path /jobs). For more information, see [Section 7.2](https://docs.ogc.org/is/18-062/18-062.html#sc_landing_page). operationId: getLandingPage tags: - Capabilities responses: 200: $ref: "http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/responses/LandingPage.yaml" 500: $ref: "http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/responses/ServerError.yaml" /conformance: get: summary: information about standards that this API conforms to description: | A list of all conformance classes, specified in a standard, that the server conforms to. | Conformance class | URI | |-----------|-------| |Core|http://www.opengis.net/spec/ogcapi-processes-1/1.0/conf/core| |OGC Process Description|http://www.opengis.net/spec/ogcapi-processes-1/1.0/conf/ogc-process-description| |JSON|http://www.opengis.net/spec/ogcapi-processes-1/1.0/conf/json| |HTML|http://www.opengis.net/spec/ogcapi-processes-1/1.0/conf/html| |OpenAPI Specification 3.0|http://www.opengis.net/spec/ogcapi-processes-1/1.0/conf/oas30| |Job list|http://www.opengis.net/spec/ogcapi-processes-1/1.0/conf/job-list| |Callback|http://www.opengis.net/spec/ogcapi-processes-1/1.0/conf/callback| |Dismiss|http://www.opengis.net/spec/ogcapi-processes-1/1.0/conf/dismiss| For more information, see [Section 7.4](https://docs.ogc.org/is/18-062/18-062.html#sc_conformance_classes). operationId: getConformanceClasses tags: - ConformanceDeclaration responses: 200: $ref: "http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/responses/ConformanceDeclaration.yaml" 500: $ref: "http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/responses/ServerError.yaml" /processes: get: summary: retrieve the list of available processes description: | The list of processes contains a summary of each process the OGC API - Processes offers, including the link to a more detailed description of the process. For more information, see [Section 7.9](https://docs.ogc.org/is/18-062/18-062.html#sc_process_list). operationId: getProcesses tags: - ProcessList responses: 200: $ref: "http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/responses/ProcessList.yaml" /processes/{processID}: get: summary: retrieve a process description description: | The process description contains information about inputs and outputs and a link to the execution-endpoint for the process. The Core does not mandate the use of a specific process description to specify the interface of a process. That said, the Core requirements class makes the following recommendation: Implementations SHOULD consider supporting the OGC process description. For more information, see [Section 7.10](https://docs.ogc.org/is/18-062/18-062.html#sc_process_description). operationId: getProcessDescription tags: - ProcessDescription parameters: - $ref: "http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/parameters/processIdPathParam.yaml" responses: 200: $ref: "http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/responses/ProcessDescription.yaml" 404: $ref: "http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/responses/NotFound.yaml" /jobs: get: summary: retrieve the list of jobs. description: | Lists available jobs. For more information, see [Section 11](https://docs.ogc.org/is/18-062/18-062.html#sc_job_list). operationId: getJobs tags: - JobList responses: 200: $ref: "http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/responses/JobList.yaml" 404: $ref: "http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/responses/NotFound.yaml" /processes/{processID}/execution: post: summary: execute a process. description: | Create a new job. For more information, see [Section 7.11](https://docs.ogc.org/is/18-062/18-062.html#sc_create_job). operationId: execute tags: - Execute parameters: - $ref: "http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/parameters/processIdPathParam.yaml" requestBody: description: Mandatory execute request JSON required: true content: application/json: schema: $ref: "http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/schemas/execute.yaml" responses: 200: $ref: 'http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/responses/ExecuteSync.yaml' 201: $ref: "http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/responses/ExecuteAsync.yaml" 404: $ref: "http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/responses/NotFound.yaml" 500: $ref: "http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/responses/ServerError.yaml" callbacks: jobCompleted: "{$request.body#/subscriber/successUri}": post: requestBody: content: application/json: schema: $ref: "http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/schemas/results.yaml" responses: 200: description: Results received successfully /jobs/{jobId}: get: summary: retrieve the status of a job description: | Shows the status of a job. For more information, see [Section 7.12](https://docs.ogc.org/is/18-062/18-062.html#sc_retrieve_status_info). operationId: getStatus tags: - Status parameters: - $ref: "http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/parameters/jobId.yaml" responses: 200: $ref: "http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/responses/Status.yaml" 404: $ref: "http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/responses/NotFound.yaml" 500: $ref: "http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/responses/ServerError.yaml" delete: summary: cancel a job execution, remove a finished job description: | Cancel a job execution and remove it from the jobs list. For more information, see [Section 13](https://docs.ogc.org/is/18-062/18-062.html#Dismiss). operationId: dismiss tags: - Dismiss parameters: - $ref: "http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/parameters/jobId.yaml" responses: 200: $ref: "http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/responses/Status.yaml" 404: $ref: "http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/responses/NotFound.yaml" 500: $ref: "http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/responses/ServerError.yaml" /jobs/{jobId}/results: get: summary: retrieve the result(s) of a job description: | Lists available results of a job. In case of a failure, lists exceptions instead. For more information, see [Section 7.13](https://docs.ogc.org/is/18-062/18-062.html#sc_retrieve_job_results). operationId: getResult tags: - Result parameters: - $ref: "http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/parameters/jobId.yaml" responses: 200: $ref: "http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/responses/Results.yaml" 404: $ref: "http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/responses/NotFound.yaml" 500: $ref: "http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/responses/ServerError.yaml" servers: - description: Example server url: http://example.org/ogcapi