AU Class
AU Class
class - AU

Introducing the Autodesk Tandem API: Building Your First Digital Twin

Share this class

Description

Digital twins can serve as a shadow representation of your assets—be it a building information modeling (BIM) corpus, CAD models of a facility, the equipment instruction manuals, or the interconnect between the systems. Adding sensors to these shadow representations allows for real-time tracking, evaluation, and prediction of facility and asset performance. In this presentation, we will introduce you to our digital twin platform called Autodesk Tandem and its new API. Following that, we will guide you through the process of developing your first digital twin, using the Autodesk Tandem APIs. By the end of the session, you'll know how to make your own digital twin and integrate the Autodesk Tandem API with your own systems and data. We'll wrap up with examples of more-advanced real-world use-cases that involve IoT sensors and time-series databases.

Key Learnings

  • Learn about Autodesk Tandem and its digital twin platform.
  • Learn how to create a digital twin through a step-by-step guide.
  • Discover the differences between Autodesk Tandem Viewer and Autodesk Platform Services Viewer SDK.
  • Explore real-world use cases of Autodesk Tandem and the Autodesk Tandem road map.

Speakers

  • Avatar for Michael Beale
    Michael Beale
    Michael Beale is a Senior Developer Consultant since July 2017 for the Autodesk Developer Network and Forge Development Partner Program. Before joining the Forge Platform Team, Michael worked on Autodesk Homestyler, Cloud Rendering, Stereo Panorama Service (pano.autodesk.com) and A360 Interactive Cloud Renderer before working on the ‘Forge Viewer’ and Viewing APIs. Twitter: @micbeale Blog: https://aps.autodesk.com/author/michael-beale
  • James Awe
    James Awe is a long-time veteran of the CAD industry, spending most of his time working on BIM Modelers and data interoperability for workflows across the AEC project lifecycle. Recently, he is a member of the Tandem project, focused on Digital Twins, and is responsible for APIs and Developer Partnerships.
Video Player is loading.
Current Time 0:00
Duration 42:08
Loaded: 0.39%
Stream Type LIVE
Remaining Time 42:08
 
1x
  • Chapters
  • descriptions off, selected
  • en (Main), selected
Transcript

JAMES AWE: Hello. Welcome to Tandem Data API. My name is James Awe, and we're going to talk about the new API for Tandem. And if you haven't heard about Tandem yet, it is a digital twin product from Autodesk that's fairly new. And we're going to go over the API and do a little bit of an overview of the product itself in case many of you haven't seen it, and then we'll dive into a few details about how to get started. And so, let's dive in.

So, first of all, I'm sure you've seen this slide in many presentations, the safe harbor statement, which is basically legalese to say, don't make any purchasing or investment decisions based on what I say here, and please do not copy or distribute without permission.

So first of all, what is a digital twin? I think most of us have a feeling for what it is. It's a digital representation of something in the real world that gives us insight into what's going on in that real world asset and allows some kind of control. But there's a lot of variation in what the definition of that could be. So let's examine what we're talking about here.

So, first of all, many people jump to this kind of conclusion. They've seen the Hollywood version of a digital twin where Tom Cruise hacks into the building management system and controls the elevators and figures out where all the HVAC ducts are to crawl through. And that certainly is a long-range vision of what a digital twin is. But that kind of digital twin would cost millions of dollars to create and is not very repeatable. But it is the long-term vision for what we're talking about when we talk about a digital twin for a building.

Luckily, there's a company called Verdantix, which has defined a very clear maturity model for digital twins starting at a descriptive twin, which you can think of as the BIM model that's the basis for interacting with the twin of the building. So that would establish the location and-- the existence and location of assets within the building, tell you where all the spaces are, things like that to give you the building context.

And then, the next level up from that is informative which is what you usually think of when you think of sensors in the building, reporting real-time information back to the twin so you know what's going on currently in the building. All the way up to autonomous, which is the Tom Cruise hacking into the elevator and controlling it from the twin.

So Tandem has focused on these bottom two. And the reason for that is they're foundational. There's no way you can hack into the elevator if you don't know there is an elevator and where it is.

So we're marching up this digital twin maturity model but focusing on those first two and trying to make it a repeatable process so that it doesn't cost millions of dollars every time you want to create a twin for a building. We're going to make that easy and repeatable from the normal process of the BIM lifecycle.

So that's depicted in this slide. So, as you probably know, Autodesk has been involved in the design part of buildings for many, many years with products like AutoCAD and Revit and then taking that data into construction with things like the Autodesk Construction Cloud.

And then, now, what we're talking about with Tandem is picking up all that data at the handover point and passing it on to the operations phase of the building. So we want this continual digital thread that gets passed along through the full project lifecycle and leverage all of that digital data that's already been built up.

So what currently happens is, usually, the owner specifies a BIM deliverable when they start the project. But it's not very clearly defined. So they get a stack of papers or they get Revit models that they can't really use because the owner doesn't use Revit. So there's a drop-off in that digital thread. And we're trying to create Tandem to make that more continuous so the handover process gives the owner something that they can use to operate the building.

So we talked about those first two phases in the digital twin maturity model. That first one was the descriptive twin or what we internally call twin-building. So how do you get that basic BIM model that's usable in the owner's face to establish the existence and location of all the assets in the building?

Well, most of that data comes from Revit or IFC. That's what currently is the input source for that. We're also looking at Navisworks and AutoCAD files. That's coming in the future. And then, there's also data coming in from other places like Autodesk Docs. So a lot of the installation and maintenance manuals come from Autodesk Docs. And those can be attached to the twin as well.

So you want that data to come in from those source files that establish the BIM model. And then you want to be able to verify that it's complete, that it's consistent, that everything's been classified. So that's all part of the twin building process to get that BIM context set up.

And then, the next part of it is the IoT part of it. So using the real-time information that's coming in from sensors and building management systems that are on site and reporting that data.

And then, once you get that, you want to be able to display it in graphs, and heat maps, and other kinds of visual display to give you insight into what's going on. And then, once you have that insight, be able to act on it and make an informed decision about how to maintain something, take something offline, whatever it might be.

So I know many of you haven't seen the product. So I have a few videos that just show you some basic functionality so you get an idea of what we're talking about. So the first one I want to show is just the ability to navigate through the data. So for an owner, they're most interested in things like levels, and spaces, and systems.

And so, the data is organized very cleanly so that they can navigate those things as you would expect. And, here, we've grouped everything by object type. So that once you get them all-- objects to the same type together, you can check to make sure the data is consistent.

So here we've taken all of those items on the right-hand side. And we're presenting them in the inventory table in the bottom. And it's very easy to see that the data is consistent. And if it's not, then it's easy to change. So, normally, that data is hard to access because it's buried and not very visual. But the inventory table brings it to the surface.

The next one is views. So most CAD-like products have some notion of saved views. And here it's really important because Tandem is used for data visualization scenarios that are nice to be able to pull up quickly and check on the different views in the system. So we just make that easy to establish and restore those views, kind of like a visual report.

The next one is floor plans. So most of us are used to construction floor plans, which are the construction documents that have lots of symbology, and dimensions, and all that kind of stuff. Not very useful to the owner because they don't need that information. But they do like to have a 2D view because it's easier to parse the different rooms.

So Tandem allows for a dynamic 2D view that acts as a floor plan-- simplified floor plan. But it's also still all interactive. So anything that you could do directly in the model, you can still do on the floor plan and dynamically present that information in a 2D view, which is very helpful to the owners.

And, as I said, their primary method of navigation through the system is going to be things like levels and spaces. So Tandem also makes that very easy. So here we're searching for spaces called neighborhood and isolating those. And we'll drill down on those, and you can actually see the equipment that's in a given space.

Now, I'd like to pause here for just a second because this is an important feature. This model is actually-- or this facility, the twin, is actually three [INAUDIBLE] models composed together. So there's an architectural model, a mechanical model, and a structural model.

And most aggregation software to date that aggregates those models together loses track of how it logically fits together because they're isolated-- the elements are isolated into individual buckets for each model. What Tandem does is smooth over those divisions between the models so that you can understand that given a space that was defined in the architectural model, what assets from the other model are in that space?

That's not so easy to do using previous products. So Tandem is a big step forward in understanding the relationship of all these elements in more of a logical way as presented via space or a level.

The next thing you might want to do is when you drill into a particular asset, you might want to find the documents that are associated with it. So, in this case, we can pull up and find the PDFs that represent either the installation manual, the maintenance manual.

There's a lot of static PDF-type documentation that would normally be in a notebook someplace on somebody's shelf or in a box of papers in the basement someplace. And just having Tandem be the digital hub for all that information makes navigating to those assets and then finding all the related information easier.

Heat maps is something that you might have seen before. We had a research project called Project Dasher, which was data visualization for all of the IoT sensors in the building, so temperature sensors, CO2, occupancy, all of those things. So Tandem has all of that as well. We ported that over from Dasher. And it makes it easy to visualize hotspots or areas of activity.

And it also works with the 2D floor maps. So here we've gone to the 2D view, and the heat map still works. And then, of course, you can dig into all of the data behind that, all the time series data, and look at charts, or restrict the time zone, restrict a certain variable. So all that information is available to view either in chart form or in the context of the building.

And then, systems is the HVAC system, the water system, whatever, is also another important thing that needs to be maintained. And often, you'll want to know-- the owner will want to know-- if this piece of equipment goes offline, or needs to be replaced, or whatever, what areas does it affect? So being able to trace the connectivity of the whole system all the way down to where it's going to dump out into a given space or room is important.

And the other part of this feature that's interesting is the data doesn't always come in completely clean from a source model like Revit. So we allow you to clean up some of those places where the connectivity is not perfect, or it could come in from IFC incomplete, and the owner has the ability to adjust the system and make sure that it's analytically correct to support their decision-making process.

And then, lastly, this is-- it's not obvious to everybody unless you've been through this problem. But one of the things that's super valuable is understanding the completeness of the data. So you could have a property that's associated with certain types of assets. And then, figuring out whether that property has actually been specified is not easy unless you somehow bring that to the surface.

So dashboards allows you to set up basically a visual report that says, for these given types of assets, I'm expecting to see these properties associated with it. And if they haven't been filled out, show me where they are, because somebody didn't do a good enough job of completing all of the data that I'm expecting.

So dashboards give you great insight into the consistency and the completeness of the data so that you can trust the reports that you're generating or the analysis that you're generating from that data.

So that was a teaser of the product itself. And we're going to talk about the API. But the API is not necessarily super useful unless you have the product, because you have to be able to set up the facility and attach all that data. And then you can use the API to automate it or connect it to other systems.

So if you're a developer looking to get started, the first thing you're going to want to do is get your hands on the product itself so that you can set up a test facility in order to use the API against it. So you can go to the website that's listed and sign up for a free copy.

And the interesting thing to point out is that there's a very generous free tier. So, as a developer, you will never have to hit a paywall-- at least I don't think-- [LAUGHS] because it is this generous tier that you can set up test facilities-- as many as you want-- as long as you don't go over these generous limits per facility you'll never pay anything. So if you want to, if you're interested, go sign up, get the product, get familiar with it.

And then, diving into the platform itself, there is two APIs available. The REST API is the foundational API. It has been in beta. We're taking off the beta label this week at Autodesk University. So that will become official.

And then, there's also a JavaScript SDK that allows you to use an embedded viewer so that you can get the graphics with it. So that is-- I'll show you an example of that in a few minutes. But that's very usable and capable. It's just not well-documented yet. And we just haven't had time to clean it up. But anybody who wants to get started with that scenario of embedding a viewer, it's certainly doable. It's just that it's still going to have the beta label on it for a little bit longer.

And then, eventually, we want to be able to do extensions to the product, like you can do in Revit and AutoCAD, where you get the entire product and you can add your own custom commands to it. We haven't started that yet, but we know people are going to want that. And there's a lot of valuable use cases for that. So, eventually, we will get there. But it's just not available yet.

So what would you use the API for? Well, it's pretty well-known that digital twins by themselves are not very useful unless they're integrated with other systems. The whole idea is to visualize these other things that are hard to visualize. So IoT sensors are a classic example of you wouldn't know what the data is unless you can somehow present it in a compelling way, so integrations with IoT systems, building management systems, things like that.

And there's also lots of mission-critical systems that the owner uses to manage the building that also don't have any kind of good visual context. So maintenance management systems are a classic example of that. If anybody's familiar with Maximo, lots of facility owners depend on Maximo for the maintenance management. But it's very table-oriented.

So you see a list of assets, but you don't know where they are, and you can't figure out the context, unless you have something like Tandem to show you that building context. So there's a long tail of individual IoT sensors and other management systems that benefit by being integrated into Tandem where we have that solid BIM context that helps a lot. So, anyway, that's a big developer opportunity to go after all those integrations.

I've done a few of these integrations myself. So I did, for our own Autodesk facility in Toronto, we have it outfitted with VergeSense occupancy sensors. We have Robin room reservation system. And what I did is I hooked up to those systems, and then I used Tandem to run reports. I used the embedded Tandem viewer to run reports.

So what you see on screen-- I don't remember what the exact-- I think this was the Robin. And I asked it to highlight all the spaces based on their availability. So green meant that those conference rooms were available. Yellow meant that they were booked. And I can't remember what status blue was, but there's one blue one in there.

And I did the same thing for VergeSense, where it made a heatmap for the occupancy to show which spots were most occupied. And I did one for Maximo that would basically light up the assets that, based on their work order status. So if it needed repair, it would be color-themed one way. And if it was completed it would be themed another way.

So it just demonstrates the capability to integrate with those other systems and run a visual report of what's in them. And it also aggregates across systems. So you might see that a heat map is telling you that it's hot in a certain room, hotter than expected.

And then you could compare that against the VergeSense occupancy sensors and say, oh, well, it's not hot because the equipment is failing, it's hot because there's 50 people in a room that that's fairly small. So combining the integration between systems is also an interesting thing.

So let's dive into a couple of the details. This is not going to be a deep dive-- [COUGHS] excuse me. I'm not going to be a deep dive. I'm not going to try to teach you the API. But we do just want to give you an overview of what it's like to interact with it.

So the first thing you may have noticed is that, when I was showing the demo videos of the product itself, it might have looked a lot like the APS viewer, which is also-- might also know as the Forge Viewer or LMV. It goes by many names these days, but, basically, the browser-based viewer that's been a component in APS for quite a while.

And it is mostly the same. So the frontend part of it where you select, and isolate, and color things, that's all the same as the Forge Viewer. But the backend is different.

So the data layer talks directly to the Tandem database. It allows the addition of your own properties, user-defined properties. It handles incremental updates from the source files so you don't get what we call a Big Bang publish that basically creates everything from scratch every time. If you do updates, it remembers the history of what was there before.

And that improved data layer is ideal for lots of use cases. So the Forge Viewer before was great. But in terms of managing data, it was a little bit limited. And so, this Tandem viewer basically addresses some of those things. And there's also a new implementation of WebGPU which it makes it much faster for large models which, of course, everybody can benefit from performance.

So, like I said, the embedded viewer is part of the JavaScript SDK. That is available, but it's still going to be in beta for a while. But, like I said, it is very usable. And if you're-- especially if you know the APS Forge Viewer already, then it's pretty easy to use.

But we're going to talk about the REST API. So that's the foundation to everything, that they all map down to that REST API. So I'll give you some examples of that.

So it talks directly to the Tandem database server. So this is mostly about the data. And it's very efficient and powerful. But it also has these cryptic payloads which we'll see a couple of examples of. But it's designed to be extremely efficient. And it's what's used by the Tandem product itself.

So some common use cases are that you can assign classifications. We'll see why classifications are important in a second. Read and write all the element properties, read and add, read, add, delete the associated documents, like the PDF manuals that I talked about earlier. And then, push and pull stream data. So stream data is the IoT time series data from the sensors.

So it uses the same authentication that all the other APS APIs do. So if you're already familiar with those, it's going to be the same. Tandem supports both 3-legged and 2-legged authorization. So you can use it as if you were a logged-in user, or you can use it as a service that's been authorized by either the facility or the Tandem account to give that service access.

And then, it has this granular data model. Like I said, it's mostly about the data that makes this super interesting above and beyond, say, the [INAUDIBLE] viewer. So it has this granular data model where a facility is composed of multiple models which is composed of multiple elements.

And then, each element has a bunch of properties organized by what we call families and columns. And if you're a Revit-familiar person, don't confuse it with Revit families. These terms actually come from Google Bigtable. It just really means a group of properties. And we'll see an example of this in a couple of slides.

And then, if you look at the bottom left, you'll see this history. So not only does the property have a value, it has a history of values. So this one has been changed multiple times. So that's super important, because you want to-- somebody looking at this data wants to trust it. And if they don't know where that data came from, and they don't know who's changed it, they're going to trust it less. So that granular history is very important in this context.

And then, the biggest feature is this Custom Schema. So you want to be able to add your own properties to the model that track certain things about all these assets. Those are properties. We call them parameters, but same thing as a property. Those are things that were never specified during the design phase in Revit. And they need to be added by the owner.

So the way you do that-- and we're going to walk through this example-- but at a high level, there's a account-wide library of parameters or properties that get created. Then you map those to a classification. And then, any element that's classified a certain way is going to automatically get that set of parameters that are associated with the classification.

So, in this picture, it was set up that anything that's classified as doors and frames gets the set of properties that are in red. And so, all doors and frames will end up with those properties.

So just a walk-through of what that looks like in the product itself. There's a facility template that you can apply to a particular facility or twin. Within that template is a classification system. So that's what defines how you classify the elements. And we support standard things like uniformat and masterformat. But you can also do your own classification system. So you're going to be in hierarchical classification system you dream of, you can have that applied.

And then, like I said, a set of parameters can then be assigned to a particular classification. And then, when that object is classified with it, it's going to inherit these properties. So in this case, anything classified as PR, products, is going to get those four parameters that I've specified in this screen.

So then, back to the API. Now we just need to read and write those properties and classify elements in order for that data to be found and updated. As I said earlier, the API is designed to be super efficient. So on the right-hand side, you see examples of payloads for the REST call. And it looks a little bit cryptic.

But like I said, it's very powerful. So we're not going to go through all the examples in this class, but it's available in the documentation. And I'll show you an interactive tool that allows you to experiment with the different calls towards the end.

So, earlier, I talked about columns and families are sets of properties that can be attached. So this example shows different families of properties. So there's common ones that every element has, so like the name of the element or the level it belongs to, those are all in this family called n colon.

There's properties that came from the source file, like from the original Revit file. Those are read-only. And they come in, and the user can't change them because they have been defined in the original Revit source file. So those are all in the family r. And then, user-defined properties are read-write, and they are in the z family.

And it's not really important to dive into here, but it shows up in the API that you need to know, when you're calling for properties, you need to specify which families are you interested in to read the properties back.

So, internally, those have-- it's a little bit complex because, for each model, a property can have a different identifier. Remember that facilities are usually always an aggregation of multiple models. And so, each one of those is a separate model in the database. And if you're searching across the entire facility for a given property, you need to know what we call a qualified property ID.

So in the picture on the right, I have the ID of that property is z colon 5Ac, which just means it's a user-defined property. Its internal ID is 5Ac. But it shows up in the UI as a Maximo ID as the property name.

So whenever you use the API, you have to look up in the schema what the internal name is, because you can't use the user-facing name that shows up in the product UI, because it's not the same in every model. So most applications, they'll just read this schema ahead of time, make a mapping table, and then they don't have to do as many lookups every time they need it.

So the same thing happens with write. So there's one REST endpoint to do all of the write operations, which is called mutate. And, basically, either you're inserting or updating an existing value or you're deleting it. So the first argument to it is just an i or a d. And then you have some kind of mutation that's applied to a given element or key.

Key is the identifier of an element like a wall. And you just construct the payload to say, I want to make these changes to these particular elements. So in the example on the right, we're adding a classification override and we're saying, this came in from Revit classified as something, and we're going to override it and say that it's something else. So that's an example of using an update.

Then there's also APIs to get all the documents that are associated with the facility. So on the left is a screenshot from the product that shows there's a bunch of catalogs and warranty information that was attached. And those are all retrievable via the API. They're also addable via the API. So you can see in the payload that there's links to an Autodesk Docs repository, where those PDFs exist.

And it's important to note that there's a copy of the file that's stored in Tandem, so that the Tandem data set is completely free of the original source. But it keeps a link back to the original, and it will alert you if that original has been updated. So you can always go get an updated copy.

But we want the twin itself to be separate, because somebody's going to hand this over to the owner to operate. And you don't want dependencies on accounts that you don't have access to back in the original ACC Docs.

And then, the last thing you might use the API for is handle the streams. So, remember, the streams are IoT data that's coming in, IoT time series data. And there's multiple ways to do it. So this is a case where there's multiple REST endpoints to handle the operation. So you can push data into a specific stream. You can push data into multiple streams in one call with a webhook.

And you can also connect to Azure IoT hub. So if you're familiar with the whole IoT space, Microsoft has invested a lot in Azure IoT hub to coordinate all the devices. And so, it's already handled one layer of management of all those devices. And we made it easy to leverage that by just pointing to your Azure IoT hub and giving an authorization. And then, Tandem will read it all from there. So if you already have Azure IoT hub, it can be leveraged.

So just a recap of where all this data is coming from. Tandem operates as a digital hub for all the information associated with the building. So on the left-hand side, that maps back to the twin building part where it's the BIM model context. We're importing things from Revit, and Docs, and Excel, and wherever you're capturing information about the assets and the facility.

And then, the green side is that time series data coming in from IoT sensors or data coming in from these other systems, like maintenance management systems like Maximo or whatever. So it's going to pull data from multiple sources, associate it all together, clean it up in a lot of cases, and make sure it's consistent, and present it to the owner in a way that is most useful to them.

The original BIM model is probably not the best way for the owner to navigate it. So we smooth over the rough edges, clean it up, make it consistent, and present it in a way that's most useful.

So getting started with the API, I like to point people to these two TestBed applications that we have done. So the reason is, because without writing any code, you can go into these applications and just interactively try things out and see what the results are.

And then you can go, dive into the-- you can steal the code, and copy and paste for particular-- steal's the wrong word. You can leverage the examples and just copy and paste stubs that will do certain functionality. So it's just a much faster way to get started than going straight to the Docs and starting from scratch.

So I want to show you both of these quick example. And the links are at the bottom. You can go and try them out yourself, or they're publicly posted. So there's one for JavaScript. And then, this is an example of the embedded viewer scenario.

And then there's one for the straight REST API. They work exactly the same. It's not the exact same code, but they are similar in concept. And the only difference is the REST one, the image you see on the left is just a static thumbnail. It's not an embedded viewer. So there's no-- you can't interact with it the same way you can the other one.

So let me get out of the presentation for a sec, and we'll go over to these applications. And so, this is the REST API one. And I have all of-- first of all, you log in, and then you get access to all the facilities you've set up. So you would have had to have Tandem the product which, like I said earlier, is free and isn't going to cost you anything to set up a sample facility. Once you log in, you get access to those. You can switch between them.

And then you just call these stub functions. So I talked about the history feature earlier. So if I wanted to-- I guess that's in the JavaScript one, sorry. If I want to see the history of all the changes to this model, all the output goes to the debug window of Chrome. But I can see, these were all the changes that happened. I get the name of the person who changed it, what they did. So that's just an example of the history feature.

And then, earlier, we were talking about the scan function, which is how you read properties and the cryptic payloads that happen. So you could go straight to the documentation and try creating those REST calls yourself. But I think it's easier to come here and go run these.

So I'm going to do an example of the scan function. And I put in the URN of the model I'm looking for, which in this case is the architectural model that's part of here, and the key. And the key is the element ID of this wall that you see in the front. And you didn't see how I got those, but I can show you in a second.

And if I say I just want the user-defined properties and say, OK, then what returns in the debugger window is the results from that REST call. And you'll see, there's a group of properties here all beginning with z and the value. So those are the qualified property names and the values that show up for those.

And then, I could test. I go, well, how can I call that a different way? And so, I'll bring that up again. And I'll say, well, this time I want to include all these other properties. And I'll see that I got not only the z family that we saw before, but I got the r family of properties, which was all the Revit-defined properties. I got n, which is common, and l is links to other objects, like a link to the floor that this element is on.

So I don't want to belabor the point. I'll let you play with these apps yourself. But they're really useful for experimenting with the API, seeing what the result is, and then drilling down in the code. If I now want to see the code for this, I can either go to the project in GitHub and get it, or I can just call it up in the browser and go, oh, this is-- here was the code that did that. So it's a quick way to learn.

And you can also use them together to debug or reverse-engineer things. So how did I get, when I called up the scan function, how did I get this model URN and this key for that particular element? Well, that's available really easily in the JavaScript embedded viewer.

So if I say, this wall, there's a function here that will convert viewer ID to element ID. And I can just grab this and paste it someplace. Also, the model that this came from is right here. So that's how I got those two pieces of information.

So, anyway, these tools are super useful for understanding the API and reverse-engineering how some of this stuff works. There's also the regular documentation that you can go read like a normal REST API. So that'll be available as well. But these tools, I think, are very useful to get you started.

All right, so given that, that's the end. So we have time for questions. And we'll take it from there.

______
icon-svg-close-thick

Cookie preferences

Your privacy is important to us and so is an optimal experience. To help us customize information and build applications, we collect data about your use of this site.

May we collect and use your data?

Learn more about the Third Party Services we use and our Privacy Statement.

Strictly necessary – required for our site to work and to provide services to you

These cookies allow us to record your preferences or login information, respond to your requests or fulfill items in your shopping cart.

Improve your experience – allows us to show you what is relevant to you

These cookies enable us to provide enhanced functionality and personalization. They may be set by us or by third party providers whose services we use to deliver information and experiences tailored to you. If you do not allow these cookies, some or all of these services may not be available for you.

Customize your advertising – permits us to offer targeted advertising to you

These cookies collect data about you based on your activities and interests in order to show you relevant ads and to track effectiveness. By collecting this data, the ads you see will be more tailored to your interests. If you do not allow these cookies, you will experience less targeted advertising.

icon-svg-close-thick

THIRD PARTY SERVICES

Learn more about the Third-Party Services we use in each category, and how we use the data we collect from you online.

icon-svg-hide-thick

icon-svg-show-thick

Strictly necessary – required for our site to work and to provide services to you

Qualtrics
We use Qualtrics to let you give us feedback via surveys or online forms. You may be randomly selected to participate in a survey, or you can actively decide to give us feedback. We collect data to better understand what actions you took before filling out a survey. This helps us troubleshoot issues you may have experienced. Qualtrics Privacy Policy
Akamai mPulse
We use Akamai mPulse to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, and your Autodesk ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. Akamai mPulse Privacy Policy
Digital River
We use Digital River to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, and your Autodesk ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. Digital River Privacy Policy
Dynatrace
We use Dynatrace to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, and your Autodesk ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. Dynatrace Privacy Policy
Khoros
We use Khoros to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, and your Autodesk ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. Khoros Privacy Policy
Launch Darkly
We use Launch Darkly to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, and your Autodesk ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. Launch Darkly Privacy Policy
New Relic
We use New Relic to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, and your Autodesk ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. New Relic Privacy Policy
Salesforce Live Agent
We use Salesforce Live Agent to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, and your Autodesk ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. Salesforce Live Agent Privacy Policy
Wistia
We use Wistia to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, and your Autodesk ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. Wistia Privacy Policy
Tealium
We use Tealium to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. Tealium Privacy Policy
Upsellit
We use Upsellit to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. Upsellit Privacy Policy
CJ Affiliates
We use CJ Affiliates to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. CJ Affiliates Privacy Policy
Commission Factory
We use Commission Factory to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. Commission Factory Privacy Policy
Google Analytics (Strictly Necessary)
We use Google Analytics (Strictly Necessary) to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, and your Autodesk ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. Google Analytics (Strictly Necessary) Privacy Policy
Typepad Stats
We use Typepad Stats to collect data about your behaviour on our sites. This may include pages you’ve visited. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our platform to provide the most relevant content. This allows us to enhance your overall user experience. Typepad Stats Privacy Policy
Geo Targetly
We use Geo Targetly to direct website visitors to the most appropriate web page and/or serve tailored content based on their location. Geo Targetly uses the IP address of a website visitor to determine the approximate location of the visitor’s device. This helps ensure that the visitor views content in their (most likely) local language.Geo Targetly Privacy Policy
SpeedCurve
We use SpeedCurve to monitor and measure the performance of your website experience by measuring web page load times as well as the responsiveness of subsequent elements such as images, scripts, and text.SpeedCurve Privacy Policy
Qualified
Qualified is the Autodesk Live Chat agent platform. This platform provides services to allow our customers to communicate in real-time with Autodesk support. We may collect unique ID for specific browser sessions during a chat. Qualified Privacy Policy

icon-svg-hide-thick

icon-svg-show-thick

Improve your experience – allows us to show you what is relevant to you

Google Optimize
We use Google Optimize to test new features on our sites and customize your experience of these features. To do this, we collect behavioral data while you’re on our sites. This data may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, your Autodesk ID, and others. You may experience a different version of our sites based on feature testing, or view personalized content based on your visitor attributes. Google Optimize Privacy Policy
ClickTale
We use ClickTale to better understand where you may encounter difficulties with our sites. We use session recording to help us see how you interact with our sites, including any elements on our pages. Your Personally Identifiable Information is masked and is not collected. ClickTale Privacy Policy
OneSignal
We use OneSignal to deploy digital advertising on sites supported by OneSignal. Ads are based on both OneSignal data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that OneSignal has collected from you. We use the data that we provide to OneSignal to better customize your digital advertising experience and present you with more relevant ads. OneSignal Privacy Policy
Optimizely
We use Optimizely to test new features on our sites and customize your experience of these features. To do this, we collect behavioral data while you’re on our sites. This data may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, your Autodesk ID, and others. You may experience a different version of our sites based on feature testing, or view personalized content based on your visitor attributes. Optimizely Privacy Policy
Amplitude
We use Amplitude to test new features on our sites and customize your experience of these features. To do this, we collect behavioral data while you’re on our sites. This data may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, your Autodesk ID, and others. You may experience a different version of our sites based on feature testing, or view personalized content based on your visitor attributes. Amplitude Privacy Policy
Snowplow
We use Snowplow to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, and your Autodesk ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. Snowplow Privacy Policy
UserVoice
We use UserVoice to collect data about your behaviour on our sites. This may include pages you’ve visited. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our platform to provide the most relevant content. This allows us to enhance your overall user experience. UserVoice Privacy Policy
Clearbit
Clearbit allows real-time data enrichment to provide a personalized and relevant experience to our customers. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID.Clearbit Privacy Policy
YouTube
YouTube is a video sharing platform which allows users to view and share embedded videos on our websites. YouTube provides viewership metrics on video performance. YouTube Privacy Policy

icon-svg-hide-thick

icon-svg-show-thick

Customize your advertising – permits us to offer targeted advertising to you

Adobe Analytics
We use Adobe Analytics to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, and your Autodesk ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. Adobe Analytics Privacy Policy
Google Analytics (Web Analytics)
We use Google Analytics (Web Analytics) to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. Google Analytics (Web Analytics) Privacy Policy
AdWords
We use AdWords to deploy digital advertising on sites supported by AdWords. Ads are based on both AdWords data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that AdWords has collected from you. We use the data that we provide to AdWords to better customize your digital advertising experience and present you with more relevant ads. AdWords Privacy Policy
Marketo
We use Marketo to send you more timely and relevant email content. To do this, we collect data about your online behavior and your interaction with the emails we send. Data collected may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, email open rates, links clicked, and others. We may combine this data with data collected from other sources to offer you improved sales or customer service experiences, as well as more relevant content based on advanced analytics processing. Marketo Privacy Policy
Doubleclick
We use Doubleclick to deploy digital advertising on sites supported by Doubleclick. Ads are based on both Doubleclick data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that Doubleclick has collected from you. We use the data that we provide to Doubleclick to better customize your digital advertising experience and present you with more relevant ads. Doubleclick Privacy Policy
HubSpot
We use HubSpot to send you more timely and relevant email content. To do this, we collect data about your online behavior and your interaction with the emails we send. Data collected may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, email open rates, links clicked, and others. HubSpot Privacy Policy
Twitter
We use Twitter to deploy digital advertising on sites supported by Twitter. Ads are based on both Twitter data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that Twitter has collected from you. We use the data that we provide to Twitter to better customize your digital advertising experience and present you with more relevant ads. Twitter Privacy Policy
Facebook
We use Facebook to deploy digital advertising on sites supported by Facebook. Ads are based on both Facebook data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that Facebook has collected from you. We use the data that we provide to Facebook to better customize your digital advertising experience and present you with more relevant ads. Facebook Privacy Policy
LinkedIn
We use LinkedIn to deploy digital advertising on sites supported by LinkedIn. Ads are based on both LinkedIn data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that LinkedIn has collected from you. We use the data that we provide to LinkedIn to better customize your digital advertising experience and present you with more relevant ads. LinkedIn Privacy Policy
Yahoo! Japan
We use Yahoo! Japan to deploy digital advertising on sites supported by Yahoo! Japan. Ads are based on both Yahoo! Japan data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that Yahoo! Japan has collected from you. We use the data that we provide to Yahoo! Japan to better customize your digital advertising experience and present you with more relevant ads. Yahoo! Japan Privacy Policy
Naver
We use Naver to deploy digital advertising on sites supported by Naver. Ads are based on both Naver data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that Naver has collected from you. We use the data that we provide to Naver to better customize your digital advertising experience and present you with more relevant ads. Naver Privacy Policy
Quantcast
We use Quantcast to deploy digital advertising on sites supported by Quantcast. Ads are based on both Quantcast data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that Quantcast has collected from you. We use the data that we provide to Quantcast to better customize your digital advertising experience and present you with more relevant ads. Quantcast Privacy Policy
Call Tracking
We use Call Tracking to provide customized phone numbers for our campaigns. This gives you faster access to our agents and helps us more accurately evaluate our performance. We may collect data about your behavior on our sites based on the phone number provided. Call Tracking Privacy Policy
Wunderkind
We use Wunderkind to deploy digital advertising on sites supported by Wunderkind. Ads are based on both Wunderkind data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that Wunderkind has collected from you. We use the data that we provide to Wunderkind to better customize your digital advertising experience and present you with more relevant ads. Wunderkind Privacy Policy
ADC Media
We use ADC Media to deploy digital advertising on sites supported by ADC Media. Ads are based on both ADC Media data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that ADC Media has collected from you. We use the data that we provide to ADC Media to better customize your digital advertising experience and present you with more relevant ads. ADC Media Privacy Policy
AgrantSEM
We use AgrantSEM to deploy digital advertising on sites supported by AgrantSEM. Ads are based on both AgrantSEM data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that AgrantSEM has collected from you. We use the data that we provide to AgrantSEM to better customize your digital advertising experience and present you with more relevant ads. AgrantSEM Privacy Policy
Bidtellect
We use Bidtellect to deploy digital advertising on sites supported by Bidtellect. Ads are based on both Bidtellect data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that Bidtellect has collected from you. We use the data that we provide to Bidtellect to better customize your digital advertising experience and present you with more relevant ads. Bidtellect Privacy Policy
Bing
We use Bing to deploy digital advertising on sites supported by Bing. Ads are based on both Bing data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that Bing has collected from you. We use the data that we provide to Bing to better customize your digital advertising experience and present you with more relevant ads. Bing Privacy Policy
G2Crowd
We use G2Crowd to deploy digital advertising on sites supported by G2Crowd. Ads are based on both G2Crowd data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that G2Crowd has collected from you. We use the data that we provide to G2Crowd to better customize your digital advertising experience and present you with more relevant ads. G2Crowd Privacy Policy
NMPI Display
We use NMPI Display to deploy digital advertising on sites supported by NMPI Display. Ads are based on both NMPI Display data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that NMPI Display has collected from you. We use the data that we provide to NMPI Display to better customize your digital advertising experience and present you with more relevant ads. NMPI Display Privacy Policy
VK
We use VK to deploy digital advertising on sites supported by VK. Ads are based on both VK data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that VK has collected from you. We use the data that we provide to VK to better customize your digital advertising experience and present you with more relevant ads. VK Privacy Policy
Adobe Target
We use Adobe Target to test new features on our sites and customize your experience of these features. To do this, we collect behavioral data while you’re on our sites. This data may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, your Autodesk ID, and others. You may experience a different version of our sites based on feature testing, or view personalized content based on your visitor attributes. Adobe Target Privacy Policy
Google Analytics (Advertising)
We use Google Analytics (Advertising) to deploy digital advertising on sites supported by Google Analytics (Advertising). Ads are based on both Google Analytics (Advertising) data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that Google Analytics (Advertising) has collected from you. We use the data that we provide to Google Analytics (Advertising) to better customize your digital advertising experience and present you with more relevant ads. Google Analytics (Advertising) Privacy Policy
Trendkite
We use Trendkite to deploy digital advertising on sites supported by Trendkite. Ads are based on both Trendkite data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that Trendkite has collected from you. We use the data that we provide to Trendkite to better customize your digital advertising experience and present you with more relevant ads. Trendkite Privacy Policy
Hotjar
We use Hotjar to deploy digital advertising on sites supported by Hotjar. Ads are based on both Hotjar data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that Hotjar has collected from you. We use the data that we provide to Hotjar to better customize your digital advertising experience and present you with more relevant ads. Hotjar Privacy Policy
6 Sense
We use 6 Sense to deploy digital advertising on sites supported by 6 Sense. Ads are based on both 6 Sense data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that 6 Sense has collected from you. We use the data that we provide to 6 Sense to better customize your digital advertising experience and present you with more relevant ads. 6 Sense Privacy Policy
Terminus
We use Terminus to deploy digital advertising on sites supported by Terminus. Ads are based on both Terminus data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that Terminus has collected from you. We use the data that we provide to Terminus to better customize your digital advertising experience and present you with more relevant ads. Terminus Privacy Policy
StackAdapt
We use StackAdapt to deploy digital advertising on sites supported by StackAdapt. Ads are based on both StackAdapt data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that StackAdapt has collected from you. We use the data that we provide to StackAdapt to better customize your digital advertising experience and present you with more relevant ads. StackAdapt Privacy Policy
The Trade Desk
We use The Trade Desk to deploy digital advertising on sites supported by The Trade Desk. Ads are based on both The Trade Desk data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that The Trade Desk has collected from you. We use the data that we provide to The Trade Desk to better customize your digital advertising experience and present you with more relevant ads. The Trade Desk Privacy Policy
RollWorks
We use RollWorks to deploy digital advertising on sites supported by RollWorks. Ads are based on both RollWorks data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that RollWorks has collected from you. We use the data that we provide to RollWorks to better customize your digital advertising experience and present you with more relevant ads. RollWorks Privacy Policy

Are you sure you want a less customized experience?

We can access your data only if you select "yes" for the categories on the previous screen. This lets us tailor our marketing so that it's more relevant for you. You can change your settings at any time by visiting our privacy statement

Your experience. Your choice.

We care about your privacy. The data we collect helps us understand how you use our products, what information you might be interested in, and what we can improve to make your engagement with Autodesk more rewarding.

May we collect and use your data to tailor your experience?

Explore the benefits of a customized experience by managing your privacy settings for this site or visit our Privacy Statement to learn more about your options.