Hydrosat Search API

The Search API from Hydrosat — 1 operation(s) for search.

OpenAPI Specification

hydrosat-search-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Hydrosat STAC Catalog Search API
  version: '0.1'
tags:
- name: Search
paths:
  /search:
    post:
      tags:
      - Search
      summary: Search
      description: Endpoint.
      operationId: Search_search_post
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SearchPostRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/geo+json:
              schema:
                $ref: '#/components/schemas/ItemCollection'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    get:
      tags:
      - Search
      summary: Search
      description: Endpoint.
      operationId: Search_search_get
      parameters:
      - name: collections
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: Array of collection Ids to search for items.
          title: Collections
        description: Array of collection Ids to search for items.
        examples:
          user-provided: {}
          single-collection:
            value: collection1
          multi-collections:
            value: collection1,collection2
      - name: ids
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: Array of Item ids to return.
          title: Ids
        description: Array of Item ids to return.
        examples:
          user-provided: {}
          single-item:
            value: item1
          multi-items:
            value: item1,item2
      - name: bbox
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: Only return items intersecting this bounding box. Mutually exclusive with **intersects**.
          title: Bbox
        description: Only return items intersecting this bounding box. Mutually exclusive with **intersects**.
        examples:
          user-provided: {}
          Montreal:
            value: -73.896103,45.364690,-73.413734,45.674283
      - name: intersects
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: "Only return items intersecting this GeoJSON Geometry. Mutually exclusive with **bbox**. \n\n*Remember to URL encode the GeoJSON geometry when using GET request*."
          title: Intersects
        description: "Only return items intersecting this GeoJSON Geometry. Mutually exclusive with **bbox**. \n\n*Remember to URL encode the GeoJSON geometry when using GET request*."
        examples:
          user-provided: {}
          madrid:
            value:
              type: Feature
              properties: {}
              geometry:
                coordinates:
                - - - -3.8549260500072933
                    - 40.54923557897152
                  - - -3.8549260500072933
                    - 40.29428000041938
                  - - -3.516597069715033
                    - 40.29428000041938
                  - - -3.516597069715033
                    - 40.54923557897152
                  - - -3.8549260500072933
                    - 40.54923557897152
                type: Polygon
          new-york:
            value:
              type: Feature
              properties: {}
              geometry:
                coordinates:
                - - - -74.50117532354284
                    - 41.128266394414055
                  - - -74.50117532354284
                    - 40.35633909727355
                  - - -73.46713183168603
                    - 40.35633909727355
                  - - -73.46713183168603
                    - 41.128266394414055
                  - - -74.50117532354284
                    - 41.128266394414055
                type: Polygon
      - name: datetime
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: 'Only return items that have a temporal property that intersects this value.


            Either a date-time or an interval, open or closed. Date and time expressions adhere to RFC 3339. Open intervals are expressed using double-dots.'
          title: Datetime
        description: 'Only return items that have a temporal property that intersects this value.


          Either a date-time or an interval, open or closed. Date and time expressions adhere to RFC 3339. Open intervals are expressed using double-dots.'
        examples:
          user-provided: {}
          datetime:
            value: '2018-02-12T23:20:50Z'
          closed-interval:
            value: 2018-02-12T00:00:00Z/2018-03-18T12:31:12Z
          open-interval-from:
            value: 2018-02-12T00:00:00Z/..
          open-interval-to:
            value: ../2018-03-18T12:31:12Z
      - name: limit
        in: query
        required: false
        schema:
          anyOf:
          - type: integer
            exclusiveMinimum: 0
          - type: 'null'
          description: Limits the number of results that are included in each page of the response (capped to 10_000).
          default: 10
          title: Limit
        description: Limits the number of results that are included in each page of the response (capped to 10_000).
      - name: filter
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: 'A CQL2 filter expression for filtering items.


            Supports `CQL2-JSON` as defined in https://docs.ogc.org/is/21-065r2/21-065r2.htmln

            Remember to URL encode the CQL2-JSON if using GET'
          title: Filter
        description: 'A CQL2 filter expression for filtering items.


          Supports `CQL2-JSON` as defined in https://docs.ogc.org/is/21-065r2/21-065r2.htmln

          Remember to URL encode the CQL2-JSON if using GET'
        examples:
          user-provided: {}
          landsat8-item:
            value: id='LC08_L1TP_060247_20180905_20180912_01_T1_L1TP' AND collection='landsat8_l1tp'
      - name: filter-crs
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: The coordinate reference system (CRS) used by spatial literals in the 'filter' value. Default is `http://www.opengis.net/def/crs/OGC/1.3/CRS84`
          title: Filter-Crs
        description: The coordinate reference system (CRS) used by spatial literals in the 'filter' value. Default is `http://www.opengis.net/def/crs/OGC/1.3/CRS84`
      - name: filter-lang
        in: query
        required: false
        schema:
          anyOf:
          - enum:
            - cql2-json
            - cql2-text
            type: string
          - type: 'null'
          description: The CQL filter encoding that the 'filter' value uses.
          default: cql2-text
          title: Filter-Lang
        description: The CQL filter encoding that the 'filter' value uses.
      - name: fields
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: Include or exclude fields from items body.
          title: Fields
        description: Include or exclude fields from items body.
        examples:
          user-provided: {}
          datetime:
            value: properties.datetime
      - name: sortby
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: An array of property names, prefixed by either '+' for ascending or '-' for descending. If no prefix is provided, '+' is assumed.
          title: Sortby
        description: An array of property names, prefixed by either '+' for ascending or '-' for descending. If no prefix is provided, '+' is assumed.
        examples:
          user-provided: {}
          resolution:
            value: -gsd
          resolution-and-dates:
            value: -gsd,-datetime
      - name: token
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: Token
      - name: q
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: Parameter to perform free-text queries against STAC metadata
          title: Q
        description: Parameter to perform free-text queries against STAC metadata
        examples:
          user-provided: {}
          Coastal:
            value: ocean,coast
      responses:
        '200':
          description: Successful Response
          content:
            application/geo+json:
              schema:
                $ref: '#/components/schemas/ItemCollection'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    LineString:
      properties:
        bbox:
          anyOf:
          - prefixItems:
            - type: number
            - type: number
            - type: number
            - type: number
            type: array
            maxItems: 4
            minItems: 4
          - prefixItems:
            - type: number
            - type: number
            - type: number
            - type: number
            - type: number
            - type: number
            type: array
            maxItems: 6
            minItems: 6
          - type: 'null'
          title: Bbox
        type:
          type: string
          const: LineString
          title: Type
        coordinates:
          items:
            anyOf:
            - $ref: '#/components/schemas/Position2D'
            - $ref: '#/components/schemas/Position3D'
          type: array
          minItems: 2
          title: Coordinates
      type: object
      required:
      - type
      - coordinates
      title: LineString
      description: LineString Model
    MimeTypes:
      type: string
      enum:
      - image/tiff; application=geotiff
      - image/tiff; application=geotiff; profile=cloud-optimized
      - image/jp2
      - image/png
      - image/jpeg
      - application/geo+json
      - application/geo+json-seq
      - application/geopackage+sqlite3
      - application/vnd.google-earth.kml+xml
      - application/vnd.google-earth.kmz
      - application/x-protobuf
      - application/vnd.mapbox-vector-tile
      - application/x-hdf
      - application/x-hdf5
      - application/xml
      - application/json
      - application/ndjson
      - text/html
      - text/plain
      - application/vnd.oai.openapi+json;version=3.0
      - application/vnd.oai.openapi;version=3.0
      - application/schema+json
      - application/pdf
      - text/csv
      - application/vnd.apache.parquet
      - application/octet-stream
      title: MimeTypes
      description: https://github.com/radiantearth/stac-spec/blob/v1.0.0/item-spec/item-spec.md#media-types
    SortDirections:
      type: string
      enum:
      - asc
      - desc
      title: SortDirections
    Link:
      properties:
        href:
          type: string
          minLength: 1
          title: Href
        rel:
          type: string
          minLength: 1
          title: Rel
        type:
          anyOf:
          - $ref: '#/components/schemas/MimeTypes'
          - type: string
          - type: 'null'
          title: Type
        title:
          anyOf:
          - type: string
          - type: 'null'
          title: Title
      additionalProperties: true
      type: object
      required:
      - href
      - rel
      title: Link
      description: https://github.com/radiantearth/stac-spec/blob/v1.0.0/collection-spec/collection-spec.md#link-object
    MultiLineString:
      properties:
        bbox:
          anyOf:
          - prefixItems:
            - type: number
            - type: number
            - type: number
            - type: number
            type: array
            maxItems: 4
            minItems: 4
          - prefixItems:
            - type: number
            - type: number
            - type: number
            - type: number
            - type: number
            - type: number
            type: array
            maxItems: 6
            minItems: 6
          - type: 'null'
          title: Bbox
        type:
          type: string
          const: MultiLineString
          title: Type
        coordinates:
          items:
            items:
              anyOf:
              - $ref: '#/components/schemas/Position2D'
              - $ref: '#/components/schemas/Position3D'
            type: array
            minItems: 2
          type: array
          title: Coordinates
      type: object
      required:
      - type
      - coordinates
      title: MultiLineString
      description: MultiLineString Model
    SearchLink:
      properties:
        href:
          type: string
          pattern: .*\/search(\?.*)?\b
          title: Href
        rel:
          type: string
          enum:
          - self
          - search
          - next
          - prev
          title: Rel
        type:
          type: string
          const: application/geo+json
          title: Type
          default: application/geo+json
        title:
          anyOf:
          - type: string
          - type: 'null'
          title: Title
        method:
          type: string
          enum:
          - GET
          - POST
          title: Method
          default: GET
        headers:
          anyOf:
          - additionalProperties: true
            type: object
          - type: 'null'
          title: Headers
        body:
          anyOf:
          - additionalProperties: true
            type: object
          - type: 'null'
          title: Body
        merge:
          type: boolean
          title: Merge
          default: false
      additionalProperties: true
      type: object
      required:
      - href
      - rel
      title: SearchLink
      description: https://github.com/radiantearth/stac-api-spec/tree/v1.0.0/item-search#link-relations
    Point:
      properties:
        bbox:
          anyOf:
          - prefixItems:
            - type: number
            - type: number
            - type: number
            - type: number
            type: array
            maxItems: 4
            minItems: 4
          - prefixItems:
            - type: number
            - type: number
            - type: number
            - type: number
            - type: number
            - type: number
            type: array
            maxItems: 6
            minItems: 6
          - type: 'null'
          title: Bbox
        type:
          type: string
          const: Point
          title: Type
        coordinates:
          anyOf:
          - $ref: '#/components/schemas/Position2D'
          - $ref: '#/components/schemas/Position3D'
          title: Coordinates
      type: object
      required:
      - type
      - coordinates
      title: Point
      description: Point Model
    stac_pydantic__api__links__Links:
      items:
        anyOf:
        - $ref: '#/components/schemas/SearchLink'
        - $ref: '#/components/schemas/PaginationLink'
        - $ref: '#/components/schemas/ItemsLink'
        - $ref: '#/components/schemas/Link'
      type: array
      title: Links
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    ItemProperties:
      properties:
        title:
          anyOf:
          - type: string
          - type: 'null'
          title: Title
        description:
          anyOf:
          - type: string
          - type: 'null'
          title: Description
        datetime:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
          title: Datetime
        created:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
          title: Created
        updated:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
          title: Updated
        start_datetime:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
          title: Start Datetime
        end_datetime:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
          title: End Datetime
        license:
          anyOf:
          - type: string
          - type: 'null'
          title: License
        providers:
          anyOf:
          - items:
              $ref: '#/components/schemas/Provider'
            type: array
          - type: 'null'
          title: Providers
        platform:
          anyOf:
          - type: string
          - type: 'null'
          title: Platform
        instruments:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Instruments
        constellation:
          anyOf:
          - type: string
          - type: 'null'
          title: Constellation
        mission:
          anyOf:
          - type: string
          - type: 'null'
          title: Mission
        gsd:
          anyOf:
          - type: number
            exclusiveMinimum: 0.0
          - type: 'null'
          title: Gsd
      additionalProperties: true
      type: object
      required:
      - datetime
      title: ItemProperties
      description: https://github.com/radiantearth/stac-spec/blob/v1.0.0/item-spec/item-spec.md#properties-object
    Polygon:
      properties:
        bbox:
          anyOf:
          - prefixItems:
            - type: number
            - type: number
            - type: number
            - type: number
            type: array
            maxItems: 4
            minItems: 4
          - prefixItems:
            - type: number
            - type: number
            - type: number
            - type: number
            - type: number
            - type: number
            type: array
            maxItems: 6
            minItems: 6
          - type: 'null'
          title: Bbox
        type:
          type: string
          const: Polygon
          title: Type
        coordinates:
          items:
            items:
              anyOf:
              - $ref: '#/components/schemas/Position2D'
              - $ref: '#/components/schemas/Position3D'
            type: array
            minItems: 4
          type: array
          title: Coordinates
      type: object
      required:
      - type
      - coordinates
      title: Polygon
      description: Polygon Model
    Item:
      properties:
        bbox:
          anyOf:
          - prefixItems:
            - type: number
            - type: number
            - type: number
            - type: number
            type: array
            maxItems: 4
            minItems: 4
          - prefixItems:
            - type: number
            - type: number
            - type: number
            - type: number
            - type: number
            - type: number
            type: array
            maxItems: 6
            minItems: 6
          - type: 'null'
          title: Bbox
        type:
          type: string
          const: Feature
          title: Type
        geometry:
          anyOf:
          - oneOf:
            - $ref: '#/components/schemas/Point'
            - $ref: '#/components/schemas/MultiPoint'
            - $ref: '#/components/schemas/LineString'
            - $ref: '#/components/schemas/MultiLineString'
            - $ref: '#/components/schemas/Polygon'
            - $ref: '#/components/schemas/MultiPolygon'
            - $ref: '#/components/schemas/GeometryCollection-Output'
            discriminator:
              propertyName: type
              mapping:
                GeometryCollection: '#/components/schemas/GeometryCollection-Output'
                LineString: '#/components/schemas/LineString'
                MultiLineString: '#/components/schemas/MultiLineString'
                MultiPoint: '#/components/schemas/MultiPoint'
                MultiPolygon: '#/components/schemas/MultiPolygon'
                Point: '#/components/schemas/Point'
                Polygon: '#/components/schemas/Polygon'
          - type: 'null'
          title: Geometry
        properties:
          $ref: '#/components/schemas/ItemProperties'
        id:
          type: string
          minLength: 1
          title: Id
        stac_version:
          type: string
          pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
          title: Stac Version
          default: 1.0.0
        assets:
          additionalProperties:
            $ref: '#/components/schemas/Asset'
          type: object
          title: Assets
        links:
          $ref: '#/components/schemas/stac_pydantic__links__Links'
        stac_extensions:
          anyOf:
          - items:
              type: string
              minLength: 1
              format: uri
            type: array
          - type: 'null'
          title: Stac Extensions
          default: []
        collection:
          anyOf:
          - type: string
          - type: 'null'
          title: Collection
      type: object
      required:
      - type
      - geometry
      - properties
      - id
      - assets
      - links
      title: Item
    Position3D:
      prefixItems:
      - type: number
        title: Longitude
      - type: number
        title: Latitude
      - type: number
        title: Altitude
      type: array
      maxItems: 3
      minItems: 3
    ItemsLink:
      properties:
        href:
          type: string
          pattern: .*\/items(\?.*)?\b
          title: Href
        rel:
          type: string
          enum:
          - self
          - items
          title: Rel
        type:
          type: string
          const: application/geo+json
          title: Type
          default: application/geo+json
        title:
          anyOf:
          - type: string
          - type: 'null'
          title: Title
        method:
          type: string
          enum:
          - GET
          - POST
          title: Method
          default: GET
        headers:
          anyOf:
          - additionalProperties: true
            type: object
          - type: 'null'
          title: Headers
        body:
          anyOf:
          - additionalProperties: true
            type: object
          - type: 'null'
          title: Body
        merge:
          type: boolean
          title: Merge
          default: false
      additionalProperties: true
      type: object
      required:
      - href
      - rel
      title: ItemsLink
    Provider:
      properties:
        name:
          type: string
          minLength: 1
          title: Name
        description:
          anyOf:
          - type: string
          - type: 'null'
          title: Description
        roles:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Roles
        url:
          anyOf:
          - type: string
          - type: 'null'
          title: Url
      type: object
      required:
      - name
      title: Provider
      description: https://github.com/radiantearth/stac-spec/blob/v1.0.0/collection-spec/collection-spec.md#provider-object
    GeometryCollection-Input:
      properties:
        bbox:
          anyOf:
          - prefixItems:
            - type: number
            - type: number
            - type: number
            - type: number
            type: array
            maxItems: 4
            minItems: 4
          - prefixItems:
            - type: number
            - type: number
            - type: number
            - type: number
            - type: number
            - type: number
            type: array
            maxItems: 6
            minItems: 6
          - type: 'null'
          title: Bbox
        type:
          type: string
          const: GeometryCollection
          title: Type
        geometries:
          items:
            oneOf:
            - $ref: '#/components/schemas/Point'
            - $ref: '#/components/schemas/MultiPoint'
            - $ref: '#/components/schemas/LineString'
            - $ref: '#/components/schemas/MultiLineString'
            - $ref: '#/components/schemas/Polygon'
            - $ref: '#/components/schemas/MultiPolygon'
            - $ref: '#/components/schemas/GeometryCollection-Input'
            discriminator:
              propertyName: type
              mapping:
                GeometryCollection: '#/components/schemas/GeometryCollection-Input'
                LineString: '#/components/schemas/LineString'
                MultiLineString: '#/components/schemas/MultiLineString'
                MultiPoint: '#/components/schemas/MultiPoint'
                MultiPolygon: '#/components/schemas/MultiPolygon'
                Point: '#/components/schemas/Point'
                Polygon: '#/components/schemas/Polygon'
          type: array
          title: Geometries
      type: object
      required:
      - type
      - geometries
      title: GeometryCollection
      description: GeometryCollection Model
    GeometryCollection-Output:
      properties:
        bbox:
          anyOf:
          - prefixItems:
            - type: number
            - type: number
            - type: number
            - type: number
            type: array
            maxItems: 4
            minItems: 4
          - prefixItems:
            - type: number
            - type: number
            - type: number
            - type: number
            - type: number
            - type: number
            type: array
            maxItems: 6
            minItems: 6
          - type: 'null'
          title: Bbox
        type:
          type: string
          const: GeometryCollection
          title: Type
        geometries:
          items:
            oneOf:
            - $ref: '#/components/schemas/Point'
            - $ref: '#/components/schemas/MultiPoint'
            - $ref: '#/components/schemas/LineString'
            - $ref: '#/components/schemas/MultiLineString'
            - $ref: '#/components/schemas/Polygon'
            - $ref: '#/components/schemas/MultiPolygon'
            - $ref: '#/components/schemas/GeometryCollection-Output'
            discriminator:
              propertyName: type
              mapping:
                GeometryCollection: '#/components/schemas/GeometryCollection-Output'
                LineString: '#/components/schemas/LineString'
                MultiLineString: '#/components/schemas/MultiLineString'
                MultiPoint: '#/components/schemas/MultiPoint'
                MultiPolygon: '#/components/schemas/MultiPolygon'
                Point: '#/components/schemas/Point'
                Polygon: '#/components/schemas/Polygon'
          type: array
          title: Geometries
      type: object
      required:
      - type
      - geometries
      title: GeometryCollection
      description: GeometryCollection Model
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
            - type: string
            - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
      - loc
      - msg
      - type
      title: ValidationError
    SortExtension:
      properties:
        field:
          type: string
          minLength: 1
          title: Field
        direction:
          $ref: '#/components/schemas/SortDirections'
      type: object
      required:
      - field
      - direction
      title: SortExtension
      description: https://github.com/radiantearth/stac-api-spec/tree/master/extensions/sort#sort-api-extension
    MultiPoint:
      properties:
        bbox:
          anyOf:
          - prefixItems:
            - type: number
            - type: number
            - type: number
            - type: number
            type: array
            maxItems: 4
            minItems: 4
          - prefixItems:
            - type: number
            - type: number
            - type: number
            - type: number
            - type: number
            - type: number
            type: array
            maxItems: 6
            minItems: 6
          - type: 'null'
          title: Bbox
        type:
          type: string
          const: MultiPoint
          title: Type
        coordinates:
          items:
            anyOf:
            - $ref: '#/components/schemas/Position2D'
            - $ref: '#/components/schemas/Position3D'
          type: array
          title: Coordinates
      type: object
      required:
      - type
      - coordinates
      title: MultiPoint
      description: MultiPoint Model
    Asset:
      properties:
        href:
          type: string
          minLength: 1
          title: Href
        type:
          anyOf:
          - type: string
          - type: 'null'
          title: Type
        title:
          anyOf:
          - type: string
          - type: 'null'
          title: Title
        description:
          anyOf:
          - type: string
          - type: 'null'
          title: Description
        roles:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Roles
      additionalProperties: true
      type: object
      required:
      - href
      title: Asset
      description: https://github.com/radiantearth/stac-spec/blob/v1.0.0/item-spec/item-spec.md#asset-object
    Position2D:
      prefixItems:
      - type: number
        title: Longitude
      - type: number
        title: Latitude
      type: array
      maxItems: 2
      minItems: 2
    stac_pydantic__links__Links:
      items:
        $ref: '#/components/schemas/Link'
      type: array
      title: Links
    PostFieldsExtension:
      properties:
        include:
          anyOf:
          - items:
              type: string
            type: array
            uniqueItems: true
          - type: 'null'
          title: Include
          default: []
        exclude:
          anyOf:
          - items:
              type: string
            type: array
            uniqueItems: true
          - type: 'null'
          title: Exclude
          default: []
      type: object
      title: PostFieldsExtension
      description: "FieldsExtension.\n\nAttributes:\n    include: set of fields to include.\n    exclude: set of fields to exclude."
    SearchPostRequest:
      properties:
        collections:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Collections
        ids:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Ids
        bbox:
          anyOf:
          - prefixItems:
            - anyOf:
              - type: number
              - type: integer
            - anyOf:
              - type: number
              - type: integer
            - anyOf:
              - type: number
              - type: integer
            - anyOf:
              - type: number
              - type: integer
            type: array
            maxItems: 4
            minItems: 4
          - prefixItems:
            - anyOf:
              - type: number
              - type: integer
            - anyOf:
              - type: number
              - type: integer
            - anyOf:
              - type: number
              - type: integer
            - anyOf:
              - type: number
              - type: integer
            - anyOf:
              - type: number
              - type: integer
      

# --- truncated at 32 KB (39 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/hydrosat/refs/heads/main/openapi/hydrosat-search-api-openapi.yml