---
title: "Enviar arquivo de mídia"
method: POST
path: "/v1/media/upload"
tags: ["Mensagens"]
---

# Enviar arquivo de mídia

`POST /v1/media/upload`

## Request

- Base URL: `https://api.ararahq.com`
- URL: `https://api.ararahq.com/v1/media/upload`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/ararahq/apis/ararahq-api/docs/v1/media/upload/post.ts> (a function with typed inputs; its response is checked against the schema)

Sobe um arquivo para a Arara quando ele não está hospedado em outro lugar.
Aceita imagem até 5 MB e PDF até 100 MB. Use a `url` devolvida na primeira
posição de `templateVariables` de um template com mídia no cabeçalho.
Permissão: `MESSAGES_SEND`.

## Request body `multipart/form-data`

- object
  - `file` string, binary, required

## Response `200`

Arquivo salvo

- object
  - `url` string, required: Link curto público do arquivo.
  - `directUrl` string, required

## Other responses

- `400`: Tipo ou tamanho inválido. Corpo `{ "error": "mensagem" }`.
- `401`: Chave inexistente, revogada, expirada, com prefixo errado (`ara_` sem `ara_live_`) ou vinda de IP fora da allowlist. O corpo é o JSON padrão do Spring, sem `error.code`.
- `403`: Dois casos, com corpos diferentes: - Autenticação: header `Authorization` ausente, Bearer que não começa com `ara_`, chave sem a permissão da rota ou rota que não aceita chave de API. Corpo no formato padrão do Spring, sem `error.code`. - Regra de negócio, no formato `{ "error": { ... } }`: `PLAN_FEATURE_LOCKED`, `PLAN_LIMIT_REACHED`, `ACCOUNT_NOT_ACTIVATED`, `NO_DEDICATED_NUMBER`, `ORGANIZATION_SUSPENDED`, `NUMBER_BLOCKED`, `FRAUD_SUSPECTED`, `RESOURCE_FORBIDDEN`, `VIEWER_READ_ONLY`.
- `429`: `RATE_LIMIT_EXCEEDED`: limite geral da API (1.200 leituras ou 3.000 escritas por minuto, por usuário da chave).

## Changes

- **2026-10-12** `d576cd28afc0`: 3 info
  - api tag `Mensagens` added
  - api tag `media` removed
  - added the non-success response with the status `429`
- **2026-09-15** `372d8c2e735d`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/ararahq/apis/ararahq-api/changes/v1/media/upload/post.md)

---

[API](https://skmtc.dev/ararahq/apis/ararahq-api.md) - [All operations](https://skmtc.dev/ararahq/apis/ararahq-api/llms.txt) - [OpenAPI document](https://skmtc.dev/ararahq/apis/ararahq-api/revisions/d576cd28afc0?raw)
