> ## Documentation Index
> Fetch the complete documentation index at: https://help.eazybe.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Descripción general

> Envía un mensaje de texto, multimedia, ubicación o interactivo desde un número de tu organización.

## Enviar mensaje de formato libre

Envía un solo mensaje a un destinatario. Los ocho tipos de contenido comparten este endpoint: el campo `type` decide qué otros campos son obligatorios.

### Endpoint

```http theme={null}
POST /broadcast/public/send-freeform
```

### Campos comunes

| Campo             | Tipo   | Requerido | Descripción                                   |
| ----------------- | ------ | --------- | --------------------------------------------- |
| `fromPhoneNumber` | cadena | Requerido | Su número WABA                                |
| `toPhoneNumber`   | cadena | Requerido | Destinatario con código de país, solo dígitos |
| `type`            | cadena | Requerido | Uno de los ocho tipos siguientes              |

### Campos específicos de tipo

| `type`        | Requerido               | Opcional          | Extensiones de archivo aceptadas          |
| ------------- | ----------------------- | ----------------- | ----------------------------------------- |
| `text`        | `text`                  | —                 | —                                         |
| `image`       | `url`                   | `caption`         | jpg, jpeg, png                            |
| `document`    | `url`                   | `name`, `caption` | pdf, txt, doc, docx, ppt, pptx, xls, xlsx |
| `audio`       | `url`                   | —                 | aac, amr, mp3, m4a, mp4, ogg, opus        |
| `video`       | `url`                   | `caption`         | mp4, 3gp                                  |
| `sticker`     | `url`                   | —                 | web                                       |
| `location`    | `latitude`, `longitude` | `name`, `address` | —                                         |
| `interactive` | `interactive`           | —                 | —                                         |

<Warning>
  **La extensión se lee desde la ruta URL, no desde el archivo.** Un PNG real servido desde una URL que termina en `.webp` se rechaza para `image`, y una URL sin extensión alguna se rechaza para cada tipo de medio. Las cadenas de consulta se ignoran, por lo que `…/photo.png?v=2` está bien.
</Warning>

## Tipos de mensaje

<CardGroup cols={2}>
  <Card title="Mensaje de texto" href="/es/api-reference/endpoints/broadcast-api/send-free-form-message/text-message">Consulta los campos y el ejemplo de este tipo de mensaje.</Card>
  <Card title="Mensaje de imagen" href="/es/api-reference/endpoints/broadcast-api/send-free-form-message/image-message">Consulta los campos y el ejemplo de este tipo de mensaje.</Card>
  <Card title="Mensaje de documento" href="/es/api-reference/endpoints/broadcast-api/send-free-form-message/document-message">Consulta los campos y el ejemplo de este tipo de mensaje.</Card>
  <Card title="Mensaje de audio" href="/es/api-reference/endpoints/broadcast-api/send-free-form-message/audio-message">Consulta los campos y el ejemplo de este tipo de mensaje.</Card>
  <Card title="Mensaje de vídeo" href="/es/api-reference/endpoints/broadcast-api/send-free-form-message/video-message">Consulta los campos y el ejemplo de este tipo de mensaje.</Card>
  <Card title="Mensaje de pegatina" href="/es/api-reference/endpoints/broadcast-api/send-free-form-message/sticker-message">Consulta los campos y el ejemplo de este tipo de mensaje.</Card>
  <Card title="Mensaje de ubicación" href="/es/api-reference/endpoints/broadcast-api/send-free-form-message/location-message">Consulta los campos y el ejemplo de este tipo de mensaje.</Card>
  <Card title="Mensaje interactivo" href="/es/api-reference/endpoints/broadcast-api/send-free-form-message/interactive-message">Consulta los campos y el ejemplo de este tipo de mensaje.</Card>
</CardGroup>

## Respuesta satisfactoria

El endpoint devuelve la misma respuesta satisfactoria para este tipo de contenido.

```json theme={null}
{
  "status": true,
  "status_code": 200,
  "message": "Free-form message queued successfully",
  "data": {}
}
```

## Errores

| Estado        | Causa                                                  | Qué comprobar                                    |
| ------------- | ------------------------------------------------------ | ------------------------------------------------ |
| `400`         | Un campo común o específico no es válido               | Comprueba los campos obligatorios de esta página |
| `400`         | La URL o extensión multimedia no es compatible         | Usa `http` o `https` y una extensión admitida    |
| `400`         | Las coordenadas, botones o filas superan los límites   | Corrige los límites de la carga útil             |
| `401`         | La clave o el remitente no pertenece a la organización | Usa un remitente obtenido con la misma clave     |
| `429`         | Se superó el límite de 20 solicitudes                  | Espera el intervalo indicado en la respuesta     |
| `500` o `503` | Fallo transitorio del servicio                         | Reintenta con espera exponencial                 |
