---
title: "Upload media from URL"
method: POST
path: "/v2/media"
tags: ["publishing"]
---

# Upload media from URL

`POST /v2/media`

# General

This endpoint allows users to upload media by providing a URL. The uploaded media will be processed and stored, returning a new media URL that is used to publish a new post. Most of the platforms require validated URLs for posting images.

You can upload:

- publicly accessible URLs

- _base64_ encoded image data

Media uploads are limited to 1GB file size or smaller.

Media upload has a user-level rate limit of **10 requests / minute**.

# Upload Google Drive

If you have a link in google drive like this:

<https://drive.google.com/file/d/18-UgDEaKG7YR7AewIDd_Qi4QCLCX5Kop/view?usp=drivesdk>

You can use the following link for your Blotato "upload media" API call:

<https://drive.google.com/uc?export=download&id=18-UgDEaKG7YR7AewIDd_Qi4QCLCX5Kop>

Note how the IDs match: `18-UgDEaKG7YR7AewIDd_Qi4QCLCX5Kop`

To see examples of how to upload to Blotato from a Google Drive, you can also check out these tutorials and templates:

n8n: <https://youtu.be/D9okDd_1tBI>

make: <https://youtu.be/f4Stdm4lDNM>

# Seeing error "Google Drive can't scan this file for viruses"?

This is the **most common issue** when using Google Drive. When you try to access your file, you see this popup "Google Drive can't scan this file for viruses".

The issue is when you host a large video on google drive, it will show this popup, which prevents Blotato from accessing the video.

Recommended workaround: if you're regularly posting large videos (100MB+), I recommend using frame.io, an AWS S3 bucket, or similar tool where there is no issue passing around large video files.

## Request body

- object
  - `url` string, required — The URL of the media to upload.

## Response `201`

Default Response

- object
  - `url` string, required — Uploaded and validated blotato media URL.
  - `id` string, required — The internal ID of the uploaded media.

## Other responses

- `403` — Forbidden
- `422` — Validation error
- `429` — Rate limit exceeded
- `500` — Server error

---

[API](https://skmtc.net/blotato/apis/blotato-api.md) · [All operations](https://skmtc.net/blotato/apis/blotato-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/blotato/blotato-api/revisions/c93447ba6b9d/schema)
