# Enviar imagem

`POST /send/image`

Pasta: **Enviar Mensagem**

## Autenticação

```http
token: {{token}}
```

## Descrição

# Enviar imagem

Atalho de `/send/media` que força `type=image`. Use para enviar só fotos com legenda opcional.

## Endpoint

```http
POST {{baseUrl}}/send/image
```

## Autenticação

Envie o token da instância no header:

```http
token: {{token}}
```

## Corpo da requisição

| Campo | Tipo | Obrigatório | Descrição |
| --- | --- | --- | --- |
| number | string | Sim* | Destinatário (telefone ou JID). Alternativa: chatid |
| chatid | string | Sim* | JID do chat. Use number OU chatid |
| url | string | Sim* | URL pública da mídia |
| base64 | string | Sim* | Mídia em base64 / data URI (alternativa a url) |
| mimetype | string | Não | MIME type (ex.: image/jpeg) |
| caption | string | Não | Legenda |
| text | string | Não | Alias de caption |
| fileName | string | Não | Nome do arquivo (documentos) |
| ptt | bool | Não | Enviar áudio como mensagem de voz (PTT) |
| view_once | bool | Não | Visualização única (image/video/audio) |
| image | string | Não | Alias de url para imagem |
| imageUrl | string | Não | Alias de url para imagem |
| video | string | Não | Alias de url para vídeo |
| videoUrl | string | Não | Alias de url para vídeo |
| audio | string | Não | Alias de url para áudio |
| audioUrl | string | Não | Alias de url para áudio |
| file | string | Não | Alias de url para documento |
| media | string | Não | Alias genérico de url |
| spoiler | bool | Não | Envolve em spoilerMessage |
| group_status | bool | Não | Envia como status de grupo (prefira /send/group-status) |
| channel_status | bool | Não | Envia como status de canal (prefira /send/channel-status) |
| ai | bool | Não | Ícone AI (DM, modo web) |
| secure_meta_service_label | bool | Não | Força nó quality_control (web) |
| is_lottie | bool | Não | Marca figurinha como Lottie |
| external_ad_reply | object | Não | Preview estilo anúncio/CTWA no ContextInfo |
| external_ad_reply.title | string | Não | Título do card |
| external_ad_reply.body | string | Não | Subtítulo/descrição |
| external_ad_reply.source_url | string | Não | Link ao tocar |
| external_ad_reply.media_url | string | Não | URL da mídia do ad (fallback: source_url) |
| external_ad_reply.media_type | int | Não | 1=imagem (padrão), 2=vídeo |
| external_ad_reply.thumbnail_url | string | Não | URL da miniatura |
| external_ad_reply.thumbnail_base64 | string | Não | Miniatura em base64 ou data URI |
| external_ad_reply.render_larger_thumbnail | bool | Não | Exibe thumbnail grande |
| external_ad_reply.show_ad_attribution | bool | Não | Mostra badge de anúncio |

## Exemplo de Requisição

```bash
curl -X POST "{{baseUrl}}/send/image" \
  -H "token: {{token}}" \
  -H "Content-Type: application/json" \
  -d '{"number": "{{remoteJid}}", "url": "https://exemplo.com/imagem.jpg", "caption": "Produto em destaque", "view_once": false}'
```

## Resposta de Sucesso

```json
{
  "success": true,
  "message": {
    "id": "3EB0A1B2C3D4E5F6",
    "timestamp": "2026-07-17T12:34:56Z",
    "sender": "5511888888888@s.whatsapp.net"
  }
}
```

## Erros comuns

- URL/base64 ausente ou inacessível
- Arquivo não é imagem válida
- Instância desconectada

## Observações

- O handler define `type=image` automaticamente; não precisa enviar `type`.

## Corpo (exemplo)

```json
{
  "number": "{{remoteJid}}",
  "url": "https://exemplo.com/imagem.jpg",
  "caption": "Produto em destaque",
  "view_once": false
}
```

## cURL

```bash
curl -X POST "{{baseUrl}}/send/image" \
  -H "token: {{token}}" \
  -H "Content-Type: application/json" \
  -d '{
  "number": "{{remoteJid}}",
  "url": "https://exemplo.com/imagem.jpg",
  "caption": "Produto em destaque",
  "view_once": false
}'
```

---

[Índice da pasta](./index.md) · [Índice geral](../index.md) · [UI](https://gozap.dev/docs?op=enviar-mensagem/enviar-imagem)
