Table of contents
Synchronization

Configurations

Download API definition:

This operation is a Technical Preview and is available for testing purposes only. Do not use in production.
POST https://api.bentley.com/synchronization/configurations/imodels/{imodelid}

Create a configuration that defines how data is processed and synced to iModels in the specific iModel.

Configurations

clampZExtent

Enables a limit for the project Z extent maximum up to Mount Everest height (i.e.8849 meters). Works only when project extent in XY direction is defined for iModel. The default value is false.

Display performance can be adversely affected if source data is poorly aligned or contains elements far from the project's physical location. If files cannot be corrected, this configuration would help viewers to restrict the Z extent.

Use case example: allows restricting viewport to the bounding box so that any arbitrary geometry far away from the actual design does not impact fitting the model to the viewport.

overrideRvtReprojectionDistance

Define distance in meters when to start ignoring .rvt file geo-location data and reprojecting graphics based on local iModel coordinates. The default value is 0.

Reprojection happens when the .rvt file and iModel have different geographic coordinate systems. If the distance between both GCS is bigger than the number provided with the flag, reprojection will be skipped, and no errors will be reported. Otherwise, reprojection will be applied. This configuration will have no effect if Revit was the first file synchronized to an empty iModel.

Use case example: no reprojection of Revit file is needed beyond some pre-defined radius.

Authentication

Requires Authorization header with valid Bearer token for scope synchronization:modify.

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

Request parameters

Name
In
Required?
Description
imodelid
template
Yes

iModel Id

Request headers

Name
Required?
Description
Authorization
Yes

OAuth access token with scope synchronization:modify

Accept
Yes

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

Request body

iModel configuration

Name
Type
Required?
Description
clampZExtent
Boolean
No

Enables a limit for the project Z extent maximum up to Mount Everest height (i.e.8849 meters). Works only when project extent in XY direction is defined for iModel. The default value is false.

overrideRvtReprojectionDistance
Integer
No

Define distance in meters when to start ignoring .rvt file geo-location data and reprojecting graphics based on local iModel coordinates. The default value is 0.

Example

json
{
    "clampZExtent": false,
    "overrideRvtReprojectionDistance": 0
}

Response 201 Created

Configuration successfully created.

json
{
    "configuration": {
        "scopeId": "7dbd531d-6967-47b2-8945-a722a437ad7a",
        "settings": {
            "clampZExtent": false,
            "overrideRvtReprojectionDistance": 0
        },
        "resolvedSettings": {
            "uploadDgnRealityData": true,
            "convertDgnTerrainModels": false,
            "squashIntermediateRevisions": false,
            "skipRvtReprojection": false,
            "convertDgnHyperModelingSections": true,
            "clampZExtent": false,
            "overrideRvtReprojectionDistance": 0
        }
    }
}

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 409 Conflict

A configuration already exists.

json
{
    "error": {
        "code": "ConfigurationAlreadyExists",
        "message": "A configuration already exists for the specified imodelid."
    }
}

Response 422 Unprocessable Entity

Invalid request to create a configuration. Request payload might be missing some of the required properties.

json
{
    "error": {
        "code": "InvalidConfigurationRequest",
        "message": "Cannot perform operation.",
        "details": [{
                "code": "InvalidRequestBody",
                "message": "Error parsing JSON, malformed JSON."
            },
            {
                "code": "InvalidValue",
                "message": "Provided imodelid value is not valid.",
                "target": "imodelid"
            }
        ]
    }
}

Response 429 Too many requests

This response indicates that the user has sent too many requests in a given amount of time.

json
{
    "error": {
        "code": "TooManyRequests",
        "message": "More requests were received than the subscription rate-limit allows."
    }
}

Response headers

Name
Description
retry-after

The number of requests exceeds the rate-limit for the client subscription.

Configuration response

TableSchema
Name
Type
Description
configuration

Configuration entity

Configuration

TableSchema
Name
Type
Description
scopeId
String

Scope Id

settings

Configuration settings

resolvedSettings

Configuration resolved settings

iModel configuration

TableSchema
Name
Type
Description
clampZExtent
Boolean

Enables a limit for the project Z extent maximum up to Mount Everest height (i.e.8849 meters). Works only when project extent in XY direction is defined for iModel. The default value is false.

overrideRvtReprojectionDistance
Integer

Define distance in meters when to start ignoring .rvt file geo-location data and reprojecting graphics based on local iModel coordinates. The default value is 0.

User defined connector settings

TableSchema
Name
Type
Description
uploadDgnRealityData
Boolean

Enables reality data upload to Reality Data API while synchronizing files to iModels, if .3sm, .3mx, .pod, or raster attachments are attached to CAD data. The default value is true.

convertDgnTerrainModels
Boolean

Enables terrain model elements to be processed during dgn-based synchronizations. The default value is false.

enableSheetsAndDrawings
Boolean

Controls sheets and drawings synchronization. The default value is false.

enableC3dGraphsIn2dModel
Boolean

Separates Civil3d Connector 2D elements from 3D elements in the target iModel. The 2D elements will be inserted into a graph model while the 3D elements will be kept in the spatial model. The default value is false.

squashIntermediateRevisions
Boolean

Enables the creation of a single Changeset for physical and drawing elements (2D, 3D) coming from all Source Files. Separate Changesets will be pushed for any schema or definition changes. The default value is false.

skipRvtReprojection
Boolean

Ignores geo-location defined in .rvt file and overlaps the model at the local iModel coordinates. The default value is false.

convertDgnHyperModelingSections
Boolean

Enables displaying the 2D section graphics and annotations in the context of the 3D model. The default value is true.

clampZExtent
Boolean

Enables a limit for the project Z extent maximum up to Mount Everest height (i.e.8849 meters). Works only when project extent in XY direction is defined for iModel. The default value is false.

overrideRvtReprojectionDistance
Integer

Define distance in meters when to start ignoring .rvt file geo-location data and reprojecting graphics based on local iModel coordinates. The default value is 0.

enableSheetIndex
Boolean

Enables processing of sheet index files from the associated workspace.

filterBySheetIndex
Boolean

Enables a limit for the processing of sheets provided to the connector to the ones specified in the sheet index.

reclassifyDgnElements
Boolean

Enables connector to change the base class of an element if its current classification comes from the Generic schema. The default value is false.

ignoreDgnAttachments
Boolean

Enables skipping of all reference attachments. As a result, only the master file is synchronized into the iModel. Only applicable for .dgn and .dwg files. The default value is false.

Error

Contains error information.

TableSchema
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

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.

TableSchema
Name
Type
Description
error

Error information.