Table of contents
Cesium Curated Content
Download API definition:
This API is a Technical Preview and is available for testing purposes only. Do not use in production.
GET https://api.bentley.com/curated-content/cesium/{contentId}/tiles

Retrieves information and credentials that allow you to access the tiled content data for visualization and analysis.

Entry Point URL Formatting

This operation returns a URL to the entry point of the tileset, depending on the asset type. Treat this URL as an opaque link, as its format may change at any time. Do not cache it. Perform any URL manipulation by parsing the URL, not through string manipulation. Do not cache this URL across application instances, as it can change over time.

Each asset type returns the URL in a different format. Depending on the asset type, you will need to format the URL differently.

3DTILES

The complete path to the tileset.json is returned. No URL formatting is needed.

TERRAIN

The base URL of the terrain tileset is returned. For quantized meshes, retrieve the layer.json file to get the configuration.

To do this for the Cesium World Terrain, the URL Template is: [URL returned by the endpoint]/layer.json.

Example: https://assets.ion.cesium.com/us-east-1/asset_depot/1/CesiumWorldTerrain/v1.2/layer.json

IMAGERY

The base URL for both a TMS and WMTS compatible tileset is returned. A capabilities file is required to render this tilesets.

To retrieve the capabilities file for the Sentinel-2 imagery, use the following URL Templates:

  • WMTS: [URL returned by endpoint]/WMTSCapabilities.xml. Example: https://assets.ion.cesium.com/us-east-1/asset_depot/3954/Sentinel-2/2021/WMTSCapabilities.xml.

  • TMS: [URL returned by endpoint]/tilemapresource.xml. Example: https://assets.ion.cesium.com/us-east-1/asset_depot/3954/Sentinel-2/2021/tilemapresource.xml.

Authentication

Requires Authorization header with valid Bearer token for scope itwin-platform.

For more documentation on authorization and how to get access token visit OAUTH2 Authorization page.

Request parameters

Name
Required?
Description
contentId
Yes

Request headers

Name
Required?
Description
Authorization
Yes

OAuth access token with itwin-platform scope

Accept
Yes

Setting to application/vnd.bentley.itwin-platform.v1+json is recommended.

Response 200 OK

OK

json
{
    "type": "3DTILES",
    "url": "https://assets.cesium.com/23912/tileset.json",
    "accessToken": "eyJhbGci...bHupXyIjCPOfuSOpXwQoaQU_a94",
    "attributions": [{
        "html": "<span><a href=\"https://cesium.com\" target=\"_blank\"><img alt=\"Cesium ion\" src=\"http://assets.cesium.com/ion-credit.png\"></a></span>",
        "collapsible": false
    }]
}

Response 401 Unauthorized

This response indicates that request lacks valid authentication credentials. Access token might not been provided, issued by the wrong issuer, does not have required scopes or request headers were malformed.

json
{
    "error": {
        "code": "HeaderNotFound",
        "message": "Header Authorization was not found in the request. Access denied."
    }
}

Response 404 Not Found

This response indicates that the specified itwin was not found.

json
{
    "error": {
        "code": "ContentNotFound",
        "message": "Requested content is not available."
    }
}

Response 422 Unprocessable Entity

The 422 (Unprocessable Entity) status code indicates that the request cannot be processed by the server due to a client error (e.g. malformed request syntax)

json
{
    "error": {
        "code": "InvalidCesiumCuratedContentRequest",
        "message": "Cannot retrieve Cesium curated content.",
        "details": [{
            "code": "InvalidValue",
            "message": "not-a-guid is not a valid iTwin id.",
            "target": "itwinId"
        }]
    }
}

Response 429 Too many requests

This response indicates that the client sent more requests than allowed by this API for the current tier of the client.

json
{
    "error": {
        "code": "RateLimitExceeded",
        "message": "The client sent more requests than allowed by this API for the current tier of the client."
    }
}

Response headers

Name
Description
retry-after

Number of seconds to wait until client is allowed to make more requests.

AccessTileResponse

Name
Type
Description
url
String

The entry point url of the tileset, depending on the content type. This url should be treated as an opaque link as the actual format may change any time. Do not cache it. Any URL manipulation should be done by parsing the URL, rather than through string manipulation. For terrain and imagery, simply append the desired file or tile to the base url. This url should not be cached across application instances as it can change over time.

accessToken
String

The token to be included with each tile request, using Bearer format. This token is different than the access token used throughout the rest of the REST API. It provides access to the content for approximately one hour. To continue using the content after the allotted time, simple re-request the endpoint for a new token.

attributions

List of attributions.

ContentTileAttribution

Name
Type
Description
html
String

An HTML string defining the content's required attribution. The rendered HTML must be accessible to the end users of your application.

collapsible
Boolean

If true, the rendered HTML must be shown on screen as long as the associated content is also on screen. If false, the HTML can be shown on a separate panel or page.

ContentType

The type of content.

Name
Type
Description
3DTILES
String
GLTF
String
IMAGERY
String
TERRAIN
String
KML
String
CZML
String
GEOJSON
String

DetailedError

Contains error information and an array of more specific errors.

Name
Type
Description
code
String

One of a server-defined set of error codes.

message
String

A human-readable representation of the error.

target
String, null

The target of the error.

details

Optional array of more specific errors.

Detailed Error Response

Gives details for an error that occurred while handling the request. Note that clients MUST NOT assume that every failed request will produce an object of this schema, or that all of the properties in the response will be non-null, as the error may have prevented this response from being constructed.

Name
Type
Description
error

Error Detailed information.

Error

Contains error information.

Name
Type
Description
code
String

One of a server-defined set of error codes.

message
String

A human-readable representation of the error.

target
String, null

The target of the error.

Error Response

Gives details for an error that occurred while handling the request. Note that clients MUST NOT assume that every failed request will produce an object of this schema, or that all of the properties in the response will be non-null, as the error may have prevented this response from being constructed.

Name
Type
Description
error

Error information.

Was this page helpful?