Stac Import
POST
/services/stac/import
const url = 'https://example.com/api/services/stac/import';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"url":"example","items":[{"id":"example","collection":"example","title":"example","data_asset_href":"example","bbox":[1],"epsg":1,"datetime_start":"example","datetime_end":"example","keywords":[]}],"visibility":"private"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://example.com/api/services/stac/import \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "url": "example", "items": [ { "id": "example", "collection": "example", "title": "example", "data_asset_href": "example", "bbox": [ 1 ], "epsg": 1, "datetime_start": "example", "datetime_end": "example", "keywords": [] } ], "visibility": "private" }'Import selected STAC items as raster datasets.
Each item is registered as a raster_dataset record referencing the remote COG asset URL. Titiler serves the tiles directly from the remote source — no file download required.
Authorizations
Section titled “Authorizations ”Request Body required
Section titled “Request Body required ” Media type application/json
StacImportRequest
object
url
required
Url
STAC API URL for provenance.
string
items
required
Items
Items to import (max 50 per request).
Array<object>
StacImportItemobject
id
required
Id
STAC item ID.
string
title
required
Title
Title to use for the GeoLens dataset.
string
data_asset_href
required
Data Asset Href
URL of the COG asset to reference.
string
bbox
Any of:
Array<number>
null
keywords
Keywords
Keywords from STAC collection.
Array<string>
visibility
Visibility
Visibility for imported datasets.
string
Responses
Section titled “ Responses ”Successful Response
Media type application/json
StacImportResponse
object
results
required
created
required
Created
Number of datasets created.
integer
skipped
required
Skipped
Number of items skipped (duplicates).
integer
errors
required
Errors
Number of items that failed.
integer
Example
{ "results": [ { "status": "created" } ]}Bad request — invalid payload
ProblemDetail
object
type
Type
string
title
required
Title
string
status
required
Status
integer
detail
required
Detail
string
Example
{ "type": "about:blank"}Unauthorized — missing or invalid credentials
ProblemDetail
object
type
Type
string
title
required
Title
string
status
required
Status
integer
detail
required
Detail
string
Example
{ "type": "about:blank"}Forbidden — caller lacks write access
ProblemDetail
object
type
Type
string
title
required
Title
string
status
required
Status
integer
detail
required
Detail
string
Example
{ "type": "about:blank"}Not found
ProblemDetail
object
type
Type
string
title
required
Title
string
status
required
Status
integer
detail
required
Detail
string
Example
{ "type": "about:blank"}Conflict — resource state prevents the operation
ProblemDetail
object
type
Type
string
title
required
Title
string
status
required
Status
integer
detail
required
Detail
string
Example
{ "type": "about:blank"}Validation error
ProblemDetail
object
type
Type
string
title
required
Title
string
status
required
Status
integer
detail
required
Detail
string
Example
{ "type": "about:blank"}Internal server error
ProblemDetail
object
type
Type
string
title
required
Title
string
status
required
Status
integer
detail
required
Detail
string
Example
{ "type": "about:blank"}