Box Developer Documentation

A beta version of the new Box developer documentation site is launching soon! Updated Developer Guides, modern API Reference, and AI-powered search are on the way to help you build with Box faster. Stay tuned for more updates.

Apply metadata to a file

Apply metadata to a file

With your new customerData template in hand you can now apply this template to a file or folder. To apply this template you will need the scope and templateKey of the template, as well as the ID of the item to apply the template to.

cURL
curl -X POST https://api.box.com/2.0/files/12345/metadata/enterprise/customerInfo \
    -H "authorization: Bearer <ACCESS_TOKEN>" \
    -H "content-type: application/json" \
    -d '{
      "name": "Box, Inc",
      "industry": "Technology",
      "tav": 1000000
    }'
.NET
var metadataValues = new Dictionary<string, object>()
{
    { "name", "Box, Inc" },
    { "industry", "Technology" },
    { "tav", 100000 }
};

Dictionary<string, object> metadata = await client.MetadataManager
    .CreateFileMetadataAsync(fileId: "12345", metadataValues, "enterprise", "customerInfo");
Java
BoxFile file = new BoxFile(api, "12345");

file.createMetadata(
    "customerInfo",
    "enterprise",
    new Metadata()
        .add("name", "Box, Inc")
        .add("industry", "Technology")
        .add("tav", 100000)
);
Python
metadata = {
    'name': 'Box, Inc',
    'industry': 'Technology',
    'tav': 1000000
}

client.file(file_id='11111').metadata(scope='enterprise', template='customerInfo').set(metadata)
Node
client.files.addMetadata(
    '12345',
    client.metadata.scopes.ENTERPRISE,
    "customerInfo",
    {
        name: "Box, Inc",
        industry: "Technology",
        tav: 1000000
    }
).then(metadata => {
    // ...
});

The industry field in this example is an enum field and therefore the value needs to be one of the available options on the field. Any other value will result in an error.

The API will return the newly created metadata instance.

{
  "name": "Box, Inc",
  "industry": "Technology",
  "tav": 1000000,
  "$id": "01234500-12f1-1234-aa12-b1d234cb567e",
  "$parent": "folder_12345,",
  "$scope": "enterprise_34567",
  "$template": "customerInfo",
  "$type": "customerInfo-6bcba49f-ca6d-4d2a-a758-57fe6edf44d0",
  "$typeVersion": 2,
  "$version": 1,
  "$canEdit": true
}