openapi: 3.1.0 info: title: Autodesk ACC Account Admin Account Users Metadata API description: The ACC Account Admin API automates the creation and management of projects, assignment and management of project users, and management of member and partner company directories within Autodesk Construction Cloud. It supports bulk operations for enterprise-scale administration. version: 1.0.0 termsOfService: https://www.autodesk.com/company/legal-notices-trademarks/terms-of-service-autodesk360-web-services/autodesk-web-services-api-terms-of-service contact: name: Autodesk Platform Services url: https://aps.autodesk.com email: aps.help@autodesk.com license: name: Autodesk API Terms of Service url: https://www.autodesk.com/company/legal-notices-trademarks/terms-of-service-autodesk360-web-services/autodesk-web-services-api-terms-of-service servers: - url: https://developer.api.autodesk.com description: Production security: - OAuth2ThreeLegged: - account:read tags: - name: Metadata paths: /modelderivative/v2/designdata/{urn}/metadata: get: operationId: getMetadata summary: Autodesk Get Metadata description: Returns a list of model views (viewables) available for the source design. Each viewable has a GUID that can be used to query its object tree and properties. tags: - Metadata parameters: - name: urn in: path required: true schema: type: string responses: '200': description: Successfully retrieved metadata. content: application/json: schema: $ref: '#/components/schemas/MetadataResponse' '401': description: Unauthorized. '404': description: Metadata not found. /modelderivative/v2/designdata/{urn}/metadata/{guid}: get: operationId: getObjectTree summary: Autodesk Get Object Tree description: Returns the object hierarchy tree for a specific viewable within the source design. tags: - Metadata parameters: - name: urn in: path required: true schema: type: string - name: guid in: path required: true description: The GUID of the viewable. schema: type: string - name: forceget in: query required: false description: Set to true to force fetching the full tree instead of using pagination. schema: type: boolean responses: '200': description: Successfully retrieved object tree. content: application/json: schema: $ref: '#/components/schemas/ObjectTreeResponse' '202': description: Object tree is being generated. Retry later. /modelderivative/v2/designdata/{urn}/metadata/{guid}/properties: get: operationId: getProperties summary: Autodesk Get All Properties description: Returns the properties of all objects in a specific viewable. For large models, use the forceget parameter to ensure all data is returned. tags: - Metadata parameters: - name: urn in: path required: true schema: type: string - name: guid in: path required: true schema: type: string - name: forceget in: query required: false schema: type: boolean - name: objectid in: query required: false description: Filter properties by a specific object ID. schema: type: integer responses: '200': description: Successfully retrieved properties. content: application/json: schema: $ref: '#/components/schemas/PropertiesResponse' '202': description: Properties are being generated. Retry later. /modelderivative/v2/designdata/{urn}/metadata/{guid}/properties:query: post: operationId: queryProperties summary: Autodesk Query Properties description: Returns a filtered set of properties for a viewable based on specified criteria. Supports pagination for large result sets. tags: - Metadata parameters: - name: urn in: path required: true schema: type: string - name: guid in: path required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PropertiesQuery' responses: '200': description: Successfully queried properties. content: application/json: schema: $ref: '#/components/schemas/PropertiesResponse' /parameters/v1/metadata/specs: get: operationId: getSpecs summary: Autodesk List Specs description: Returns available spec types (data types) for parameter definitions (e.g., text, number, integer, length, area, volume, angle). tags: - Metadata responses: '200': description: Successfully retrieved specs. content: application/json: schema: $ref: '#/components/schemas/SpecsResponse' /parameters/v1/metadata/categories: get: operationId: getCategories summary: Autodesk List Categories description: Returns available Revit categories for parameter binding. tags: - Metadata responses: '200': description: Successfully retrieved categories. content: application/json: schema: $ref: '#/components/schemas/CategoriesResponse' /parameters/v1/metadata/disciplines: get: operationId: getDisciplines summary: Autodesk List Disciplines description: Returns available disciplines for parameter classification. tags: - Metadata responses: '200': description: Successfully retrieved disciplines. content: application/json: schema: $ref: '#/components/schemas/DisciplinesResponse' /parameters/v1/metadata/units: get: operationId: getUnits summary: Autodesk List Units description: Returns available unit types for parameter definitions. tags: - Metadata parameters: - name: filter[specId] in: query required: false description: Filter units by spec ID. schema: type: string responses: '200': description: Successfully retrieved units. content: application/json: schema: $ref: '#/components/schemas/UnitsResponse' components: schemas: PropertiesResponse: type: object properties: data: type: object properties: type: type: string example: properties collection: type: array items: type: object properties: objectid: type: integer name: type: string externalId: type: string properties: type: object additionalProperties: true ObjectTreeResponse: type: object properties: data: type: object properties: type: type: string example: objects objects: type: array items: $ref: '#/components/schemas/ObjectNode' CategoriesResponse: type: object properties: results: type: array items: type: object properties: id: type: string name: type: string DisciplinesResponse: type: object properties: results: type: array items: type: object properties: id: type: string name: type: string ObjectNode: type: object properties: objectid: type: integer name: type: string objects: type: array items: $ref: '#/components/schemas/ObjectNode' SpecsResponse: type: object properties: results: type: array items: type: object properties: id: type: string name: type: string isBuiltIn: type: boolean UnitsResponse: type: object properties: results: type: array items: type: object properties: id: type: string name: type: string specId: type: string symbol: type: string PropertiesQuery: type: object properties: query: type: object properties: $prefix: type: array items: type: string $contains: type: array items: type: string $between: type: array items: {} $eq: type: array items: {} $le: type: array items: {} $ge: type: array items: {} $gt: type: array items: {} $lt: type: array items: {} $ne: type: array items: {} $in: type: array items: {} $nin: type: array items: {} fields: type: array description: List of property names to return. items: type: string pagination: type: object properties: offset: type: integer limit: type: integer MetadataResponse: type: object properties: data: type: object properties: type: type: string example: metadata metadata: type: array items: type: object properties: name: type: string guid: type: string role: type: string enum: - 3d - 2d isMasterView: type: boolean securitySchemes: OAuth2ThreeLegged: type: oauth2 flows: authorizationCode: authorizationUrl: https://developer.api.autodesk.com/authentication/v2/authorize tokenUrl: https://developer.api.autodesk.com/authentication/v2/token scopes: account:read: Read account data account:write: Write account data