openapi: 3.1.0 info: title: Autodesk Construction Cloud Admin Companies Projects API description: The Autodesk Construction Cloud (ACC) Admin API provides programmatic management of ACC accounts, projects, users, and company settings. REST APIs enable automation of project provisioning, user access control, and account-level administration across ACC and BIM 360 deployments. version: 1.0.0 contact: name: Autodesk Platform Services url: https://aps.autodesk.com/en/docs/acc/v1/overview/ servers: - url: https://developer.api.autodesk.com description: Autodesk Platform Services API security: - oauth2ThreeLegged: [] - oauth2TwoLegged: [] tags: - name: Projects description: ACC project management paths: /construction/admin/v1/accounts/{accountId}/projects: get: operationId: getAccountProjects summary: Get account projects description: Retrieve all projects associated with the specified ACC account. Supports filtering by project status, project type, and name search. tags: - Projects parameters: - name: accountId in: path required: true description: The unique identifier of the ACC account schema: type: string - name: filter[status] in: query description: Filter by project status schema: type: string enum: - active - inactive - suspended - name: filter[name] in: query description: Filter projects by name (partial match) schema: type: string - name: include in: query description: Include related resources schema: type: string - name: limit in: query schema: type: integer default: 20 maximum: 200 - name: offset in: query schema: type: integer default: 0 responses: '200': description: List of projects content: application/json: schema: $ref: '#/components/schemas/ProjectsResponse' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' post: operationId: createProject summary: Create a new project description: Create a new construction project in the specified ACC account. tags: - Projects parameters: - name: accountId in: path required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ProjectRequest' responses: '201': description: Project created content: application/json: schema: $ref: '#/components/schemas/ProjectResponse' '400': $ref: '#/components/responses/BadRequest' /construction/admin/v1/accounts/{accountId}/projects/{projectId}: get: operationId: getProject summary: Get project by ID description: Retrieve detailed information about a specific ACC project. tags: - Projects parameters: - name: accountId in: path required: true schema: type: string - name: projectId in: path required: true schema: type: string responses: '200': description: Project details content: application/json: schema: $ref: '#/components/schemas/ProjectResponse' '404': $ref: '#/components/responses/NotFound' patch: operationId: updateProject summary: Update project description: Update project settings, status, or metadata. tags: - Projects parameters: - name: accountId in: path required: true schema: type: string - name: projectId in: path required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ProjectUpdateRequest' responses: '200': description: Project updated content: application/json: schema: $ref: '#/components/schemas/ProjectResponse' components: responses: NotFound: description: Not found content: application/json: schema: $ref: '#/components/schemas/Error' Forbidden: description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error' Unauthorized: description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' BadRequest: description: Bad request content: application/json: schema: $ref: '#/components/schemas/Error' schemas: ProjectRequest: type: object required: - name - startDate - projectType properties: name: type: string startDate: type: string format: date endDate: type: string format: date projectValue: type: object properties: value: type: number currency: type: string status: type: string enum: - active - inactive jobNumber: type: string timezone: type: string language: type: string constructionType: type: string deliveryMethod: type: string contractType: type: string Pagination: type: object properties: limit: type: integer offset: type: integer totalResults: type: integer nextUrl: type: string Project: type: object properties: id: type: string description: Unique project identifier accountId: type: string name: type: string startDate: type: string format: date endDate: type: string format: date projectValue: type: object properties: value: type: number currency: type: string status: type: string enum: - active - inactive - suspended jobNumber: type: string addressLine1: type: string addressLine2: type: string city: type: string stateOrProvince: type: string postalCode: type: string country: type: string timezone: type: string language: type: string constructionType: type: string deliveryMethod: type: string contractType: type: string currentPhase: type: string businessUnitsId: type: string imageUrl: type: string createdAt: type: string format: date-time updatedAt: type: string format: date-time ProjectsResponse: type: object properties: results: type: array items: $ref: '#/components/schemas/Project' pagination: $ref: '#/components/schemas/Pagination' ProjectResponse: type: object properties: project: $ref: '#/components/schemas/Project' ProjectUpdateRequest: type: object properties: name: type: string status: type: string enum: - active - inactive - suspended endDate: type: string format: date currentPhase: type: string Error: type: object properties: code: type: string message: type: string detail: type: string 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: Modify account data data:read: Read project data data:write: Write project data oauth2TwoLegged: type: oauth2 flows: clientCredentials: tokenUrl: https://developer.api.autodesk.com/authentication/v2/token scopes: account:read: Read account data data:read: Read project data