Autodesk · Capability
Autodesk ACC Account Admin API
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.
What You Can Do
GET
Getprojects
— Autodesk List Projects
/construction/admin/v1/accounts/{accountId}/projects
POST
Createproject
— Autodesk Create Project
/construction/admin/v1/accounts/{accountId}/projects
GET
Getproject
— Autodesk Get Project
/construction/admin/v1/accounts/{accountId}/projects/{projectId}
PATCH
Updateproject
— Autodesk Update Project
/construction/admin/v1/accounts/{accountId}/projects/{projectId}
GET
Getprojectusers
— Autodesk List Project Users
/construction/admin/v1/accounts/{accountId}/projects/{projectId}/users
POST
Addprojectuser
— Autodesk Add Project User
/construction/admin/v1/accounts/{accountId}/projects/{projectId}/users
PATCH
Updateprojectuser
— Autodesk Update Project User
/construction/admin/v1/accounts/{accountId}/projects/{projectId}/users/{userId}
DELETE
Removeprojectuser
— Autodesk Remove Project User
/construction/admin/v1/accounts/{accountId}/projects/{projectId}/users/{userId}
GET
Getaccountusers
— Autodesk List Account Users
/construction/admin/v1/accounts/{accountId}/users
GET
Getcompanies
— Autodesk List Companies
/construction/admin/v1/accounts/{accountId}/companies
POST
Createcompany
— Autodesk Create Company
/construction/admin/v1/accounts/{accountId}/companies
GET
Getindustryroles
— Autodesk List Industry Roles
/construction/admin/v1/projects/{projectId}/industryRoles
MCP Tools
getprojects
Autodesk List Projects
read-only
idempotent
createproject
Autodesk Create Project
getproject
Autodesk Get Project
read-only
idempotent
updateproject
Autodesk Update Project
getprojectusers
Autodesk List Project Users
read-only
idempotent
addprojectuser
Autodesk Add Project User
updateprojectuser
Autodesk Update Project User
removeprojectuser
Autodesk Remove Project User
idempotent
getaccountusers
Autodesk List Account Users
read-only
idempotent
getcompanies
Autodesk List Companies
read-only
idempotent
createcompany
Autodesk Create Company
getindustryroles
Autodesk List Industry Roles
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Autodesk ACC Account Admin 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.
tags:
- Autodesk
- API
created: '2026-05-06'
modified: '2026-05-06'
capability:
consumes:
- type: http
namespace: autodesk
baseUri: https://developer.api.autodesk.com
description: Autodesk ACC Account Admin API HTTP API.
authentication:
type: bearer
token: '{{AUTODESK_TOKEN}}'
resources:
- name: construction-admin-v1-accounts-accountid-project
path: /construction/admin/v1/accounts/{accountId}/projects
operations:
- name: getprojects
method: GET
description: Autodesk List Projects
inputParameters:
- name: accountId
in: path
type: string
required: true
- name: filter[status]
in: query
type: string
- name: filter[name]
in: query
type: string
- name: filter[platform]
in: query
type: string
- name: sort
in: query
type: string
description: Sort field and direction (e.g., name asc, startDate desc).
- name: limit
in: query
type: integer
- name: offset
in: query
type: integer
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: createproject
method: POST
description: Autodesk Create Project
inputParameters:
- name: accountId
in: path
type: string
required: true
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: construction-admin-v1-accounts-accountid-project
path: /construction/admin/v1/accounts/{accountId}/projects/{projectId}
operations:
- name: getproject
method: GET
description: Autodesk Get Project
inputParameters:
- name: accountId
in: path
type: string
required: true
- name: projectId
in: path
type: string
required: true
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: updateproject
method: PATCH
description: Autodesk Update Project
inputParameters:
- name: accountId
in: path
type: string
required: true
- name: projectId
in: path
type: string
required: true
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: construction-admin-v1-accounts-accountid-project
path: /construction/admin/v1/accounts/{accountId}/projects/{projectId}/users
operations:
- name: getprojectusers
method: GET
description: Autodesk List Project Users
inputParameters:
- name: accountId
in: path
type: string
required: true
- name: projectId
in: path
type: string
required: true
- name: filter[email]
in: query
type: string
- name: filter[name]
in: query
type: string
- name: limit
in: query
type: integer
- name: offset
in: query
type: integer
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: addprojectuser
method: POST
description: Autodesk Add Project User
inputParameters:
- name: accountId
in: path
type: string
required: true
- name: projectId
in: path
type: string
required: true
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: construction-admin-v1-accounts-accountid-project
path: /construction/admin/v1/accounts/{accountId}/projects/{projectId}/users/{userId}
operations:
- name: updateprojectuser
method: PATCH
description: Autodesk Update Project User
inputParameters:
- name: accountId
in: path
type: string
required: true
- name: projectId
in: path
type: string
required: true
- name: userId
in: path
type: string
required: true
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: removeprojectuser
method: DELETE
description: Autodesk Remove Project User
inputParameters:
- name: accountId
in: path
type: string
required: true
- name: projectId
in: path
type: string
required: true
- name: userId
in: path
type: string
required: true
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: construction-admin-v1-accounts-accountid-users
path: /construction/admin/v1/accounts/{accountId}/users
operations:
- name: getaccountusers
method: GET
description: Autodesk List Account Users
inputParameters:
- name: accountId
in: path
type: string
required: true
- name: filter[email]
in: query
type: string
- name: filter[name]
in: query
type: string
- name: filter[status]
in: query
type: string
- name: limit
in: query
type: integer
- name: offset
in: query
type: integer
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: construction-admin-v1-accounts-accountid-compani
path: /construction/admin/v1/accounts/{accountId}/companies
operations:
- name: getcompanies
method: GET
description: Autodesk List Companies
inputParameters:
- name: accountId
in: path
type: string
required: true
- name: filter[name]
in: query
type: string
- name: filter[trade]
in: query
type: string
- name: limit
in: query
type: integer
- name: offset
in: query
type: integer
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: createcompany
method: POST
description: Autodesk Create Company
inputParameters:
- name: accountId
in: path
type: string
required: true
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: construction-admin-v1-projects-projectid-industr
path: /construction/admin/v1/projects/{projectId}/industryRoles
operations:
- name: getindustryroles
method: GET
description: Autodesk List Industry Roles
inputParameters:
- name: projectId
in: path
type: string
required: true
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
exposes:
- type: rest
port: 8080
namespace: autodesk-rest
description: REST adapter for Autodesk ACC Account Admin API.
resources:
- path: /construction/admin/v1/accounts/{accountId}/projects
name: getprojects
operations:
- method: GET
name: getprojects
description: Autodesk List Projects
call: autodesk.getprojects
with:
accountId: rest.accountId
outputParameters:
- type: object
mapping: $.
- path: /construction/admin/v1/accounts/{accountId}/projects
name: createproject
operations:
- method: POST
name: createproject
description: Autodesk Create Project
call: autodesk.createproject
with:
accountId: rest.accountId
outputParameters:
- type: object
mapping: $.
- path: /construction/admin/v1/accounts/{accountId}/projects/{projectId}
name: getproject
operations:
- method: GET
name: getproject
description: Autodesk Get Project
call: autodesk.getproject
with:
accountId: rest.accountId
projectId: rest.projectId
outputParameters:
- type: object
mapping: $.
- path: /construction/admin/v1/accounts/{accountId}/projects/{projectId}
name: updateproject
operations:
- method: PATCH
name: updateproject
description: Autodesk Update Project
call: autodesk.updateproject
with:
accountId: rest.accountId
projectId: rest.projectId
outputParameters:
- type: object
mapping: $.
- path: /construction/admin/v1/accounts/{accountId}/projects/{projectId}/users
name: getprojectusers
operations:
- method: GET
name: getprojectusers
description: Autodesk List Project Users
call: autodesk.getprojectusers
with:
accountId: rest.accountId
projectId: rest.projectId
outputParameters:
- type: object
mapping: $.
- path: /construction/admin/v1/accounts/{accountId}/projects/{projectId}/users
name: addprojectuser
operations:
- method: POST
name: addprojectuser
description: Autodesk Add Project User
call: autodesk.addprojectuser
with:
accountId: rest.accountId
projectId: rest.projectId
outputParameters:
- type: object
mapping: $.
- path: /construction/admin/v1/accounts/{accountId}/projects/{projectId}/users/{userId}
name: updateprojectuser
operations:
- method: PATCH
name: updateprojectuser
description: Autodesk Update Project User
call: autodesk.updateprojectuser
with:
accountId: rest.accountId
projectId: rest.projectId
userId: rest.userId
outputParameters:
- type: object
mapping: $.
- path: /construction/admin/v1/accounts/{accountId}/projects/{projectId}/users/{userId}
name: removeprojectuser
operations:
- method: DELETE
name: removeprojectuser
description: Autodesk Remove Project User
call: autodesk.removeprojectuser
with:
accountId: rest.accountId
projectId: rest.projectId
userId: rest.userId
outputParameters:
- type: object
mapping: $.
- path: /construction/admin/v1/accounts/{accountId}/users
name: getaccountusers
operations:
- method: GET
name: getaccountusers
description: Autodesk List Account Users
call: autodesk.getaccountusers
with:
accountId: rest.accountId
outputParameters:
- type: object
mapping: $.
- path: /construction/admin/v1/accounts/{accountId}/companies
name: getcompanies
operations:
- method: GET
name: getcompanies
description: Autodesk List Companies
call: autodesk.getcompanies
with:
accountId: rest.accountId
outputParameters:
- type: object
mapping: $.
- path: /construction/admin/v1/accounts/{accountId}/companies
name: createcompany
operations:
- method: POST
name: createcompany
description: Autodesk Create Company
call: autodesk.createcompany
with:
accountId: rest.accountId
outputParameters:
- type: object
mapping: $.
- path: /construction/admin/v1/projects/{projectId}/industryRoles
name: getindustryroles
operations:
- method: GET
name: getindustryroles
description: Autodesk List Industry Roles
call: autodesk.getindustryroles
with:
projectId: rest.projectId
outputParameters:
- type: object
mapping: $.
- type: mcp
port: 9090
namespace: autodesk-mcp
transport: http
description: MCP adapter for Autodesk ACC Account Admin API for AI agent use.
tools:
- name: getprojects
description: Autodesk List Projects
hints:
readOnly: true
destructive: false
idempotent: true
call: autodesk.getprojects
with:
accountId: tools.accountId
filter[status]: tools.filter[status]
filter[name]: tools.filter[name]
filter[platform]: tools.filter[platform]
sort: tools.sort
limit: tools.limit
offset: tools.offset
inputParameters:
- name: accountId
type: string
description: accountId
required: true
- name: filter[status]
type: string
description: filter[status]
- name: filter[name]
type: string
description: filter[name]
- name: filter[platform]
type: string
description: filter[platform]
- name: sort
type: string
description: Sort field and direction (e.g., name asc, startDate desc).
- name: limit
type: integer
description: limit
- name: offset
type: integer
description: offset
outputParameters:
- type: object
mapping: $.
- name: createproject
description: Autodesk Create Project
hints:
readOnly: false
destructive: false
idempotent: false
call: autodesk.createproject
with:
accountId: tools.accountId
inputParameters:
- name: accountId
type: string
description: accountId
required: true
outputParameters:
- type: object
mapping: $.
- name: getproject
description: Autodesk Get Project
hints:
readOnly: true
destructive: false
idempotent: true
call: autodesk.getproject
with:
accountId: tools.accountId
projectId: tools.projectId
inputParameters:
- name: accountId
type: string
description: accountId
required: true
- name: projectId
type: string
description: projectId
required: true
outputParameters:
- type: object
mapping: $.
- name: updateproject
description: Autodesk Update Project
hints:
readOnly: false
destructive: false
idempotent: false
call: autodesk.updateproject
with:
accountId: tools.accountId
projectId: tools.projectId
inputParameters:
- name: accountId
type: string
description: accountId
required: true
- name: projectId
type: string
description: projectId
required: true
outputParameters:
- type: object
mapping: $.
- name: getprojectusers
description: Autodesk List Project Users
hints:
readOnly: true
destructive: false
idempotent: true
call: autodesk.getprojectusers
with:
accountId: tools.accountId
projectId: tools.projectId
filter[email]: tools.filter[email]
filter[name]: tools.filter[name]
limit: tools.limit
offset: tools.offset
inputParameters:
- name: accountId
type: string
description: accountId
required: true
- name: projectId
type: string
description: projectId
required: true
- name: filter[email]
type: string
description: filter[email]
- name: filter[name]
type: string
description: filter[name]
- name: limit
type: integer
description: limit
- name: offset
type: integer
description: offset
outputParameters:
- type: object
mapping: $.
- name: addprojectuser
description: Autodesk Add Project User
hints:
readOnly: false
destructive: false
idempotent: false
call: autodesk.addprojectuser
with:
accountId: tools.accountId
projectId: tools.projectId
inputParameters:
- name: accountId
type: string
description: accountId
required: true
- name: projectId
type: string
description: projectId
required: true
outputParameters:
- type: object
mapping: $.
- name: updateprojectuser
description: Autodesk Update Project User
hints:
readOnly: false
destructive: false
idempotent: false
call: autodesk.updateprojectuser
with:
accountId: tools.accountId
projectId: tools.projectId
userId: tools.userId
inputParameters:
- name: accountId
type: string
description: accountId
required: true
- name: projectId
type: string
description: projectId
required: true
- name: userId
type: string
description: userId
required: true
outputParameters:
- type: object
mapping: $.
- name: removeprojectuser
description: Autodesk Remove Project User
hints:
readOnly: false
destructive: true
idempotent: true
call: autodesk.removeprojectuser
with:
accountId: tools.accountId
projectId: tools.projectId
userId: tools.userId
inputParameters:
- name: accountId
type: string
description: accountId
required: true
- name: projectId
type: string
description: projectId
required: true
- name: userId
type: string
description: userId
required: true
outputParameters:
- type: object
mapping: $.
- name: getaccountusers
description: Autodesk List Account Users
hints:
readOnly: true
destructive: false
idempotent: true
call: autodesk.getaccountusers
with:
accountId: tools.accountId
filter[email]: tools.filter[email]
filter[name]: tools.filter[name]
filter[status]: tools.filter[status]
limit: tools.limit
offset: tools.offset
inputParameters:
- name: accountId
type: string
description: accountId
required: true
- name: filter[email]
type: string
description: filter[email]
- name: filter[name]
type: string
description: filter[name]
- name: filter[status]
type: string
description: filter[status]
- name: limit
type: integer
description: limit
- name: offset
type: integer
description: offset
outputParameters:
- type: object
mapping: $.
- name: getcompanies
description: Autodesk List Companies
hints:
readOnly: true
destructive: false
idempotent: true
call: autodesk.getcompanies
with:
accountId: tools.accountId
filter[name]: tools.filter[name]
filter[trade]: tools.filter[trade]
limit: tools.limit
offset: tools.offset
inputParameters:
- name: accountId
type: string
description: accountId
required: true
- name: filter[name]
type: string
description: filter[name]
- name: filter[trade]
type: string
description: filter[trade]
- name: limit
type: integer
description: limit
- name: offset
type: integer
description: offset
outputParameters:
- type: object
mapping: $.
- name: createcompany
description: Autodesk Create Company
hints:
readOnly: false
destructive: false
idempotent: false
call: autodesk.createcompany
with:
accountId: tools.accountId
inputParameters:
- name: accountId
type: string
description: accountId
required: true
outputParameters:
- type: object
mapping: $.
- name: getindustryroles
description: Autodesk List Industry Roles
hints:
readOnly: true
destructive: false
idempotent: true
call: autodesk.getindustryroles
with:
projectId: tools.projectId
inputParameters:
- name: projectId
type: string
description: projectId
required: true
outputParameters:
- type: object
mapping: $.
binds:
- namespace: env
keys:
AUTODESK_TOKEN: AUTODESK_TOKEN