---
title: "/creatives/{creative_id}"
method: PATCH
path: "/projects/{project_id}/creatives/{creative_id}"
tags: ["Creatives"]
---

# /creatives/{creative_id}

`PATCH /projects/{project_id}/creatives/{creative_id}`

## Request

- Base URL: `https://api.productbyte.com/v1`
- URL: `https://api.productbyte.com/v1/projects/{project_id}/creatives/{creative_id}`
- Auth: HTTP bearer

Renames a creative. The name is what identifies it in ProductByte's library, so it is worth setting on anything generated.

Requires the `creatives:write` scope.

## Path parameters

- `project_id` string, required: The project the creative belongs to.
- `creative_id` string, required: The creative to rename.

## Request body

- object
  - `name` string, required: The new name.

## Response `200`

The creative.

- object
  - `id` string, required: Pass this as `creative_id` when creating a post.
  - `name` string, required: What the creative is called in ProductByte.
  - `kind` 'image' | 'carousel' | 'video', required: What the creative is built from. It decides what `formats` means — see below.
  - `formats` object[], required: For an **image** creative these are alternatives: pick the ones whose aspect ratio suits each channel. For a **carousel** they are the deck’s slides, in order, and are published together — pass all of them, not a selection.
    - `id` string, required: Pass this in `format_ids` when creating a post.
    - `kind` 'image' | 'video', required: What kind of media backs this format.
    - `width` number, required: Frame width in pixels.
    - `height` number, required: Frame height in pixels.
    - `language` 'en-GB' | 'en-US' | 'nl-NL' | 'fr-FR' | 'de-DE' | 'es-ES' | 'it-IT' | 'pt-PT' | 'pl-PL' | 'sv-SE' | 'da-DK' | 'fi-FI' | 'no-NO', required: Language of any copy rendered into it.
  - `created_at` string, date-time, required: When the creative was created.

## Other responses

- `401`: Missing, unknown, revoked, or expired key (`API_KEY_UNAUTHORIZED`).
- `403`: The key lacks `creatives:write`, or the project is outside its allowlist.
- `404`: No such creative in this project (`API_CREATIVE_NOT_FOUND`).
- `429`: Too many requests for this key (`API_RATE_LIMITED`). Back off and retry; `Retry-After` gives the window length.

---

[API](https://skmtc.dev/productbyte/apis/productbyte-api.md) · [All operations](https://skmtc.dev/productbyte/apis/productbyte-api/llms.txt) · [OpenAPI document](https://skmtc.dev/productbyte/apis/productbyte-api/revisions/e44332d6b9c6?raw)
