Gets the schemas for the latest named version of an iModel. This request relies on a previous call to start schema extraction on an agent. Since this extraction completes asynchronously, the user can send this request periodically until a status of 'available' is returned in the response.
Discover iModel ids by calling GET /imodels
Extract iModel schemas by calling POST /clashdetection/schemas/imodels
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
iModel id
The id of the project containing the iModel from which to retrieve the schema info.
Request headers
OAuth access token with itwin-platform
scope
Setting to application/vnd.bentley.itwin-platform.v1+json
is recommended.
Response 200 OK
OK
{ "status": "available", "schema": [{ "name": "Architecture_rvt_ThreeD_3D", "label": null, "entityClass": [{ "name": "RevitBaseClass", "label": null, "properties": [], "aspects": [], "typeDefinitions": [] }, { "name": "Casework", "label": null, "properties": [{ "name": "OmniClass__x0020__Title_PG_IDENTITY_DATA_Text_TYPE", "label": "OmniClass Title" }, { "name": "Assembly__x0020__Description_PG_IDENTITY_DATA_Text_TYPE", "label": "Assembly Description" }, { "name": "Depth_PG_GEOMETRY_Length_TYPE", "label": "Depth" }, { "name": "Cost_PG_IDENTITY_DATA_Currency_TYPE", "label": "Cost" }, { "name": "Counter__x0020__Thickness_PG_GEOMETRY_Length_TYPE", "label": "Counter Thickness" }, { "name": "Width_PG_GEOMETRY_Length_TYPE", "label": "Width" }, { "name": "OmniClass__x0020__Number_PG_IDENTITY_DATA_Text_TYPE", "label": "OmniClass Number" }, { "name": "Counter__x0020__Top__x0020__Material_PG_MATERIALS_Material_TYPE", "label": "Counter Top Material" }, { "name": "Height_PG_GEOMETRY_Length_TYPE", "label": "Height" }, { "name": "Assembly__x0020__Code_PG_IDENTITY_DATA_Text_TYPE", "label": "Assembly Code" }, { "name": "Offset_PG_CONSTRAINTS_Length", "label": "Offset" }, { "name": "Phase__x0020__Demolished_PG_PHASING_Invalid", "label": "Phase Demolished" }, { "name": "Level_PG_CONSTRAINTS_Invalid", "label": "Level" }, { "name": "Sink__x0020__Opening__x0020__Depth_PG_GEOMETRY_Length", "label": "Sink Opening Depth" }, { "name": "Phase__x0020__Created_PG_PHASING_Invalid", "label": "Phase Created" }, { "name": "Sink__x0020__Location_PG_GEOMETRY_Length", "label": "Sink Location" }, { "name": "Moves__x0020__With__x0020__Nearby__x0020__Elements_PG_CONSTRAINTS_YesNo", "label": "Moves With Nearby Elements" }, { "name": "Sink__x0020__Location__x0020__To__x0020__Wall_PG_GEOMETRY_Length", "label": "Sink Location To Wall" }, { "name": "Length_PG_GEOMETRY_Length", "label": "Length" }, { "name": "Design__x0020__Option_PG_IDENTITY_DATA_Text", "label": "Design Option" }, { "name": "Host_PG_CONSTRAINTS_Text", "label": "Host" }, { "name": "Sink__x0020__Opening__x0020__Width_PG_GEOMETRY_Length", "label": "Sink Opening Width" }, { "name": "FamilyType", "label": "Type" }, { "name": "CategoryName", "label": "Category" }, { "name": "FamilyName", "label": "Family" }, { "name": "Toe__x0020__Depth_PG_GEOMETRY_Length_TYPE", "label": "Toe Depth" }, { "name": "Cabinet__x0020__Material_PG_MATERIALS_Material_TYPE", "label": "Cabinet Material" }, { "name": "Handle__x0020__Material_PG_MATERIALS_Material_TYPE", "label": "Handle Material" }, { "name": "Drawer__x0020__Material_PG_MATERIALS_Material_TYPE", "label": "Drawer Material" }, { "name": "Toe__x0020__Height_PG_GEOMETRY_Length_TYPE", "label": "Toe Height" }, { "name": "Door__x002f__Drawer__x0020__Material_PG_MATERIALS_Material_TYPE", "label": "Door/Drawer Material" }, { "name": "ECInstanceLabelSpec", "label": null } ], "aspects": [], "typeDefinitions": [] }, { "name": "Ceilings", "label": null, "properties": [{ "name": "Heat__x0020__Transfer__x0020__Coefficient__x0020____x0028__U__x0029___PG_ANALYTICAL_PROPERTIES_HVACCoefficientOfHeatTransfer_TYPE", "label": "Heat Transfer Coefficient (U)" }, { "name": "Absorptance_PG_ANALYTICAL_PROPERTIES_Number_TYPE", "label": "Absorptance" }, { "name": "Assembly__x0020__Description_PG_IDENTITY_DATA_Text_TYPE", "label": "Assembly Description" }, { "name": "Roughness_PG_ANALYTICAL_PROPERTIES_Integer_TYPE", "label": "Roughness" }, { "name": "Thermal__x0020__mass_PG_ANALYTICAL_PROPERTIES_HVACThermalMass_TYPE", "label": "Thermal mass" }, { "name": "Thickness_PG_CONSTRUCTION_Length_TYPE", "label": "Thickness" }, { "name": "Coarse__x0020__Scale__x0020__Fill__x0020__Color_PG_GRAPHICS_Invalid_TYPE", "label": "Coarse Scale Fill Color" }, { "name": "Cost_PG_IDENTITY_DATA_Currency_TYPE", "label": "Cost" }, { "name": "Coarse__x0020__Scale__x0020__Fill__x0020__Pattern_PG_GRAPHICS_Invalid_TYPE", "label": "Coarse Scale Fill Pattern" }, { "name": "Assembly__x0020__Code_PG_IDENTITY_DATA_Text_TYPE", "label": "Assembly Code" }, { "name": "Thermal__x0020__Resistance__x0020____x0028__R__x0029___PG_ANALYTICAL_PROPERTIES_HVACThermalResistance_TYPE", "label": "Thermal Resistance (R)" }, { "name": "Perimeter_PG_GEOMETRY_Length", "label": "Perimeter" }, { "name": "Design__x0020__Option_PG_IDENTITY_DATA_Text", "label": "Design Option" }, { "name": "Height__x0020__Offset__x0020__From__x0020__Level_PG_CONSTRAINTS_Length", "label": "Height Offset From Level" }, { "name": "Level_PG_CONSTRAINTS_Invalid", "label": "Level" }, { "name": "Phase__x0020__Created_PG_PHASING_Invalid", "label": "Phase Created" }, { "name": "Area_PG_GEOMETRY_Area", "label": "Area" }, { "name": "Room__x0020__Bounding_PG_CONSTRAINTS_YesNo", "label": "Room Bounding" }, { "name": "Phase__x0020__Demolished_PG_PHASING_Invalid", "label": "Phase Demolished" }, { "name": "Slope_PG_GEOMETRY_Slope", "label": "Slope" }, { "name": "Volume_PG_GEOMETRY_Volume", "label": "Volume" }, { "name": "FamilyType", "label": "Type" }, { "name": "CategoryName", "label": "Category" }, { "name": "ECInstanceLabelSpec", "label": null } ], "aspects": [], "typeDefinitions": [] } ] }] }
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 specified iModel or project was not found.
{ "error": { "code": "iModelNotFound", "message": "Requested iModel 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)
{ "error": { "code": "InvalidClashDetectionRequest", "message": "Requested project ID is not valid." } }
Response 429 Too many requests
This response indicates that the user has sent too many requests in a given amount of time.
{ "error": { "code": "TooManyRequests", "message": "More requests were received than the subscription rate-limit allows." } }
The number of requests exceeds the rate-limit for the client subscription.
Schema Info
The status of the schema info. One of 'available', 'unavailable'
Schema
Schema info
The name of the schema.
The label of the schema.
Entity Class
Entity Class info
The name of the class.
The label of the class.
Property
Property info
The name of the property.
The label of the property.
Aspect
Aspect info
The name of the aspect.
The label of the aspect.
Type Definition
Type definition info
The name of the type definition.
The label of the type definition.
Error
Contains error information.
One of a server-defined set of error codes.
A human-readable representation of the error.
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.