Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

 


Model Service

...

A Model is basically a technical building plan which could be created or imported. 

...

Deck of Cards
idbimCreateModel


Card
defaulttrue
labelURL / Resource / JSON Structure
Resource: projects/<project_id>/divisions 

URLhttps://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>/divisions

Examplehttps://api-stage.bimplus.net/v2/bimplus/projects/743a24f9-baaa-41b9-90b3-91717238043c/divisions

JSON Structure

Name

Mandatory / Optional

Type

Description

idwill be ignoredstring(guid)Id of the model/division

name

mandatory

string

Name of the model

description

optional

string

Short description of the model

projectId

will be ignored

string (guid)

Id of the project to which the model belongs

topologyIdoptionalstring (guid)Id of the topology to which the model belongs
disciplinesoptionalobjectThe discipline list of the model
statuswill be ignoredstring(enum)

The status of the imported file. It could be one of the following

  • PREPARING (Uploading the file)
  • PENDING (Waiting in the queue after upload to be processed)
  • PROCESSING (Processing)
  • DONE (Processed)
  • DONE_REFRESHED (Processed & sent the notification)
  • FAILED
  • UNKNOWN
  • EMPTY (Default, if none of above)
revisionObjectswill be ignoredJSON ObjectThe list of revisions
teamSlugwill be ignoredstringSlug of the team to which the model belongs
urlwill be ignoredstringThe link for downloading the model
fileTypewill be ignoredstringContent-type of file
inputTypewill be ignoredstringType of file (eg: ifc, Allplan etc)
createdwill be ignoredstring(date)Creation date of the model
createdbywill be ignoredJSON objectThe user who created this model
changedwill be ignoredstring(date)Update date of the model
changedBywill be ignoredJSON objectUser who updated the model
sizewill be ignoredintsize in bytes
sizeMBwill be ignoredstringsize in MB
importFileNamewill be ignoredstringThe file name of the model
importFileSizewill be ignoredintSize of the import file in bytes



Card
labelHTTP Method
 POST


Card
labelDescription
 Creates a new model in project using project id.


Card
labelRequest


Code Block
borderColorGreen
langxml
titleHeaders
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json


Code Block
borderColorRed
langxml
titleJSON
{
 "name":"Model D", 
 "description":"Creating a model via API"
}



Card
labelResponse


Code Block
borderColorGreen
langxml
titleStatus
Status: 201 Created


Code Block
borderColorRed
langxml
titleJSON
{
    "name": "Model D",
    "description": "Creating a model via API",
    "projectId": "743a24f9-baaa-41b9-90b3-91717238043c",
    "topologyId": "0fb09e03-20fc-42d9-a60b-254803950519",
    "disciplines": [
        "0f106af0-a919-44c5-b211-15bd5ef620b6",
        "33826b01-c267-4b25-9f8e-79ac2953c443",
        "30114b52-bc05-47c1-80b5-c7d5485d5840",
        "09e623d4-1e12-4a77-b358-ea1d0b28e4a7"
    ],
    "url": "/bimplus/divisions/2e0ca9e9-dd11-48d0-bd31-5a65225fe28a/download",
    "fileType": "Ifc",
    "inputType": "UNKNOWN",
    "created": "2015-11-06T09:34:45",
    "createdby": {
        "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
        "email": "jayaraj.purushothaman@gmail.com"
    },
    "changed": "2015-11-06T09:39:04",
    "changedby": {
        "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
        "email": "jayaraj.purushothaman@gmail.com"
    },
    "size": 7216128,
    "sizeMB": "6,88",
    "importFileName": "SMC Building.ifc",
    "status": "DONE_REFRESHED",
    "id": "2e0ca9e9-dd11-48d0-bd31-5a65225fe28a"
}



...

Deck of Cards
idbimDetectModelChange


Card
labelURL / Resource / JSON Structure

Resource: divisions/<division_id>

URLhttps://api-stage.bimplus.net/v2/<team_slug>/divisions/<division_id>


Card
labelHTTP Method

HEAD


Card
labelDescription

This method checks if the model has changed or not, and returns model's current ETag.

In the request, include models ETag into http header "If-None-Match", and then the response will be :

a) 304 NotModified if current model's ETag is identical ( means model has not changed )

b) 200 OK if model has changed, and returns current models ETag as "ETag" header in the response.

The "If-None-Match" header is not mandatory. If not present, the response will always return 200 OK with current ETag.


Card
labelRequest


Code Block
titleHeaders
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
If-None-Macth: "f9efd399-4631-4a77-b40a-31fb099f42a4"



Card
labelResponse


Code Block
titleStatus
Status: 304 NotModified - if model not changed
or 
Status: 200 OK - if model has changed, or "If-None-Match" header was not included in request


Code Block
titleHeaders
Etag: "f9efd399-4631-4a77-b40a-31fb099f42a4"

...




Anchor
getModelDisciplines
getModelDisciplines

...

Deck of Cards
idbimDownloadModel


Card
defaulttrue
labelURL / Resource / JSON Structure
Resource: divisions/<division_id>/download 

URLhttps://api-stage.bimplus.net/v2/<team_slug>/divisions/<division_id>/download

Examplehttps://api-stage.bimplus.net/v2/bimplus/divisions/743a24f9-baaa-41b9-90b3-91717238043c/download 


Query parameters

NameMandatory/OptionalDescription
api-tokenoptionalIf the client cannot use the token in the header of the request, token can be specified in query parameters
e.g. <team_slug>/divisions/<division_id>/download?api-token=9c1874a62c974dcfa75e0132c423a088
revisionoptionalSpecify revision number, If set, the call will return the import file of the revision, otherwise it's the current import file.



Card
labelHTTP Method
 GET


Card
labelDescription
 Download the already uploaded model. There also exists a GET method for downloading the model where you can pass the "token" as a query parameter.


Card
labelRequest


Code Block
borderColorGreen
langxml
titleHeaders
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json



Card
labelResponse

Returns file data. The response is of Content-Type: application/octet-stream.

Code Block
borderColorGreen
langxml
titleStatus
Status: 200 OK



...