BCF REST API

Introduction

BCF-API v2.0

Go to the official BCF REST API for full documentation.

bimsync BCF-API is based on the official BCF REST API

What is described here

  • All supported API-methods, with some extensions
  • bimsync terms

Issue Boards and BCF

An "issue board" is the same as a BCF project. In bimsync, you may have multiple issue boards in the same project.

project_id points to the issue board, while bimsync_project_id points to the bimsync project

Users are managed within a bimsync project.

Getting Started

bimsync BCF REST API is available from the bcf.bimsync.com domain. All API access is over HTTPS. Data is sent as query parameters and JSON data, and received as JSON.

Registration

Contact bimsync support to register your app.

Authentication

Authentication is based on the OAuth 2.0 Protocol. First you must retrieve the oauth2_auth_url and the oauth2_token_url.

Get authentication URLs

Returns the oauth2_auth_url and the oauth2_token_url.

Resource URL

https://bcf.bimsync.com/bcf/auth

Response schema

auth_GET.json

Example

Request

GET https://bcf.bimsync.com/bcf/auth

Response

{
    "oauth2_auth_url": "https://api.bimsync.com/1.0/oauth/authorize",
    "oauth2_token_url": "https://api.bimsync.com/1.0/oauth/access_token"
}

Follow bimsync authentication documentation to retrieve the access token.

When requesting other resources the access token must be passed via the Authorization header using the Bearer scheme (e.g. Authorization: Bearer T9UNRV4sC9vr7ga)

Version

Get BCF API version

Returns the current BCF REST API version. The version_id must be added to underlying resource URLs. If version_id equals beta, then the project's URL will be https://bcf.bimsync.com/bcf/beta/projects.

This resource does not require any authorization.

Resource URL

https://bcf.bimsync.com/bcf/version

Response schema

version_GET.json

Example

Request

GET https://bcf.bimsync.com/bcf/version

Response

{
    "version_id": "beta",
    "detailed_version": "Bimsync BCF API beta version. BCF-xml schema version: 2.0. Documentation: https://bimsync.com/developers/reference/bcf/beta"
}

User

Get current user

Returns the current user.

The users have 2 attributes. name and id. name is the name of the user. id is the email-address of the user.

Note: this resource is additional to the BCF-API standard

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/current-user

Response schema

user_GET.json

Example

Request

GET https://bcf.bimsync.com/bcf/beta/current-user

Response

{
    "name": "User 1",
    "id": "user1@test.com"
}

Issue boards

Create issue board

Note: A new bimsync project will be created, and the new issue board will be created in that project. In order to create a new issue board in an existing bimsync project, specify the bimsync project id.

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects

Parameters

JSON encoded body using the "application/json" content type.
NameTypeDescription
name string name of the issue board to create Mandatory
bimsync_project_id string bimsync project id Optional

Request schema

project_POST.json

Response schema

project_GET.json

Example

Request

POST https://bcf.bimsync.com/bcf/projects
{
    "name": "My third BCF project",
    "bimsync_project_id": "08b7c8adf14a4805a2c34681ab3869af"
}

Response

{
    "project_id": "485aa69d-8e25-4f68-9a97-04901b2288a7",
    "name": "My third BCF project",
    "bimsync_project_name": "My bimsync project",
    "bimsync_project_id": "08b7c8adf14a4805a2c34681ab3869af"
}

Get issue boards

Return the issue boards you have access to.

Note: In a bimsync project you may have multiple issue boards. To filter issue boards from a given bimsync project you may use the bimsync_project_id query parameter.

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects

Query Parameters

NameTypeDescription
bimsync_project_id string bimsync project id Optional

Response schema

List of project_GET.json

Example

Request

GET https://bcf.bimsync.com/bcf/beta/projects?bimsync_project_id=08b7c8adf14a4805a2c34681ab3869af

Response

[
    {
        "project_id": "3c34c9b3-1b9b-4750-a4f3-0641d58fe48e",
        "name": "My first BCF project",
        "bimsync_project_name": "My bimsync project",
        "bimsync_project_id": "08b7c8adf14a4805a2c34681ab3869af"
    },
    {
        "project_id": "887df203-a736-429e-a46f-0c8f55384eaa",
        "name": "My second BCF project",
        "bimsync_project_name": "My bimsync project",
        "bimsync_project_id": "08b7c8adf14a4805a2c34681ab3869af"
    }
]

The response includes bimsync_project_name and bimsync_project_id.

Get issue board

Return the issue board.

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}

Response schema

project_GET.json

Example

Request

GET https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e

Response

{
    "project_id": "3c34c9b3-1b9b-4750-a4f3-0641d58fe48e",
    "name": "My first BCF project",
    "bimsync_project_name": "My bimsync project",
    "bimsync_project_id": "08b7c8adf14a4805a2c34681ab3869af"
}

The response includes bimsync_project_name and bimsync_project_id.

Issue board extensions

Get issue board extensions

Return the extensions.

For an issue board, the extensions provides valid values for topic types, topic statuses and users.

Note: the field user_id_type is a list of email addresses for users in the bimsync project.

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/extensions

Response schema

extensions_GET.json

Example

Request

GET https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/extensions

Response

{
    "topic_type": [
        "Error",
        "Warning",
        "Info",
        "Unknown"
    ],
    "topic_status": [
        "Open",
        "Closed"
    ],
    "user_id_type": [
        "user1@test.com",
        "user2@test.com",
        "user3@test.com",
        "user4@test.com"
    ]
}

Issue board extensions

The extensions provide a list of valid values, such as statuses, types, and user emails.

Since bimsync also holds on additional information for these values, the BCF-API standard, for updating these values, is not sufficient. These resources are therefore added to bimsync BCF-API, but are not a part of the official BCF-API standard.

Statuses and types, that do not have this information, is considered unlinked. They cannot be used in new topics. Unlinked statuses and types occurs if you import a BCF-file that contains topics that have statuses or types that are not a part of the issue board extension.

Unlinked users occurs if you import a BCF-file, that references users that are not found in the project.

Get issue board extension statuses

Return the extension statuses. These statuses have 3 attributes. name, color, type and unlinked. name is the name of the status. color is a hexadecimal string for the status color. type is one of three values: candidate, open, or closed. unlinked is a boolean, that is only set for statuses that are unlinked, and the value is true. These statuses do not have color or type

Note: this resource is additional to the BCF-API standard

Query Parameters

NameTypeDescription
include-unlinked boolean Should include unlinked statuses Optional

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/extensions/statuses

Example

Request

GET https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/extensions/statuses?include-unlinked=true

Response

[
    {
        "name": "Open",
        "color": "#DD7E6B",
        "type": "open"
    },
    {
        "name": "Closed",
        "color": "#6AA84F",
        "type": "closed"
    },
    {
        "name": "In progress",
        "unlinked": true
    }
]

Create issue board extension status

Create the extension status.

Note: this resource is additional to the BCF-API standard

Parameters

JSON encoded body using the "application/json" content type.
NameTypeDescription
name string name of the status to create Mandatory
color string color as a hexadecimal Optional, default #000000
type string type of the status. open, closed or candidate Optional, default open

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/extensions/statuses

Example

Request

POST https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/extensions/statuses
{
    "name": "Icebox",
    "color": "#FFFF00",
    "type": "candidate"
}

Response

{
    "name": "Icebox",
    "color": "#FFFF00",
    "type": "candidate"
}

Update issue board extension status

Update the extension status. You cannot change the type of the last open status.

Note: this resource is additional to the BCF-API standard.

Parameters

JSON encoded body using the "application/json" content type.
NameTypeDescription
existingName string existing name of the status Mandatory
name string new name of the status Optional, default current name
color string new color as a hexadecimal Optional, default current value
type string new type of the status. open, closed or candidate Optional, default current type

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/extensions/statuses

Example

Request

PUT https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/extensions/statuses
{
    "existingName": "Icebox",
    "name": "New",
    "color": "#FFFF00"
}

Response

{
    "name": "New",
    "color": "#FFFF00",
    "type": "candidate"
}

Delete issue board extension status

Delete the extension status.

Note: this resource is additional to the BCF-API standard. You cannot delete the last open status, or statuses that are in use.

Parameters

JSON encoded body using the "application/json" content type.
NameTypeDescription
name string name of the status Mandatory

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/extensions/statuses

Example

Request

DELETE https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/extensions/statuses
{
    "name": "New"
}

Link issue board extension status

Link the extension status. As described earlier, a status may be unlinked. This resource allows you to merge an unlinked status with a linked status.

Note: this resource is additional to the BCF-API standard.

Parameters

JSON encoded body using the "application/json" content type.
NameTypeDescription
name string name of the status Mandatory
unlinkedName string name of the unlinked status Mandatory

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/extensions/statuses/link

Example

Request

PUT https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/extensions/statuses/link
{
    "name": "Open",
    "unlinkedName": "reopened"
}

Response

{
    "name": "Open",
    "color": "#DD7E6B",
    "type": "open"
}

Get issue board extension types

Return the extension types. These types have 3 attributes. name, color, and unlinked. name is the name of the type. color is a hexadecimal string for the type color. unlinked is a boolean, that is only set for types that are unlinked, and the value is true. These types do not have color.

Note: this resource is additional to the BCF-API standard

Query Parameters

NameTypeDescription
include-unlinked boolean Should include unlinked types Optional

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/extensions/types

Example

Request

GET https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/extensions/types?include-unlinked=true

Response

[
    {
        "name": "Error",
        "color": "#DD7E6B"
    },
    {
        "name": "Warning",
        "color": "#FFFF00"
    },
    {
        "name": "Unknown",
        "unlinked": true
    }
]

Create issue board extension type

Create the extension type.

Note: this resource is additional to the BCF-API standard

Parameters

JSON encoded body using the "application/json" content type.
NameTypeDescription
name string name of the type to create Mandatory
color string color as a hexadecimal Optional, default #000000

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/extensions/types

Example

Request

POST https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/extensions/types
{
    "name": "Info",
    "color": "#0000FF"
}

Response

{
    "name": "Info",
    "color": "#0000FF"
}

Update issue board extension type

Update the extension type.

Note: this resource is additional to the BCF-API standard.

Parameters

JSON encoded body using the "application/json" content type.
NameTypeDescription
existingName string existing name of the type Mandatory
name string new name of the type Optional, default current name
color string new color as a hexadecimal Optional, default current value

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/extensions/types

Example

Request

PUT https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/extensions/types
{
    "existingName": "Info",
    "name": "Information",
    "color": "#FFFF00"
}

Response

{
    "name": "Information",
    "color": "#FFFF00"
}

Delete issue board extension type

Delete the extension type. You cannot delete the last type, or types that are in use.

Note: this resource is additional to the BCF-API standard.

Parameters

JSON encoded body using the "application/json" content type.
NameTypeDescription
name string name of the type Mandatory

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/extensions/types

Example

Request

DELETE https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/extensions/types
{
    "name": "Error"
}

Link issue board extension type

Link the extension type. As described earlier, a type may be unlinked. This resource allows you to merge an unlinked type with a linked type.

Note: this resource is additional to the BCF-API standard.

Parameters

JSON encoded body using the "application/json" content type.
NameTypeDescription
name string name of the type Mandatory
unlinkedName string name of the unlinked type Mandatory

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/extensions/types/link

Example

Request

PUT https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/extensions/types/link
{
    "name": "Warning",
    "unlinkedName": "Unknown"
}

Response

{
    "name": "Warning",
    "color": "#FFFF00"
}

Get issue board extension users

Return the extension users. These users have 3 attributes. name, id, and unlinked. name is the name of the user. id is the email-address of the user. unlinked is a boolean, that is only set for users that are unlinked, and the value is true.

Note: this resource is additional to the BCF-API standard

Query Parameters

NameTypeDescription
include-unlinked boolean Should include unlinked users Optional

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/extensions/users

Example

Request

GET https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/extensions/users?include-unlinked=true

Response

[
    {
        "name": "User 1",
        "id": "user1@test.com"
    },
    {
        "name": "User 2",
        "id": "user2@test.com"
    },
    {
        "name": "null",
        "id": "user5@test.com",
        "unlinked": true
    }
]

Link issue board extension user

Link the extension user. As described earlier, a user may be unlinked. This resource allows you to merge an unlinked user with a linked user.

Note: this resource is additional to the BCF-API standard.

Parameters

JSON encoded body using the "application/json" content type.
NameTypeDescription
existingUserId string id of the user Mandatory
unlinkedUser string id of the unlinked user Mandatory

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/extensions/users/link

Example

Request

PUT https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/extensions/users/link
{
    "unlinkedUser": "user5@test.com",
    "existingUserId": "user1@test.com"
}

Response

{
    "name": "User 1",
    "id": "user1@test.com"
}

Topic

Get topics

Return the topics. Default size is 100 items, max size is 500 items.

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/topics

Response schema

List of topic_GET.json

Example

Request

GET https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/topics

Response

[
    {
        "guid": "6411ce04-5391-40a6-97c2-be0ca45fcc96",
        "topic_type": "Error",
        "topic_status": "Open",
        "title": "Door is misplaced",
        "creation_date": "Mon Jan 18 12:43:50 CEST 2016",
        "modified_date": "Mon Jan 18 12:46:52 CEST 2016",
        "modified_author": "user1@test.com"
    },
    {
        "guid": "33a62c72-b81d-476d-98c0-662d8775f057",
        "topic_type": "Error",
        "topic_status": "Closed",
        "title": "Wall is misplaced",
        "creation_date": "Mon Jan 18 12:40:50 CEST 2016",
        "modified_date": "Mon Jan 18 12:42:52 CEST 2016",
        "modified_author": "user1@test.com",
        "assigned_to": "user2@test.com"
    }
]

Filter, sort, skip and limit using OData

OData filter parameters

ParameterTypeDescription
creation_authorstringuserId of the creation author (value from extensions)
modified_authorstringuserId of the modified author (value from extensions)
assigned_tostringuserId of the assigned person (value from extensions)
topic_statusstringstatus of a topic (value from extensions)
topic_typestringtype of a topic (value from extensions)
creation_datedatetimecreation date of a topic
modified_datedatetimemodification date of a topic
labelsarray (string)labels of a topic (value from extensions)

OData sort parameters

parameterdescription
creation_datecreation date of a topic
modified_datemodification date of a topic
indexindex of a topic

Example requests

Get topics that are open, assigned to Architect@example.com and created after December 5th 2015. Sort the result on last modified.

GET /bcf/2.1/projects/F445F4F2-4D02-4B2A-B612-5E456BEF9137/topics?$filter=assigned_to eq 'Architect@example.com' and status eq 'Open' and creation_date gt 2015-12-05T00:00:00+01:00&$orderby=modified_date desc

Get topics that have at least one of the labels 'Architecture', 'Structural' or 'Heating'.

GET /bcf/1.0/projects/F445F4F2-4D02-4B2A-B612-5E456BEF9137/topics?$filter=contains(labels, 'Architecture') or contains(labels, 'Structural') or contains(labels, 'Heating')

Get 50 topics and skip the first 100.

GET /bcf/1.0/projects/F445F4F2-4D02-4B2A-B612-5E456BEF9137/topics?$top=50&$skip=100

Get topic

Return the topic.

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/topics/{topic_guid}

Response schema

topic_GET.json

Example

Request

GET https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/topics/6411ce04-5391-40a6-97c2-be0ca45fcc96

Response

{
    "guid": "6411ce04-5391-40a6-97c2-be0ca45fcc96",
    "topic_type": "Error",
    "topic_status": "Open",
    "title": "Door is misplaced",
    "creation_date": "Mon Jan 18 12:43:50 CEST 2016",
    "modified_date": "Mon Jan 18 12:46:52 CEST 2016",
    "modified_author": "user1@test.com"
}

Create topic

Create the topic.

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/topics

Parameters

JSON encoded body using the "application/json" content type.
NameTypeDescription
topic_type string type of the topic (Valid values from extensions.topic_type) Optional, default first type from extensions.topic_type
topic_status string status of the topic (Valid values from extensions.topic_status) Optional, default first open status from extensions.topic_status
title string title of the topic Mandatory
assigned_to string email of the assigned user (Valid values from extensions.user_id_type) Optional, default unassigned
description string description of the topic Optional

Request schema

topic_POST.json

Response schema

topic_GET.json

Example

Request

POST https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/topics
{
    "topic_type": "Error",
    "topic_status": "Open",
    "title": "Furniture is misplaced",
    "assigned_to": "user3@test.com"
}

Response

{
    "guid": "9b7cabc3-808e-4477-8f98-2b02c573dbad",
    "topic_type": "Error",
    "topic_status": "Open",
    "title": "Furniture is misplaced",
    "creation_date": "Mon Jan 18 12:47:50 CEST 2016",
    "modified_date": "Mon Jan 18 12:49:52 CEST 2016",
    "modified_author": "user3@test.com",
    "assigned_to": "user4@test.com"
}

Update topic

Update the topic.

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/topics/{topic_guid}

Parameters

JSON encoded body using the "application/json" content type.
NameTypeDescription
topic_type string type of the topic (Valid values from extensions.topic_type) Optional, default first type from extensions.topic_type
topic_status string status of the topic (Valid values from extensions.topic_status) Optional, default first open status from extensions.topic_status
title string title of the topic Mandatory
assigned_to string email of the assigned user (Valid values from extensions.user_id_type) Optional, default unassigned
description string description of the topic Optional

Request schema

topic_PUT.json

Response schema

topic_GET.json

Example

Request

PUT https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/topics/6411ce04-5391-40a6-97c2-be0ca45fcc96
{
    "topic_type": "Error",
    "topic_status": "Open",
    "title": "Furniture is misplaced",
    "assigned_to": "user3@test.com"
}

Response

{
    "guid": "9b7cabc3-808e-4477-8f98-2b02c573dbad",
    "topic_type": "Error",
    "topic_status": "Open",
    "title": "Furniture is misplaced",
    "creation_date": "Mon Jan 18 12:47:50 CEST 2016",
    "modified_date": "Mon Jan 20 12:49:52 CEST 2016",
    "modified_author": "user3@test.com",
    "assigned_to": "user4@test.com"
}

Delete topic

Delete the topic.

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/topics/{topic_guid}

Example

Request

DELETE https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/topics/6411ce04-5391-40a6-97c2-be0ca45fcc96

Comment

Get comments

Return the comments.

Note: Comment.verbal_status maps to Topic.topic_status, Comment.status maps to Topic.topic_type

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/topics/{topic_guid}/comments

Response schema

List of comment_GET.json

Example

Request

GET https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/topics/6411ce04-5391-40a6-97c2-be0ca45fcc96/comments

Response

[
    {
        "guid": "d13fd9fa-2f54-4bbd-b37d-15a975077cd3",
        "verbal_status": "Open",
        "status": "Warning",
        "date": "Mon Jan 18 12:43:48 CEST 2016",
        "author": "user2@test.com",
        "comment": "Check this",
        "topic_guid": "6411ce04-5391-40a6-97c2-be0ca45fcc96",
        "viewpoint_guid": "9d3b9d8e-68a8-4f15-bf1e-37fb6bbaf0d5"
    },
    {
        "guid": "d896a960-63db-496e-8ce7-0c062e9f23c1",
        "verbal_status": "Open",
        "status": "Error",
        "date": "Mon Jan 18 12:46:52 CEST 2016",
        "author": "user1@test.com",
        "comment": "Yes, this is misplaced",
        "topic_guid": "6411ce04-5391-40a6-97c2-be0ca45fcc96"
    }
]

Get comment

Return the comment.

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/topics/{topic_guid}/comments/{comment_guid}

Response schema

comment_GET.json

Example

Request

GET https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/topics/6411ce04-5391-40a6-97c2-be0ca45fcc96/comments/d13fd9fa-2f54-4bbd-b37d-15a975077cd3

Response

{
    "guid": "d13fd9fa-2f54-4bbd-b37d-15a975077cd3",
    "verbal_status": "Open",
    "status": "Warning",
    "date": "Mon Jan 18 12:43:48 CEST 2016",
    "author": "user2@test.com",
    "comment": "Check this",
    "topic_guid": "6411ce04-5391-40a6-97c2-be0ca45fcc96",
    "viewpoint_guid": "9d3b9d8e-68a8-4f15-bf1e-37fb6bbaf0d5"
}

Create comment

Create the comment.

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/topics/{topic_guid}/comments

Parameters

JSON encoded body using the "application/json" content type.
NameTypeDescription
status string new type of the topic (Valid values from extensions.topic_type) Mandatory
verbal_status string new status of the topic (Valid values from extensions.topic_status) Optional
comment string the comment Mandatory
viewpoint_guid string guid of an existing viewpoint Optional

Request schema

comment_POST.json

Response schema

comment_GET.json

Example

Request

POST https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/topics/6411ce04-5391-40a6-97c2-be0ca45fcc96/comments
{
    "status": "Error",
    "verbal_status": "Closed",
    "comment": "Furniture has been repositioned",
    "viewpont_guid": "9d3b9d8e-68a8-4f15-bf1e-37fb6bbaf0d5"
}

Response

{
    "guid": "e5acdb08-7a37-479c-b0d8-459219a59c73",
    "verbal_status": "Closed",
    "status": "Error",
    "date": "Mon Jan 18 12:59:48 CEST 2016",
    "author": "user1@test.com",
    "comment": "Furniture has been repositioned",
    "topic_guid": "6411ce04-5391-40a6-97c2-be0ca45fcc96",
    "viewpoint_guid": "9d3b9d8e-68a8-4f15-bf1e-37fb6bbaf0d5"
}

Update comment

Not implemented

Document

Get documents

Return the documents.

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/documents

Response schema

List of document_GET.json

Example

Request

GET https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/documents

Response

[
    {
        "guid": "a3aaaee9-f14a-432e-a008-2feec907c2ba",
        "filename": "Myfile.txt"
    },
    {
        "guid": "d7b580eb-4f96-401a-b44b-1f0a495222a7",
        "filename": "Myfile.ifx"
    }
]

Get document

Return the document file.

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/documents/{document_guid}

Example

Request

GET https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/documents/a3aaaee9-f14a-432e-a008-2feec907c2ba

Upload document

Uploads the document.

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/documents

Request body

The document to be uploaded.

Response schema

document_GET.json

Example

Request

POST https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/documents

Response

{
    "guid": "cfd79b46-a394-48a9-ba45-75fe3719e173",
    "filename": "Myfile.xlsx"
}

Document reference

Get document references

Return the document references. The guid from the response points to the document guid.

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/topics/{topic_guid}/document_references

Response schema

List of document_reference_GET.json

Example

Request

GET https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/topics/6411ce04-5391-40a6-97c2-be0ca45fcc96/document_references

Response

[
    {
        "guid": "a3aaaee9-f14a-432e-a008-2feec907c2ba",
        "description": "This is my document reference"
    },
    {
        "guid": "d7b580eb-4f96-401a-b44b-1f0a495222a7",
        "description": "This is another document reference"
    }
]

Create document references

Create the document reference between a topic and a document.

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/topics/{topic_guid}/document_references

Parameters

JSON encoded body using the "application/json" content type.
NameTypeDescription
guid string guid of the existing document Mandatory
description string description the reference to create Optional

Request schema

document_reference_PUT.json

Response schema

document_reference_GET.json

Example

Request

PUT https://bcf.bimsync.com/bcf/projects
{
    "guid": "a8375c77-4b26-47df-be1a-495609f37439",
    "description": "My new document reference"
}

Response

{
    "guid": "a8375c77-4b26-47df-be1a-495609f37439",
    "description": "My new document reference"
}

Viewpoint

Get viewpoints

Return the view points.

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/topics/{topic_guid}/viewpoints

Response schema

List of viewpoint_GET.json

Example

Request

GET https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/topics/6411ce04-5391-40a6-97c2-be0ca45fcc96/viewpoints

Response

[
    {
        "guid": "747f2fe6-b690-471f-8e45-618a4bc9a63c",
        "perspective_camera": {
            "camera_view_point": {
                "x": 35.73251238472605,
                "y": -0.905690071460695,
                "z": 4.455638963509504
            },
            "camera_direction": {
                "x": -0.9994595558906173,
                "y": -0.013604037024209679,
                "z": -0.02992534570517132
            },
            "camera_up_vector": {
                "x": -0.029922573955527068,
                "y": -0.00040728792030799566,
                "z": 0.9995521365513788
            },
            "field_of_view": 50 {
                "guid": "d7b580eb-4f96-401a-b44b-1f0a495222a7",
                "filename": "Myfile.ifx"
            }
        },
        "lines": {
            "line": []
        },
        "clipping_planes": {
            "clipping_plane": []
        }
    },
    {
        "guid": "55f15946-8432-46dd-a754-29ee1834cbfa",
        "perspective_camera": {
            "camera_view_point": {
                "x": 35.73251238472605,
                "y": -0.905690071460695,
                "z": 4.455638963509504
            },
            "camera_direction": {
                "x": -0.9994595558906173,
                "y": -0.013604037024209679,
                "z": -0.02992534570517132
            },
            "camera_up_vector": {
                "x": -0.029922573955527068,
                "y": -0.00040728792030799566,
                "z": 0.9995521365513788
            },
            "field_of_view": 60
        }
        "lines": {
            "line": [
                {
                    "start_point": {
                        "x": 14.081214128865833,
                        "y": -15.361069061775849,
                        "z": 8.124594766348617
                    },
                    "end_point": {
                        "x": 14.069056488704259,
                        "y": -15.546558805373634,
                        "z": 12.340820025706794
                    }
                },
                {
                    "start_point": {
                        "x": 14.069056488704259,
                        "y": -15.546558805373634,
                        "z": 12.340820025706794
                    },
                    "end_point": {
                        "x": 14.097847685270528,
                        "y": -15.107290031270399,
                        "z": 11.937786274123868
                    }
                }
            ]
        },
        "clipping_planes": {
            "clipping_plane": [
                {
                    "location": {
                        "x": 7.423618869853075,
                        "y": 1.546760144471543,
                        "z": 2.1204867944187327
                },
                    "direction": {
                        "x": 0,
                        "y": -1,
                        "z": 0
                    }
                }
            ]
        }
    }
]

Get viewpoint

Return the viewpoint.

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/topics/{topic_guid}/viewpoints/{viewpoint_guid}

Response schema

viewpoint_GET.json

Example

Request

GET https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/topics/6411ce04-5391-40a6-97c2-be0ca45fcc96/viewpoints/747f2fe6-b690-471f-8e45-618a4bc9a63c

Response

{
    "guid": "747f2fe6-b690-471f-8e45-618a4bc9a63c",
    "perspective_camera": {
        "camera_view_point": {
            "x": 35.73251238472605,
            "y": -0.905690071460695,
            "z": 4.455638963509504
        },
        "camera_direction": {
            "x": -0.9994595558906173,
            "y": -0.013604037024209679,
            "z": -0.02992534570517132
        },
        "camera_up_vector": {
            "x": -0.029922573955527068,
            "y": -0.00040728792030799566,
            "z": 0.9995521365513788
        },
        "field_of_view": 60
    },
    "lines": {
        "line": []
    },
    "clipping_planes": {
        "clipping_plane": []
    }
}

Create viewpoint

Create the viewpoint.

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/topics/{topic_guid}/viewpoints

Parameters

JSON encoded body using the "application/json" content type.

Request schema

viewpoint_POST.json

Response schema

viewpoint_GET.json

Example

Request

POST https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/topics/6411ce04-5391-40a6-97c2-be0ca45fcc96/viewpoints
{
    "perspective_camera": {
        "camera_view_point": {
            "x": 35.73251238472605,
            "y": -0.905690071460695,
            "z": 4.455638963509504
        },
        "camera_direction": {
            "x": -0.9994595558906173,
            "y": -0.013604037024209679,
            "z": -0.02992534570517132
        },
        "camera_up_vector": {
            "x": -0.029922573955527068,
            "y": -0.00040728792030799566,
            "z": 0.9995521365513788
        },
        "field_of_view": 50 {
            "guid": "d7b580eb-4f96-401a-b44b-1f0a495222a7",
            "filename": "Myfile.ifx"
        }
    },
    "lines": {
        "line": []
    },
    "clipping_planes": {
        "clipping_plane": []
    }
}

Export to BCF

Export to BCF.

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/export

Example

Request

POST https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/export

Response

The binary bcfzip file.

Get snapshot

Return the snapshot file.

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/topics/{topic_guid}/viewpoints/{viewpoint_guid}/snapshot

Example

Request

GET https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/topics/6411ce04-5391-40a6-97c2-be0ca45fcc96/viewpoints/747f2fe6-b690-471f-8e45-618a4bc9a63c/snapshot

Response

The binary snapshot file

Upload snapshot

Upload the snapshot.

Resource URL

https://bcf.bimsync.com/bcf/{version_id}/projects/{project_id}/topics/{topic_guid}/viewpoints/{viewpoint_guid}/snapshot

Request body

The snapshot to be uploaded. Must be in JPG, PNG or GIF format.

Example

Request

PUT https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/topics/6411ce04-5391-40a6-97c2-be0ca45fcc96/viewpoints/747f2fe6-b690-471f-8e45-618a4bc9a63c/snapshot

The binary snapshot file.