Revision Service


 

Revision Service


Use this service for creating revisions of models or attachments.

Create a new revision or update/overwrite a model
Resource: revisions

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

Examplehttps://api-stage.bimplus.net/v2/bimplus/divisions/00b54edd-c84c-4bd2-a08c-c93d1f28907a/revisions

JSON Structure

Name

Mandatory / Optional

Type

Description

name

mandatory

string

Name of the revision

description

optional

string

Short description of the revision

projectId

will be ignored

string (guid)

Creation date of the revision

divisionIdwill be ignoredstring (guid)Id of the model
revisionNrwill be ignoredintRevision number
createdwill be ignoredstring (date)Creation date
createdBywill be ignoreduser objectThe user who created it
changedwill be ignoredstring (date)Modification date
changedbywill be ignoreduser objectThe user who did the modification
applicationIdwill be ignoredstring (guid)The id of the application
inputTypeoptionalstringType of upload (eg: "IFC_IMPORT")

Note: The import/upload is always done only for the latest revision.

 POST
 Use this API for creating a new revision. Please, note that import/upload is always done only for the latest revision. i.e if there are no revisions, & if we use import API the always the model is updated/overwritten. If a model has revisions & if we use the import API then always the latest import/upload is linked with the latest revision.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
{
    "name": "Ballo.ifc"
}
Status: 201 Created
{
    "id": "d2d39bca-051e-48fa-ba23-4845087a071c",
    "name": "Ballo.ifc",
    "description": "",
    "projectId": "e31c3480-5633-4506-b717-8dd97c0f0ab3",
    "divisionId": "00b54edd-c84c-4bd2-a08c-c93d1f28907a",
    "revisionNr": 6,
    "created": "2015-11-03T11:13:27.2",
    "createdby": {
        "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
        "email": "jayaraj.purushothaman@gmail.com"
    },
    "changed": "2015-11-03T11:13:27.2",
    "changedby": {
        "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
        "email": "jayaraj.purushothaman@gmail.com"
    },
    "applicationId": "0106c8ba-ad46-7c08-e26f-026852cb7525",
    "inputType": "IFC_IMPORT"
}

Get the list of revisions of a model
Resource: revisions

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

Examplehttps://api-stage.bimplus.net/v2/bimplus/divisions/00b54edd-c84c-4bd2-a08c-c93d1f28907a/revisions

 GET
 Get the list of revisions of a model
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK
[
    {
        "id": "d2d39bca-051e-48fa-ba23-4845087a071c",
        "name": "Ballo.ifc",
        "description": "",
        "projectId": "e31c3480-5633-4506-b717-8dd97c0f0ab3",
        "divisionId": "00b54edd-c84c-4bd2-a08c-c93d1f28907a",
        "revisionNr": 6,
        "created": "2015-11-03T11:13:27",
        "createdby": {
            "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "jayaraj.purushothaman@gmail.com"
        },
        "changed": "2015-11-03T11:13:36",
        "changedby": {
            "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "jayaraj.purushothaman@gmail.com"
        },
        "applicationId": "0106c8ba-ad46-7c08-e26f-026852cb7525",
        "topologyId": "abef74ce-869d-4c6f-9fbc-e8b6102cbb4a",
        "inputType": "IFC_IMPORT"
    },
    {
        "id": "314075f5-2eaa-409f-a5b2-2de9a9b3f1a0",
        "name": "Ballo.ifc",
        "description": "",
        "projectId": "e31c3480-5633-4506-b717-8dd97c0f0ab3",
        "divisionId": "00b54edd-c84c-4bd2-a08c-c93d1f28907a",
        "revisionNr": 5,
        "created": "2015-11-02T16:09:51",
        "createdby": {
            "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "jayaraj.purushothaman@gmail.com"
        },
        "changed": "2015-11-02T16:09:54",
        "changedby": {
            "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "jayaraj.purushothaman@gmail.com"
        },
        "applicationId": "0106c8ba-ad46-7c08-e26f-026852cb7525",
        "topologyId": "abef74ce-869d-4c6f-9fbc-e8b6102cbb4a",
        "inputType": "IFC_IMPORT"
    },
    {
        "id": "4566ccbb-e9d1-4deb-a0ef-72b6847c050e",
        "name": "Ballo.ifc",
        "description": "",
        "projectId": "e31c3480-5633-4506-b717-8dd97c0f0ab3",
        "divisionId": "00b54edd-c84c-4bd2-a08c-c93d1f28907a",
        "revisionNr": 4,
        "created": "2015-11-02T16:00:46",
        "createdby": {
            "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "jayaraj.purushothaman@gmail.com"
        },
        "changed": "2015-11-02T16:00:55",
        "changedby": {
            "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "jayaraj.purushothaman@gmail.com"
        },
        "applicationId": "0106c8ba-ad46-7c08-e26f-026852cb7525",
        "topologyId": "abef74ce-869d-4c6f-9fbc-e8b6102cbb4a",
        "inputType": "IFC_IMPORT"
    },
    {
        "id": "c913054e-b4c2-44e8-8e92-602f6c9256ce",
        "name": "Ballo.ifc",
        "description": "",
        "projectId": "e31c3480-5633-4506-b717-8dd97c0f0ab3",
        "divisionId": "00b54edd-c84c-4bd2-a08c-c93d1f28907a",
        "revisionNr": 3,
        "created": "2015-11-02T15:53:49",
        "createdby": {
            "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "jayaraj.purushothaman@gmail.com"
        },
        "changed": "2015-11-02T15:54:18",
        "changedby": {
            "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "jayaraj.purushothaman@gmail.com"
        },
        "applicationId": "0106c8ba-ad46-7c08-e26f-026852cb7525",
        "topologyId": "abef74ce-869d-4c6f-9fbc-e8b6102cbb4a",
        "inputType": "IFC_IMPORT"
    },
    {
        "id": "7806506b-d506-46a2-8d18-a7addb196e1d",
        "name": "Model revision",
        "projectId": "e31c3480-5633-4506-b717-8dd97c0f0ab3",
        "divisionId": "00b54edd-c84c-4bd2-a08c-c93d1f28907a",
        "revisionNr": 2,
        "created": "2015-06-18T13:23:03",
        "createdby": {
            "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "jayaraj.purushothaman@gmail.com"
        },
        "changed": "2015-06-18T13:23:14",
        "changedby": {
            "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "jayaraj.purushothaman@gmail.com"
        },
        "applicationId": "a1621259-a32f-e517-d0cb-aba5f07e5ffa",
        "topologyId": "abef74ce-869d-4c6f-9fbc-e8b6102cbb4a",
        "inputType": "IFC_IMPORT"
    },
    {
        "id": "a94c9494-a32c-4bfa-b8ac-a1aebb78b5fe",
        "name": "m1",
        "projectId": "e31c3480-5633-4506-b717-8dd97c0f0ab3",
        "divisionId": "00b54edd-c84c-4bd2-a08c-c93d1f28907a",
        "revisionNr": 1,
        "created": "2015-06-18T13:14:51",
        "createdby": {
            "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "jayaraj.purushothaman@gmail.com"
        },
        "changed": "2015-06-18T13:14:51",
        "changedby": {
            "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "jayaraj.purushothaman@gmail.com"
        },
        "applicationId": "a1621259-a32f-e517-d0cb-aba5f07e5ffa",
        "topologyId": "7a7a68c9-a26c-4cd9-84d9-96af4e86c0d1",
        "inputType": "IFC_IMPORT"
    }
]

Get the info about a revision
Resource: projects 

URLhttps://api-stage.bimplus.net/v2/<team_slug>/revisions/<id>

Examplehttps://api-stage.bimplus.net/v2/bimplus/revisions/d2d39bca-051e-48fa-ba23-4845087a071c

 GET
 Get the info about a particular revision.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK
{
    "id": "d2d39bca-051e-48fa-ba23-4845087a071c",
    "name": "Ballo.ifc",
    "description": "",
    "projectId": "e31c3480-5633-4506-b717-8dd97c0f0ab3",
    "divisionId": "00b54edd-c84c-4bd2-a08c-c93d1f28907a",
    "revisionNr": 6,
    "created": "2015-11-03T11:13:27",
    "createdby": {
        "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
        "email": "jayaraj.purushothaman@gmail.com"
    },
    "changed": "2015-11-03T11:13:36",
    "changedby": {
        "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
        "email": "jayaraj.purushothaman@gmail.com"
    },
    "applicationId": "0106c8ba-ad46-7c08-e26f-026852cb7525",
    "inputType": "IFC_IMPORT"
}

Update the revision info
Resource: projects/<project_id>

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

Examplehttps://api-stage.bimplus.net/v2/bimplus/projects/0d2ce2cc-3588-45d6-a59a-f6b89ebed34e

JSON Structure

Name

Mandatory / Optional

Type

Description

name

mandatory

string

Name of the revision

description

optional

string

Short description of the revision

projectId

will be ignored

string (guid)

Creation date of the revision

divisionIdwill be ignoredstring (guid)Id of the model
revisionNrwill be ignoredintRevision number
createdwill be ignoredstring (date)Creation date
createdBywill be ignoreduser objectThe user who created it
applicationIdoptionalstring (guid)The id of the application
inputTypeoptionalstringType of upload (eg: "IFC_IMPORT")
 PUT
 Update the revision info of a model.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
{
"name": "updated name"
}
Status: 200 OK
{
    "id": "d2d39bca-051e-48fa-ba23-4845087a071c",
    "name": "updated name",
    "divisionId": "00b54edd-c84c-4bd2-a08c-c93d1f28907a",
    "revisionNr": 6,
    "created": "2015-11-03T11:13:27",
    "createdby": {
        "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
        "email": "jayaraj.purushothaman@gmail.com"
    },
    "changed": "0001-01-01T00:00:00",
    "changedby": {
        "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
        "email": "jayaraj.purushothaman@gmail.com"
    },
    "applicationId": "0106c8ba-ad46-7c08-e26f-026852cb7525"
}

List of APIs for retrieving info from a particular revision (3D objects, attachments etc)

Please note that all resources(eg: objects, attachments etc) of a model revision can be accessed using the revision query string(i.e "?revision=<revisionNr>")

eg: GET   /<TeamSlug>/objects/<ObjectID>/disciplines/<DisciplineID>/geometries/threejs?revision=2

     GET   /<TeamSlug>/objects/<ObjectID>/attachments?revision=2


Revision Comparison
Resource: divisions/{divisionId}/revisions/{latest_revision_no}/compare/{any_previous_revision_no}

URLhttps://api-stage.bimplus.net/v2/ <team_slug>/divisions/{divisionId}/revisions/{latest_revision_no}/compare/{any_previous_revision_no}

Examplehttps://api-stage.bimplus.net/v2/bimplus/divisions/00b54edd-c84c-4bd2-a08c-c93d1f28907a/revisions/2/compare/1

 GET
 Compare two revisions of the same model & get the differences. There are three sets of data returned (i.e Newly created objects, Modified objects & Deleted objects) The unaffected & hidden objects are not returned in the response. The modified objects contains both the new part & the old part.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK
The response is similar to the /v2/{slug}/objects/{id}/geometries/threejs/properties/8