---
title: "Upload a cover image"
method: POST
path: "/exchange/board/covers"
tags: ["Exchange board"]
---

# Upload a cover image

`POST /exchange/board/covers`

## Request

- Base URL: `https://whatareyoudo.ing/api/v1`
- URL: `https://whatareyoudo.ing/api/v1/exchange/board/covers`
- Auth: HTTP bearer

Base64 in JSON, at most 5 MB of image (UPLOAD_TOO_LARGE). Re-encoded on the server before it is stored: EXIF (including GPS), XMP, IPTC and ICC metadata are dropped, the orientation is applied, and the result is a JPEG at most 1600px on its long side. Anything that does not decode as an image is UNSUPPORTED_FILE_TYPE. Counted against the account's storage quota. Stored under a key that names no account; `coverUrl` is a short-lived preview URL, and `assetId` is what a post's `cover` takes. From the account's own session only (EXCHANGE_ACCOUNT_REQUIRED) and with current consent to the exchange terms (EXCHANGE_CONSENT_REQUIRED). 404 while EXCHANGE_BOARD_ENABLED is off.

## Request body

- ExchangeBoardCoverUploadRequest
  - `contentType` string, required
  - `dataBase64` string, required

## Response `201`

Created

- object
  - `data` ExchangeBoardCoverUpload, required
    - `assetId` string, uuid, required
    - `coverUrl` string, required
  - `meta` object, required
    - `requestId` string, required

## Changes

- **2026-10-20** `48dd8a54abea`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/whatareyoudo/apis/whatcha-api/changes/exchange/board/covers/post.md)

---

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