Upload media
upload_mediaUpload one image or video for later scheduling from a public HTTPS URL, data URI, base64 bytes, or a file the user attached in the chat. In ChatGPT, pass an attached image or video in file. URL ingestion depends on the source host allowing automated access. Files that exist only in your client (sandbox paths, local disk) are unreachable as url or data: use file where supported, send their bytes as a data URI or base64, or ask the user for a public HTTPS link, such as a Canva download or share link. Success is confirmed only by the returned publicUrl. Returns a public media URL. API documentation: https://www.narrareach.com/api-docs.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| url | No | Public HTTPS media URL. | |
| data | No | Data URI or raw base64 media bytes; blob:, file:, and sandbox: references are unsupported. Use only when the client sends the exact file bytes: base64 written out or reconstructed by the assistant arrives cut short or altered, and an incomplete image is rejected. | |
| file | No | A file the user attached in the chat, passed by the client (ChatGPT). Use instead of url or data for attachments. | |
| kind | Yes | ||
| fileName | No | Optional original file name for storage diagnostics. | |
| mimeType | No | Required for raw base64. Example: image/png. | |
| sourceType | No | Optional. Inferred from data/url when omitted. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| kind | Yes | ||
| size | Yes | ||
| sha256 | Yes | ||
| uploaded | Yes | ||
| publicUrl | Yes | ||
| contentType | Yes | ||
| connectedAccount | No |