---
title: "Modify asset"
url: "https://earlyaccess.developers.bynder.com/apis/asset-management-api-1/versions/b623ec0a-a559-4667-a0ee-28fa2b9cd7ce/paths/api-v4-media-id/post"
---

> Full API specification: https://earlyaccess.developers.bynder.com/apis/asset-management-api-1/versions/b623ec0a-a559-4667-a0ee-28fa2b9cd7ce.md

# Modify asset

`POST` `/api/v4/media/{id}`

Requires the **MEDIAEDIT** security role. Requires the **MARKPUBLIC** security role in order to change an asset's isPublic state. **Custom thumbnails** To set a custom thumbnail, first upload the thumbnail image using the [Modern Stack File Upload](https://api.bynder.com/reference/modern-stack-file-upload) flow, then call this endpoint with the returned file id as `customThumbnailFileId`. To remove an existing custom thumbnail and revert to the automatically generated one, call this endpoint with `removeCustomThumbnail=true`. The two fields are mutually exclusive.

## Path parameters

- `id` (string, required) - Asset id.

## Request body

Content types: `application/x-www-form-urlencoded`

## Responses

- `202` - Accepted
- `403` - Access denied
- `404` - Media not found

## OpenAPI definition

```yaml
openapi: 3.1.0
info:
  title: Asset Management API
  version: 1.0.0
servers:
  - url: https://{your-bynder-domain}/
paths:
  /api/v4/media/{id}:
    post:
      description: >-
        Requires the **MEDIAEDIT** security role. Requires the **MARKPUBLIC**
        security role in order to change an asset's isPublic state.


        **Custom thumbnails**


        To set a custom thumbnail, first upload the thumbnail image using the
        [Modern Stack File
        Upload](https://api.bynder.com/reference/modern-stack-file-upload) flow,
        then call this endpoint with the returned file id as
        `customThumbnailFileId`. To remove an existing custom thumbnail and
        revert to the automatically generated one, call this endpoint with
        `removeCustomThumbnail=true`. The two fields are mutually exclusive.
      parameters:
        - description: Asset id.
          in: path
          name: id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            examples:
              real example:
                summary: Update an asset via x-www-form-urlencoded with metaproperty values
                value:
                  customThumbnailFileId: 7d3015f1-fadf-4fca-b49e-e6d08a29f9bb
                  description: Updated title and metadata from Postman form-data example
                  id: 8EC04DC8-F7FE-4D2D-BE2F2789A632393D
                  metaproperty.C53BC6FD-21A0-4DF1-AE80F0A329D7: Option 1,Option 2
                  metaproperty.C74B9496-16E8-41AA-80D83D8549C8: B7F3232E-D2A9-40CF-8551-DA2B1FF4E97D,C5215523-AEBD-4A72-92F8-5D8C5E0F2E11
                  metaproperty.E1202866-306B-43A5-ADE20BDAB6D1: This is the alt text
                  metaproperty.E8D9B6EF-F969-49B1-BDB95982F05D: 551CB615-965F-4643-A2A7-A4974AA0B128
                  name: Spring campaign hero image
                  tags: spring,hero,campaign-2026
            schema:
              properties:
                archive:
                  description: Indicating the archived state of the asset.
                  type: boolean
                archiveDate:
                  description: |
                    Archive datetime. ISO8601 format: yyyy-mm-ddThh:mm:ssZ.
                  format: date-time
                  type: string
                brandId:
                  description: Id of the brand to save the asset to.
                  type: string
                copyright:
                  description: Copyright information of the asset.
                  type: string
                customThumbnailFileId:
                  description: The file id of the custom thumbnail to be set for the asset. Custom
                    thumbnails must first be uploaded by following the steps
                    described in the [Modern Stack File
                    Upload](https://api.bynder.com/reference/modern-stack-file-upload)
                    documentation; use the `fileId` returned by that flow.
                    Cannot be combined with `removeCustomThumbnail`.
                  example: 00000000-0000-0000-0000-000000000000
                  type: string
                datePublished:
                  description: |
                    Publication datetime. ISO8601 format: yyyy-mm-ddThh:mm:ssZ.
                  format: date-time
                  type: string
                description:
                  description: Asset description.
                  type: string
                id:
                  description: Asset id.
                  type: string
                isPublic:
                  description: Indicating the public state of the asset. Warning irreversible,
                    once changed to true it cannot be changed back.
                  type: boolean
                limited:
                  description: Indicating the limit state of the asset.
                  type: boolean
                limitedDate:
                  description: |
                    Limit datetime. ISO8601 format: yyyy-mm-ddThh:mm:ssZ.
                  format: date-time
                  type: string
                metaproperty:
                  additionalProperties:
                    type: string
                  description: Mapping of metaproperty UUIDs to the option value(s) to set on the
                    asset. Each value may be provided as option label, option DB
                    name, or option UUID. For multi-select metaproperties, pass
                    multiple values as a comma-separated string. <br><br>In
                    x-www-form-urlencoded requests, fields are sent as
                    `metaproperty.<metaproperty_uuid>=<value1>,<value2>`.
                  example:
                    02509778-CEE3-43D5-9E96-9A60B1E78314: option_id1,option_id2
                    EF122F1F-9BA0-4772-80F1-BF05588B1A59: option_id3
                  type: object
                name:
                  description: Name of the asset, beware the asset will have no name when this is
                    empty.
                  type: string
                removeCustomThumbnail:
                  description: Remove the current custom thumbnail from the asset, reverting to
                    the automatically generated thumbnail. Cannot be combined
                    with `customThumbnailFileId`.
                  example: true
                  type: boolean
                tags:
                  description: Comma-separated tags. Tags will overwrite the current tags list.
                  type: string
                watermarkDate:
                  description: |
                    Watermark datetime. ISO8601 format: yyyy-mm-ddThh:mm:ssZ.
                  format: date-time
                  type: string
              type: object
      responses:
        "202":
          content:
            application/json:
              schema:
                properties:
                  message:
                    type: string
                  statuscode:
                    type: integer
                type: object
          description: Accepted
        "403":
          content:
            application/json:
              schema:
                properties:
                  message:
                    type: string
                  statuscode:
                    type: string
                type: object
          description: Access denied
        "404":
          content:
            application/json:
              schema:
                properties:
                  message:
                    type: string
                  statuscode:
                    type: string
                type: object
          description: Media not found
      security:
        - permanentToken:
            - ""
            - MEDIAEDIT
            - MARKPUBLIC
        - OAuth2:
            - ""
            - MEDIAEDIT
            - MARKPUBLIC
      summary: Modify asset
      tags:
        - Media ID
security:
  - permanentToken:
      - ""
      - MEDIAEDIT
      - MARKPUBLIC
  - OAuth2:
      - ""
      - MEDIAEDIT
      - MARKPUBLIC
components:
  securitySchemes:
    permanentToken:
      in: header
      name: Authorization
      type: apiKey
    OAuth2:
      flows:
        authorizationCode:
          authorizationUrl: https://{your-auth-url}
          scopes:
            ARCHIVEDOWNLOAD: ""
            ARCHIVEMEDIA: ""
            EMARGOMEDIA: ""
            KEYVISUALDOWNLOAD: ""
            MARKPUBLIC: ""
            MEDIAEDIT: ""
            MEDIAREMOVE: ""
            STATISTICS: ""
          tokenUrl: https://{your-bynder-domain}/v6/authentication/oauth2/token
        clientCredentials:
          scopes:
            ARCHIVEDOWNLOAD: ""
            ARCHIVEMEDIA: ""
            EMARGOMEDIA: ""
            KEYVISUALDOWNLOAD: ""
            MARKPUBLIC: ""
            MEDIAEDIT: ""
            MEDIAREMOVE: ""
            STATISTICS: ""
          tokenUrl: https://{your-bynder-domain}/v6/authentication/oauth2/token
      type: oauth2
```
