Start a mesh export from the iModel. Exports are persisted until deleted.
Request headers
OAuth access token with itwin-platform scope
Setting to application/vnd.bentley.itwin-platform.v1+json is recommended.
Request body
StartExport
ID of the iModel to extract from.
Type of mesh to create, Accepted value are IMODEL, CESIUM and 3DTiles (or 3DTILES). If omitted, defaults to 3DTiles.
ID of the changeset to extract from. If omitted, export latest.
A list of key-value pair configuration items forwarded to the tiler executable to customize tile generation behavior.
Date when job metadata was last modified.
Example
{ "iModelId": "b80f4fc2-4dbb-42c5-bb1f-f5aace3977dc", "changesetId": "ed94ed9a0704918d36eeb620219f5e17d8858858", "exportType": "3DTiles" }
Response 202 Accepted
The export was accepted and will be processed
{ "export": { "id": "fc3aa1e5-5196-4dd9-a73e-4cfda693e576", "displayName": "My iModel", "status": "NotStarted", "lastModified": "2024-08-22T03:18:43.0000000+00:00", "request": { "iModelId": "b80f4fc2-4dbb-42c5-bb1f-f5aace3977dc", "changesetId": "ed94ed9a0704918d36eeb620219f5e17d8858858", "exportType": "3DTiles" } } }
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.
{ "error": { "code": "HeaderNotFound", "message": "Header Authorization was not found in the request. Access denied." } }
Response 404 Not Found
Requested iModel is not available.
{ "error": { "code": "IModelNotFound", "message": "Requested iModel is not available." } }
Response 422 Unprocessable Entity
Cannot create export job.
{ "error": { "code": "InvalidMeshExportRequest", "message": "Cannot create export job.", "details": [{ "code": "InvalidRequestBody", "message": "iModelId cannot be empty.", "target": "iModelId" }] } }
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.
{ "error": { "code": "RateLimitExceeded", "message": "The client sent more requests than allowed by this API for the current tier of the client." } }
Response headers
Number of seconds to wait until client is allowed to make more requests.
Link
An href link reference.
Http reference
{ "type": "object", "required": [ "href" ], "properties": { "href": { "type": "string", "example": "https://api.bentley.com/path1/path2/id", "description": "Http reference" } }, "description": "An href link reference.", "additionalProperties": false }
Error
Contains error information.
One of a server-defined set of error codes.
The target of the error.
A human-readable representation of the error.
{ "type": "object", "required": [ "code", "message" ], "properties": { "code": { "type": "string", "description": "One of a server-defined set of error codes." }, "target": { "type": "string", "nullable": true, "description": "The target of the error." }, "message": { "type": "string", "description": "A human-readable representation of the error." } }, "description": "Contains error information.", "additionalProperties": true }
Export
An export with all its details.
ID of the export request.
Error message for Invalid exports.
Name of the exported iModel
Date when job metadata was last modified
{ "type": "object", "example": { "id": "fc3aa1e5-5196-4dd9-a73e-4cfda693e576", "_links": { "mesh": { "href": "https://example.cloudfront.net/mesh-export/fc3aa1e5-5196-4dd9-a73e-4cfda693e576" } }, "status": "Complete", "request": { "iModelId": "b80f4fc2-4dbb-42c5-bb1f-f5aace3977dc", "exportType": "3DTiles", "changesetId": "ed94ed9a0704918d36eeb620219f5e17d8858858" }, "displayName": "My iModel" }, "required": [ "id", "displayName", "status", "lastModified", "request" ], "properties": { "id": { "type": "string", "description": "ID of the export request." }, "error": { "type": "string", "description": "Error message for Invalid exports." }, "stats": { "$ref": "#/components/schemas/ExportStatsDisplay" }, "_links": { "type": "object", "properties": { "mesh": { "$ref": "#/components/schemas/Link" } }, "additionalProperties": false }, "status": { "$ref": "#/components/schemas/ExportStatus" }, "request": { "$ref": "#/components/schemas/ExportResultBody" }, "displayName": { "type": "string", "description": "Name of the exported iModel" }, "lastModified": { "type": "string", "description": "Date when job metadata was last modified" } }, "description": "An export with all its details.", "additionalProperties": false }
StartExport exportType
Type of mesh to create, Accepted value are IMODEL, CESIUM and 3DTiles (or 3DTILES). If omitted, defaults to 3DTiles.
{ "enum": [ "IMODEL", "CESIUM", "3DTILES", "3DTiles" ], "type": "string", "description": "Type of mesh to create, Accepted value are IMODEL, CESIUM and 3DTiles (or 3DTILES). If omitted, defaults to 3DTiles.", "title": "StartExport exportType" }
StartExport
Request body for starting a mesh export.
ID of the iModel to extract from.
Type of mesh to create, Accepted value are IMODEL, CESIUM and 3DTiles (or 3DTILES). If omitted, defaults to 3DTiles.
ID of the changeset to extract from. If omitted, export latest.
A list of key-value pair configuration items forwarded to the tiler executable to customize tile generation behavior.
Date when job metadata was last modified.
{ "type": "object", "example": { "iModelId": "b80f4fc2-4dbb-42c5-bb1f-f5aace3977dc", "exportType": "3DTiles", "changesetId": "ed94ed9a0704918d36eeb620219f5e17d8858858", "tilerConfig": [ { "key": "maxTileSize", "value": 128 }, { "key": "enableCompression", "value": true }, { "key": "outputFormat", "value": "glb" } ] }, "required": [ "iModelId", "changesetId" ], "properties": { "iModelId": { "type": "string", "description": "ID of the iModel to extract from." }, "exportType": { "enum": [ "IMODEL", "CESIUM", "3DTILES", "3DTiles" ], "type": "string", "description": "Type of mesh to create, Accepted value are IMODEL, CESIUM and 3DTiles (or 3DTILES). If omitted, defaults to 3DTiles.", "title": "StartExport exportType", "$ref": "#/components/schemas/StartExport-exportType" }, "changesetId": { "type": "string", "description": "ID of the changeset to extract from. If omitted, export latest." }, "tilerConfig": { "type": "array", "items": { "$ref": "#/components/schemas/TilerConfigItem" }, "title": "Tiler Config", "maxItems": 100, "minItems": 1, "description": "A list of key-value pair configuration items forwarded to the tiler executable to customize tile generation behavior.", "uniqueItems": true }, "lastModified": { "type": "string", "format": "date-time", "description": "Date when job metadata was last modified." } }, "description": "Request body for starting a mesh export.", "additionalProperties": false }
ExportStatus
Status of the export.
{ "enum": [ "NotStarted", "InProgress", "Complete", "Invalid" ], "type": "string", "description": "Status of the export." }
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.
{ "type": "object", "title": "Error Response", "required": [ "error" ], "properties": { "error": { "$ref": "#/components/schemas/Error", "description": "Error information." } }, "description": "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.", "additionalProperties": false }
ExportMetrics
Memory and CPU usage metrics from the graphics and tiles producer.
ExportResponse
Response containing the details of a single export.
{ "type": "object", "example": { "export": { "id": "fc3aa1e5-5196-4dd9-a73e-4cfda693e576", "_links": { "mesh": { "href": "https://example.cloudfront.net/mesh-export/fc3aa1e5-5196-4dd9-a73e-4cfda693e576" } }, "status": "Complete", "request": { "iModelId": "b80f4fc2-4dbb-42c5-bb1f-f5aace3977dc", "exportType": "3DTiles", "changesetId": "ed94ed9a0704918d36eeb620219f5e17d8858858" }, "displayName": "My iModel", "lastModified": "2024-08-22T03:18:43.0000000+00:00" } }, "properties": { "export": { "$ref": "#/components/schemas/Export" } }, "description": "Response containing the details of a single export.", "additionalProperties": false }
TilerConfigItem
A key-value configuration item for the tilerConfig.
{ "type": "object", "required": [ "key", "value" ], "properties": { "key": { "type": "string", "maxLength": 256, "minLength": 1, "description": "Configuration key name." }, "value": { "anyOf": [ { "type": "string", "maxLength": 1000, "minLength": 1 }, { "type": "number" }, { "type": "boolean" } ], "description": "Configuration value; may be a string, number, or boolean." } }, "description": "A key-value configuration item for the tilerConfig.", "additionalProperties": false }
ExportResultBody exportType
Type of mesh exported.
{ "enum": [ "IMODEL", "CESIUM", "3DTILES", "3DTiles" ], "type": "string", "description": "Type of mesh exported.", "title": "ExportResultBody exportType" }
ExportResultBody
The original export request body stored with the result.
iTwin ID of the export.
ID of the iModel.
Context/iTwin ID of the export (kept for backwards compatibility).
ID of the changeset extracted from.
Index of the changeset.
{ "type": "object", "required": [ "iModelId", "exportType", "changesetId" ], "properties": { "iTwinId": { "type": "string", "description": "iTwin ID of the export." }, "iModelId": { "type": "string", "description": "ID of the iModel." }, "contextId": { "type": "string", "description": "Context/iTwin ID of the export (kept for backwards compatibility)." }, "exportType": { "enum": [ "IMODEL", "CESIUM", "3DTILES", "3DTiles" ], "type": "string", "description": "Type of mesh exported.", "title": "ExportResultBody exportType", "$ref": "#/components/schemas/ExportResultBody-exportType" }, "changesetId": { "type": "string", "description": "ID of the changeset extracted from." }, "tilerConfig": { "type": "array", "items": { "$ref": "#/components/schemas/TilerConfigItem" }, "title": "Tiler Config", "maxItems": 100, "minItems": 1, "description": "A list of key value pairs forwarded to the tiler executable.", "uniqueItems": true }, "changesetIndex": { "type": "string", "description": "Index of the changeset." } }, "description": "The original export request body stored with the result.", "additionalProperties": false }
ExportDirStructure
List of export directory children along with their size, in bytes.
ExportStatsDisplay
Statistics of the export job. This obsoletes the Consumption type.
Size of the exported tiles, in bytes.
Disk size, in bytes.
Duration of the export job, in milliseconds.
Starting date of the export job, pretty-printed.
Size of the iModel .bin file, in bytes
Export directory size, in bytes.
Free disk space, in bytes.
Size of the exported and compressed tiles, in bytes.
{ "type": "object", "properties": { "metrics": { "$ref": "#/components/schemas/ExportMetrics" }, "rawSize": { "type": "number", "description": "Size of the exported tiles, in bytes." }, "diskSize": { "type": "number", "description": " Disk size, in bytes." }, "duration": { "type": "number", "description": "Duration of the export job, in milliseconds." }, "startTime": { "type": "string", "format": "date-time", "description": "Starting date of the export job, pretty-printed." }, "iModelSize": { "type": "number", "description": "Size of the iModel .bin file, in bytes" }, "exportDirSize": { "type": "number", "description": "Export directory size, in bytes." }, "freeDiskSpace": { "type": "number", "description": "Free disk space, in bytes." }, "compressedSize": { "type": "number", "description": "Size of the exported and compressed tiles, in bytes." }, "exportDirStructure": { "$ref": "#/components/schemas/ExportDirStructure" } }, "description": "Statistics of the export job. This obsoletes the Consumption type.", "additionalProperties": false }
Was this page helpful?