Assign Values to a Folder Metadata Collection
/documents/api/1.2/folders/{folderId}/metadata
Assign values to the fields in a specified folder metadata collection. You must assign a collection to a particular folder before you can assign values to the fields for the particular folder.
Note: To set a metadata value on a folder, you must have the contributor or manager role for that folder.
Metadata Inheritance:
Metadata fields assigned to a folder are available to all folders and files in the hierarchy beneath that folder. Similarly, the values you assign to those fields are inherited by all folders and files nested beneath that folder unless explicitly defined for a nested folder or file. Metadata values specified for a folder or file replace the inherited value for that folder and, by the same rules of inheritance, any folders or files in the hierarchy nested beneath that folder.
Request
- application/json
- application/xml
-
folderId: string
Globally unique identifier (GUID) for the folder. If the referenced folder is the user's home folder, the value for
folderId
isself
.
-
accessToken(optional): string
Applink access token authorizing the current user to access this folder. This parameter is mandatory if
appLinkID
is used. It can be used as accessToken or AccessToken. -
appLinkID(optional): string
Applink ID authorizing the current user to access this folder. Any time the parameter
appLinkID
is used, a parameteraccessToken
must be provided as well. To work, this applink must have at least the contributor role granted. It can be used as appLinkID or AppLinkID.
object
One or more field names. For example, you can reference the collection and field names independently:
{
"collection": "CollectionA,"
"FieldA1": "Value1,"
"FieldA2": "Value2"
}
Alternatively, you can specify the collection and field name with each field reference:
{
"CollectionA.FieldA1": "Value1,"
"CollectionA.FieldA2": "Value2"
}
For user personal collections, the collection name must start with Personal.
, such as Personal.MyCollection
.
Response
- application/json
- application/xml
200 Response
The request was fulfilled.
object
-
errorCode(optional):
string
An error code of zero (0) indicates no errors.
-
idList(optional):
string
Globally unique identifier (GUID) of the original folder.
-
type(optional):
string
Item type
folder
.
{
"idList":"F94131468853B4845E0508854EE870070A1AA68C3354",
"type":"folder",
"errorCode":"0"
}
400 Response
Request parameters are not formatted correctly.
404 Response
Folder ID is not found.
Examples
The following example assigns specified string values to fields in the CollectionA
metadata collection associated with the specified folder.
POST .../folders/F94131468853B4845E0508854EE870070A1AA68C3354/metadata
Request Header
None.
Request Body
{ "collection": "CollectionA", "A1": "A1_value", "A2": "A2_value" }
The following request body references the collection explicitly with each field reference.
{ "CollectionA.A1": "A1_value", "CollectionA.A2": "A2_value" }
HTTP Status Code
HTTP_STATUS = 200
JSON Response
{ "errorCode": "0", "idList": "F94131468853B4845E0508854EE870070A1AA68C3354", "type": "folder" }
Example 2
The following example assigns specified string values to fields in the Personal.CollectionA
metadata collection associated with the specified folder.
POST .../folders/F94131468853B4845E0508854EE870070A1AA68C3354/metadata
Request Header
None.
Request Body
{ "collection": "Personal.CollectionA", "A1": "personal-A1_value", "A2": "personal-A2_value" }
The following request body references the collection explicitly with each field reference.
{ "Personal.CollectionA.A1": "personal-A1_value", "Personal.CollectionA.A2": "personal-A2_value" }
HTTP Status Code
HTTP_STATUS = 200
JSON Response
{ "errorCode": "0", "idList": "F94131468853B4845E0508854EE870070A1AA68C3354", "type": "folder" }
Example 3
The following example assigns specified string values to fields in the ApplinkCollection
metadata collection associated with the specified folder. The example uses an applink ID because this folder is under a folder structure not owned by or shared with the current user. The applink ID and access token are submitted in the request header.
POST .../folders/FAD7A87F0613A0CBDD4DA521B5D17B95F47087F4E518/metadata
Request Header
appLinkID: LF5Bxj4TPo_p4n4qWn0tbKTicR2cTUJKv7X_ng9E7ry93rRuDokPqS1d6-wKwhb_wtcGYFDsI_cNMxeKQ-HR-FXQhiVoGRTYM_MPZY8qpICfYU94mmnMjM_cvsRhKMzc0NJgvwEJfqqDwPsAVrhc8cmg== accessToken: 352FpiMmW66PeYI1Gh5b83I9CXRwZhLfYAu4TXdqpzD8uNKUBMZVVJ3ZvivUW8kQ
Request Body
{ "collection": "ApplinkCollection", "appField1": "UserB_value_field1", "appField1": "UserB_value_field2" }
HTTP Status Code
HTTP_STATUS = 200
JSON Response
{ "errorCode": "0", "idList": "FAD7A87F0613A0CBDD4DA521B5D17B95F47087F4E518", "type": "folder" }