설명
주요 학습
- Discover Forge APIs that have recently been added for Construction Cloud products
- Discover which new APIs are scheduled to come out around the Autodesk University time frame
- Learn about the kinds of enhancements that are being made to existing APIs
- Discuss plans for future development beyond the AU time frame
발표자
- Mikako HaradaMikako Harada works as a Senior Manager for the Developer Technical Services team at Autodesk. She provides API support for AEC products. Prior to joining Autodesk, she worked as a researcher for the Swiss Federal Institute of Technology (ETH) in Zurich. While at ETH, she worked with projects involving the development of web-based collaborative environment with the Swiss building industry and web-based visualization projects for business data archive systems, aiming to enlarge our knowledge by a means of visualizing a large amount of information. She was also a researcher at Engineering Design Research Center in Carnegie Mellon University, Dr. Scott Fahlman’s lab (who is known as the father of Common LISP and the person who first sent the smiley face on the Internet), and Artificial Intelligence Cognitive Systems group at General Motors Technical Center. Her interests is in the areas of interactive techniques, optimization and layout synthesis.
MIKAKO HARADA: Welcome to Autodesk University 2021. I'm Mikako Harada from Autodesk. Today I'm going to talk about Autodesk Construction Cloud API Updates and Beyond. A little bit about myself. I manage a group of engineers who provide API technical support with a special focus on AEC industry and products, such as Revit, BIM 360, ACC, and Forge. You can find more about myself on my personal blog.
Safe harbor, this presentation will include forward looking information. They are current expectations and not the promise, and they may change. So please do not make purchase decisions based on this statement.
Agenda, first I'll go-- I'll give you a quick overview of Autodesk Construction Cloud, unify the products. I then talk about the latest status of BIM 360 and ACC API, including recent updates. We will take a look at this by each product module. We'll then look at the three new API areas in more detail. Takeoff is the newest member of ACC unified family product, and we are hoping to have an API near future.
Property indexing is a tool that you can use to compare versions and such properties in the model. Relationships API represents the difference between items or entities in different modules. We recently added a write capability to this API, and I'll explain about this one, as this is a behind-the-scenes helper function and may not be obvious what they did this for. And finally we will share and discuss what's in the pipeline [INAUDIBLE] AU time frame.
And Autodesk Construction Cloud Overview, so Autodesk Construction Cloud unified products were announced last year at the AU, and they are released earlier this year. There are five products, Autodesk BIM Collaborate and Pro for design workflow, Autodesk Takeoff for 2D and 3D quantification, Autodesk Build for project and field management, and this is the one that brings together the best of BIM 360 and plugged it into a single product. And these share the common foundational areas, Autodesk Docs, and it also comes with insight and administrative modules.
And here is the list of modules side by side. As you see on the left with the light colored header and BIM 360 on the right side with a dark colored headers. ACC unified product branded as new, but you'll see tools that are already-- you are already familiar with through the BIM 360. In fact, ACC subscription includes BIM 360 so you can create both ACC and the BIM 360 projects once you have ACC environment.
Autodesk Docs is a common environment for all products, and it includes Docs, insight, and project account admin. Autodesk BIM Collaborate, this includes a design collaboration and model coordination. Takeoff is available only in ACC and ACC Build combined the project management field management asset, which is go under the build and then cost.
Next let's take a look at the latest status of BIM 360 and the ACC APIs, including the latest updates. Accessing API is the same as BIM 360, even from the ACC. In fact, at the time of this recording, you'll be needing to go to BIM 360 account admin UI and further settings to provision your apps. So Custom Integration tabs should be activated by default for any new account.
And you have-- we have added a new API type ACC in Devportal now, and if you are using BIM 360 ACC compatible APIs, you can continue using BIM 360 API type. If you are using ACC specific API, you'll need to choose ACC from the selection list. And then this is a big picture version of API change in ACC. Main changes you may want to be aware with issues, are admin, and checklists. Data management API that is common across the Autodesk product has no change. However, Docs are the specific API a couple of specific API areas, and those may be different ones and no changes on the right side are compatible modules with the ACC.
And let's next, we'll quickly go over each module pointing to the changes in API. The first one is Document Management. There are a few Docs specific APIs that require attention because of the feature changes. And first one is there is no Plans folder in ACC site, so single page extraction PDF export API is not applicable in ACC. And then permissions, folder permissions, there is a slight change in how permission is set in ACC site.
So API endpoint itself is the same, but you may need to use a different keyword or token for the-- or combination to set the permissions in ACC site. And custom attribute and this one is not specific to-- this is not due to the ACC change, but in BIM 360 side as well, there is a behavior change to the project after March 23 this year. API we have today is based on older behavior, so if you have a newer project, you'll need to have a new version, which is supposed to be coming later.
And to distinguish if you have a project in ACC or BIM 360, you can check using data management API, get project and checking project type under data attribute extension data. And next one is not directly related to ACC release but CreateFolder command in data management API will be deprecated by next year January. Please use a POST project folder instead and then migrate as soon as possible. This was due to some historical legacy reasons.
Design Collaboration is now supporting rvt, dwg, and ifc, and there are very little API in this module, but the little module does support the design collaboration features, but the one API coming soon is a function to compare two versions, and I will explain this one later.
Model Coordination has no change in API. Model Coordination has full coverage of API, but the APIs are compatible and small changes that v1 indexing it becomes on demand instead of automatic. So you can activate that whenever you want to, and indexing to API is a new one. Again, we will come back to this and I'll explain this one later.
Takeoff is an ACC only feature and it offers a tool for quantification in 2D and 3D, and we are expecting to have API very soon, and our team is actually the major sample, and the scope of the first release is to read the inventory data and hopefully the right capability will follow soon after we release the first phase. If you are familiar with the Forge Viewers from cluster two, you'll see in Takeoff product, this is already available in viewer extensions. And this one is already out, so not a part of the new set of APIs we are expecting coming soon. So Build one, builds the asset API. This was released in February this year and currently in beta API is compatible with ACC.
And there is a small enhancement, such as additional query parameters for creating a status set and custom attributes, and RFI is also compatible. However, it ACC side API support excludes attachments, so just to be aware. And both provide construction the endpoint instead of BIM 360 for the backward compatibility as well. But in implementation side, behind in the back end it's pointed to the same implementation. So API itself with the same.
And checklist is BIM 360 only. In ACC, we will need to use the forms, and it has only read-only API and forms, the ACC feature. And this one released Read API in March and Photos also released Read APIs and we are hoping to have write on the later time. But probably either later this year or next year, I think.
And then cost, API is officially out of beta, so officially released. Congratulations goes to the team, and it's fully compatible between BIM 360 and ACC. And insight, Data Connector API was released in January 2021 as a public beta. API itself is compatible, while data might be slightly different between BIM 360 and ACC. And then the few wishlist either showing the schema in json. Currently it's showing in HTML, and then also the project level support. Right now, if we try to extract the data it's entire account, so instead of the entire account if we can have a control over each project, that will be very useful.
And admin API, the existing BIM 360 admin API is only partially compatible in ACC. No ACC project creation API at the moment. So this is actually a very high priority area. I'm hoping that more API starting to come later this year and then next year.
Issues, issue is shared services. It is used in multiple modules as well as the desktop product. Existing BIM 360 issues API is not compatible with ACC, so be aware. And we will need to wait for a new set of APIs to come out, so another high priority area.
So there are other shared services made available, too. One is Locations, read APIs, and this was released in July, and then Relationships write API was also released in August. I'll come back to this later, and property indexing v2 API and diff property-- and diff versions API both were expected to come near future as well. Again, I'll come back to this later.
So for more information, please refer to the release notes, product help, and then blog posts. I'll put these links in the handout.
Now exciting part, new API Takeoff, as I mentioned earlier, Takeoff team is planning to release API. The scope of initial release is read inventory data, package, takeoff item type, measuring system, and so on. They also plan to continue with write following that, and we'd like to show you two sample applications using Takeoff.
The first example is to export Takeoff data to csv. This application reads inventory data in Takeoff and creates a custom web page, then exports to csv. This sample is to demonstrate basic read access with Takeoff modules, and hopefully once we get the write, we can have export imports-- we can make this one the export and import samples.
And here is a recording. So the first showing some UI and showing the packages and choosing one example and then showing the inventory. So this is the product view. Now he is clicking on Linoleum-tiled count 11 and then showing the drawing. Now here are the applications using API. So choosing a product and showing our packages, and then choosing the same one to see if we can successfully extract from the data and then you see the example here list, and then now exporting to csv and then while waiting, he's pointing to the Linoleum-Tiled count 11 and things like that. And now in a csv opening, and then here it is, the example again, linoleum as examples.
The second sample extracts the quantity data from the Takeoff and calculates and feeds it to the budget in Cost module. This also shows where the quantity data is from the design model. So here is a video. So first UI inventory view, and he's pointing to the wall as an example. There is a four count and four wall items, and clicking a document shows the document here, the Revit model. And now switch to the application. And he's choosing the same packages and items, and you can see you can get the same model data through the APIs. And some of you who are already familiar with the viewer probably understand how it works.
And on the right side there is a price book and now extracting data from the Takeoff and quantity is filled in. And then now you can multiply by unit price and the amount is there. So now, send this data to the cost. And right now cost budget page is empty, so you want to fill this one with the data.
And refresh.
And here you are. Here you see the data is extracted and then imported here.
OK, so the documentation is the main job right now our engineering team is working very hard, so it's coming along but still in progress. But we expect to have it hopefully around AU time or around AU time. OK, so the next one is index one, indexing API.
So property index API is built on top of a Derivative Service. It's built on Derivative Services, and it extends the property data for analysis of BIM models. There are two main functions. One is index, which is used to search by properties, and second one is Diff to compare two versions. And it works with the modules in BIM 360-- models BIM 360 and ACC.
So again we've made two samples. The first one is to compare two versions of the models and visualize the differences in Forge Viewer. The difference can be geometries, properties, and then some of which you probably recognize this feature because we have it in BIM 360 or ACC. So here is a video of the demo samples. So right now, there is two versions and compare the result and added one shown in green, removed one shown in red, and changed one shown in blue.
So he is clicking on the example of added one, and few examples, and then removed one like that. Now another removed one like this, and then change also it can be geometry or nongeometric property as well. You can catch the compare both, then in this case, change elevation level change. So now he's trying to check to compare the elevations to make sure it's correct. And then those samples we expect to share the GitHub sample, GitHub code of samples as well.
OK so the next one is Filter Elements and Partial Model Load. This sample demonstrates the filtering element by properties, which can be geometric properties such as length and height, and then filter condition is defined as a binary expression form and you can combine by, for instance, and/or. The results are visualized in the Forge Viewer.
So here is a video. So now it would-- studying indexing calculations. By the way, there is no need to show the model in order to use this to run the indexing. However, it's actually easier to see what we are really clicking-- selecting. So now he actually filtered by floor and now adding to windows, and then you see even if you try to show everything, it doesn't show everything else. So this can be used if you want to show or display only the partial model instead of waiting for all heavy, a lot of amount of data try to load on a viewer.
And then now the second one-- second the model example is using this conditions in multiple ways. So for instance, he's using category ducts and then length is greater than 6.0 and category duct fitting and supply air is the classification, and the first one or is used and they're now queries and load visualizing it. As you can see, you can only pick up the part of the model.
Again the documentation is a work in progress, so we try to do the same documentation, code samples, the two examples we showed. It will go to GitHub sample and post them on corrections.
And relationship APIs, we introduce the relationship API last year. relationship API represents the links between items or entities that reside in a different functional component, and the relationship is used in BIM 360 ACC by various modules. It was read-only until now, but now we can create and edit relationship as well. And API is already publicly available, and this is the first time we talk about it. So if you go to Documentation it's there, but we didn't explain because I was waiting for a chance to explain.
And here, for example, the asset may have a reference to forms, issues, and attachment that et cetera you see on the right side, the reference director, and those are the relations-- those are the ones you can use relationship APIs to define. So this is the example, the context of this API. And there are three endpoints added to the relationships. And the first one is relationship writable. This retrieves compatible entity types to create or delete relationships. We added this and we needed this as not every entity domain supports relationships. So right now, in order to use this one, you'll need to check if the two entities are compatible relations.
OK, and then put the relationship-- create the relations between two entities and delete the reads, and we must have the right access to both entities in order to do this. Again documentation is already out, and you can find more detailed information here, and there is a tutorial as well.
So one more samples, integration samples, this one is just to in a way to give you a little bit more color to it. So the last example is integration with asset and then data visualization. As you may or may not know, so there was a new visualization extension called data viz and also the code name Hyperion, and we had a lot of interest in this Hyperion or data visualization. It's already general release now a couple of weeks back, and this sample uses this to extend last year's sample view asset in the model viewer GitHub samples.
And then we extended this using this database data visualization tools, and we attach the sensor information to the equipment as a custom attribute to keep the association between sensor data location and an element in the model. And here is the recording, so here is a UI in the asset. And for example, one asset item shows the external ID. This is the ID to identify the model and sensor locations. And for instance, he's trying to pick up that specific element, so it's here. So if you click on this element, you see the asset data, and then you see the same data external IDs inside it, then you can see the sensor history there. If you click on this, you can see displayed sensor history.
And then in this example, it's not during a constr-- doesn't look like during the construction, but the humidity temperature sometimes very important, for instance like when you are doing construction in concrete for instance, it's actually something we usually measure. So this kind of tool might be very interesting as the extended the use of asset or other construction usage. And here he is checking different levels and then further switching between humidity temperatures and CO2, and on and off, and then also this timeline showing the data. [INAUDIBLE] extension through the viewers.
OK so what's in the pipeline, here I'm summarizing the API in the pipeline for each module, including the ones I already discussed today and the ones under the review, as well as some high priority items we've been discussing based on demand and then frequency of being asked. For instance Docs has a few items lined up, and it's quite promising that it's probably coming one by one, not at once of course, and then Build has some gaps to fill also, so it is important to prioritize and Admin API also it's often sought for automating project creation in scale.
So this is something also we are aware, and we are always continuously try to prioritize. As always your feedback is welcome, and it helps the product team prioritize, so don't hesitate to contact us. And then here is for model coordination, which I already explained about indexing and design collaboration also. It also uses indexing as well. And then there is a separate Forge Roadmap session led by Jim Quanci and Cyrille Fauvel and Jim Gray, who is a director from the construction team, will be talking about the ACC specific API roadmap during the session.
So for the plan for future-- further down and then a little bit of timeline. Please refer to that session, and you may be able to get more ideas about the timing. And in this session, we talked about the latest status of ACC API, Takeoff, property indexing API, two areas of APIs that are expected to come around AU time frame.
And here is some more resources for the Forge, and here is what's happening at AU, and in the first one Forge Roadmap, and then we also have a Lightning Talk and Forge Documentary. This sounds interesting. I would like to watch that, too. And then the last one Hackathon Showcase, we'll have a huge Hackathon as well. So thank you very much for listening.