openapi: 3.0.0
info:
title: Construction.Account.Admin Account Management Folders API
version: '1.0'
contact:
name: Autodesk Plaform Services
url: https://aps.autodesk.com/
email: aps.help@autodesk.com
termsOfService: https://www.autodesk.com/company/legal-notices-trademarks/terms-of-service-autodesk360-web-services/forge-platform-web-services-api-terms-of-service
x-support: https://stackoverflow.com/questions/tagged/autodesk-platform-services
description: 'The Account Admin API automates creating and managing projects, assigning and managing project users, and managing member and partner company directories. You can also synchronize data with external systems.
'
servers:
- url: https://developer.api.autodesk.com
security:
- 2-legged: []
- 3-legged: []
tags:
- name: Folders
paths:
/data/v1/projects/{project_id}/folders/{folder_id}:
parameters:
- $ref: '#/components/parameters/project_id'
- $ref: '#/components/parameters/folder_id'
get:
tags:
- Folders
operationId: getFolder
summary: Get a Folder
description: 'Returns the folder specified by the ``folder_id`` parameter from within the project identified by the ``project_id`` parameter. All folders and subfolders within a project (including the root folder) have a unique ID.
**Note:** This operation supports Autodesk Construction Cloud (ACC) Projects. For more information, see the [ACC Platform API documentation](https://en.docs.acc.v1/overview/introduction/). '
security:
- 2-legged:
- data:read
- 3-legged:
- data:read
parameters:
- $ref: '#/components/parameters/If-Modified-Since'
- $ref: '#/components/parameters/x-user-id'
responses:
'200':
description: The specified folder was successfully retrieved.
content:
application/json:
schema:
$ref: '#/components/schemas/Folder'
'304':
$ref: '#/components/responses/304-general'
'400':
$ref: '#/components/responses/400-general'
'403':
$ref: '#/components/responses/403-general'
'404':
$ref: '#/components/responses/404-general'
patch:
tags:
- Folders
operationId: patchFolder
summary: Modify a Folder
description: 'Renames, moves, hides, or unhides a folder. Marking a BIM 360 Docs folder as hidden effectively deletes it. You can restore it by changing its ``hidden`` attribute. You can also move BIM 360 Docs folders by changing their parent folder.
You cannot permanently delete BIM 360 Docs folders. They are tagged as hidden folders and are removed from the BIM 360 Docs UI and from regular Data Management API responses. You can use the hidden filter (``filter[hidden]=true``) to get a list of deleted folders with the [List Folder Contents](/en/docs/data/v2/reference/http/projects-project_id-folders-folder_id-contents-GET/) operation.
Before you use the Data Management API to access BIM 360 Docs folders, provision your app through the BIM 360 Account Administrator portal. For details, see the [Manage Access to Docs tutorial](/en/docs/bim360/v1/tutorials/getting-started/manage-access-to-docs/).
**Note:** This operation supports Autodesk Construction Cloud (ACC) Projects. For more information, see the [ACC Platform API documentation](/en.docs.acc.v1/overview/introduction/). '
security:
- 2-legged:
- data:write
- 3-legged:
- data:write
parameters:
- $ref: '#/components/parameters/x-user-id'
responses:
'200':
description: The folder was successfully modified.
content:
application/json:
schema:
$ref: '#/components/schemas/Folder'
'400':
$ref: '#/components/responses/400-general'
'403':
$ref: '#/components/responses/403-general'
'404':
$ref: '#/components/responses/404-general'
'423':
$ref: '#/components/responses/423-general'
requestBody:
content:
application/vnd.api+json:
schema:
$ref: '#/components/schemas/ModifyFolderPayload'
description: Describe the folder to be patched.
x-folder-id: projects-project_id-folders-folder_id-PATCH
/data/v1/projects/{project_id}/folders/{folder_id}/parent:
parameters:
- $ref: '#/components/parameters/project_id'
- $ref: '#/components/parameters/folder_id'
get:
tags:
- Folders
operationId: getFolderParent
summary: Get Parent of a Folder
description: 'Returns the parent folder of the specified folder. In a project, folders are organized in a hierarchy. Each folder except for the root folder has a parent folder.
**Note:** This operation supports Autodesk Construction Cloud (ACC) Projects. For more information, see the [ACC Platform API documentation](https://en.docs.acc.v1/overview/introduction/). '
security:
- 2-legged:
- data:read
- 3-legged:
- data:read
parameters:
- $ref: '#/components/parameters/x-user-id'
responses:
'200':
description: The parent folder was retrieved successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/Folder'
'400':
$ref: '#/components/responses/400-general'
'403':
$ref: '#/components/responses/403-general'
'404':
$ref: '#/components/responses/404-general'
x-folder-id: projects-project_id-folders-folder_id-parent-GET
/data/v1/projects/{project_id}/folders/{folder_id}/contents:
parameters:
- $ref: '#/components/parameters/project_id'
- $ref: '#/components/parameters/folder_id'
get:
tags:
- Folders
operationId: getFolderContents
summary: List Folder Contents
description: 'Returns a list of items and folders within the specified folder. Items represent word documents, fusion design files, drawings, spreadsheets, etc.
The resources contained in the ``included`` array of the response are their tip versions.
**Note:** This operation supports Autodesk Construction Cloud (ACC) Projects. For more information, see the [ACC Platform API documentation](https://en.docs.acc.v1/overview/introduction/). '
security:
- 2-legged:
- data:read
- 3-legged:
- data:read
parameters:
- $ref: '#/components/parameters/x-user-id'
- $ref: '#/components/parameters/filter_type'
- $ref: '#/components/parameters/filter_id'
- $ref: '#/components/parameters/filter_extension_type'
- $ref: '#/components/parameters/filter_lastModifiedTimeRollup'
- $ref: '#/components/parameters/page_number'
- $ref: '#/components/parameters/page_limit'
- $ref: '#/components/parameters/includeHidden'
responses:
'200':
description: The content of the specified folder was successfully returned.
content:
application/json:
schema:
$ref: '#/components/schemas/FolderContents'
'400':
$ref: '#/components/responses/400-general'
'403':
$ref: '#/components/responses/403-general'
'404':
$ref: '#/components/responses/404-general'
/data/v1/projects/{project_id}/folders/{folder_id}/refs:
parameters:
- $ref: '#/components/parameters/project_id'
- $ref: '#/components/parameters/folder_id'
get:
tags:
- Folders
operationId: getFolderRefs
summary: List Related Resources for a Folder
description: 'Returns the resources (items, folders, and versions) that have a custom relationship with the specified folder. Custom relationships can be established between a folder and other resources within the data domain service (folders, items, and versions).
Each relationship is defined by the id of the object at the other end of the relationship, together with type, attributes, and relationships links.
Callers will typically use a filter parameter to restrict the response to the custom relationship types (``filter[meta.refType]``) they are interested in.
**Note:** This operation supports Autodesk Construction Cloud (ACC) Projects. For more information, see the [ACC Platform API documentation](https://en.docs.acc.v1/overview/introduction/). '
security:
- 2-legged:
- data:read
- 3-legged:
- data:read
parameters:
- $ref: '#/components/parameters/x-user-id'
- $ref: '#/components/parameters/filter_type_version'
- $ref: '#/components/parameters/filter_id'
- $ref: '#/components/parameters/filter_extension_type'
responses:
'200':
description: The list of related resources was retrieved successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/FolderRefs'
'400':
$ref: '#/components/responses/400-general'
'403':
$ref: '#/components/responses/403-general'
'404':
$ref: '#/components/responses/404-general'
/data/v1/projects/{project_id}/folders/{folder_id}/search:
parameters:
- $ref: '#/components/parameters/project_id'
- $ref: '#/components/parameters/folder_id'
get:
tags:
- Folders
operationId: getFolderSearch
summary: List Folder and Subfolder Contents
description: "Searches the specified folder and its subfolders and returns a list of the latest versions of the items you can access.\n\n\nUse the ``filter`` query string parameter to narrow down the list as appropriate. You can filter by the following properties of the version payload: \n\n- ``type`` property, \n- ``id`` property, \n- any of the attributes object properties. \n\nFor example, you can filter by ``createTime`` and ``mimeType``. It returns tip versions (latest versions) of properties where the filter conditions are satisfied. To verify the properties of the attributes object for a specific version, use the [Get a Version](/en/docs/data/v2/reference/http/projects-project_id-versions-version_id-GET/) operation.\n\nTo list the immediate contents of the folder without parsing subfolders, use the [List Folder Contents](/en/docs/data/v2/reference/http/projects-project_id-folders-folder_id-contents-GET/) operation.\n\n**Note:** This operation supports Autodesk Construction Cloud (ACC) Projects. For more information, see the [ACC Platform API documentation](https://en.docs.acc.v1/overview/introduction/). "
security:
- 3-legged:
- data:read
- data:search
parameters:
- $ref: '#/components/parameters/filter'
- $ref: '#/components/parameters/page_number'
responses:
'200':
description: 'The contents of the folder and its subfolders were successfully returned. '
content:
application/json:
schema:
$ref: '#/components/schemas/Search'
'400':
$ref: '#/components/responses/400-general'
'403':
$ref: '#/components/responses/403-general'
'404':
$ref: '#/components/responses/404-general'
/data/v1/projects/{project_id}/folders/{folder_id}/relationships/refs:
parameters:
- $ref: '#/components/parameters/folder_id'
- $ref: '#/components/parameters/project_id'
get:
tags:
- Folders
operationId: getFolderRelationshipsRefs
summary: List Custom Relationships for a Folder
description: "Returns the custom relationships associated with the specified folder. Custom relationships can be established between a folder and other resources within the data domain service (folders, items, and versions).\n\nEach relationship is defined by the ID of the object at the other end of the relationship, together with type, specific reference meta including extension data.\nCallers will typically use a filter parameter to restrict the response to the custom relationship types (``filter[meta.refType]``) they are interested in.\nThe response body will have an included array that contains the resources in the relationship, which is essentially what is returned by the [List Related Resources for a Folder](/en/docs/data/v2/reference/http/projects-project_id-folders-folder_id-refs-GET/) operation. \n\n**Note:** This operation supports Autodesk Construction Cloud (ACC) Projects. For more information, see the [ACC Platform API documentation](https://en.docs.acc.v1/overview/introduction/). "
security:
- 2-legged:
- data:read
- 3-legged:
- data:read
parameters:
- $ref: '#/components/parameters/x-user-id'
- $ref: '#/components/parameters/filter_type_version'
- $ref: '#/components/parameters/filter_id'
- $ref: '#/components/parameters/filter_refType'
- $ref: '#/components/parameters/filter_direction'
- $ref: '#/components/parameters/filter_extension_type'
responses:
'200':
description: The list of custom relationships was successfully retrieved.
content:
application/json:
schema:
$ref: '#/components/schemas/RelationshipRefs'
'400':
$ref: '#/components/responses/400-general'
'403':
$ref: '#/components/responses/403-general'
'404':
$ref: '#/components/responses/404-general'
post:
tags:
- Folders
operationId: createFolderRelationshipsRef
summary: Create a Custom Relationship for a Folder
description: Creates a custom relationship between a folder and another resource within the data domain service (folder, item, or version).
security:
- 2-legged:
- data:create
- 3-legged:
- data:create
parameters:
- $ref: '#/components/parameters/x-user-id'
responses:
'204':
description: The reference between resources was successfully created.
'400':
$ref: '#/components/responses/400-general'
'403':
$ref: '#/components/responses/403-general'
'404':
$ref: '#/components/responses/404-general'
requestBody:
content:
application/vnd.api+json:
schema:
$ref: '#/components/schemas/RelationshipRefsPayload'
description: ''
/data/v1/projects/{project_id}/folders/{folder_id}/relationships/links:
parameters:
- $ref: '#/components/parameters/project_id'
- $ref: '#/components/parameters/folder_id'
get:
tags:
- Folders
operationId: getFolderRelationshipsLinks
summary: List Relationship Links for a Folder
description: "Returns a list of links for the specified folder. \n\nCustom relationships can be established between a folder and other external resources residing outside the data domain service. A link’s ``href`` attribute defines the target URI to access a resource.\n\n**Note:** This operation supports Autodesk Construction Cloud (ACC) Projects. For more information, see the [ACC Platform API documentation](https://en.docs.acc.v1/overview/introduction/). "
security:
- 2-legged:
- data:read
- 3-legged:
- data:read
parameters:
- $ref: '#/components/parameters/x-user-id'
responses:
'200':
description: Successful retrieval of the links collection associated with a specific resource.
content:
application/json:
schema:
$ref: '#/components/schemas/RelationshipLinks'
'400':
$ref: '#/components/responses/400-general'
'403':
$ref: '#/components/responses/403-general'
'404':
$ref: '#/components/responses/404-general'
/data/v1/projects/{project_id}/folders:
parameters:
- $ref: '#/components/parameters/project_id'
post:
tags:
- Folders
operationId: createFolder
summary: Create a Folder
description: 'Creates a new folder in the specified project. Use the ``parent`` attribute in the request body to specify where in the hierarchy the new folder should be located. Folders can be nested up to 25 levels deep.
Use the `Modify a Folder </en/docs/data/v2/reference/http/projects-project_id-folders-folder_id-PATCH/>`_ operation to delete and restore folders.
Before you use the Data Management API to access BIM 360 Docs folders, provision your app through the BIM 360 Account Administrator portal. For details, see the [Manage Access to Docs tutorial](/en/docs/bim360/v1/tutorials/getting-started/manage-access-to-docs/).
**Note:** This operation supports Autodesk Construction Cloud (ACC) Projects. For more information, see the [ACC Platform API documentation](https://en.docs.acc.v1/overview/introduction/). '
security:
- 2-legged:
- data:create
- 3-legged:
- data:create
parameters:
- $ref: '#/components/parameters/x-user-id'
responses:
'201':
description: Successful creation of a folder.
content:
application/json:
schema:
$ref: '#/components/schemas/Folder'
'400':
$ref: '#/components/responses/400-general'
'403':
$ref: '#/components/responses/403-general'
'404':
$ref: '#/components/responses/404-general'
'409':
$ref: '#/components/responses/409-general'
'423':
$ref: '#/components/responses/423-general'
requestBody:
content:
application/vnd.api+json:
schema:
$ref: '#/components/schemas/FolderPayload'
description: ''
components:
responses:
403-general:
description: The request was successfully validated but permission is not granted, or the application has not been allowed access. Do not try again unless you resolve permissions first.
content:
application/json:
schema:
type: object
x-examples:
Example 1:
jsonapi: {}
links: {}
data: []
meta:
warnings:
- Id: null
HttpStatusCode: '403'
ErrorCode: BIM360DM_ERROR
Title: Unable to get hubs from BIM360DM APAC.
Detail: You don't have permission to access this API
AboutLink: null
Source: null
meta: null
properties:
jsonapi:
type: object
description: The JSON API object.
links:
type: object
description: An object intended to contain the URI of a resource. Empty in this case, because an error has occurred.
data:
type: array
description: An object intended to contain the return data. Empty in this case, because an error has occurred.
items:
type: object
meta:
type: object
description: Contains information about the error that occurred.
properties:
warnings:
type: array
description: An array of objects, where each element of the array represents a warning.
items:
type: object
properties:
Id:
description: An ID assigned to the warning.
nullable: true
HttpStatusCode:
type: string
description: The HTTP status code returned in response to the request.
ErrorCode:
type: string
description: A code that indicates what went wrong.
Title:
type: string
description: A quick summary of the issue, at a glance.
Detail:
type: string
description: A more comprehensive explanation of the issue, providing specific information and potential solutions, if any.
AboutLink:
description: A hyperlink to documentation about the issue.
nullable: true
Source:
description: Information about the service that detected the issue.
nullable: true
meta:
description: Additional information about the issue.
nullable: true
409-general:
description: The specified resource already exists or has been modified.
content:
application/json:
schema:
properties:
id:
type: string
304-general:
description: The specified resource has not been modified since.
content:
application/json:
schema:
properties:
id:
type: string
404-general:
description: The specified resource was not found.
content:
application/json:
schema:
properties:
id:
type: string
400-general:
description: The request could not be understood by the server due to malformed syntax or missing request headers. The client SHOULD NOT repeat the request without modifications. The response body may give an indication of what is wrong with the request.
content:
application/json:
schema:
properties:
id:
type: string
423-general:
description: The source or destination resource is locked or being modified.
content:
application/json:
schema:
properties:
id:
type: string
schemas:
json_api_meta_link:
title: json_api_meta_link
x-stoplight:
id: 6c1450io6o3zx
type: object
description: Meta-information on links to this resource.
properties:
link:
$ref: '#/components/schemas/json_api_link'
x-stoplight:
id: haazb0d04arzm
type_link:
type: string
x-stoplight:
id: f84280dd62b59
enum:
- links
description: The type of the resource. Possible values are ``links``.
type_entity:
type: string
enum:
- folders
- items
- versions
description: The type of the resource. Possible values are ``folders``, ``items``, ``versions``.
web_view_link:
title: web_view_link
x-stoplight:
id: b0lyf514eksq4
type: object
description: An object containing a link that opens the resource in a browser.
properties:
href:
type: string
x-stoplight:
id: j0xj0hp05wo0l
description: The location (URL) of the resource the link points to.
required:
- href
json_api_relationships_links_versions:
title: json_api_relationships_links_internal
x-stoplight:
id: da5pz40rvqocl
type: object
description: Information about the existing versions of the item.
properties:
links:
$ref: '#/components/schemas/json_api_links_related'
x-stoplight:
id: s7etnb8jkm02f
required:
- links
type_folder:
type: string
enum:
- folders
description: The type of the resource. Possible values are ``folders``.
json_api_relationships_links_internal:
title: json_api_relationships_links_internal
x-stoplight:
id: da5pz40rvqocl
type: object
description: Information on resources that are found under this resource.
properties:
links:
$ref: '#/components/schemas/json_api_links_related'
x-stoplight:
id: s7etnb8jkm02f
required:
- links
VersionData:
title: 'Version Data:'
description: A container of data describing a version.
x-stoplight:
id: eb2zg50zz7eul
type: object
properties:
type:
$ref: '#/components/schemas/type_version'
id:
type: string
minLength: 1
description: URN of the version object.
attributes:
$ref: '#/components/schemas/VersionAttributes'
relationships:
type: object
description: Contains information on other resources related to this resource.
required:
- item
- refs
- links
properties:
item:
type: object
description: Contains information about the item this is a version of.
properties:
links:
$ref: '#/components/schemas/json_api_links_related'
x-stoplight:
id: fklud6hg20fwz
data:
$ref: '#/components/schemas/json_api_type_id'
x-stoplight:
id: g661wq5zxnxxz
refs:
$ref: '#/components/schemas/json_api_relationships_links_refs'
links:
$ref: '#/components/schemas/json_api_relationships_links_links'
storage:
type: object
x-stoplight:
id: p77erscy2c106
description: Contains information about the storage location that contains the binary data of this version.
properties:
data:
$ref: '#/components/schemas/json_api_type_id'
meta:
$ref: '#/components/schemas/json_api_meta_link'
derivatives:
type: object
x-stoplight:
id: 1by3hohlaohio
description: Contains information you can use to retrieve the derivatives of this version.
properties:
data:
$ref: '#/components/schemas/json_api_type_id'
meta:
$ref: '#/components/schemas/json_api_meta_link'
thumbnails:
type: object
x-stoplight:
id: hrzlgcn3r896v
description: 'Contains the information required to retrieve thumbnails of this version from the Model Derivative service. '
properties:
data:
$ref: '#/components/schemas/json_api_type_id'
meta:
$ref: '#/components/schemas/json_api_meta_link'
downloadFormats:
type: object
x-stoplight:
id: r875g22qvyi3v
description: Contains the endpoint you can use to find out what formats the version can be downloaded as.
properties:
links:
$ref: '#/components/schemas/json_api_links_related'
x-stoplight:
id: 41n0be6z8nbng
links:
$ref: '#/components/schemas/json_api_links_self_and_web_view'
required:
- type
- id
- attributes
- relationships
base_attributes_extension_object_with_schema_link:
title: 'base_attributes_extension_object_with_schema_link:'
x-stoplight:
id: aj8zaihf7alzp
type: object
description: A container of additional properties that extends this resource.
properties:
type:
type: string
x-stoplight:
id: jdli2qhh88jq3
description: The Type ID of the schema that defines the structure of the ``extension.data`` object.
version:
type: string
x-stoplight:
id: x1l84lpe0ce01
description: The version of the schema that applies to the ``extension.data`` object.
schema:
type: object
x-stoplight:
id: el8fixpzd4k3a
description: A container for the hyperlink to the schema of the type.
required:
- href
properties:
href:
type: string
x-stoplight:
id: oh11qown58iob
description: A hypertext reference to the location of the referenced resource.
data:
type: object
x-stoplight:
id: 5h0r1ilaapxra
description: The object that contains the additional properties that extends this resource.
additionalProperties:
type: object
description: 'Key-value pairs that contain the name and data of additional properties.
'
required:
- type
- version
- schema
type_version:
type: string
x-stoplight:
id: f8e280dd63a5b
enum:
- versions
description: The type of the resource. Possible values are ``versions``.
type_item:
type: string
enum:
- items
description: The type of the resource. Possible values are ``items``.
folder_extension_with_schema_link:
type: object
description: A container of additional properties that extends the default properties of this resource.
properties:
type:
type: string
minLength: 1
description: The type of folder the resource represents.
version:
type: string
minLength: 1
description: The version of the folder type.
schema:
$ref: '#/components/schemas/json_api_link'
data:
type: object
additionalProperties:
type: object
description: 'JSON objects that contain additional properties specific to the folder type.
'
description: The object that contains the additional properties, which makes this resource extensible.
required:
- type
- version
- schema
MetaRefs:
description: Metadata on the resources referenced by this resource.
type: object
title: MetaRefs
properties:
refType:
$ref: '#/components/schemas/type_ref'
direction:
$ref: '#/components/schemas/metarefs_direction'
fromId:
type: string
x-stoplight:
id: u4hxp7i1mdfuh
description: The ID of the resource from where data flows.
fromType:
$ref: '#/components/schemas/type_entity'
x-stoplight:
id: e061oc1d2clmi
toId:
type: string
x-stoplight:
id: 4hwdw63giy88s
description: The ID of the resource to where the data flows.
toType:
$ref: '#/components/schemas/type_entity'
x-stoplight:
id: xnhp75ludslo9
extension:
$ref: '#/components/schemas/base_attributes_extension_object_with_schema_link'
x-stoplight:
id: wnoe4cjsepp56
FolderPayload:
description: Describe the folder to be created.
x-stoplight:
id: 4dfe49f8c9ec7
type: object
x-examples:
example-1:
jsonapi:
version: '1.0'
data:
type: folders
attributes:
name: Plans
extension:
type: folders:autodesk.core:Folder
version: '1.0'
relationships:
parent:
data:
type: folders
id: urn:adsk.wipprod:dm.folder:sdfedf8wefl
title: FolderPayload
properties:
jsonapi:
$ref: '#/components/schemas/json_api_version'
data:
type: object
description: The data that describes the folder to be created.
required:
- type
- attributes
- relationships
properties:
type:
$ref: '#/components/schemas/type_folder'
attributes:
type: object
description: The properties of the folder to be created.
required:
- name
- extension
properties:
name:
type: string
min
# --- truncated at 32 KB (122 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/autodesk-fusion/refs/heads/main/openapi/autodesk-fusion-folders-api-openapi.yml