26 Jul 2022

ACC/BIM 360 Insight Data Connector API - Project Level Access

Default blog image

As announced earlier, Autodesk Construction Cloud (ACC) and BIM 360 Insight Data Connector now supports the extraction of data at a project level. With this enhancement, a project administrator can access data for a given project; previously the data was accessible only to an individual who has Executive Overview permission at account level. The API documentation has been updated to reflect this change. 

We are also pleased to inform you that Data Connector API is out of beta. (This API has been stable. Long overdue in my opinion :-)   

Data Connector API is compatible for both BIM360 and ACC. If you haven’t looked at Data Connector API, please refer to our previous blog. Below we highlight the parts that have been updated.

There three areas of enhancements:

  • an optional parameter projectId - is added to request body payload to specify the id of a project
  • new endpoint GET jobs - is added to make it easier to list all the jobs you own
  • service group “all” - is added as a short cut to indicate all the available services  

Optional parameter "projectId"

To utilize project level extraction, you specify projectId in the request body payload when making a new request. This field is required for a project administrator. If projectId is omitted, only the user with Executive Overview permission can execute the extraction at account level. e.g., 


    "description":"Test by API - {{current_time}}",
    "isActive": true, 
    "scheduleInterval": "ONE_TIME",
    "serviceGroups": [ 
        "issues" ,
        "dailylogs"
    ],  
    "effectiveFrom": "{{effective_from}}",
    "callbackUrl": "{{callbackUrl}}",
    "projectId":"{{project_id}}"
}

The response for getting requests (i.e., GET requests, GET request/:id, and GET request/:id/jobs), will include projectId if it is created for project-level extraction. projectId will be null if it is an account-level extraction. 

GET jobs 

We now have one more endpoint GET jobs that returns all jobs spawned by requests from the authenticated user. The jobs can be project-level and account-level, depending on the permissions level of the user. This will be convenient to list jobs without keeping track of request ids and/or job ids.   

Service Group option “all”

When specifying a list of services to include in extraction while creating a new request, you can use  “all” to indicate all services. This will save you some typing to exhaustively list available service names. This will be also convenient if you want to automatically include all the available services as services are being added continuously. e.g.,   

{
    "description":"Test by API - {{current_time}} by project id",
    "isActive": true, 
    "scheduleInterval": "WEEK",
    "reoccuringInterval": 1,   
    "serviceGroups": [ 
        "all" 
    ],  

    "effectiveFrom": "{{effective_from}}",
    "effectiveTo": "{{effective_to}}", 
    "callbackUrl": "{{callbackUrl}}",
    "projectId":"{{project_id}}"
}

For more detail about this API, please check the documentation:

As always, if you have any questions, feel free to ask through our normal Forge support channel

Related Article