Developers
Media
Upload images or videos that posts will reference. You can upload bytes directly with multipart, or hand us a public HTTPS URL and we'll fetch it for you — useful for agents that have already generated or stored media elsewhere.
Upload via multipart
POST
/api/v1/mediacurl -X POST https://postme.live/api/v1/media \
-H "Authorization: Bearer pml_live_..." \
-H "Idempotency-Key: $(uuidgen)" \
-F "[email protected]"Upload via URL
POST
/api/v1/mediacurl -X POST https://postme.live/api/v1/media \
-H "Authorization: Bearer pml_live_..." \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{ "url": "https://example.com/hero.jpg" }'URLs must be https://, resolve to a public IP (no private, loopback, link-local, or ULA addresses), and download in under 5 minutes for files no larger than 1 GB.
Response — 201 Created
{
"id": "9f3a…",
"kind": "image",
"bytes": 184320,
"mime": "image/jpeg",
"filename": "hero.jpg",
"url": "https://media.postme.live/…",
"thumbnail_status": "pending"
}Use the returned id in media[].id on a subsequent POST /posts. Thumbnail generation, ffprobe metadata extraction, and YouTube poster- frame candidates run asynchronously on the worker; the post endpoint doesn't wait for them.
Limits
| Limit | Value |
|---|---|
| Maximum file size | 1 GB |
| URL fetch timeout | 5 minutes |
| Allowed URL schemes | https:// |
| Allowed remote networks | Public IPs only (no private/loopback/link-local/ULA) |