Ricky logorickyDocs

Obtener el archivo de un mensaje

POST
/conversations/{conversation_id}/messages/{message_id}/media

Ricky guarda en segundo plano el archivo de cada mensaje que recibe, y media.url es null hasta que lo guarda. Esto lo guarda ahora desde el proveedor y responde con el mensaje y su url; un archivo ya guardado responde de inmediato. Un mensaje sin archivo recibido, o cuyo archivo el proveedor dice que expiró (los conserva unos 30 días), responde 422 rule_violation; otras fallas del proveedor responden 502 upstream_error. No envíes cuerpo.

Permiso: conversations:read.

Autorización

bearerAuth
headerAuthorizationBearer <clave>

Una clave de API de la organización, rky_live_…, creada en Configuración → API. Envíala solo desde un servidor.

Parámetros de ruta

conversation_id*string

ID de la conversación.

Formatouuid
message_id*string

ID del mensaje.

Formatouuid

Cuerpo de la respuesta

Éxito.

application/json
  1. response
data*

Un mensaje de una conversación.

curl -X POST 'https://getricky.ai/api/v1/conversations/497f6eca-6276-4993-bfeb-53cbbbba6f08/messages/497f6eca-6276-4993-bfeb-53cbbbba6f08/media'
{  "data": {    "id": "c41d7e2a-5b6f-4a89-8c3d-0e1f2a3b4c5d",    "conversation_id": "9b2e4c61-7a3f-4d18-b5c2-6e0f1a2b3c4d",    "direction": "inbound",    "type": "text",    "text": "¿Ya están mis lentes?",    "sender": {      "type": "contact",      "name": null    },    "status": "read",    "media": {      "kind": "image",      "mime_type": "image/jpeg",      "filename": null,      "byte_size": -9007199254740991,      "transcript": null,      "url": null    },    "provider_message_id": "wamid.HBgLNTA3NjAwMDEyMzQV",    "created_at": "2026-10-14T15:30:00.000Z",    "sent_at": "2026-10-14T15:30:00.000Z",    "delivered_at": "2026-10-14T15:30:00.000Z",    "read_at": "2026-10-14T15:30:00.000Z",    "failed_at": "2026-10-14T15:30:00.000Z",    "edited_at": "2026-10-14T15:30:00.000Z",    "deleted_at": "2026-10-14T15:30:00.000Z"  }}