ApiBrasil.Platform.Catalog (APIBrasil v0.0.1)

Copy Markdown View Source

Catálogo público da plataforma: APIs, planos, documentações e servidores.

A maioria das rotas é pública — não exige Bearer Token.

alias ApiBrasil.Platform.Catalog

{:ok, resultado} = Catalog.apis(client, "whatsapp")
{:ok, planos} = Catalog.plans(client)

Summary

Functions

Detalha uma API por identificador: GET /apis/{identifier}.

Detalha uma API pelo nome: GET /apis/name/{name}.

Lista as categorias de APIs: GET /apis/categories.

Como api_categories/2, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

Lista/busca as APIs disponíveis: GET /apis?search=.

Lista as APIs vinculadas a um device: GET /apis/device/{device_token}.

Lista as documentações: GET /documentations.

Como documentations/2, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

Documentação por servidor: GET /documentations/server/{server_search}.

Body esperado por uma action: POST /endpoint/body.

Como endpoint_body/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

Resolve a URL de uma action (descoberta dinâmica de endpoints): POST /endpoint/url.

Como endpoint_url/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

Lista as APIs contratadas pelo usuário (autenticado): GET /apis/list.

Como my_apis/2, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

Lista os planos disponíveis: GET /plans.

Como plans/2, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

Lista os servidores disponíveis: GET /servers.

Como servers/2, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

Status do gateway: GET /status.

Como status/2, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

Types

result()

@type result() :: {:ok, map()} | {:error, ApiBrasil.Core.Error.t()}

Functions

api(client, identifier, opts \\ [])

@spec api(ApiBrasil.Client.t(), String.t(), keyword()) :: result()

Detalha uma API por identificador: GET /apis/{identifier}.

api!(client, identifier, opts \\ [])

@spec api!(ApiBrasil.Client.t(), String.t(), keyword()) :: map()

Como api/3, mas levanta ApiBrasil.Core.Error em caso de falha.

api_by_name(client, name, opts \\ [])

@spec api_by_name(ApiBrasil.Client.t(), String.t(), keyword()) :: result()

Detalha uma API pelo nome: GET /apis/name/{name}.

api_by_name!(client, name, opts \\ [])

@spec api_by_name!(ApiBrasil.Client.t(), String.t(), keyword()) :: map()

Como api_by_name/3, mas levanta ApiBrasil.Core.Error em caso de falha.

api_categories(client, opts \\ [])

@spec api_categories(
  ApiBrasil.Client.t(),
  keyword()
) :: result()

Lista as categorias de APIs: GET /apis/categories.

api_categories!(client, opts \\ [])

@spec api_categories!(
  ApiBrasil.Client.t(),
  keyword()
) :: map()

Como api_categories/2, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

apis(client, search \\ nil, opts \\ [])

@spec apis(ApiBrasil.Client.t(), String.t() | nil, keyword()) :: result()

Lista/busca as APIs disponíveis: GET /apis?search=.

search é opcional: nil (ou string vazia) lista o catálogo inteiro.

apis!(client, search \\ nil, opts \\ [])

@spec apis!(ApiBrasil.Client.t(), String.t() | nil, keyword()) :: map()

Como apis/3, mas levanta ApiBrasil.Core.Error em caso de falha.

apis_by_device(client, device_token, opts \\ [])

@spec apis_by_device(ApiBrasil.Client.t(), String.t(), keyword()) :: result()

Lista as APIs vinculadas a um device: GET /apis/device/{device_token}.

apis_by_device!(client, device_token, opts \\ [])

@spec apis_by_device!(ApiBrasil.Client.t(), String.t(), keyword()) :: map()

Como apis_by_device/3, mas levanta ApiBrasil.Core.Error em caso de falha.

documentations(client, opts \\ [])

@spec documentations(
  ApiBrasil.Client.t(),
  keyword()
) :: result()

Lista as documentações: GET /documentations.

documentations!(client, opts \\ [])

@spec documentations!(
  ApiBrasil.Client.t(),
  keyword()
) :: map()

Como documentations/2, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

documentations_by_server(client, server_search, opts \\ [])

@spec documentations_by_server(ApiBrasil.Client.t(), String.t(), keyword()) ::
  result()

Documentação por servidor: GET /documentations/server/{server_search}.

documentations_by_server!(client, server_search, opts \\ [])

@spec documentations_by_server!(ApiBrasil.Client.t(), String.t(), keyword()) :: map()

Como documentations_by_server/3, mas levanta ApiBrasil.Core.Error em caso de falha.

endpoint_body(client, body \\ nil, opts \\ [])

@spec endpoint_body(ApiBrasil.Client.t(), term(), keyword()) :: result()

Body esperado por uma action: POST /endpoint/body.

endpoint_body!(client, body \\ nil, opts \\ [])

@spec endpoint_body!(ApiBrasil.Client.t(), term(), keyword()) :: map()

Como endpoint_body/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

endpoint_url(client, body \\ nil, opts \\ [])

@spec endpoint_url(ApiBrasil.Client.t(), term(), keyword()) :: result()

Resolve a URL de uma action (descoberta dinâmica de endpoints): POST /endpoint/url.

endpoint_url!(client, body \\ nil, opts \\ [])

@spec endpoint_url!(ApiBrasil.Client.t(), term(), keyword()) :: map()

Como endpoint_url/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

my_apis(client, opts \\ [])

@spec my_apis(
  ApiBrasil.Client.t(),
  keyword()
) :: result()

Lista as APIs contratadas pelo usuário (autenticado): GET /apis/list.

my_apis!(client, opts \\ [])

@spec my_apis!(
  ApiBrasil.Client.t(),
  keyword()
) :: map()

Como my_apis/2, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

plans(client, opts \\ [])

@spec plans(
  ApiBrasil.Client.t(),
  keyword()
) :: result()

Lista os planos disponíveis: GET /plans.

plans!(client, opts \\ [])

@spec plans!(
  ApiBrasil.Client.t(),
  keyword()
) :: map()

Como plans/2, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

servers(client, opts \\ [])

@spec servers(
  ApiBrasil.Client.t(),
  keyword()
) :: result()

Lista os servidores disponíveis: GET /servers.

servers!(client, opts \\ [])

@spec servers!(
  ApiBrasil.Client.t(),
  keyword()
) :: map()

Como servers/2, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

status(client, opts \\ [])

@spec status(
  ApiBrasil.Client.t(),
  keyword()
) :: result()

Status do gateway: GET /status.

status!(client, opts \\ [])

@spec status!(
  ApiBrasil.Client.t(),
  keyword()
) :: map()

Como status/2, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.