HERE Blob API v1

HERE Blob API v1 — 9 operation(s) across 4 path(s), OpenAPI 3.0.2 version 1.0.8, harvested verbatim from the HERE developer documentation. The blob service supports the upload and retrieval of large volumes of data from the storage of a catalog. Each discrete chunk of data is stored as a blob (Binary Large Object). Each blob has its own unique ID (data handle). The data handles can be stored in services like metadata , index or stream . To get data, use your preferred service to retrieve the data handle of the relevant blobs. Then use the data handle to pull the data using the blob service. Currently, the blob service supports REST API versions v1 and v2. Version v1 should be used to access versioned, index and stream (if the stream payload is larger than 1MB) layers. Version v2 should be used to access the object store layer. Always pick the proper API version from API Lookup to ensure Base URL is not fixed: the spec directs clients to resolve it at runtime through the HERE API Lookup Service (https://api-lookup.data.api.platform.here.com/lookup/v1).

Operations 9

GET /layers/{layerId}/data/{dataHandle} Gets a blob #
PUT /layers/{layerId}/data/{dataHandle} Publishes a data blob #
DELETE /layers/{layerId}/data/{dataHandle} Deletes a data blob from an index layer. #
HEAD /layers/{layerId}/data/{dataHandle} Checks if a data handle exists #
POST /layers/{layerId}/data/{dataHandle}/multiparts Starts a multipart upload of a blob and returns URLs for the next multipart upload operations. The URLs contain the upload token. #
GET /layers/{layerId}/data/{dataHandle}/multiparts/{multiPartToken} Gets the status of a multipart upload. #
PUT /layers/{layerId}/data/{dataHandle}/multiparts/{multiPartToken} Completes a multipart upload #
DELETE /layers/{layerId}/data/{dataHandle}/multiparts/{multiPartToken} Cancels a multipart upload #
POST /layers/{layerId}/data/{dataHandle}/multiparts/{multiPartToken}/parts Uploads a part #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/here-data-blob-v1"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

here-data-blob-v1-openapi.yml Raw ↑
{"openapi":"3.0.2","info":{"title":"Blob API v1","description":"The `blob` service supports the upload and retrieval of large volumes of data from the storage of a catalog. Each discrete chunk of data is stored as a blob (Binary Large Object). Each blob has its own unique ID (data handle). The data handles can be stored in  services like `metadata`, `index` or `stream`. To get data, use your preferred service to retrieve the data handle of the relevant blobs. Then use the data handle to pull the data using the `blob` service.\n\nCurrently, the blob service supports REST API versions v1 and v2. Version v1 should be used to access versioned, index and stream (if the stream payload is larger than 1MB) layers. Version v2 should be used to access the object store layer. Always pick the proper API version from API Lookup to ensure you get back the correct API version response.\n\nIf you are writing to a volatile layer, see volatile-blob API definition.","contact":{},"version":"1.0.8","x-olp-service":{"name":"blob","version":"v1"}},"externalDocs":{"description":"The developer guide and related API references are available here.","url":"https://www.here.com/docs/category/data-api"},"servers":[{"url":"https://use.apilookup.for.a.base.url/"}],"security":[{"Bearer":[]}],"tags":[{"name":"blob","description":"Upload and retrieve large volumes of data"}],"paths":{"/layers/{layerId}/data/{dataHandle}":{"get":{"tags":["blob"],"summary":"Gets a blob","description":"Retrieves a blob from storage.","operationId":"Blob API v1 getBlob","parameters":[{"name":"layerId","in":"path","description":"The ID of the parent layer for this blob.","required":true,"schema":{"type":"string"}},{"name":"dataHandle","in":"path","description":"The data handle identifies a specific blob so that you can get that blob's contents. The data handle can only contain alphanumeric, '-' and '.' characters, [0-9, a-z, A-Z, -, .]. The maximum length of this field is 600 characters.","required":true,"schema":{"type":"string"}},{"name":"accessType","in":"query","description":"Define preferred blob access type, possible values are: `inlineAccess` and `storageLayerAccess`.\n`inlineAccess` standard way to deliver blob content within the http response.\nIf `storageLayerAccess` is specified then Blob Service can return http redirect to retrieve blob content from an alternative location, it can be either presigned url to AWS S3 or Azure Blob or similar service.\nOn following redirect client should omit Authorization header.","required":false,"schema":{"type":"string","items":{"type":"string","enum":["inlineAccess","storageLayerAccess"]}}},{"name":"billingTag","in":"query","description":"Billing Tag is an optional free-form tag which is used for grouping billing records together. If supplied, it must be between 4 - 16 characters, contain only alpha/numeric ASCII characters [A-Za-z0-9]. Grouping billing records by billing tag will be available in future releases.","schema":{"type":"string"}},{"name":"Range","in":"header","description":"Use this parameter to resume download of a large response when there is a connection issue between the client and server, or to fetch a specific slice of the blob. To resume download after a connection issue, specify a single byte range offset like this: `Range: bytes=10-`. To fetch a specific slice of the blob, specify a slice like this: `Range: bytes=10-100`. This parameter is compliant with [RFC 7233](https://tools.ietf.org/html/rfc7233), but note that this parameter only supports a single byte range. The `range` parameter can also be specified as a query parameter, i.e. `range=bytes=10-`.","schema":{"type":"string"}},{"name":"If-None-Match","in":"header","description":"Entity tags uniquely representing the requested resources. Makes the request method conditional on a recipient cache or origin server either not having any current representation of the target resource, when the field-value is \"*\", or having a selected representation with an entity-tag that does not match any of those listed in the field-value. For more information, see [RFC 7232, section 3.2: If-None-Match](https://tools.ietf.org/html/rfc7232#section-3.2).","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK - Response includes a blob.","content":{"*/*":{"schema":{"type":"string","format":"binary"}}}},"204":{"description":"Blob is empty","content":{"*/*":{"schema":{"type":"string","format":"byte","example":"string"}}}},"206":{"description":"Partial Content - indicates response to the Range query as per [RFC 7233](https://tools.ietf.org/html/rfc7233).","content":{"*/*":{"schema":{"type":"string","format":"byte","example":"string"}}}},"307":{"description":"Temporary redirect to retrieve blob content from an alternative location.","content":{}},"400":{"description":"Bad Request, for example if the dataHandle is malformed.","content":{}},"401":{"description":"Unauthorized","content":{}},"403":{"description":"Forbidden","content":{}},"404":{"description":"Not Found - no blob is associated with this dataHandle","content":{}},"416":{"description":"Range Not Satisfiable - indicates errors in the Range parameter as per [RFC 7233](https://tools.ietf.org/html/rfc7233).","content":{}}},"x-olp-access-type":"resource"},"put":{"tags":["blob"],"summary":"Publishes a data blob","description":"Persists the data blob in the underlying storage mechanism (volume). Use this upload mechanism for blobs smaller than 50 MB. The size limit for blobs uploaded this way is 5 GB but we do not recommend uploading blobs this large with this method, so use multipart upload instead. When the operation completes successfully there is no guarantee that the data blob will be immediately available although in most cases it will be. To check if the data blob is available use the HEAD method.","operationId":"Blob API v1 putBlob","parameters":[{"name":"layerId","in":"path","description":"The ID of the layer that the data blob belongs to.","required":true,"schema":{"type":"string"}},{"name":"dataHandle","in":"path","description":"The data handle (ID) represents an identifier for the data blob. The data handle can only contain alphanumeric, '-' and '.' characters, [0-9, a-z, A-Z, -, .]. The maximum length of this field is 600 characters.","required":true,"schema":{"type":"string"}},{"name":"billingTag","in":"query","description":"Billing Tag is an optional free-form tag which is used for grouping billing records together. If supplied, it must be between 4 - 16 characters, contain only alpha/numeric ASCII characters [A-Za-z0-9]. Grouping billing records by billing tag will be available in future releases.","schema":{"type":"string"}},{"name":"Content-Length","in":"header","description":"Size of the entity-body, in bytes. For more information, see [RFC 7230, section 3.3.2: Content-Length](https://tools.ietf.org/html/rfc7230#section-3.3.2).","required":true,"schema":{"type":"integer","format":"int64"},"example":325},{"name":"Content-Encoding","in":"header","description":"Specifies what content encodings have been applied to the blob and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field. If the 'contentEncoding' field is specified in the catalog layer configuration this value must be equal to it. For more information, see [RFC 7231, section 3.1.2.1](https://datatracker.ietf.org/doc/html/rfc7231#section-3.1.2.1).'","required":false,"schema":{"type":"string"},"example":"gzip"},{"name":"Content-Type","in":"header","description":"A standard MIME type describing the format of the blob data. For more information, see [RFC 2616, section 14.17: Content-Type](https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.17). The value of this header must match the content type specified in the 'contentType' field when the multipart upload was initialized, and this content type must also match the content type specified in the layer's configuration.","required":true,"schema":{"type":"string"},"example":"application/json"},{"$ref":"#/components/parameters/digestHeader"}],"requestBody":{"description":"body","content":{"*/*":{"schema":{"type":"string","format":"binary"}}},"required":true},"responses":{"200":{"description":"OK - Blob was uploaded","content":{}},"401":{"description":"Unauthorized","content":{}},"403":{"description":"Forbidden","content":{}},"404":{"description":"Not Found","content":{}},"409":{"description":"Conflict - indicates blob with this dataHandle already exists","content":{}}},"x-olp-access-type":"resource","x-codegen-request-body-name":"body"},"delete":{"tags":["blob"],"summary":"Deletes a data blob from an index layer.","description":"Deletes a data blob from the underlying storage mechanism (volume). The DELETE method works only for index layers. DELETE requests for blobs stored for other kind of layers will be rejected. The DELETE request is successfully accepted even if the data blob does not exist.","operationId":"Blob API v1 deleteBlob","parameters":[{"name":"layerId","in":"path","description":"The ID of the layer that the data blob belongs to.","required":true,"schema":{"type":"string"}},{"name":"dataHandle","in":"path","description":"The data handle of the blob you want to delete. The data handle can only contain alphanumeric, '-' and '.' characters, [0-9, a-z, A-Z, -, .]. The maximum length of this field is 600 characters.","required":true,"schema":{"type":"string"}},{"name":"billingTag","in":"query","description":"Billing Tag is an optional free-form tag which is used for grouping billing records together. If supplied, it must be between 4 - 16 characters, contain only alpha/numeric ASCII characters  [A-Za-z0-9]. Grouping billing records by billing tag will be available in future releases.","schema":{"type":"string"}}],"responses":{"202":{"description":"Accepted - The deletion request for the data blob was accepted.","content":{}},"401":{"description":"Unauthorized","content":{}},"403":{"description":"Forbidden - deletion is supported for index layers only. ","content":{}}},"x-olp-access-type":"resource"},"head":{"tags":["blob"],"summary":"Checks if a data handle exists","description":"Checks if a blob exists for the requested data handle.","operationId":"Blob API v1 checkBlobExists","parameters":[{"name":"layerId","in":"path","description":"The ID of the layer that the blob belongs to.","required":true,"schema":{"type":"string"}},{"name":"dataHandle","in":"path","description":"The data handle identifies a specific blob so that you can get that blob's contents. The data handle can only contain alphanumeric, '-' and '.' characters, [0-9, a-z, A-Z, -, .]. The maximum length of this field is 600 characters.","required":true,"schema":{"type":"string"}},{"name":"billingTag","in":"query","description":"Billing Tag is an optional free-form tag which is used for grouping billing records together. If supplied, it must be between 4 - 16 characters, contain only alpha/numeric ASCII characters [A-Za-z0-9]. Grouping billing records by billing tag will be available in future releases.","schema":{"type":"string"}},{"name":"If-None-Match","in":"header","description":"Entity tags uniquely representing the requested resources. Makes the request method conditional on a recipient cache or origin server either not having any current representation of the target resource, when the field-value is \"*\", or having a selected representation with an entity-tag that does not match any of those listed in the field-value. For more information, see [RFC 7232, section 3.2: If-None-Match](https://tools.ietf.org/html/rfc7232#section-3.2).","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK - dataHandle exists","content":{}},"401":{"description":"Unauthorized","content":{}},"403":{"description":"Forbidden","content":{}},"404":{"description":"Not Found - dataHandle doesn't exist","content":{}}},"x-olp-access-type":"resource"}},"/layers/{layerId}/data/{dataHandle}/multiparts":{"post":{"tags":["blob"],"summary":"Starts a multipart upload of a blob and returns URLs for the next multipart upload operations. The URLs contain the upload token.","description":"Publishes large data blobs where the data payload needs to be split into multiple parts. The multipart upload start is to be followed by the individual parts upload and completed with a call to complete the upload. The limit of the blob uploaded this way is 50GB.","operationId":"Blob API v1 startMultipartUpload","parameters":[{"name":"layerId","in":"path","description":"The ID of the layer that the data blob belongs to.","required":true,"schema":{"type":"string"}},{"name":"dataHandle","in":"path","description":"The data handle (ID) represents an identifier for the data blob which contents will be persisted. The data handle can only contain alphanumeric, '-' and '.' characters, [0-9, a-z, A-Z, -, .]. The maximum length of this field is 600 characters.","required":true,"schema":{"type":"string"}},{"name":"billingTag","in":"query","description":"Billing Tag is an optional free-form tag which is used for grouping billing records together. If supplied, it must be between 4 - 16 characters, contain only alpha/numeric ASCII characters [A-Za-z0-9]. Grouping billing records by billing tag will be available in future releases.","schema":{"type":"string"}}],"requestBody":{"description":"body","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MultipartUploadMetadata"}}},"required":false},"responses":{"200":{"description":"OK - the new multipart upload was successfully started.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlobInitResponse"}}}},"401":{"description":"Unauthorized","content":{}},"403":{"description":"Forbidden","content":{}},"404":{"description":"Not Found - the provided layerId doesn't exist.","content":{}},"409":{"description":"Conflict - indicates blob with this dataHandle already exists","content":{}}},"x-olp-access-type":"resource","x-codegen-request-body-name":"body"}},"/layers/{layerId}/data/{dataHandle}/multiparts/{multiPartToken}":{"get":{"tags":["blob"],"summary":"Gets the status of a multipart upload.","description":"Gets the status of a multipart upload. The status can be received only when the upload has been completed. Please keep in mind that the actual URL for this operation must be obtained from the response body of start multipart operation that is 'POST /layers/{layerId}/data/{dataHandle}/multiparts' from the 'status' element under the top level 'links' element of the response.","operationId":"Blob API v1 getMultipartUploadStatus","parameters":[{"name":"layerId","in":"path","description":"The ID of the layer that the data blob part belongs to.","required":true,"schema":{"type":"string"}},{"name":"dataHandle","in":"path","description":"The data handle (ID) is an identifier for the data blob which the part belongs to. The data handle can only contain alphanumeric, '-' and '.' characters, [0-9, a-z, A-Z, -, .]. The maximum length of this field is 600 characters.","required":true,"schema":{"type":"string"}},{"name":"multiPartToken","in":"path","description":"The identifier of the multipart upload (token). Content of this parameter must refer to a valid token which was provided when the multipart upload was initiated.","required":true,"schema":{"type":"string"}},{"name":"billingTag","in":"query","description":"Billing Tag is an optional free-form tag which is used for grouping billing records together. If supplied, it must be between 4 - 16 characters, contain only alphanumeric ASCII characters [A-Za-z0-9]. Grouping billing records by billing tag will be available in future releases.","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MultipartUploadStatus"}}}},"401":{"description":"Unauthorized","content":{}},"403":{"description":"Forbidden","content":{}},"404":{"description":"Not Found - multipart upload token doesn't exist.","content":{}}},"x-olp-access-type":"resource","x-fullurl-type":"fullUrl"},"put":{"tags":["blob"],"summary":"Completes a multipart upload","description":"Call this API when all parts have been uploaded. Please keep in mind that the actual URL for this operation must be obtained from the response body of start multipart operation that is 'POST /layers/{layerId}/data/{dataHandle}/multiparts' from the 'complete' element under the top level 'links' element of the response.","operationId":"Blob API v1 completeMultipartUpload","parameters":[{"name":"layerId","in":"path","description":"The ID of the layer that the data blob part belongs to. ","required":true,"schema":{"type":"string"}},{"name":"dataHandle","in":"path","description":"The data handle (ID) represents an identifier for the data blob which the part belongs to. The data handle can only contain alphanumeric, '-' and '.' characters, [0-9, a-z, A-Z, -, .]. The maximum length of this field is 600 characters.","required":true,"schema":{"type":"string"}},{"name":"multiPartToken","in":"path","description":"The identifier of the multi part upload (token). Content of this parameter must refer to a valid and started multipart upload.","required":true,"schema":{"type":"string"}},{"name":"billingTag","in":"query","description":"Billing Tag is an optional free-form tag which is used for grouping billing records together. If supplied, it must be between 4 - 16 characters, contain only alpha/numeric ASCII characters [A-Za-z0-9]. Grouping billing records by billing tag will be available in future releases.","schema":{"type":"string"}}],"requestBody":{"description":"The part ids uploaded in this multipart upload which should be used in the resulting blob.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MultipartCompleteRequest"}}},"required":false},"responses":{"204":{"description":"No Content","content":{}},"401":{"description":"Unauthorized","content":{}},"403":{"description":"Forbidden","content":{}},"404":{"description":"Not Found","content":{}},"409":{"description":"Conflict - indicates blob with this dataHandle already exists","content":{}}},"x-olp-access-type":"resource","x-fullurl-type":"fullUrl","x-codegen-request-body-name":"parts"},"delete":{"tags":["blob"],"summary":"Cancels a multipart upload","description":"Cancels an entire multipart upload operation. You can only cancel a multipart upload before it has been completed. Please keep in mind that the actual URL for this operation must be obtained from the response body of start multipart operation that is 'POST /layers/{layerId}/data/{dataHandle}/multiparts' from the 'delete' element under the top level 'links' element of the response.","operationId":"Blob API v1 cancelMultipartUpload","parameters":[{"name":"layerId","in":"path","description":"The ID of the layer that the data blob part belongs to. Content of this parameter must refer to a valid layer already configured in the catalog configuration.","required":true,"schema":{"type":"string"}},{"name":"dataHandle","in":"path","description":"The data handle (ID) represents an identifier for the data blob which the part belongs to. The data handle can only contain alphanumeric, '-' and '.' characters, [0-9, a-z, A-Z, -, .]. The maximum length of this field is 600 characters.","required":true,"schema":{"type":"string"}},{"name":"multiPartToken","in":"path","description":"The identifier of the multi part upload (token). Content of this parameter must refer to a valid token retrieved when starting the multipart upload.","required":true,"schema":{"type":"string"}},{"name":"billingTag","in":"query","description":"Billing Tag is an optional free-form tag which is used for grouping billing records together. If supplied, it must be between 4 - 16 characters, contain only alpha/numeric ASCII characters [A-Za-z0-9]. Grouping billing records by billing tag will be available in future releases.","schema":{"type":"string"}}],"responses":{"204":{"description":"Deleted - the multi part upload.","content":{}},"401":{"description":"Unauthorized","content":{}},"403":{"description":"Forbidden","content":{}},"404":{"description":"Not Found - multipart upload doesn't exist.","content":{}}},"x-olp-access-type":"resource","x-fullurl-type":"fullUrl"}},"/layers/{layerId}/data/{dataHandle}/multiparts/{multiPartToken}/parts":{"post":{"tags":["blob"],"summary":"Uploads a part","description":"Upload a single part of a multipart upload for the blob. Every uploaded part except the last one must have a minimum 5 MB of data and maximum of 5 GB, but we do not recommend uploading parts this large. The maximum number of parts is 10,000. Please keep in mind that the actual URL for this operation must be obtained from the response body of start multipart operation that is 'POST /layers/{layerId}/data/{dataHandle}/multiparts' from the 'uploadPart' element under the top level 'links' element of the response.","operationId":"Blob API v1 uploadPart","parameters":[{"name":"layerId","in":"path","description":"The ID of the layer that the data blob part belongs to.","required":true,"schema":{"type":"string"}},{"name":"dataHandle","in":"path","description":"The data handle (ID) represents an identifier for the data blob which the part belongs to. The data handle can only contain alphanumeric, '-' and '.' characters, [0-9, a-z, A-Z, -, .]. The maximum length of this field is 600 characters.","required":true,"schema":{"type":"string"}},{"name":"multiPartToken","in":"path","description":"The identifier of the multi part upload (token). Content of this parameter must refer to a valid and started multipart upload.","required":true,"schema":{"type":"string"}},{"name":"partNumber","in":"query","description":"The number of the part for the multi part upload. The numbers of the upload parts must start from 1, be no greater than 10,000 and be consecutive. Parts uploaded with the same `partNumber` are overridden. Do not reuse the same `partnumber` when retrying an upload in an error situation (network problems, 4xx or 5xx responses). Reusing the same `partnumber` in a retry may cause the publication to fail.","required":true,"schema":{"type":"string"}},{"name":"billingTag","in":"query","description":"Billing Tag is an optional free-form tag which is used for grouping billing records together. If supplied, it must be between 4 - 16 characters, contain only alpha/numeric ASCII characters [A-Za-z0-9]. Grouping billing records by billing tag will be available in future releases.","schema":{"type":"string"}},{"name":"Content-Type","in":"header","description":"A standard MIME type describing the format of the blob data. For more information, see [RFC 2616, section 14.17: Content-Type](https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.17). The value of this header must match the content type specified in the 'contentType' field when the multipart upload was initialized, and this content type must also match the content type specified in the layer's configuration.","required":true,"schema":{"type":"string"},"example":"application/json"},{"name":"Content-Length","in":"header","description":"Size of the entity-body, in bytes. For more information, see [RFC 7230, section 3.3.2: Content-Length](https://tools.ietf.org/html/rfc7230#section-3.3.2).","required":true,"schema":{"type":"integer","format":"int64"},"example":325},{"$ref":"#/components/parameters/digestHeader"}],"requestBody":{"description":"The data to upload as part of the blob.","content":{"*/*":{"schema":{"type":"string","format":"binary"}}},"required":true},"responses":{"200":{"description":"Ok - Part was uploaded successfully","headers":{"ETag":{"description":"The etag assigned by the system which should be used when finalizing the multipart upload. Do not use `partNumber` or etag values generated in an error situation (see the description in the `partNumber` parameter).","schema":{"type":"string"}}},"content":{}},"401":{"description":"Unauthorized","content":{}},"403":{"description":"Forbidden","content":{}},"404":{"description":"Not Found - the provided multipart upload doesn't exist.","content":{}}},"x-olp-access-type":"resource","x-fullurl-type":"fullUrl","x-codegen-request-body-name":"body"}}},"components":{"parameters":{"digestHeader":{"name":"X-HERE-Digest","in":"header","description":"This header can be used as a data integrity check to verify that the data received by the server is the same data that was originally sent by the client. \nThis header specifies the lowercase Hex encoded 32-bit CRC32C checksum of the object or 128-bit MD5 digest or 160-bit SHA1 digest or 256-bit SHA256 digest.\nYou can choose one of the following Secure Hash Algorithms (SHA) or Cyclic Redundancy Check (CRC) checksum algorithms to calculate the digest value:\n  - CRC-32C\n  - MD5\n  - SHA1\n  - SHA256\n\nValue of the header is a combination algorithm name and digest in following format: \"Algorithm:Digest\".\nIf the digest values calculated on the client side doesn't match to the digest on the server side, server generates Bad Request error.","schema":{"type":"string"},"example":"CRC-32C:f23c6e4e"}},"schemas":{"BlobInitResponse":{"type":"object","properties":{"links":{"$ref":"#/components/schemas/BlobInitResponseLinks"}},"description":"Describes a set of links for the multipart upload operations."},"BlobInitResponseCompleteLink":{"type":"object","properties":{"href":{"type":"string","description":"The URL to use to complete the multipart upload. This link must be used as provided. Do not construct the URL for this operation by parsing the multipart token and concatenating the strings together.","example":"/blobstore/.../data/e02851bf4/multiparts/7767cf80..."},"method":{"type":"string","description":"The HTTP method which should be used to execute this operation.","example":"PUT"}},"description":"Describes a link for the multipart upload complete operation."},"BlobInitResponseCancelLink":{"type":"object","properties":{"href":{"type":"string","description":"The URL to use to cancel the multipart upload. This link must be used as provided. Do not construct the URL for this operation by parsing the multipart token and concatenating the strings together.","example":"/blobstore/.../data/e02851bf4/multiparts/7767cf80..."},"method":{"type":"string","description":"The HTTP method which should be used to execute this operation.","example":"DELETE"}},"description":"Describes a link for multipart upload cancel operation."},"BlobInitResponseStatusLink":{"type":"object","properties":{"href":{"type":"string","description":"The URL to use to retrieve the multipart upload status. This link must be used as provided. Do not construct the URL for this operation by parsing the multipart token and concatenating the strings together.","example":"/blobstore/.../data/e02851bf4/multiparts/7767cf80..."},"method":{"type":"string","description":"HTTP method which should be used to execute this operation.","example":"GET"}},"description":"Describes a link for multipart upload status operation."},"BlobInitResponseUploadPartLink":{"type":"object","properties":{"href":{"type":"string","description":"The URL to use to upload part of multipart upload. This link must be used as provided. Do not construct the URL for this operation by parsing the multipart token and concatenating the strings together.","example":"/blobstore/.../data/e02851bf4/multiparts/7767cf80.../parts"},"method":{"type":"string","description":"The HTTP method which should be used to execute this operation.","example":"POST"}},"description":"Describes a link for the upload part of multipart upload operation."},"BlobInitResponseLinks":{"type":"object","properties":{"complete":{"$ref":"#/components/schemas/BlobInitResponseCompleteLink"},"delete":{"$ref":"#/components/schemas/BlobInitResponseCancelLink"},"status":{"$ref":"#/components/schemas/BlobInitResponseStatusLink"},"uploadPart":{"$ref":"#/components/schemas/BlobInitResponseUploadPartLink"}},"description":"Describes a set of link for checking the uploading parts, getting status, finalizing, etc. of the multipart upload."},"MultipartUploadStatus":{"type":"object","properties":{"status":{"type":"string","description":"The status of the multipart upload.","example":"completed","enum":["failed","processing","completed"]}},"description":"Describes a status of the multipart upload."},"MultipartCompletePart":{"required":["etag","number"],"type":"object","properties":{"etag":{"type":"string","description":"The etag assigned by the system to identify the uploaded part to include in the final publication. The etag is returned by the 'POST /layers/{layerId}/data/{dataHandle}/multiparts/{multiPartToken}/parts' operation, in its response `ETag` header after successfully uploading a part.","example":"1h2h3k4j5h6ZCI6ImVyaWtzSGFuZGxlQadjiwo234ADF2323k34H5heoH543Hr"},"number":{"type":"integer","description":"The number of the part of the multipart upload. This is the same number used in the `partNumber` parameter in the 'POST /layers/{layerId}/data/{dataHandle}/multiparts/{multiPartToken}/parts' operation, corresponding to the `etag` returned by this operation. If an error occurs during upload, do not reuse the `partNumber` when retrying the upload.","format":"int32","example":1}}},"MultipartCompleteRequest":{"type":"object","properties":{"parts":{"type":"array","items":{"$ref":"#/components/schemas/MultipartCompletePart"}}}},"MultipartUploadMetadata":{"required":["contentType"],"type":"object","properties":{"contentEncoding":{"type":"string","description":"Specifies what content encodings have been applied to the blob and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field. If the 'contentEncoding' field is specified in the catalog layer configuration this value must be equal to it.","default":"identity","enum":["gzip","identity"]},"contentType":{"type":"string","description":"A standard MIME type describing the format of the blob data. For more information, see [RFC 2616, section 14.17: Content-Type](https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.17). The value of this field must be equal to the one specified in the 'contentType' field in the catalog layer configuration.","example":"application/json"}}}},"securitySchemes":{"Bearer":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"A token obtained from a separate endpoint using client credentials and an OAuth 1.0a HMAC-SHA256 signed request.\n\n For more information on how to get a bearer token, see the [Identity & Access Management Guide](https://www.here.com/docs/bundle/identity-and-access-management-developer-guide/page/README.html).\n"}}}}