Interface legada da SDK, mantida por compatibilidade com o formato de
chamada das primeiras SDKs da plataforma (credentials, body e action
em uma única string JSON).
Prefira o cliente ApiBrasil, que cobre toda a plataforma com funções
dedicadas, erros tipados, retry e hooks.
legacy = ApiBrasil.Legacy.new()
dados = ~s({
"action": "sendText",
"credentials": {
"DeviceToken": "SEU_DEVICE_TOKEN",
"BearerToken": "SEU_BEARER_TOKEN"
},
"body": {"number": "5511999999999", "text": "Hello World for Elixir"}
})
{:ok, resposta} = ApiBrasil.Legacy.whatsapp(legacy, dados)Assim como nas versões anteriores, respostas de erro da API voltam
decodificadas em {:ok, mapa} em vez de virarem {:error, _} — só
falhas de rede, de validação do payload legado e de tempo limite chegam
como {:error, %ApiBrasil.Core.Error{}}.
Summary
Functions
Cliente legado.
Chama /dados/{action}.
Como cnpj/3, mas levanta ApiBrasil.Core.Error em caso de falha.
Chama /cpf/dados/{action}.
Como cpf/3, mas levanta ApiBrasil.Core.Error em caso de falha.
Base usada quando o cliente legado é criado sem server.
Cria o cliente legado. Sem argumento, aponta para o gateway padrão.
Executa uma chamada no formato legado: POST {server}/{servico}/{action}.
Como request/4, mas levanta ApiBrasil.Core.Error em caso de falha.
Chama /sms/{action}.
Como sms/3, mas levanta ApiBrasil.Core.Error em caso de falha.
Chama /whatsapp/{action}.
Como whatsapp/3, mas levanta ApiBrasil.Core.Error em caso de falha.
Types
@type result() :: {:ok, map()} | {:error, ApiBrasil.Core.Error.t()}
Resultado de uma chamada legada.
@type t() :: %ApiBrasil.Legacy{server: String.t()}
Cliente legado: apenas a base da API.
Functions
Cliente legado.
:server— base da API. Padrão:https://gateway.apibrasil.io/api/v2/.
Chama /dados/{action}.
Como cnpj/3, mas levanta ApiBrasil.Core.Error em caso de falha.
Chama /cpf/dados/{action}.
Como cpf/3, mas levanta ApiBrasil.Core.Error em caso de falha.
@spec default_server() :: String.t()
Base usada quando o cliente legado é criado sem server.
Cria o cliente legado. Sem argumento, aponta para o gateway padrão.
ApiBrasil.Legacy.new()
ApiBrasil.Legacy.new("https://gateway.apibrasil.io/api/v2/")
Executa uma chamada no formato legado: POST {server}/{servico}/{action}.
dados é uma string JSON com:
credentials— objeto comBearerTokene/ouDeviceToken;body— objeto enviado no corpo da requisição;action— opcional; quando presente, vira o último segmento da rota.
JSON inválido, credentials ausente ou body ausente devolvem
{:error, %ApiBrasil.Core.Error{kind: :validation}}. Erros da API voltam
decodificados em {:ok, mapa}.
ApiBrasil.Legacy.request(legacy, "whatsapp", dados)
Como request/4, mas levanta ApiBrasil.Core.Error em caso de falha.
Chama /sms/{action}.
Como sms/3, mas levanta ApiBrasil.Core.Error em caso de falha.
Chama /whatsapp/{action}.
Como whatsapp/3, mas levanta ApiBrasil.Core.Error em caso de falha.