API · Media
Upload and query images, GIFs, audio and video for your notifications.
Base: https://api.pushtifly.com. Every response uses { errCode, errMsg, data, meta }. Authentication and keys · Error catalog
GET/v1/media
Company library (type filter)
Key: sk_
Parameters
| Name | In | Type | Description |
|---|---|---|---|
type | query | "image" | "gif" | "audio" | "video" |
Responses: 200
curl -X GET "https://api.pushtifly.com/v1/media" \
-H "Authorization: Bearer sk_test_YOUR_SECRET_KEY"POST/v1/media
Upload media (multipart, field "file"); 202 while processing, 200 if the same file already existed
Key: sk_
Type validated by content: JPG, PNG, WebP, GIF, MP4/MOV, MP3, M4A, WAV, AIFF. Limits: image and GIF 10 MB, video 50 MB and 2 min, audio 5 MB and 2 min (configurable). Errors 2001 no file, 2002 format, 2003 size.
Responses: 200202422
curl -X POST "https://api.pushtifly.com/v1/media" \
-H "Authorization: Bearer sk_test_YOUR_SECRET_KEY"GET/v1/media/{id}
Status (processing, ready, failed), variants and URLs (url, posterUrl, thumbUrl)
Key: sk_
Parameters
| Name | In | Type | Description |
|---|---|---|---|
id* | path | string |
Responses: 200
curl -X GET "https://api.pushtifly.com/v1/media/ID_ID" \
-H "Authorization: Bearer sk_test_YOUR_SECRET_KEY"DELETE/v1/media/{id}
Delete (4009 if a scheduled send or an active campaign uses it)
Key: sk_
Parameters
| Name | In | Type | Description |
|---|---|---|---|
id* | path | string |
Responses: 200
curl -X DELETE "https://api.pushtifly.com/v1/media/ID_ID" \
-H "Authorization: Bearer sk_test_YOUR_SECRET_KEY"