# Update an asset

Updates the matching asset.

> Note: All attributes are optional when updating. Only include the ones
you want to change.

Any files you wish to use as an Attachment in Brandfolder must be hosted at
a publicly available URL (until they have been successfully imported). If
you need to upload file contents directly to a server, you can use do a
binary file upload to our temporary storage bucket and then use that URL
when creating Assets/Attachments.

Endpoint: PUT /assets/{asset_id}
Version: v4
Security: APIToken

## Path parameters:

  - `asset_id` (string, required)
    Unique identifier for the resource instance.
    Example: "oqgkkd-fr5iv4-443db"

## Header parameters:

  - `Content-Type` (string, required)
    Enum: "application/json"

  - `Authorization` (string, required)
    Bearer token for authentication

## Request fields (application/json):

  - `data` (object, required)

  - `data.attributes` (object, required)

  - `data.attributes.name` (string, required)
    The name of the asset.
    Example: "Brandfolder Logo"

  - `data.attributes.description` (string)
    The description of the asset.
    Example: "Brandfolder's logo in print ready format"

  - `data.attributes.thumbnail_url` (string)
    The online location of the asset.
    Example: "https://example.com/example.jpg?Expires=1624742369"

  - `data.attributes.approved` (boolean)
    If true, this asset is approved; otherwise, it's not.
    Example: true

  - `data.attributes.availability_start` (string)
    This represents the publish/availability date in Brandfolder, the label draft will show.
    Example: "2024-02-23T18:22:49.771Z"

  - `data.attributes.availability_end` (string)
    This represents the expiration date in brandfolder, the label expired will show.
    Example: "2025-02-23T18:22:49.771Z"

  - `data.attributes.attachments` (array)
    An array of Attachment objects to add to the Asset (these do not overwrite exisiting Attachments).

  - `data.attributes.attachments.url` (string, required)
    A fully-formed URL of the file to upload (required for each new Attachment).
    Example: "https://example.com/new-attachment.jpg"

  - `data.attributes.attachments.filename` (string)
    A complete file name, with extension.
    Example: "new-attachment.jpg"

## Response 200 fields (application/json):

  - `data` (object, required)

  - `data.id` (string, required)
    Unique identifier for the resource instance.
    Example: "oqgkkd-fr5iv4-443db"

  - `data.type` (string, required)
    The type of the resource.
    Enum: "generic_files"

  - `data.attributes` (object, required)

  - `data.attributes.name` (string)
    The name of the asset.
    Example: "Brandfolder Logo"

  - `data.attributes.description` (string)
    The description of the asset.
    Example: "Brandfolder's logo in print ready format"

  - `data.attributes.thumbnail_url` (string)
    The online location of the asset.
    Example: "https://example.com/example.jpg?Expires=1624742369"

  - `data.attributes.approved` (boolean)
    If true, this asset is approved; otherwise, it's not.
    Example: true


