CRPRO HubEntrar no painel

Mídia

POST
/api/v1/channels/{id}/media

Envia um arquivo para a Meta e devolve o media ID

O corpo é multipart/form-data, não JSON. O media_id devolvido é o mesmo que a Meta espera em mensagens do tipo image, audio, video, document e sticker — mas some de lá em poucos dias, então não vale guardar para uso posterior. O token hub_ch_... do canal também autentica esta chamada, mas nunca autoriza enviar por outro canal. Para arquivos grandes, prefira enviar uma URL https no payload da mensagem (ver POST .../messages): o upload multipart/form-data desta rota passa pelo host do CRPRO Hub e pode ter um limite de tamanho de requisição menor do que o aceito diretamente pela Meta.

Autenticação
Sessão do painel, Chave de API, Token do canal
Escopo
messages:send
Limite
120 requisições por minuto por organização e credencial

Parâmetros de caminho

ParâmetroTipoObrigatórioDescrição
idUUIDSimIdentificador do canal.

Corpo

ParâmetroTipoObrigatórioDescrição
filearquivo (multipart/form-data)SimArquivo enviado como campo "file" de um multipart/form-data. Não é um campo JSON.
Requisição
curl -X POST https://crprohub.com/api/v1/channels/CHANNEL_UUID/media \
  -H "Authorization: Bearer hub_pk_EXEMPLO_NAO_REAL" \
  -F "file=@foto.jpg"
Resposta
{
  "data": {
    "media_id": "1234567890123456",
    "mime_type": "image/jpeg",
    "size": 82190
  }
}
GET
/api/v1/channels/{id}/media/{mediaId}

Baixa o arquivo bruto de uma mídia

Esta rota não devolve JSON: ela baixa o arquivo da Meta e repassa o conteúdo binário direto na resposta, com o Content-Type real da mídia. Não há envelope { "data": ... } aqui — é o arquivo puro. O token hub_ch_... do canal também autentica esta chamada, mas nunca autoriza ler mídia de outro canal.

Autenticação
Sessão do painel, Chave de API, Token do canal
Escopo
channels:read
Limite
120 requisições por minuto por organização e credencial

Parâmetros de caminho

ParâmetroTipoObrigatórioDescrição
idUUIDSimIdentificador do canal.
mediaIdstringSimID numérico da mídia na Meta (5 a 30 dígitos), devolvido por POST /media ou por um webhook de mensagem recebida.
Requisição
curl https://crprohub.com/api/v1/channels/CHANNEL_UUID/media/1234567890123456 \
  -H "Authorization: Bearer hub_pk_EXEMPLO_NAO_REAL" \
  -o arquivo-baixado
Resposta
Corpo binário do arquivo, com o Content-Type original da mídia (ex.: image/jpeg). Não há envelope JSON nesta resposta.
DELETE
/api/v1/channels/{id}/media/{mediaId}

Remove uma mídia da Meta

Remove o arquivo dos servidores da Meta — não é reversível, e mensagens antigas que referenciam esse media ID deixam de conseguir baixá-lo. O token hub_ch_... do canal também autentica esta chamada, mas nunca autoriza remover mídia de outro canal.

Autenticação
Sessão do painel, Chave de API, Token do canal
Escopo
messages:send
Limite
120 requisições por minuto por organização e credencial

Parâmetros de caminho

ParâmetroTipoObrigatórioDescrição
idUUIDSimIdentificador do canal.
mediaIdstringSimID numérico da mídia na Meta (5 a 30 dígitos).
Requisição
curl -X DELETE https://crprohub.com/api/v1/channels/CHANNEL_UUID/media/1234567890123456 \
  -H "Authorization: Bearer hub_pk_EXEMPLO_NAO_REAL"
Resposta
{
  "data": {
    "deleted": true
  }
}