> ## Documentation Index
> Fetch the complete documentation index at: https://www.marqeta.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Upload card art

> Use this endpoint to upload card art for a specific program.

POST/cardproducts/cardart

Use this endpoint to upload card art for a specific program. Send the request as a multi-part form data request.

Your card art images are displayed in the [Studio environment](https://www.marqeta.com/docs/developer-guides/about-ux-toolkit.md#_studio_environment) and in your application. For details, see [UX Toolkit Getting Started](https://www.marqeta.com/docs/developer-guides/uxt-getting-started.md).

## Request body

| Fields | Description |
| - | - |
| card\_product\_token string  Required | Unique identifier of the card product. **Allowable Values:**  1–36 chars  Existing card product token. |
| program\_short\_code string  Returned | Program short code on the Marqeta platform. **Allowable Values:**  Existing program short code |
| asset\_type string  Required | Type of card asset. **Allowable Values:**  `front`, `back`, `thumbnail` |
| file string  Required | Specifies a card art image in PNG format. **Allowable Values:**  Portable network graphics file (`*.PNG`) |

## Sample request body

```mime MIME expandable lines wrap theme={null}
POST /api/v1/cardproducts/cardart HTTP/1.1
Host: https://ux-toolkit-api.marqeta.com
Authorization: Basic <Authorization token here>
Content-Type: multipart/form-data; boundary=----<Boundary here>

------<Boundary here>
Content-Disposition: form-data; name="card_product_token"

754f7c13-c347-4fc9-80d7-b4c4fc36062d
------<Boundary here>
Content-Disposition: form-data; name="program_short_code"

program
------<Boundary here>
Content-Disposition: form-data; name="asset_type"

back
------<Boundary here>
Content-Disposition: form-data; name="file"; filename="card-back.png"
Content-Type: image/png

(data)
------<Boundary here>--
```

## Sample response body

There is no response for a call made to the `POST /cardproducts/cardart` endpoint, other than a `201 Successfully uploaded card art` message.

```json JSON lines wrap theme={null}
HTTP response code 201
```

For the full list of codes supported by the Marqeta platform, see [HTTP response codes](https://www.marqeta.com/docs/core-api/errors.md#http-response-codes).


## Related topics

- [Customizing UX Toolkit](https://www.marqeta.com/docs/developer-guides/uxt-customizing-ux-toolkit.md)
- [UX Toolkit Overview](https://www.marqeta.com/docs/core-api/uxt-sdk.md)
- [Building Your Managed By Marqeta Card Program](https://www.marqeta.com/docs/developer-guides/building-your-managed-card-program.md)
- [About UX Toolkit](https://www.marqeta.com/docs/developer-guides/about-ux-toolkit.md)
- [Upload theme object](https://www.marqeta.com/docs/core-api/uxt-sdk/upload-theme-object.md)
