Maintenance Notification
This system wont be available today from 14:00 until 15:00 CET due to urgently needed maintenance.
Project Service
A Project is basically a holder which contains building models.
URL: https://api-stage.bimplus.net/v2/<team_slug>/projects
Example: https://api-stage.bimplus.net/v2/bimplus/projects
JSON Structure:
Name |
Mandatory / Optional |
Type |
Description |
---|---|---|---|
id | will be ignored | string (guid) | Id of the project |
name |
mandatory |
string |
Name of the project |
shortDescr |
optional |
string |
Short description of the project |
teamName | will be ignored | string | Name of the team to which the project belongs |
teamSlug | will be ignored | string | Slug of the team to which the project belongs |
hasWriteAccess | will be ignored | boolean | Don't use this property. This property is not deleted to support the older clients |
thumbnail | will be ignored | string | Direct download link to project thumbnail |
created |
will be ignored |
string (date) |
Creation date of the project |
createdBy | will be ignored | JSON object | Details of the Bimplus user who has created the project |
changed | will be ignored | string(date) | Modified date of the project |
changedBy | will be ignored | JSON object | Details of the Bimplus user who has created the project |
address | optional | string | Address of the project |
modelCount | will be ignored | int | Number of models in this project |
memberCount | will be ignored | int | Number of members in this project |
topicCount | will be ignored | int | Number of topics in this project |
attachmentCount | will be ignored | int | Number of attachments in this project |
size | will be ignored | int | Size of the project in bytes |
sizeInMB | will be ignored | string | Size of the project in MB |
disciplines | will be ignored | JSON object | Disciplines found under this project |
rights | will be ignored | JSON object | The rights the user has for this project |
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
{ "name" : "Your Awesome Building", "shortDescr" : "Example for creating a project", "address" : "My address somewhere" }
Status: 201 Created
{ "name": "Your Awesome Building", "shortDescr": "Example for creating a project", "teamName": "Best Company", "teamSlug": "best-company", "hasWriteAccess" : true, "thumbnail": null, "created": "2013-06-01T10:05:00", "createdby" : { "id": "7c555899-5a5f-44d1-930e-284930678bed", "email" : "testuser@bimplus.net" }, "changed": "2013-06-01T10:05:00", "changedby" : { "id": "7c555899-5a5f-44d1-930e-284930678bed", "email" : "testuser@bimplus.net" }, "address" : "My address somewhere", "modelCount": 0, "memberCount": 1, "topicCount": 0, "attachmentCount": 0, "size": 0, "sizeMB": "0", "id": "0d2ce2cc-3588-45d6-a59a-f6b89ebed34e" }
URL: https://api-stage.bimplus.net/v2/projects
Example: https://api-stage.bimplus.net/v2/projects
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
Status: 200 OK
[ { "id": "586b02be-43b8-4e27-b698-e067e85e38e2", "name": "!!!!!_VORTEILSHAUS V40 SD45 Traufeingang", "shortDescr": "Hey, i am your favourite test entry", "thumbnail": "", "created": "2013-05-01T09:33:18", "createdby" : { "id" : "f4b1178d-385f-449c-a2a7-6f58b264d90c" "email" : "owner@company1.com", }, "changed": "2013-05-01T09:33:18", "changedby" : { "id" : "f4b1178d-385f-449c-a2a7-6f58b264d90c" "email" : "owner@company1.com", }, "address" : "Address of company 1" "hasWriteAccess": false, "teamSlug": "company1", "modelCount" : 3, "memberCount" : 3, "size" : 63488, "sizeMB" : "0.06", "rights": { "projectAdmin": false, "projectDelete": false, "projectEdit": false, "modelsCreate": false, "modelsViewAll": false } }, { "id": "0d2ce2cc-3588-45d6-a59a-f6b89ebed34e", "name": "Your Awesome Building", "shortDescr": "Example for creating a project", "thumbnail": "", "created": "0001-01-01T00:00:00", "createdby" : { "id": "7c555899-5a5f-44d1-930e-284930678bed", "email" : "testuser@bimplus.net" }, "changed": "0001-01-01T00:00:00", "changedby" : { "id": "7c555899-5a5f-44d1-930e-284930678bed", "email" : "testuser@bimplus.net" }, "address" : "My address somewhere", "hasWriteAccess": true, "teamSlug": "best-company", "modelCount": 4, "memberCount": 2, "size" : 4263936, "sizeMB" : "4,07", "rights": { "projectAdmin": true, "projectDelete": true, "projectEdit": true, "modelsCreate": true, "modelsViewAll": true } } ]
URL: https://api-stage.bimplus.net/v2/<team_slug>/projects
Example: https://api-stage.bimplus.net/v2/bimplus/projects
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
This call also supports filtering and paging
Status: 200 OK
[ { "id": "0d2ce2cc-3588-45d6-a59a-f6b89ebed34e", "name": "Your Awesome Building", "shortDescr": "Example for creating a project", "thumbnail": "", "created": "0001-01-01T00:00:00", "createdby" : { "id": "7c555899-5a5f-44d1-930e-284930678bed", "email" : "testuser@bimplus.net" }, "changed": "0001-01-01T00:00:00", "changedby" : { "id": "7c555899-5a5f-44d1-930e-284930678bed", "email" : "testuser@bimplus.net" }, "address" : "My address somewhere", "hasWriteAccess": true, "teamSlug": "best-company", "modelCount": 4, "memberCount": 2, "size" : 4263936, "sizeMB" : "4,07", "rights": { "projectAdmin": true, "projectDelete": true, "projectEdit": true, "modelsCreate": true, "modelsViewAll": true } }, { "id": "4e87944a-a477-4e4c-862e-e723dcb43066", "name": "UC_Fly-over Kerensheide", "shortDescr": "", "thumbnail": "", "created": "2013-05-10T07:13:38", "createdby" : { "id": "bda91f09-2cc6-45da-bba0-5f92828f58bc", "email" : "UserA@bimplus.net" }, "changed": "2013-05-16T07:34:56", "changedby" : { "id": "7c555899-5a5f-44d1-930e-284930678bed", "email" : "testuser@bimplus.net" }, "address" : "" "hasWriteAccess": true, "teamSlug": "best-company", "modelCount": 2, "memberCount": 3, "size": 63488, "sizeMB": "0,06", "rights": { "projectAdmin": false, "projectDelete": false, "projectEdit": true, "modelsCreate": false, "modelsViewAll": true } } ]
URL: https://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>
Example: https://api-stage.bimplus.net/v2/bimplus/projects/586b02be-43b8-4e27-b698-e067e85e38e2
Optional query parameters
Name
|
Type
|
Default value
|
Description
|
---|---|---|---|
disciplines | string (bool) | true | When query parameter "disciplines=false" is defined, the API will return project properties except "disciplines" project property. Otherwise if query parameter "disciplines" is true (this is default) or is missing the call will return all project properties. |
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
Status: 200 OK
{ "name" : "Your Awesome Building", "shortDescr" : "Example for creating a project" "teamName": "jay-company", "teamSlug": "jay-company", "hasWriteAccess": true, "thumbnail": "/jay-company/projects/de87fc4d-cb5d-44ba-b2ea-1d96ac564a8a/thumbnail/download", "created": "2014-02-14T09:48:27", "createdby": { "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed", "email": "jayaraj.purushothaman@gmail.com" }, "changed": "2015-11-19T09:45:51", "changedby": { "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed", "email": "jayaraj.purushothaman@gmail.com" }, "address": "", "modelCount": 1, "memberCount": 7, "topicCount": 30, "attachmentCount": 13, "size": 99317760, "sizeMB": "94,72", "disciplines": [ { "id": "0f106af0-a919-44c5-b211-15bd5ef620b6", "name": "ID_BuildingModel", "divisionId": "b539790e-2ffc-43cd-9582-b4aa27b36693", "divisionName": "Model1", "divisionTopologyId": "25f38274-7158-436d-9356-f5c917ee44c9", "revisions": [ 1 ], "visible": false, "opaque": false, "opacity": 0 }, { "id": "30114b52-bc05-47c1-80b5-c7d5485d5840", "name": "ID_FinishModel", "divisionId": "b539790e-2ffc-43cd-9582-b4aa27b36693", "divisionName": "Model1", "divisionTopologyId": "25f38274-7158-436d-9356-f5c917ee44c9", "revisions": [ 1,2 ], "visible": false, "opaque": false, "opacity": 0 }, { "id": "09e623d4-1e12-4a77-b358-ea1d0b28e4a7", "name": "ID_RoomModel", "divisionId": "b539790e-2ffc-43cd-9582-b4aa27b36693", "divisionName": "Model1", "divisionTopologyId": "25f38274-7158-436d-9356-f5c917ee44c9", "revisions": [ 1 ], "visible": false, "opaque": false, "opacity": 0 } ], "rights": { "projectAdmin": true, "projectDelete": true, "projectEdit": true, "modelsCreate": true, "modelsViewAll": true }, "id": "5cd37c77-d341-4ab2-9f0d-44467955b218" }
URL: https://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>
Example: https://api-stage.bimplus.net/v2/bimplus/projects/0d2ce2cc-3588-45d6-a59a-f6b89ebed34e
JSON Structure:
Name |
Mandatory / Optional |
Type |
Description |
---|---|---|---|
id | will be ignored | string (guid) | Id of the project |
name |
mandatory |
string |
Name of the project |
shortDescr |
optional |
string |
Short description of the project |
teamName | will be ignored | string | Name of the team to which the project belongs |
teamSlug | will be ignored | string | Slug of the team to which the project belongs |
hasWriteAccess | will be ignored | boolean | Don't use this property. This property is not deleted to support the older clients |
created |
will be ignored |
string (date) |
Creation date of the project |
createdBy | will be ignored | JSON object | Details of the Bimplus user who has created the project |
changed | will be ignored | string(date) | Modified date of the project |
changedBy | will be ignored | JSON object | Details of the Bimplus user who has created the project |
address | optional | string | Address of the project |
modelCount | will be ignored | int | Number of models in this project |
memberCount | will be ignored | int | Number of members in this project |
topicCount | will be ignored | int | Number of topics in this project |
attachmentCount | will be ignored | int | Number of attachments in this project |
size | will be ignored | int | Size of the project in bytes |
sizeInMB | will be ignored | string | Size of the project in MB |
disciplines | will be ignored | JSON object | Disciplines found under this project |
rights | will be ignored | JSON object | The rights the user has for this project |
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
{ "name" : "Your Awesome Building updated", "shortDescr" : "Example for updating a project", "address": "Changed address", }
Status: 200 OK
{ "name" : "Your Awesome Building updated", "shortDescr" : "Example for updating a project", "teamName": "Best Company", "teamSlug": "best-company", "hasWriteAccess" : true, "thumbnail": null, "created": "2013-06-01T10:05:00", "createdby" : { "id": "7c555899-5a5f-44d1-930e-284930678bed", "email" : "testuser@bimplus.net" }, "changed": "2013-06-02T10:04:15", "changedby" : { "id": "7c555899-5a5f-44d1-930e-284930678bed", "email" : "testuser@bimplus.net" }, "address" : "Changed address", "modelCount": 0, "memberCount": 1, "topicCount": 0, "attachmentCount": 0, "size": 0, "sizeMB": "0", "id": "0d2ce2cc-3588-45d6-a59a-f6b89ebed34e" }
See Create Issue in Topic Service
URL: https://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>/issues
Example: https://api-stage.bimplus.net/v2/bimplus/projects/0d2ce2cc-3588-45d6-a59a-f6b89ebed34e/issues
Optional query parameters
Name | Type | Default value | Description |
---|---|---|---|
shortinfo | boolean | false | When query parameter "shortinfo=true" is defined, the API function returns only classes of all tasks metric. |
Get list of issues of given project.
Response depends on the user rights :
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
This call also supports filtering and paging
Status: 200 OK
[ { "name": "Wall info wrong", "author": { "id": "7c555899-5a5f-44d1-930e-284930678bed", "email": "testuser1@allplan.com", "firstname": "Test", "lastname": "User1", "company": "Allplan Bratislava", "fullname": "Test User1" }, "responsible": { "id": "0132ecbe-2ac5-4ae1-945d-d38fc3bc1e82", "email": "testuser1@allplan.com", "firstname": "Test", "lastname": "User2", "company": "Allplan Bratislava", "fullname": "Test User2" }, "scene": null, "attachmentsCount": 0, "pinsCount": 0, "commentsCount": 0, "hyperlinksCount": 0, "shortId": 4, "projectId": "de87fc4d-cb5d-44ba-b2ea-1d96ac564a8a", "description": "This wall is wrong", "status": "Open", "createdAt": "2016-02-15T08:12:49.9831726+01:00", "modifiedAt": "2016-02-15T08:12:49.9831726+01:00", "dueDate": null, "solution": "MySolution", "type": "Problem", "classification": "Problems", "priority": "High", "cc": [ "abc@bimplus.net" ], "id": "01b5768a-bd19-4049-b72e-b44485514ef8" }, ... ]
URL: https://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>/issues
Example: https://api-stage.bimplus.net/v2/bimplus/projects/0d2ce2cc-3588-45d6-a59a-f6b89ebed34e/issues
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
Status: 200 OK
URL: https://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>/attachments
Example: https://api-stage.bimplus.net/v2/bimplus/projects/0d2ce2cc-3588-45d6-a59a-f6b89ebed34e/attachments
Bimplus supports creating and updating of attachments only using requests with multipart/form-data content type. By standard, multipart/form-data content consists of several parts, each part containing a file data.
But Bimplus supports only one file sent per call, so only first part of multipart form data content is used, the rest are ignored. The parts are separated by boundaries, each part contains content headers and content data.
Examples :
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: multipart/form-data; boundary=----MyFormBoundarytlTJWL8i2mvYwGPW
------MyFormBoundarytlTJWL8i2mvYwGPW Content-Disposition: form-data; name="TestFile"; filename="TestFile.xml"; classification="Report"; tag="ABCDE" Content-Type: application/xml **** Here are file data ****** ------MyFormBoundarytlTJWL8i2mvYwGPW
Where :
Status: 201 Created
{ "objectIds": [ "0d2ce2cc-3588-45d6-a59a-f6b89ebed34e" ], "fileName": "TestFile.xml", "type": "application/xml", "size": 211258, "createdAt": "2013-12-11T10:47:39", "creator": { "id": "e18941f4-a809-2d01-d27d-cd251f2b6cb6", "email": "test@bimplus.net", "firstname": "First Name", "lastname": "Second Name", "company": "Best-Company", "fullname": "First Name Second Name", "displayname": "Best-Company", }, "changed" : "2013-12-11T10:47:39", "changedBy" : { "id": "e18941f4-a809-2d01-d27d-cd251f2b6cb6", "email": "test@bimplus.net", }, "hash": "68a59c1f-1914-43b8-92fc-1cee4ad1c90c", "attachmentType" : "Document", "classification" : "Report", "tag" : "ABCDE", "sizeMB" : "0,21", "version" : "1", "relatedId" : "0d2ce2cc-3588-45d6-a59a-f6b89ebed34e", "rights" : { "update" : true, "share" : true, "delete" : true, "download" : true }, "id": "6cea110a-88f4-43ac-9a00-ebaf677be333" }
URL: https://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>/attachments
Example: https://api-stage.bimplus.net/v2/bimplus/projects/0d2ce2cc-3588-45d6-a59a-f6b89ebed34e/attachments
Get all the attachments belonging to a specified project. The normal attachment GET call (i.e projects/<project_id>/attachments) returns all the attachments inside a project i.e it iterates through all the objects inside a project and returns everything. If we want to retrieve the only the attachments that belongs to the project directly, then use ?projectOnly=true filter (i.e projects/<project_id>/attachments?projectOnly=true)
This call also supports filtering and paging
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
Status: 200 OK
[ { "objectIds": [ "0d2ce2cc-3588-45d6-a59a-f6b89ebed34e" ], "fileName": "TestFile.xml", "type": "application/xml", "size": 211258, "createdAt": "2013-12-11T10:47:39", "creator": { "id": "e18941f4-a809-2d01-d27d-cd251f2b6cb6", "email": "test@bimplus.net", "firstname": "First Name", "lastname": "Second Name", "company": "Best-Company", "fullname": "First Name Second Name", "displayname": "Best-Company", }, "changed" : "2013-12-11T10:47:39", "changedBy" : { "id": "e18941f4-a809-2d01-d27d-cd251f2b6cb6", "email": "test@bimplus.net", }, "hash": "68a59c1f-1914-43b8-92fc-1cee4ad1c90c", "attachmentType" : "Document", "classification" : "Report", "tag" : "ABCDE", "sizeMB" : "0,21", "version" : "1", "relatedId" : "0d2ce2cc-3588-45d6-a59a-f6b89ebed34e", "rights" : { "update" : true, "share" : true, "delete" : true, "download" : true }, "id": "6cea110a-88f4-43ac-9a00-ebaf677be333" }, ... ]
URL: https://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>/attachments
Example: https://api-stage.bimplus.net/v2/bimplus/projects/0d2ce2cc-3588-45d6-a59a-f6b89ebed34e/attachments
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
Status: 200 OK
URL: https://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>/topology
Example: https://api-stage.bimplus.net/v2/bimplus/projects/0d2ce2cc-3588-45d6-a59a-f6b89ebed34e/topology
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
Status: 200 OK
{ "parent": null, "name": My Project, "type": "Project", "children": [ { "ifcId": "1o1vYcpcH5KRRKl5voLOXN", "ifcType": "IfcBuilding", "parent": "0d2ce2cc-3588-45d6-a59a-f6b89ebed34e", "name": null, "type": "ID_TopologyDivision", "children": [], "id": "195db084-3715-4ebc-b164-3ee47a495b2e" } ], "id": "0d2ce2cc-3588-45d6-a59a-f6b89ebed34e" }
URL: https://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>/pins
Example: https://api-stage.bimplus.net/v2/bimplus/projects/586b02be-43b8-4e27-b698-e067e85e38e2/pins
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
Status: 200 OK
[ { "issueId": "5eac4d92-c65b-49c8-927c-9f255879a5c2", "objectId": "442af981-4175-4f1d-90f0-ef1c8641f0cb", "topologyNodeId": "4be5ffd3-1e5e-42a7-9844-23b55fb39253", "position": { "x": 78696.44, "y": 9652.251, "z": 580 }, "normalVector": { "x": 0, "y": 0, "z": 1 }, "createdAt": "2014-05-09T12:17:18", "id": "3ba43939-5805-4aac-b7a5-8cf3b5833ac3" }, { "issueId": "5333bb42-2cb9-4f11-afd8-120c79edef37", "objectId": "ae1a139a-1e13-491f-b6d8-a46f699e295e", "topologyNodeId": "37a26e8b-566e-4d6e-8ab2-f35a715e83e2", "position": { "x": 41677.4336, "y": 10095.9512, "z": -9020 }, "normalVector": { "x": 0, "y": 0, "z": 1 }, "createdAt": "2014-05-09T12:17:33", "id": "fa9acf26-efdf-4297-80b5-2422bbf6e35a" }, { "issueId": "5eac4d92-c65b-49c8-927c-9f255879a5c2", "objectId": "effc5f9f-dcae-4e5f-9a67-189d4a285612", "topologyNodeId": "4be5ffd3-1e5e-42a7-9844-23b55fb39253", "position": { "x": -440, "y": 10767.11, "z": -8243.917 }, "normalVector": { "x": -1, "y": 0, "z": 0 }, "createdAt": "2014-05-27T08:56:46", "id": "a014fcf3-c72e-4def-bc41-58b349b31591" }, { "issueId": "5333bb42-2cb9-4f11-afd8-120c79edef37", "objectId": "367af808-de74-41b4-a3fb-1bfb50559da3", "topologyNodeId": "9fc99e93-2f33-4247-b3a4-2a6658a9b750", "position": { "x": 22525.0254, "y": 10334.1377, "z": -9172 }, "normalVector": { "x": 0, "y": 0, "z": 1 }, "createdAt": "2014-05-21T13:34:07", "id": "2b693990-a611-4b05-9efd-7485a9aeebbb" }, { "issueId": "5eac4d92-c65b-49c8-927c-9f255879a5c2", "objectId": "83821c97-0020-480e-b863-9981df590c0a", "topologyNodeId": "aa7e1b6f-7324-459b-a114-9833806f89ed", "position": { "x": 664.999939, "y": 7197.733, "z": -58535.82 }, "normalVector": { "x": -1, "y": 0, "z": 0 }, "createdAt": "2014-05-27T09:18:17", "id": "f2a9c63f-2514-4c1f-be78-758a984b5430" } ]
URL: https://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>/disciplines
Example: https://api-stage.bimplus.net/v2/bimplus/projects/586b02be-43b8-4e27-b698-e067e85e38e2/disciplines
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
Status: 200 OK
[ { "id": "0f106af0-a919-44c5-b211-15bd5ef620b6", "name": "ID_BuildingModel", "divisionId": "ac21b9a1-8853-4658-9fbf-0cf62340bd18", "divisionName": "Model 1", "divisionTopologyId": "60c8362a-eb91-412d-ac67-c5d787bf36cb", "revisions": [ 1 ], "visible": false, "opaque": false, "opacity": 0 }, { "id": "63b069d2-81df-4418-91de-8a954fa12924", "name": "ID_DesignModel_Timber", "divisionId": "ac21b9a1-8853-4658-9fbf-0cf62340bd18", "divisionName": "Model 1", "divisionTopologyId": "60c8362a-eb91-412d-ac67-c5d787bf36cb", "revisions": [ 1,2 ], "visible": false, "opaque": false, "opacity": 0 }, { "id": "30114b52-bc05-47c1-80b5-c7d5485d5840", "name": "ID_FinishModel", "divisionId": "ac21b9a1-8853-4658-9fbf-0cf62340bd18", "divisionName": "Model 1", "divisionTopologyId": "60c8362a-eb91-412d-ac67-c5d787bf36cb", "revisions": [ 1,2 ], "visible": false, "opaque": false, "opacity": 0 }, { "id": "09e623d4-1e12-4a77-b358-ea1d0b28e4a7", "name": "ID_RoomModel", "divisionId": "ac21b9a1-8853-4658-9fbf-0cf62340bd18", "divisionName": "Model 1", "divisionTopologyId": "60c8362a-eb91-412d-ac67-c5d787bf36cb", "revisions": [ 1 ], "visible": false, "opaque": false, "opacity": 0 } ]
Resource: projects/<project_id>/materialsurfaces
URL: https://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>/materialsurfaces
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
Status: 200 OK
[{ "diffuseColor":8421504, "transparency":0, "argb":-8355712, "reflection":0, "refraction":1, "scaleX":0, "scaleY":0, "translateX":0, "translateY":0, "rotation":0, "diffuseReflectivity":100, "colorKeyTolerance":0, "multiToneFactor":0, "colorMixing":false, "alphaFromTexture":true, "useColorKey":false, "repeat":true, "metric":true, "emission":0, "bumpAmplitude":0, "roughness":0, "colorKey":0, "textures":[{ "objectIds":["cdbd7fbc-0d02-4be5-adb3-04b7f0b2a638" ], "fileName":"diffuse-texture-image.jpg", "type":"image/jpeg", "size":31590, "createdAt":"2016-12-06T18:44:57.143", "creator":{ "id":"78a94d0e-0d58-3f85-aafa-1e631c51b5d2", "email":null, "firstname":null, "lastname":null, "company":null, "fullname":"", "displayname":null }, "changed":"2016-12-06T18:44:57.143", "changedBy":{ "id":"78a94d0e-0d58-3f85-aafa-1e631c51b5d2", "email":null }, "hash":"de78a77e-8bc7-4ffa-b4ac-a201b100a1ed", "attachmentType":"AllplanResource", "tag":"eDIFFUSE1|eDIFFUSE2|eDIFFUSE3|eDIFFUSE4", "sizeMB":"0,03", "version":1, "relatedId":"cdbd7fbc-0d02-4be5-adb3-04b7f0b2a638", "id":"1eeec814-bb81-4876-a608-fc28f864984f" } ], "id":"cdbd7fbc-0d02-4be5-adb3-04b7f0b2a638" }, ... ]
URL: https://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>/thumbnail
Example: https://api-stage.bimplus.net/v2/bimplus/projects/0d2ce2cc-3588-45d6-a59a-f6b89ebed34e/thumbnail
Headers and content are the same as for Create attachment
Status: 201 Created
{ fileName: "MyThumbnail.jpg" type: "image/jpeg" size: 5262 id: "0d2ce2cc-3588-45d6-a59a-f6b89ebed34e" }
URL: https://api-stage.bimplus.net/v2/<team_slug>/thumbnail/<thumbnail_id>
Example: https://api-stage.bimplus.net/v2/bimplus/thumbnail/0d2ce2cc-3588-45d6-a59a-f6b89ebed34e
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Status: 200 OK
Response content type is the same as is the "type" of the thumbnail, e.g. "image/jpeg"
URL: https://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>/structures
Example:https://api-stage.bimplus.net/v2/bimplus/projects/179439d6-df16-41cc-bd2c-74d05b7995d5/structures
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
Status: 200 OK
[ { "name": "TestStructure", "description": "FullLifeCycleTest", "type": "CostStructure", "nr": 1, "color": 0, "id": "179439d6-df16-41cc-bd2c-74d05b7995d5" }, { "name": "TestStructure2", "description": "Another Structure", "type": "SpecificationStructure", "nr": 2, "color": 0, "id": "279439d6-df16-41cc-bd2c-74d05b7995d5" } ]
Resource: projects/<project_id>/structures
URL: https://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>/structures
Example:https://api-stage.bimplus.net/v2/bimplus/projects/db540336-47a3-426e-b3bf-1e532bfac8ea/structures
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
Status: 200 OK
URL: https://api-stage.bimplus.net/v2/<team_slug>/structures/<project_id>/topology
Example: https://api-stage.bimplus.net/v2/bimplus/structures/db540336-47a3-426e-b3bf-1e532bfac8ea>/topology
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
Status: 200 OK
{ "parent": null, "name": "Test for Structure", "type": "ID_Project", "children": [ { "parent": "622272da-f1ff-45ab-a3f0-c8f1255c80e8", "name": "TestStructure", "type": "Structure", "children": [ { "parent": "179439d6-df16-41cc-bd2c-74d05b7995d5", "name": "Node 1", "type": "Structure", "children": [ { "parent": "adf506ae-3628-4501-9af1-22bcf27e4ab4", "name": "WallConnection", "type": "StructureElement", "children": [ { "parent": "35b986c2-e9cd-482e-9281-6000671a49f0", "name": "Wall-005", "type": "ID_ArchWall", "children": [], "id": "df4a81d6-42fb-4187-bbce-82a2fc093b2f" } ], "id": "35b986c2-e9cd-482e-9281-6000671a49f0" } ], "id": "adf506ae-3628-4501-9af1-22bcf27e4ab4" } ], "id": "179439d6-df16-41cc-bd2c-74d05b7995d5" } ], "id": "622272da-f1ff-45ab-a3f0-c8f1255c80e8" }
URL: https://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>/comments OR https://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>/hyperlinks
Example: https://api-stage.bimplus.net/v2/bimplus/projects/db540336-47a3-426e-b3bf-1e532bfac8ea>/comments OR https://api-stage.bimplus.net/v2/bimplus/projects/db540336-47a3-426e-b3bf-1e532bfac8ea>/hyperlinks
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
Status: 200 OK
{ "parent": null, "name": "Test for Structure", "type": "ID_Project", "children": [ { "parent": "622272da-f1ff-45ab-a3f0-c8f1255c80e8", "name": "TestStructure", "type": "Structure", "children": [ { "parent": "179439d6-df16-41cc-bd2c-74d05b7995d5", "name": "Node 1", "type": "Structure", "children": [ { "parent": "adf506ae-3628-4501-9af1-22bcf27e4ab4", "name": "WallConnection", "type": "StructureElement", "children": [ { "parent": "35b986c2-e9cd-482e-9281-6000671a49f0", "name": "Wall-005", "type": "ID_ArchWall", "children": [], "id": "df4a81d6-42fb-4187-bbce-82a2fc093b2f" } ], "id": "35b986c2-e9cd-482e-9281-6000671a49f0" } ], "id": "adf506ae-3628-4501-9af1-22bcf27e4ab4" } ], "id": "179439d6-df16-41cc-bd2c-74d05b7995d5" } ], "id": "622272da-f1ff-45ab-a3f0-c8f1255c80e8" }
URL: https://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>
Example: https://api-stage.bimplus.net/v2/bimplus/projects/0d2ce2cc-3588-45d6-a59a-f6b89ebed34e
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
Status: 200 OK
URL: https://api-stage.bimplus.net/v2/project-actions-rights
Purpose of this API call is to get required project rights for a Bimplus action.
This is a static API call, meaning it's global for all the projects, and the response can only change after the deploy.
Returns list of pairs of :
- name of the action ( event )
- required right the user must have for a project, to be able to execute that action
Currently used project rights are:
- ProjectAdmin
- ProjectDelete
- ProjectEdit
- ProjectView
- ModelViewAll
- ModelCreate
Clients can use this API to automatically handle access to Bimplus actions according to the role the user have in the project, e.g. enable/disable action buttons, ...
And if Bimplus server will decide to change required project user rights for some action, this change will be reflected on the client automatically, without having to change the client's code.
Important note:
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
Status: 200 OK
[ { "action": "UPDATE_PROJECT", "right": "ProjectEdit" }, { "action": "DELETE_PROJECT", "right": "ProjectDelete" }, { "action": "CREATE_MODEL", "right": "ModelCreate" }, { "action": "UPDATE_MODEL", "right": "ProjectEdit" }, { "action": "GET_MODEL", "right": "ProjectView" }, { "action": "DELETE_MODEL", "right": "ProjectEdit" }, { "action": "DOWNLOAD_MODEL", "right": "ProjectView" }, { "action": "CREATE_ISSUE", "right": "ProjectEdit" }, { "action": "GET_PROJECT_ISSUES", "right": "ProjectView" }, { "action": "DELETE_PROJECT_ISSUES", "right": "ProjectAdmin" }, { "action": "CREATE_COMMENT", "right": "ProjectEdit" }, ... ]
Filtering and paging is implemented for following requests:
Paging
Using following query parameters :
Examples :
GET https://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>/attachments?page=1&pageSize=5&sortColumn=fileName&sortDirection=descending
GET https://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>/issues?page=2&pageSize=10
GET https://api-stage.bimplus.net/v2/<team_slug>/projects?sortColumn=name&sortDirection=ascending
Filtering :
Using a filter added as a query parameter. Filter has following format : ?filter=<property><operator><value>
For the "property" you may use any property of the requested resource, or even inner property, e.g. creator.Email
Supported operators are : "=", "!=", "<", ">", ">=", "<=" and "*"
It is also possible to combine expressions in filter using AND operator : ?filter=<property1><operator1><value1>%26<property2><operator2><value2>%26,,,
The %26 is just url encoding of '&' = AND. The encoding is required because otherwise it will be considered as another query parameter, and not part of a filter. Combination using OR is not supported
Examples :
GET https://api-stage.bimplus.net/v2/<team_slug>/projects?filter=name=MyProject - get project by name
GET https://api-stage.bimplus.net/v2/<team_slug>/projects?filter=name=MyProject* - get projects where name starts with "MyProject"
GET https://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>/attachments?filter=size>500000 - get attachments with size greater then ...
GET https://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>/attachments?filter=creator.email=myuser@allplan.com%26createdAt>2016-07-27T07:00:00 - get attachments created by the given user since the time