- List metadata instances on folder
- Get metadata instance on folder
- Create metadata instance on folder
- Update metadata instance on folder
- Remove metadata instance from folder
Retrieves all metadata for a given folder. This can not be used on the root
folder with ID 0
.
This operation is performed by calling function get_folder_metadata
.
See the endpoint docs at API Reference.
client.folder_metadata.get_folder_metadata(folder.id)
- folder_id
str
- The unique identifier that represent a folder. The ID for any folder can be determined by visiting this folder in the web application and copying the ID from the URL. For example, for the URL
https://*.app.box.com/folder/123
thefolder_id
is123
. The root folder of a Box account is always represented by the ID0
. Example: "12345"
- The unique identifier that represent a folder. The ID for any folder can be determined by visiting this folder in the web application and copying the ID from the URL. For example, for the URL
- extra_headers
Optional[Dict[str, Optional[str]]]
- Extra headers that will be included in the HTTP request.
This function returns a value of type Metadatas
.
Returns all the metadata associated with a folder.
This API does not support pagination and will therefore always return all of the metadata associated to the folder.
Retrieves the instance of a metadata template that has been applied to a
folder. This can not be used on the root folder with ID 0
.
This operation is performed by calling function get_folder_metadata_by_id
.
See the endpoint docs at API Reference.
client.folder_metadata.get_folder_metadata_by_id(
folder.id, GetFolderMetadataByIdScope.GLOBAL, "properties"
)
- folder_id
str
- The unique identifier that represent a folder. The ID for any folder can be determined by visiting this folder in the web application and copying the ID from the URL. For example, for the URL
https://*.app.box.com/folder/123
thefolder_id
is123
. The root folder of a Box account is always represented by the ID0
. Example: "12345"
- The unique identifier that represent a folder. The ID for any folder can be determined by visiting this folder in the web application and copying the ID from the URL. For example, for the URL
- scope
GetFolderMetadataByIdScope
- The scope of the metadata template Example: "global"
- template_key
str
- The name of the metadata template Example: "properties"
- extra_headers
Optional[Dict[str, Optional[str]]]
- Extra headers that will be included in the HTTP request.
This function returns a value of type MetadataFull
.
An instance of the metadata template that includes additional "key:value" pairs defined by the user or an application.
Applies an instance of a metadata template to a folder.
In most cases only values that are present in the metadata template
will be accepted, except for the global.properties
template which accepts
any key-value pair.
To display the metadata template in the Box web app the enterprise needs to be configured to enable Cascading Folder Level Metadata for the user in the admin console.
This operation is performed by calling function create_folder_metadata_by_id
.
See the endpoint docs at API Reference.
client.folder_metadata.create_folder_metadata_by_id(
folder.id, CreateFolderMetadataByIdScope.GLOBAL, "properties", {"abc": "xyz"}
)
- folder_id
str
- The unique identifier that represent a folder. The ID for any folder can be determined by visiting this folder in the web application and copying the ID from the URL. For example, for the URL
https://*.app.box.com/folder/123
thefolder_id
is123
. The root folder of a Box account is always represented by the ID0
. Example: "12345"
- The unique identifier that represent a folder. The ID for any folder can be determined by visiting this folder in the web application and copying the ID from the URL. For example, for the URL
- scope
CreateFolderMetadataByIdScope
- The scope of the metadata template Example: "global"
- template_key
str
- The name of the metadata template Example: "properties"
- request_body
Dict
- Request body of createFolderMetadataById method
- extra_headers
Optional[Dict[str, Optional[str]]]
- Extra headers that will be included in the HTTP request.
This function returns a value of type MetadataFull
.
Returns the instance of the template that was applied to the folder, including the data that was applied to the template.
Updates a piece of metadata on a folder.
The metadata instance can only be updated if the template has already been applied to the folder before. When editing metadata, only values that match the metadata template schema will be accepted.
The update is applied atomically. If any errors occur during the application of the operations, the metadata instance will not be changed.
This operation is performed by calling function update_folder_metadata_by_id
.
See the endpoint docs at API Reference.
client.folder_metadata.update_folder_metadata_by_id(
folder.id,
UpdateFolderMetadataByIdScope.GLOBAL,
"properties",
[
UpdateFolderMetadataByIdRequestBody(
op=UpdateFolderMetadataByIdRequestBodyOpField.REPLACE,
path="/abc",
value=new_value,
)
],
)
- folder_id
str
- The unique identifier that represent a folder. The ID for any folder can be determined by visiting this folder in the web application and copying the ID from the URL. For example, for the URL
https://*.app.box.com/folder/123
thefolder_id
is123
. The root folder of a Box account is always represented by the ID0
. Example: "12345"
- The unique identifier that represent a folder. The ID for any folder can be determined by visiting this folder in the web application and copying the ID from the URL. For example, for the URL
- scope
UpdateFolderMetadataByIdScope
- The scope of the metadata template Example: "global"
- template_key
str
- The name of the metadata template Example: "properties"
- request_body
List[UpdateFolderMetadataByIdRequestBody]
- Request body of updateFolderMetadataById method
- extra_headers
Optional[Dict[str, Optional[str]]]
- Extra headers that will be included in the HTTP request.
This function returns a value of type MetadataFull
.
Returns the updated metadata template instance, with the custom template data included.
Deletes a piece of folder metadata.
This operation is performed by calling function delete_folder_metadata_by_id
.
See the endpoint docs at API Reference.
client.folder_metadata.delete_folder_metadata_by_id(
folder.id, DeleteFolderMetadataByIdScope.GLOBAL, "properties"
)
- folder_id
str
- The unique identifier that represent a folder. The ID for any folder can be determined by visiting this folder in the web application and copying the ID from the URL. For example, for the URL
https://*.app.box.com/folder/123
thefolder_id
is123
. The root folder of a Box account is always represented by the ID0
. Example: "12345"
- The unique identifier that represent a folder. The ID for any folder can be determined by visiting this folder in the web application and copying the ID from the URL. For example, for the URL
- scope
DeleteFolderMetadataByIdScope
- The scope of the metadata template Example: "global"
- template_key
str
- The name of the metadata template Example: "properties"
- extra_headers
Optional[Dict[str, Optional[str]]]
- Extra headers that will be included in the HTTP request.
This function returns a value of type None
.
Returns an empty response when the metadata is successfully deleted.