Enviar arquivo/imagem/vídeo/áudio

Endpoint (arquivo genérico): POST https://croncrm.com/api/v2/messages/send-message-file

Imagens/Vídeos/Áudios: /messages/send-message-image, /messages/send-message-video, /messages/send-message-audio

Limites: até 100MB para documentos e 32MB para mídias (imagem/vídeo/áudio).

Header do request
Atributo Descrição Obrigatório Tipo

apiKey

Informe sua API Key gerada na interface do CRONCRM.

Sim

String

toTransmit

Força a transmissão imediata da mensagem, sem passar pela fila.

Use toTransmit: 1 para ativar. Para não transmitir imediatamente, omita o header ou use toTransmit: 0.

Não

String / Boolean

Body do request
Atributo Descrição Obrigatório Tipo

chat_wid

Chat destino (wid)

Sim

String

url

URL pública do arquivo

Sim

String (URL)

filename

Nome do arquivo

Sim

String

mime_type

MIME type (ex.: image/png)

Sim

String

size

Tamanho em bytes

Sim

Number

caption

Legenda (opcional)

Não

String

account_access_token

Usuário remetente (opcional)

Não

String

{
  "chat_wid": "[email protected]",
  "url": "https://exemplo.com/arquivo.pdf",
  "filename": "arquivo.pdf",
  "mime_type": "application/pdf",
  "size": 102400,
  "caption": "Documento"
}
Response do request

Em caso de sucesso, este endpoint retorna HTTP 201. Se chat_wid, url, mime_type, size ou filename não forem informados, retorna 422. Se account_access_token for informado e inválido, retorna 400. Se chat_wid ou url forem inválidos, retorna 400. Se mime_type for inválido ou incompatível com o endpoint (imagem/vídeo/áudio), retorna 400. Se size exceder o limite permitido, retorna 400. Método incorreto retorna 405; falhas inesperadas retornam 500.

Quando o header toTransmit está ativado e a transmissão ocorre com sucesso, a resposta pode incluir campos adicionais na mensagem como message_wid, message_ack, message_timestamp e shipping_status.

Atributo Descrição Tipo

success

Informa se a operação teve sucesso ou não.

Boolean

msg

Mensagem de retorno.

String

chat

Dados da conversa.

Confira aqui os atributos de uma conversa.

Array

message

Dados da mensagem criada.

Confira aqui os atributos de uma mensagem.

Array

{
  "success": true,
  "msg": "Mensagem criada com sucesso.",
  "chat": {
    "access_token": "CHAT_TOKEN"
  },
  "message": {
    "access_token": "MSG_TOKEN",
    "message_type": "document",
    "message_filename": "arquivo.pdf"
  }
}
<?php
$apiKey = 'SEU_API_KEY';
$url = 'https://croncrm.com/api/v2/messages/send-message-file';

$payload = [
    'chat_wid' => '[email protected]',
    'url' => 'https://exemplo.com/arquivo.pdf',
    'filename' => 'arquivo.pdf',
    'mime_type' => 'application/pdf',
    'size' => 102400,
    'caption' => 'Documento',
];

$ch = curl_init($url);
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POST => true,
    CURLOPT_HTTPHEADER => [
        'apiKey: ' . $apiKey,
        // Opcional: 'toTransmit: 1',
        'Content-Type: application/json',
    ],
    CURLOPT_POSTFIELDS => json_encode($payload, JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE),
]);

$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
$error = curl_error($ch);
curl_close($ch);

if ($error) {
    throw new RuntimeException($error);
}

echo "HTTP {$httpCode}\n";
echo $response;
?>
curl -X POST \
  'https://croncrm.com/api/v2/messages/send-message-file' \
  -H 'apiKey: SEU_API_KEY' \
  -H 'toTransmit: 1' \
  -H 'Content-Type: application/json' \
  -d '{"chat_wid":"[email protected]","url":"https://exemplo.com/arquivo.pdf","filename":"arquivo.pdf","mime_type":"application/pdf","size":102400,"caption":"Documento"}'