Sentinel Hub process API

Make sure to use the appropriate end-point for each of the datasets, e.g. for Landsat, Sentinel-3, etc.

OpenAPI Specification

sentinel-hub-process-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: API Reference async_process process API
  version: 1.0.0
  contact:
    name: Sentinel Hub
  description: '**NOTE:** _Asynchronous Processing API is currently in beta release._

    '
servers:
- url: https://services.sentinel-hub.com
tags:
- name: process
  x-displayName: Process
  description: Make sure to use the appropriate <a href="https://docs.sentinel-hub.com/api/latest/data/" target="_blank">end-point for each of the datasets</a>, e.g. for Landsat, Sentinel-3, etc.
paths:
  /process/v1:
    post:
      summary: Process
      operationId: process
      tags:
      - process
      parameters:
      - in: header
        name: Accept
        schema:
          type: string
        description: 'Sets response type and has priority over the type defined in the output object of the request.

          Possible values are `image/jpeg`, `image/png`, `image/tiff`, `application/json`, `application/tar`, `application/x-tar`, `multipart/mixed`, and `application/octet-stream`.

          '
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProcessRequest'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/MultiPartProcessRequest'
      responses:
        '200':
          description: Successful response
          content:
            image/jpeg:
              schema:
                title: Jpeg image
                type: string
                format: image/jpeg
            image/png:
              schema:
                title: Png image
                type: string
                format: image/png
            image/tiff:
              schema:
                title: TIFF image
                type: string
                format: image/tiff
            application/json:
              schema:
                title: JSON data
                type: string
                format: application/json
            multipart/mixed:
              schema:
                title: Mixed data
                type: string
                format: multipart/mixed
            application/x-tar:
              schema:
                title: Tar
                type: string
                format: application/x-tar
        '400':
          $ref: '#/components/responses/400'
        '500':
          $ref: '#/components/responses/500'
      security:
      - OAuth2: []
      x-codeSamples:
      - lang: Javascript
        source: "const response = fetch(\"https://services.sentinel-hub.com/process/v1\", {\n  method: \"POST\",\n  headers: {\n    \"Content-Type\": \"application/json\",\n    \"Authorization\": \"Bearer <your_access_token>\"\n  },\n  body: JSON.stringify({\n  \"input\": {\n    \"bounds\": {\n      \"bbox\": [\n        13.822174072265625,\n        45.85080395917834,\n        14.55963134765625,\n        46.29191774991382\n      ]\n    },\n    \"data\": [{\n      \"type\": \"sentinel-2-l2a\"\n    }]\n  },\n  \"evalscript\": `\n    //VERSION=3\n\n    function setup() {\n      return {\n        input: [\"B02\", \"B03\", \"B04\"],\n        output: {\n          bands: 3\n        }\n      };\n    }\n\n    function evaluatePixel(\n      sample,\n      scenes,\n      inputMetadata,\n      customData,\n      outputMetadata\n    ) {\n      return [2.5 * sample.B04, 2.5 * sample.B03, 2.5 * sample.B02];\n    }\n    `\n  })\n})\n"
      - lang: Python
        source: "import requests\n\nresponse = requests.post('https://services.sentinel-hub.com/process/v1',\n  headers={\"Authorization\" : \"Bearer <your_access_token>\"},\n  json={\n    \"input\": {\n        \"bounds\": {\n            \"bbox\": [\n                13.822174072265625,\n                45.85080395917834,\n                14.55963134765625,\n                46.29191774991382\n            ]\n        },\n        \"data\": [{\n            \"type\": \"sentinel-2-l2a\"\n        }]\n    },\n    \"evalscript\": \"\"\"\n    //VERSION=3\n\n    function setup() {\n      return {\n        input: [\"B02\", \"B03\", \"B04\"],\n        output: {\n          bands: 3\n        }\n      };\n    }\n\n    function evaluatePixel(\n      sample,\n      scenes,\n      inputMetadata,\n      customData,\n      outputMetadata\n    ) {\n      return [2.5 * sample.B04, 2.5 * sample.B03, 2.5 * sample.B02];\n    }\n    \"\"\"\n})\n"
      - lang: Curl
        source: "curl -X POST \\\n  https://services.sentinel-hub.com/process/v1 \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Bearer <your_access_token>' \\\n  -d '{\n  \"input\": {\n    \"bounds\": {\n      \"bbox\": [\n        13.822174072265625,\n        45.85080395917834,\n        14.55963134765625,\n        46.29191774991382\n      ]\n    },\n    \"data\": [\n      {\n        \"type\": \"sentinel-2-l2a\"\n      }\n    ]\n  },\n  \"evalscript\": \"//VERSION=3\\nfunction setup() {\\n  return {\\n    input: [\\\"B02\\\", \\\"B03\\\", \\\"B04\\\"],\\n    output: {\\n      bands: 3\\n    }\\n  };\\n}\\nfunction evaluatePixel(\\n  sample,\\n  scenes,\\n  inputMetadata,\\n  customData,\\n  outputMetadata\\n) {\\n  return [2.5 * sample.B04, 2.5 * sample.B03, 2.5 * sample.B02];\\n}\\n\"\n}\n' -o image.png\n"
      - lang: Curl (multipart)
        source: "curl -X POST \\\n  https://services.sentinel-hub.com/process/v1 \\\n  -H 'Content-Type: multipart/form-data' \\\n  -H 'Authorization: Bearer <your_access_token>' \\\n  -F 'request={\n  \"input\": {\n    \"bounds\": {\n      \"bbox\": [\n        13.822174072265625,\n        45.85080395917834,\n        14.55963134765625,\n        46.29191774991382\n      ]\n    },\n    \"data\": [\n      {\n        \"type\": \"sentinel-2-l2a\"\n      }\n    ]\n  }\n}' \\\n  -F 'evalscript=//VERSION=3\n\nfunction setup() {\n  return {\n    input: [\"B02\", \"B03\", \"B04\"],\n    output: {\n      bands: 3\n    }\n  }\n}\n\nfunction evaluatePixel(\n  sample,\n  scenes,\n  inputMetadata,\n  customData,\n  outputMetadata\n) {\n  return [2.5 * sample.B04, 2.5 * sample.B03, 2.5 * sample.B02]\n}\n' -o image.png\n"
components:
  schemas:
    ProcessRequestInputData:
      description: 'The collections you wish to request, along with certain processing and filtering parameters.

        To learn how to request and work with multiple collection, check the "Data Fusion" page in our documentation https://docs.sentinel-hub.com/api/latest/data/data-fusion/.

        '
      type: array
      minItems: 1
      items:
        oneOf:
        - $ref: '#/components/schemas/S2L1CDataset'
        - $ref: '#/components/schemas/S2L2ADataset'
        - $ref: '#/components/schemas/Ls8Dataset'
        - $ref: '#/components/schemas/L8L1Dataset'
        - $ref: '#/components/schemas/L8L2Dataset'
        - $ref: '#/components/schemas/LETML1Dataset'
        - $ref: '#/components/schemas/LETML2Dataset'
        - $ref: '#/components/schemas/LTML1Dataset'
        - $ref: '#/components/schemas/LTML2Dataset'
        - $ref: '#/components/schemas/LMSSL1Dataset'
        - $ref: '#/components/schemas/ModisDataset'
        - $ref: '#/components/schemas/DEMDataset'
        - $ref: '#/components/schemas/S1Dataset'
        - $ref: '#/components/schemas/HLSDataset'
        - $ref: '#/components/schemas/BYOCDataset'
    ProcessRequestInputBounds:
      title: Bounds
      description: 'Defines the request bounds by specifying the bounding box and/or

        geometry for the request. If both are specified it will generate an image

        for the bounding box and render data contained within the geometry.

        '
      type: object
      properties:
        bbox:
          description: 'The request bounding box. This and/or GEOMETRY must be specified.

            Specify with a coordinate pair on two (opposite) vertices of the bounding

            box rectangle. Coordinates need to be in easting,northing or longitude, latitude,

            in that order in the CRS defined in the "bounds.properties.crs" parameter.

            '
          type: array
          minItems: 4
          maxItems: 4
          items:
            type: number
            format: double
          example:
          - 13.822174072265625
          - 45.85080395917834
          - 14.55963134765625
          - 46.29191774991382
        geometry:
          $ref: '#/components/schemas/Geometry'
        properties:
          $ref: '#/components/schemas/ProcessRequestInputBoundsProperties'
    LETML1Dataset:
      title: landsat-etm-l1
      type: object
      allOf:
      - $ref: '#/components/schemas/LandsatDataset'
      - type: object
        properties:
          type:
            type: string
            enum:
            - landsat-etm-l1
          dataFilter:
            allOf:
            - $ref: '#/components/schemas/LandsatFiltering'
            - $ref: '#/components/schemas/LandsatTierFilteringWithRt'
    LandsatTierFilteringWithoutRt:
      type: object
      properties:
        tiers:
          type: string
          default: ALL_TIERS
          enum:
          - TIER_1
          - ALL_TIERS
    ProcessRequestOutputFormatJpeg:
      title: image/jpeg
      type: object
      allOf:
      - $ref: '#/components/schemas/ProcessRequestOutputFormat'
      - type: object
        properties:
          quality:
            description: Quality level of JPEG compression.
            type: integer
            format: int32
            minimum: 0
            maximum: 100
            default: 90
          type:
            type: string
            enum:
            - image/jpeg
    BYOCDataset:
      title: BYOC / BATCH / ZARR
      type: object
      allOf:
      - type: object
        properties:
          dataFilter:
            $ref: '#/components/schemas/BYOCFiltering'
          processing:
            $ref: '#/components/schemas/BaseDatasetProcessing'
          type:
            type: string
            description: 'For a BYOC collection, set to "byoc-\<collectionId\>", for example "byoc-017aa0ae-33a6-45d3-8548-0f7d1041b40c".


              For a BATCH collection, set to "batch-\<collectionId\>", for example "batch-9688cd56-6c70-4221-add8-a5821d0256a9".


              For a ZARR collection, set to "zarr-\<collectionId\>", for example "zarr-e2c7baec-3dfa-4523-b125-e242bdb5dd7c".

              '
      - $ref: '#/components/schemas/BaseDataset'
    S2L2ADataset:
      title: sentinel-2-l2a
      type: object
      allOf:
      - $ref: '#/components/schemas/BaseDataset'
      - type: object
        properties:
          dataFilter:
            $ref: '#/components/schemas/S2L2AFiltering'
          processing:
            $ref: '#/components/schemas/S2Processing'
          type:
            type: string
            enum:
            - sentinel-2-l2a
    S1Filtering:
      type: object
      properties:
        timeRange:
          $ref: '#/components/schemas/TimeRange'
        mosaickingOrder:
          description: The order in which tiles are overlapped from which the output result is mosaicked.
          type: string
          enum:
          - mostRecent
          - leastRecent
          default: mostRecent
        resolution:
          type: string
          enum:
          - HIGH
          - MEDIUM
          - FULL
        acquisitionMode:
          type: string
          enum:
          - SM
          - IW
          - EW
          - WV
          - EN
          - AN
          - IM
        polarization:
          type: string
          enum:
          - SH
          - SV
          - DH
          - DV
          - HH
          - HV
          - VV
          - VH
        orbitDirection:
          type: string
          enum:
          - ASCENDING
          - DESCENDING
        timeliness:
          type: string
          enum:
          - NRT10m
          - NRT1h
          - NRT3h
          - Fast24h
          - Offline
          - Reprocessing
          - ArchNormal
    LandsatDataset:
      type: object
      allOf:
      - $ref: '#/components/schemas/BaseDataset'
      - type: object
        properties:
          dataFilter:
            $ref: '#/components/schemas/LandsatFiltering'
          processing:
            $ref: '#/components/schemas/BaseDatasetProcessing'
    BYOCFiltering:
      type: object
      properties:
        timeRange:
          $ref: '#/components/schemas/TimeRange'
        mosaickingOrder:
          description: The order in which tiles are overlapped from which the output result is mosaicked.
          type: string
          enum:
          - mostRecent
          - leastRecent
          default: mostRecent
    S1ProcessingSpeckleFilterLEE:
      type: object
      description: The Lee speckle filter. Note that processing time rapidly increases as window size increases.
      required:
      - type
      - windowSizeX
      - windowSizeY
      properties:
        type:
          type: string
        windowSizeX:
          type: integer
          minimum: 1
          maximum: 7
          description: The window size in the X direction of the source data. Odd values recommended.
        windowSizeY:
          type: integer
          minimum: 1
          maximum: 7
          description: The window size in the Y direction of the source data. Odd values recommended.
    LETML2Dataset:
      title: landsat-etm-l2
      type: object
      allOf:
      - $ref: '#/components/schemas/LandsatDataset'
      - type: object
        properties:
          type:
            type: string
            enum:
            - landsat-etm-l2
          dataFilter:
            allOf:
            - $ref: '#/components/schemas/LandsatFiltering'
            - $ref: '#/components/schemas/LandsatTierFilteringWithoutRt'
    LTML2Dataset:
      title: landsat-tm-l2
      type: object
      allOf:
      - $ref: '#/components/schemas/LandsatDataset'
      - type: object
        properties:
          type:
            type: string
            enum:
            - landsat-tm-l2
          dataFilter:
            allOf:
            - $ref: '#/components/schemas/LandsatFiltering'
            - $ref: '#/components/schemas/LandsatTierFilteringWithoutRt'
    RestErrorWrapper:
      type: object
      properties:
        error:
          $ref: '#/components/schemas/Boom'
    DEMProcessing:
      type: object
      allOf:
      - $ref: '#/components/schemas/BaseDatasetProcessing'
      - type: object
        properties:
          clampNegative:
            type: boolean
            default: false
            description: Mapzen DEM specific option. It replaces negative orthometric heights with 0. Useful for removing ocean bathymetry, for example.
          egm:
            type: boolean
            default: false
            description: It replaces orthometric heights with ellipsoidal heights relative to the WGS84 ellipsoid.
    Polygon:
      type: object
      properties:
        type:
          type: string
          enum:
          - Polygon
        coordinates:
          type: array
          items:
            type: array
            items:
              maxItems: 2
              minItems: 2
              type: array
              items:
                type: number
                format: double
    S1ProcessingSpeckleFilterNONE:
      type: object
      description: Does NO speckle filtering. Equivalent to not having speckleFilter defined.
      required:
      - type
      properties:
        type:
          type: string
    ProcessRequestInputBoundsProperties:
      title: BoundsProperties
      type: object
      properties:
        crs:
          description: 'The coordinate reference system of the coordinates. Must be

            one of the values listed at https://docs.planet.com/develop/apis/processing/#crs-support.

            Default CRS is WGS84, http://www.opengis.net/def/crs/OGC/1.3/CRS84.

            '
          type: string
          default: http://www.opengis.net/def/crs/OGC/1.3/CRS84
    S1Processing:
      type: object
      allOf:
      - $ref: '#/components/schemas/BaseDatasetProcessing'
      - type: object
        properties:
          speckleFilter:
            type: object
            oneOf:
            - $ref: '#/components/schemas/S1ProcessingSpeckleFilterLEE'
            - $ref: '#/components/schemas/S1ProcessingSpeckleFilterNONE'
            discriminator:
              propertyName: type
              mapping:
                LEE: '#/components/schemas/S1ProcessingSpeckleFilterLEE'
                NONE: '#/components/schemas/S1ProcessingSpeckleFilterNONE'
          backCoeff:
            type: string
            enum:
            - BETA0
            - SIGMA0_ELLIPSOID
            - GAMMA0_ELLIPSOID
            - GAMMA0_TERRAIN
            default: GAMMA0_ELLIPSOID
          orthorectify:
            type: boolean
            default: false
          demInstance:
            type: string
            enum:
            - MAPZEN
            - COPERNICUS
            - COPERNICUS_30
            - COPERNICUS_90
            default: MAPZEN
          radiometricTerrainOversampling:
            type: number
            format: double
            minimum: 1
            maximum: 4
            default: 2
    DEMDataset:
      title: dem
      type: object
      allOf:
      - $ref: '#/components/schemas/BaseDataset'
      - type: object
        properties:
          dataFilter:
            $ref: '#/components/schemas/DEMFiltering'
          processing:
            $ref: '#/components/schemas/DEMProcessing'
          type:
            type: string
            enum:
            - dem
    ProcessRequestInput:
      title: Input
      type: object
      required:
      - bounds
      - data
      properties:
        bounds:
          $ref: '#/components/schemas/ProcessRequestInputBounds'
        data:
          $ref: '#/components/schemas/ProcessRequestInputData'
    L8L1Dataset:
      title: landsat-ot-l1
      type: object
      allOf:
      - $ref: '#/components/schemas/LandsatDataset'
      - type: object
        properties:
          type:
            type: string
            enum:
            - landsat-ot-l1
          dataFilter:
            allOf:
            - $ref: '#/components/schemas/LandsatFiltering'
            - $ref: '#/components/schemas/LandsatTierFilteringWithRt'
    ProcessRequestOutputFormatPng:
      title: image/png
      type: object
      allOf:
      - $ref: '#/components/schemas/ProcessRequestOutputFormat'
      - type: object
        properties:
          type:
            type: string
            enum:
            - image/png
    ProcessRequest:
      type: object
      required:
      - evalscript
      - input
      properties:
        input:
          $ref: '#/components/schemas/ProcessRequestInput'
        output:
          $ref: '#/components/schemas/ProcessRequestOutput'
        evalscript:
          description: 'Your evalscript. For details, click

            <a href="https://docs.planet.com/develop/evalscripts/" target="_blank">here</a>.

            '
          type: string
    S2L2AFiltering:
      type: object
      properties:
        timeRange:
          $ref: '#/components/schemas/TimeRange'
        mosaickingOrder:
          description: The order in which tiles are overlapped from which the output result is mosaicked.
          type: string
          enum:
          - mostRecent
          - leastRecent
          - leastCC
          default: mostRecent
        maxCloudCoverage:
          allOf:
          - $ref: '#/components/schemas/MaxCloudCoverage'
          - default: 100
    HLSFiltering:
      type: object
      properties:
        timeRange:
          $ref: '#/components/schemas/TimeRange'
        mosaickingOrder:
          description: The order in which tiles are overlapped from which the output result is mosaicked.
          type: string
          enum:
          - mostRecent
          - leastRecent
          - leastCC
          default: mostRecent
        maxCloudCoverage:
          allOf:
          - $ref: '#/components/schemas/MaxCloudCoverage'
          - default: 100
        constellation:
          type: string
          description: 'The selected constellation. "SENTINEL" selects only Sentinel products, while "LANDSAT" selects only Landsat products.


            By default, products of both constellations are selected.

            '
          enum:
          - SENTINEL
          - LANDSAT
    LTML1Dataset:
      title: landsat-tm-l1
      type: object
      allOf:
      - $ref: '#/components/schemas/LandsatDataset'
      - type: object
        properties:
          type:
            type: string
            enum:
            - landsat-tm-l1
          dataFilter:
            allOf:
            - $ref: '#/components/schemas/LandsatFiltering'
            - $ref: '#/components/schemas/LandsatTierFilteringWithoutRt'
    L8L2Dataset:
      title: landsat-ot-l2
      type: object
      allOf:
      - $ref: '#/components/schemas/LandsatDataset'
      - type: object
        properties:
          type:
            type: string
            enum:
            - landsat-ot-l2
          dataFilter:
            allOf:
            - $ref: '#/components/schemas/LandsatFiltering'
            - $ref: '#/components/schemas/LandsatTierFilteringWithoutRt'
    ProcessRequestOutput:
      type: object
      properties:
        width:
          description: 'The request image width. Must be an integer between 1 and 2500.

            <br />*Only one pair of parameters "width"/"height" or "resx"/"resy" must

            be set at the same time.*

            '
          type: integer
          format: int32
          minimum: 1
          maximum: 2500
          default: 256
          example: 512
        height:
          description: 'The request image height. Must be an integer between 1 and 2500.

            <br />*Only one pair of parameters "width"/"height" or "resx"/"resy" must

            be set at the same time.*

            '
          type: integer
          format: int32
          minimum: 1
          maximum: 2500
          default: 256
          example: 512
        resx:
          description: 'Spatial resolution of the request image in a horizontal direction.

            Its units are defined by the CRS given in "input.bounds.properties.crs"

            parameter. <br />*Only one pair of parameters "width"/"height" or "resx"/"resy"

            must be set at the same time.*

            '
          type: number
          format: double
        resy:
          description: 'Spatial resolution of the request image in a vertical direction.

            Its units are defined by the CRS given in "input.bounds.properties.crs"

            parameter. <br />*Only one pair of parameters "width"/"height" or "resx"/"resy"

            must be set at the same time.*

            '
          type: number
          format: double
        responses:
          type: array
          description: 'Response object(s). <br/>

            If you request multiple responses, set the `Accept` header to

            `application/tar`, `application/x-tar` or `multipart/mixed`.

            '
          items:
            $ref: '#/components/schemas/ProcessRequestOutputResponse'
    ProcessRequestOutputFormat:
      type: object
      properties:
        type:
          type: string
          description: Output format mime-type
    MaxCloudCoverage:
      description: The maximum allowable cloud coverage in percent.
      type: number
      format: double
      minimum: 0
      maximum: 100
      default: 100
    MultiPartProcessRequest:
      type: object
      properties:
        request:
          required:
          - input
          type: object
          properties:
            input:
              $ref: '#/components/schemas/ProcessRequestInput'
            output:
              $ref: '#/components/schemas/ProcessRequestOutput'
        evalscript:
          description: 'Your evalscript. For details, click

            <a href="https://docs.planet.com/develop/evalscripts/" target="_blank">here</a>.

            '
          type: string
    LMSSL1Dataset:
      title: landsat-mss-l1
      type: object
      allOf:
      - $ref: '#/components/schemas/LandsatDataset'
      - type: object
        properties:
          type:
            type: string
            enum:
            - landsat-mss-l1
          dataFilter:
            allOf:
            - $ref: '#/components/schemas/LandsatFiltering'
            - $ref: '#/components/schemas/LandsatTierFilteringWithoutRt'
    TimeRange:
      type: object
      description: A time interval to filter data by acquisition date. It is defined by a start and end date and time, e.g. 2019-01-31T14:00:00+01:00. A date representation without time (e.g. 2019-01-31) will not work. Both the start and end of a time interval are inclusive and can be equal.
      properties:
        from:
          description: The start of a search interval.
          type: string
          format: date-time
        to:
          description: The end of a search interval.
          type: string
          format: date-time
      example:
        from: '2018-10-01T00:00:00.000Z'
        to: '2018-11-01T00:00:00.000Z'
    LandsatTierFilteringWithRt:
      type: object
      properties:
        tiers:
          type: string
          default: ALL_TIERS
          enum:
          - TIER_1
          - TIER_1_AND_RT
          - ALL_TIERS
    ProcessRequestOutputFormatJson:
      title: application/json
      type: object
      allOf:
      - $ref: '#/components/schemas/ProcessRequestOutputFormat'
      - type: object
        properties:
          type:
            type: string
            enum:
            - application/json
    S2Processing:
      type: object
      allOf:
      - $ref: '#/components/schemas/BaseDatasetProcessing'
      - type: object
        properties:
          harmonizeValues:
            description: 'Harmonizes data values to be comparable with old processing baselines. See <a href="https://docs.sentinel-hub.com/api/latest/data/sentinel-2-l1c/#harmonize-values" target="_blank">here</a> for details.

              '
            type: boolean
            default: true
    HLSDataset:
      title: hls
      type: object
      allOf:
      - $ref: '#/components/schemas/BaseDataset'
      - type: object
        properties:
          type:
            type: string
            enum:
            - hls
          dataFilter:
            $ref: '#/components/schemas/HLSFiltering'
          processing:
            $ref: '#/components/schemas/BaseDatasetProcessing'
    S2L1CDataset:
      title: sentinel-2-l1c
      type: object
      allOf:
      - $ref: '#/components/schemas/BaseDataset'
      - type: object
        properties:
          dataFilter:
            $ref: '#/components/schemas/S2L1CFiltering'
          processing:
            $ref: '#/components/schemas/S2Processing'
          type:
            type: string
            enum:
            - sentinel-2-l1c
    DEMFiltering:
      type: object
      properties:
        demInstance:
          description: Selects DEM instance.
          type: string
          enum:
          - MAPZEN
          - COPERNICUS_30
          - COPERNICUS_90
          default: MAPZEN
    Ls8Dataset:
      title: landsat-8-l1c
      type: object
      allOf:
      - $ref: '#/components/schemas/LandsatDataset'
      - type: object
        properties:
          type:
            type: string
            enum:
            - landsat-8-l1c
          dataFilter:
            allOf:
            - $ref: '#/components/schemas/LandsatFiltering'
            - $ref: '#/components/schemas/LandsatTierFilteringWithRt'
    BaseDataset:
      type: object
      properties:
        type:
          description: Datasource abbreviation
          type: string
        id:
          description: Identifier
          type: string
    BaseDatasetProcessing:
      type: object
      properties:
        upsampling:
          description: 'The interpolation used when the requested

            resolution is higher than the source resolution.

            '
          type: string
          enum:
          - NEAREST
          - BILINEAR
          - BICUBIC
          default: NEAREST
        downsampling:
          description: 'The interpolation used when the requested

            resolution is lower than the source resolution.

            '
          type: string
          enum:
          - NEAREST
          - BILINEAR
          - BICUBIC
          default: NEAREST
    ProcessRequestOutputFormatTiff:
      title: image/tiff
      type: object
      allOf:
      - $ref: '#/components/schemas/ProcessRequestOutputFormat'
      - type: object
        properties:
          type:
            type: string
            enum:
            - image/tiff
    ProcessRequestOutputResponse:
      type: object
      properties:
        identifier:
          type: string
          description: 'Response''s identifier is used to connect the results of an evalscript with the output file.

            Each response identifier value must either match one of the values in `setup()` -> `output.id` in the evalscript (see <a href="https://docs.sentinel-hub.com/api/latest/data/sentinel-2-l1c/examples/#ndvi-image--and--value-multi-part-response-png-and-geotiff" target="_blank">example</a>)

            or be `userdata` (see <a href="https://docs.sentinel-hub.com/api/latest/data/sentinel-2-l1c/examples/#true-color-and-metadata-multi-part-response-geotiff-and-json" target="_blank">example</a>).

            '
          enum:
          - <identifier>
          - userdata
        format:
          description: Format object (default is `image/png`).
          type: object
          oneOf:
          - $ref: '#/components/schemas/ProcessRequestOutputFormatPng'
          - $ref: '#/components/schemas/ProcessRequestOutputFormatJpeg'
          - $ref: '#/components/schemas/ProcessRequestOutputFormatTiff'
          - $ref: '#/components/schemas/ProcessRequestOutputFormatJson'
    MultiPolygon:
      type: object
      properties:
        type:
          type: string
          enum:
          - MultiPolygon
        coordinates:
          type: array
          items:
            type: array
            items:
              type: array
              items:
                maxItems: 2
                minItems: 2
                type: array
                items:
                  type: number
                  format: double
    LandsatFiltering:
      type: object
      properties:
        timeRange:
          $ref: '#/components/schemas/TimeRange'
        mosaickingOrder:
          description: The order in which tiles are overlapped from which the output result is mosaicked.
          type: string
          enum:
          - mostRecent
          - leastRecent
          - leastCC
          default: mostRecent
        maxCloudCoverage:
          allOf:
          - $ref: '#/components/schemas/MaxCloudCoverage'
          - default: 100
    Boom:
      type: object
      properties:
        status:
          description: HTTP status code
          type: integer
          format: int32
        reason:
          description: Reason for the error
          type: string
        message:
          description: Friendly error message
          type: string
        code:
          description: Code that uniquely identifies the error
          type: string
          enum:
          - COMMON_BAD_PAYLOAD
          - COMMON_NOT_FOUND
          - COMMON_DATABASE_ERROR
          - COMMON_UNIQUE_KEY_VIOLATION
          - COMMON_INSUFFICIENT_PERMISSIONS
          - COMMON_SENTINEL_ACCOUNT_EXPIRED
          - COMMON_METHOD_NOT_ALLOWED
          - COMMON_UNSUPPORTED_MEDIA_TYPE
          - COMMON_ELASTICSEARCH_ERROR
          - COMMON_UNAUTHORIZED
          - COMMON_EXCEPTION
          - RATE_LIMIT_STORAGE_TIMEOUT
          - RATE_LIMIT_OVERLAPPING_POLICIES
          - RATE_LIMIT_EXCEEDED
          - RATE_LIMIT_TOKEN_COUNT_EXCEEDS_CAPACITY
          - DASHBOARD_PAYPAL_SALE_ERROR
          - DASHBOARD_PAYPAL_SUBSCRIPTION_ERROR
          - DASHBOARD_INVALID_PAYPAL_RESPONSE
          - DASHBOARD_EXECUTE_SALE_ERROR
          - DASHBOARD_EXECUTE_AGREEMENT_ERROR
          - DASHBOARD_IPN_ERROR
          - DASHBOARD_ADYEN_SALE_ERROR
          - DASHBOARD_ADYEN_PAYMENT_CANCELLED
          - RENDERER_EXCEPTION
          - OAUTH_ERROR
          - EMAIL_OCTOPUS_ERROR
        errors:
          description: Additional information about the error (Optional)
          type: object
    S1Dataset:
      title: sentinel-1-grd
      type: object
      allOf:
      - $ref: '#/components/schemas/BaseDataset'
      - type: object
        properties:
          dataFilter:
            $ref: '#/components/schemas/S1Filtering'
          processing:
            $ref: '#/components/sche

# --- truncated at 32 KB (35 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/sentinel-hub/refs/heads/main/openapi/sentinel-hub-process-api-openapi.yml