NAV Navigation

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

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

Example


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

    {
        "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)

Returns the oauth2_auth_url and the oauth2_token_url.

Resource URL

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

Response schema

auth_GET.json

Version

Get BCF API version

Example


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

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

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

User

Get current user

Example


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

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

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

Issue boards

Create issue board

Example


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

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

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

Get issue boards

Example


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

    [
        {
            "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.

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

Get issue board

Example


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

    {
        "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.

Return the issue board.

Resource URL

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

Response schema

project_GET.json

Issue board extensions

Get issue board extensions

Example


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

    {
        "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"
        ]
    }

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

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

Example


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

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

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

Create issue board extension status

Example


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

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

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

Update issue board extension status

Example


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

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

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

Delete issue board extension status

Example


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

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


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

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

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

Get issue board extension types

Example


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

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

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

Create issue board extension type

Example


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

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

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

Update issue board extension type

Example


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

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

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

Delete issue board extension type

Example


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

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


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

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

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

Get issue board extension users

Example


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

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

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


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

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

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

Topic

Get topics

Example


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

    [
        {
            "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

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

Get topic

Example


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

    {
        "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"
    }

Return the topic.

Resource URL

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

Response schema

topic_GET.json

Create topic

Example


    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"
    }

    {
        "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"
    }

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

Update topic

Example


    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"
    }

    {
        "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"
    }

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

Delete topic

Example


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

Delete the topic.

Resource URL

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

Topic extensions

Get objects

Example


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

    [
        {
            "ifcGuid": "3BY5alwwL00QXHtY2qmHYZ"
        },
        {
            "ifcGuid": "0w1FD2e5L4LOvXHSZSTtLq"
        },
        {
            "ifcGuid": "0Arc0R2mf2Ow2ddxcQ40yG"
        }
    ]

Return a list of objects linked to a topic. Each object has 1 attribute. ifcGuid.

ifcGuid the ifcGuid of the object

Note: this resource is additional to the BCF-API standard, and may change in the future

Resource URL

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

Create objects

Example


    POST https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/topics/objects
    {
        "ifcGuids": ["3BY5alwwL00QXHtY2qmHYZ", "0w1FD2e5L4LOvXHSZSTtLq", "0Arc0R2mf2Ow2ddxcQ40yG"]
    }

        {
            "ifcGuid": "3BY5alwwL00QXHtY2qmHYZ"
        },
        {
            "ifcGuid": "0w1FD2e5L4LOvXHSZSTtLq"
        },
        {
            "ifcGuid": "0Arc0R2mf2Ow2ddxcQ40yG"
        }
    ]

Links objects to a topic. Already linked objects will be ignored

Note: this resource is additional to the BCF-API standard, and may change in the future

Resource URL

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

Parameters

JSON encoded body using the "application/json" content type.
NameTypeDescription
ifcGuids List of strings Each element is the "ifcGuid" of the object to link to the topic Required

Delete objects

Example


    DELETE https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/topics/objects
    {
        "ifcGuids": ["3BY5alwwL00QXHtY2qmHYZ", "0w1FD2e5L4LOvXHSZSTtLq", "0Arc0R2mf2Ow2ddxcQ40yG"]
    }

Unlinks objects to from topic.

Note: this resource is additional to the BCF-API standard, and may change in the future

Resource URL

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

Parameters

JSON encoded body using the "application/json" content type.
NameTypeDescription
ifcGuids List of strings Each element is the "ifcGuid" of the object to unlink from the topic Required

Get points

Example


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

    [
        {
            id: 7c34c9b3-1b9b-4750-a4f3-0641d58fe48e,
            x: 0,
            y: 0,
            z: 0
        },
        {
            id: 2a34c9b3-1b9b-4750-a4f3-0641d58fe48e,
            x: 10.2,
            y: -4.2,
            z: -20.5
        }
    ]

Return a list of points in a topic. Each point has 4 attribute. id, x, y and z.

id the id of the point. x the x axis. y the y axis. z the z axis.

Note: this resource is additional to the BCF-API standard, and may change in the future

Resource URL

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

Create points

Example


    POST https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/topics/points
    [
        {
            x: 0,
            y: 0,
            z: 0
        },
        {
            x: 10.2,
            y: -4.2,
            z: -20.5
        }
    ]

        {
            id: 7c34c9b3-1b9b-4750-a4f3-0641d58fe48e,
            x: 0,
            y: 0,
            z: 0
        },
        {
            id: 2a34c9b3-1b9b-4750-a4f3-0641d58fe48e,
            x: 10.2,
            y: -4.2,
            z: -20.5
        }
    ]

Creates points in a topic.

Note: this resource is additional to the BCF-API standard, and may change in the future

Resource URL

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

Parameters

JSON encoded body using the "application/json" content type.
NameTypeDescription
x number The x axis Required
y number The y axis Required
z number The z axis Required

Update points

Example

    PUT https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/topics/points
    [
        {
            id: 7c34c9b3-1b9b-4750-a4f3-0641d58fe48e,
            x: 5,
            y: 0,
            z: 0
        },
        {
            id: 2a34c9b3-1b9b-4750-a4f3-0641d58fe48e,
            x: 10.2,
            y: -2.2,
            z: -20.5
        }
    ]

    [
        {
            id: 7c34c9b3-1b9b-4750-a4f3-0641d58fe48e,
            x: 5,
            y: 0,
            z: 0
        },
        {
            id: 2a34c9b3-1b9b-4750-a4f3-0641d58fe48e,
            x: 10.2,
            y: -2.2,
            z: -20.5
        }
    ]

Updates points in a topic.

Note: this resource is additional to the BCF-API standard, and may change in the future

Resource URL

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

Parameters

JSON encoded body using the "application/json" content type.
NameTypeDescription
id string The id of the point Required
x number The x axis Required
y number The y axis Required
z number The z axis Required

Delete points

Example


    DELETE https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/topics/points
    [
        {
            id: 7c34c9b3-1b9b-4750-a4f3-0641d58fe48e
        }
    ]

Deletes points in a topic.

Note: this resource is additional to the BCF-API standard, and may change in the future

Resource URL

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

Parameters

JSON encoded body using the "application/json" content type.
NameTypeDescription
id string The id of the point Required

Comment

Get comments

Example


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

    [
        {
            "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"
        }
    ]

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

Get comment

Example


    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

    {
        "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"
    }

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

Create comment

Example


    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"
    }

    {
        "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"
    }

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

Update comment

Not implemented

Document

Get documents

Example


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

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

Return the documents.

Resource URL

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

Response schema

List of document_GET.json

Get document

Example


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

Return the document file.

Resource URL

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

Upload document

Example


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

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

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

Document reference

Get document references

Example


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

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

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

Create document references

Example


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

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

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

Viewpoint

Get viewpoints

Example

    GET https://bcf.bimsync.com/bcf/beta/projects/3c34c9b3-1b9b-4750-a4f3-0641d58fe48e/topics/6411ce04-5391-40a6-97c2-be0ca45fcc96/viewpoints
    [
        {
            "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
                        }
                    }
                ]
            }
        }
    ]

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

Get viewpoint

Example


    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


    {
        "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": []
        }
    }

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

Create viewpoint

Example


    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": []
        }
    }

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

Export to BCF

Example


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


    The binary bcfzip file.

Export to BCF.

Resource URL

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

Get snapshot

Example


    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

    The binary snapshot file

Return the snapshot file.

Resource URL

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

Upload snapshot

Example

    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.

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.