Create a StorageConnection that describes files from Storage to synchronize to the iModel.
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.
Associated entities
A connection is linked with an iModel. An iModel ID is required to be set when creating a StorageConnection.
Request headers
OAuth access token with itwin-platform scope
Setting to application/vnd.bentley.itwin-platform.v1+json is recommended.
Request body
Storage Connection (create)
iModel id.
A storage connection display name.
Example
{ "displayName": "30", "iModelId": "7dbd531d-6967-47b2-8945-a722a437ad7a", "authenticationType": "User", "sourceFiles": [{ "storageFileId": "t5bDFuN4qUa9ojVw1E5FGtldp8BgSbNCiJ2XMdiT-cA", "connectorType": "MSTN" }] }
Response 201 Created
Connection successfully created.
{ "connection": { "id": "MWplZe9Uf0iR1IDMqyOMLqBN0_wHEVBGg_CzJmXdmE4", "displayName": "30", "iModelId": "7dbd531d-6967-47b2-8945-a722a437ad7a", "iTwinId": "5fb9aa98-9874-4697-b942-d19728840f19", "authenticationType": "User", "_links": { "iModel": { "href": "https://api.bentley.com/imodels/7dbd531d-6967-47b2-8945-a722a437ad7a" }, "iTwin": { "href": "https://api.bentley.com/itwins/5fb9aa98-9874-4697-b942-d19728840f19" }, "lastRun": { "href": "https://api.bentley.com/synchronization/imodels/storageconnections/MWplZe9Uf0iR1IDMqyOMLqBN0_wHEVBGg_CzJmXdmE4/runs/de626d0d-1647-48d7-8c11-f1f74f2d4523" } } } }
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
This response indicates that the requested operation or resource could not be found.
{ "error": { "code": "ResourceNotFound", "message": "The requested resource was not found. Verify the API URL and the Accept header.", "details": [{ "code": "OperationNotFound", "message": "Unable to match incoming request to an operation." }] } }
Response 409 Conflict
One or more SourceFiles are already mapped to the iModel.
{ "error": { "code": "FileMappingToTheIModelAlreadyExists", "message": "One or more SourceFiles are already mapped to the iModel." } }
Response 422 Unprocessable Entity
Invalid request to create connection. Request payload might be missing some of the required properties.
{ "error": { "code": "InvalidStorageConnectionRequest", "message": "Cannot perform operation.", "details": [{ "code": "InvalidRequestBody", "message": "Error parsing JSON, malformed JSON." }, { "code": "MissingRequiredProperty", "message": "A property required to create or update a connection is missing.", "target": "sourceFiles" }, { "code": "MissingRequiredProperty", "message": "At least one input file must be included to create a ConnectionDefinition.", "target": "sourceFiles" }, { "code": "MissingRequiredProperty", "message": "A property required to create or update a connection is missing.", "target": "connectorType" }, { "code": "MissingRequiredProperty", "message": "A property required to create or update a connection is missing.", "target": "storageFileId" }, { "code": "MissingRequiredProperty", "message": "imodelId was not provided.", "target": "imodelId" }, { "code": "InvalidValue", "message": "connectorType must be one of: 'AUTOPLANT', 'CIVIL', 'CIVIL3D', 'DACQJSON', 'DWG', 'GEOSPATIAL', 'IFC', 'INTELLIPID', 'MSTN', 'NWD', 'OBD', 'OPENTOWER', 'PROSTRUCTURES', 'PSEXCEL', 'REVIT', 'SPPID', 'SPXREVIEW', 'RVM'.", "target": "connectorType" }, { "code": "InvalidValue", "message": "Provided imodelId value is not valid.", "target": "imodelId" }, { "code": "InvalidValue", "message": "Provided storageFileId value is not valid.", "target": "storageFileId" }] } }
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
Hyperlink to the specific entity.
{ "type": "object", "properties": { "href": { "type": "string", "description": "Hyperlink to the specific entity." } }, "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 }
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 }
Connector type
One of 'AUTOPLANT', 'CIVIL', 'CIVIL3D', 'DWG', 'GEOSPATIAL', 'IFC', 'MSTN', 'NWD', 'OBD', 'OPENTOWER', 'REVIT', 'SPPID', 'SPXREVIEW', 'PROSTRUCTURES', 'RVM', 'PSEXCEL', 'INTELLIPID'. Name of the Connector that is used for synchronization.
{ "enum": [ "AUTOPLANT", "CIVIL", "CIVIL3D", "DWG", "GEOSPATIAL", "IFC", "MSTN", "NWD", "OBD", "OPENTOWER", "REVIT", "SPPID", "SPXREVIEW", "PROSTRUCTURES", "RVM", "PSEXCEL", "INTELLIPID" ], "type": "string", "title": "Connector type", "description": "One of 'AUTOPLANT', 'CIVIL', 'CIVIL3D', 'DWG', 'GEOSPATIAL', 'IFC', 'MSTN', 'NWD', 'OBD', 'OPENTOWER', 'REVIT', 'SPPID', 'SPXREVIEW', 'PROSTRUCTURES', 'RVM', 'PSEXCEL', 'INTELLIPID'. Name of the Connector that is used for synchronization." }
Connection Links
{ "type": "object", "title": "Connection Links", "properties": { "iTwin": { "$ref": "#/components/schemas/Link" }, "iModel": { "$ref": "#/components/schemas/Link" }, "lastRun": { "$ref": "#/components/schemas/Link" } }, "additionalProperties": false }
Storage Connection
Storage connection id.
iTwin id.
iModel id.
A storage connection display name.
{ "type": "object", "title": "Storage Connection", "properties": { "id": { "type": "string", "description": "Storage connection id." }, "_links": { "$ref": "#/components/schemas/connection-links" }, "iTwinId": { "type": "string", "description": "iTwin id." }, "iModelId": { "type": "string", "description": "iModel id." }, "displayName": { "type": "string", "description": "A storage connection display name." }, "authenticationType": { "$ref": "#/components/schemas/authenticationType" } }, "additionalProperties": false }
Authentication Type
One of 'User' or 'Service'.
{ "enum": [ "User", "Service" ], "type": "string", "title": "Authentication Type", "description": "One of 'User' or 'Service'." }
StorageFile (create)
{ "type": "object", "title": "StorageFile (create)", "required": [ "storageFileId", "connectorType" ], "properties": { "connectorType": { "$ref": "#/components/schemas/connector-type" }, "storageFileId": { "type": "string", "description": "Storage file id." } }, "additionalProperties": false }
Storage Connection (create)
iModel id.
A storage connection display name.
{ "type": "object", "title": "Storage Connection (create)", "required": [ "sourceFiles", "iModelId" ], "properties": { "iModelId": { "type": "string", "description": "iModel id." }, "displayName": { "type": "string", "description": "A storage connection display name." }, "sourceFiles": { "type": "array", "items": { "$ref": "#/components/schemas/storage-file-create" }, "description": "Source files to be synchronized." }, "authenticationType": { "$ref": "#/components/schemas/authenticationType" } }, "additionalProperties": false }
Storage connection response
{ "type": "object", "title": "Storage connection response", "properties": { "connection": { "$ref": "#/components/schemas/StorageConnection" } }, "additionalProperties": false }
Was this page helpful?