Skip to main content
POST
Upload media

Authorizations

Authorization
string
header
required

Bearer an mk_live_ API key. A key is ORG-SCOPED: it grants full access to every resource in that organization, with no per-endpoint scoping (see the uid pseudo-permission on each operation). Manage keys at https://app.mymarky.ai.

Headers

Idempotency-Key
string | null

Optional. Send a unique value (e.g. a UUID) to make this create request safe to retry. A repeat with the same key returns the original response instead of creating a duplicate. Cached for 24h, scoped to your org. Reusing a key with a different body returns 422.

Marky-Version
enum<string>

Opt into a dated API version. Omit to stay on the floor (2026-04-08) forever — unpinned clients never break. Pin to a newer date (e.g. 2026-08-06) to receive the newest response shapes. Unknown values fall back to the floor. See https://docs.mymarky.ai for the versioning model.

Available options:
2026-04-08,
2026-07-17,
2026-08-02,
2026-08-04,
2026-08-06
Example:

"2026-08-06"

Path Parameters

business_id
string
required

A UUID identifier.

Query Parameters

alt_text
string | null

Alt text for the media

Body

multipart/form-data
file
file
required

Image or video file

Response

Successful Response

id
string
required

Media ID

business_id
string
required

Business this media belongs to

created_at
string
required

When the media was uploaded

alt_text
string | null

Alt text description

original_url
string | null

Media URL

type
string | null

Media type: image, video, or audio

width
integer<int32> | null

Width in pixels

height
integer<int32> | null

Height in pixels

source
string | null

Media origin (e.g. upload, unsplash)