Joinotify

Responder numa conversa

POSThttps://api.joinotify.com/inbox/conversations/{id}/messages

Manda uma mensagem pelo número da conversa, escolhida por kind:

kindO quê
textTexto livre. Só com a janela de 24 horas aberta
mediaUm arquivo já enviado em POST /inbox/conversations/{id}/media. Só com a janela aberta
templateUm template aprovado. Reabre a conversa a qualquer momento
noteNota interna: fica na conversa, nunca vai para o WhatsApp

Fora da janela, text e media são recusados antes do envio com 422 window_closed e o windowExpiresAt. A resposta reabre uma conversa fechada ou adiada e pausa as automações por um tempo, como quando alguém da equipe responde.

Path Params

1 obrigatório(s)

stringobrigatório

Id da conversa.

Body Paramsapplication/json

1 obrigatório(s)16 condicional(is)7 opcional(is)

stringobrigatório

O que enviar: text, media (arquivo já enviado), template ou note (nota interna, que não vai para o WhatsApp).

Valores aceitos:textmediatemplatenotereactionforwardlocationcontactslocation_requestbuttonslistcta_url

stringcondicional

Obrigatório quando `kind` é `text` ou `note` (1 a 4096 caracteres).

Texto da mensagem ou da nota, até 4096 caracteres. Obrigatório em text e note.

mín. 1 caracteresmáx. 4096 caracteres

stringopcional

Id interno de uma mensagem da conversa, para citar.

stringcondicional

Obrigatório quando `kind` é `media`: o `id` devolvido por `POST /inbox/conversations/{id}/media` nesta conversa.

Id do arquivo devolvido por POST /inbox/conversations/{id}/media. Obrigatório em media.

stringopcional

Legenda da mídia, até 1024 caracteres. Não se aplica a áudio.

máx. 1024 caracteres

stringcondicional

Obrigatório quando `kind` é `template`.

Id do template no Joinotify ou o id dele na Meta.

objectcondicional

Obrigatório quando `kind` é `template` e o template tem variáveis ou cabeçalho de mídia: cada marcador precisa de uma fonte.

De onde vem cada variável do template, preenchida com os dados do contato da conversa. Toda fonte de contato ou campo exige um fallback.

booleanopcional

Com kind: media, envia o áudio como mensagem de voz. O arquivo precisa ser OGG.

stringcondicional

Obrigatório quando `kind` é `reaction`.

Id interno da mensagem da conversa que recebe a reação (últimos 30 dias).

stringcondicional

Obrigatório quando `kind` é `reaction`; vazio (`""`) desfaz a nossa reação.

O emoji da reação. Vazio ("") desfaz a reação.

stringcondicional

Obrigatório quando `kind` é `forward`.

Id interno da mensagem a encaminhar.

numbercondicional

Obrigatório quando `kind` é `location` (-90 a 90).

Latitude, de -90 a 90.

mín. -90máx. 90

numbercondicional

Obrigatório quando `kind` é `location` (-180 a 180).

Longitude, de -180 a 180.

mín. -180máx. 180

stringopcional

Nome do local.

stringopcional

Endereço do local.

array of stringscondicional

Obrigatório quando `kind` é `contacts` (1 a 10 ids de contatos da base).

Ids de contatos da base para enviar como cartões (1 a 10, só os que têm telefone).

até 10 itens

stringcondicional

Obrigatório quando `kind` é `location_request`, `buttons`, `list` ou `cta_url`.

Texto principal da mensagem interativa.

stringopcional

Título acima do texto.

stringopcional

Rodapé em letra menor.

array of stringscondicional

Obrigatório quando `kind` é `buttons` (1 a 3 títulos de até 20 caracteres, sem repetir).

Títulos dos botões de resposta: 1 a 3, até 20 caracteres, sem repetir.

até 3 itens

stringcondicional

Obrigatório quando `kind` é `list`: o texto do botão que abre a lista (até 20 caracteres).

Texto do botão que abre a lista (até 20 caracteres).

máx. 20 caracteres

array of objectscondicional

Obrigatório quando `kind` é `list` (1 a 10 seções, no máximo 10 linhas somando todas).

Seções da lista: 1 a 10, com no máximo 10 linhas somando todas.

até 10 itens

stringcondicional

Obrigatório quando `kind` é `cta_url` (até 20 caracteres).

Texto do botão do link (até 20 caracteres).

máx. 20 caracteres

string<uri>condicional

Obrigatório quando `kind` é `cta_url`: um link `https://`.

Link https:// que o botão abre.

Respostas