API Asender

Uma API para gerenciar contas, contatos, campanhas, páginas, CRM e e-mail corporativo. 131 operações públicas; 378 no total contando os serviços internos.

É um agente que está lendo? Pegue tudo de uma vez em llms-full.txt — guias, todas as operações e todos os schemas em um arquivo de texto. O índice curto está em llms.txt, e a especificação em openapi.json.

Primeira chamada, passo a passo

1. Obtenha um token

A API usa OAuth 2.1 com PKCE. O fluxo começa no Authorization Server e termina com um access_token que você envia em toda requisição.

curl -X POST 'https://auth.asender.net/token' \
  -H 'Content-Type: application/x-www-form-urlencoded' \
  -d 'grant_type=authorization_code' \
  -d 'code=CODIGO_RECEBIDO' \
  -d 'code_verifier=SEU_VERIFIER' \
  -d 'client_id=SEU_CLIENT_ID' \
  -d 'redirect_uri=https://seu-app/callback'

Os endpoints, e os parâmetros que cada um exige, estão publicados pelo próprio servidor em /.well-known/openid-configuration. O guia de convenções explica o fluxo inteiro.

2. Chame a API

curl 'https://api.asender.net/api/contacts?limit=20' \
  -H 'Authorization: Bearer SEU_TOKEN'

3. Leia a resposta

Coleções vêm paginadas por cursor: a resposta traz NextCursor e HasMore. Passe o cursor de volta para pegar a página seguinte — nunca um offset, que pula ou repete item quando o dado muda entre as chamadas.

4. Escreva com segurança

Toda escrita aceita Idempotency-Key. Repetir a mesma chave devolve o MESMO resultado em vez de criar de novo — é o que torna seguro repetir uma requisição cuja resposta você não recebeu.

curl -X POST 'https://api.asender.net/api/messages/send' \
  -H 'Authorization: Bearer SEU_TOKEN' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: 8f7c1e2a-...' \
  -d '{ }'

Por onde seguir

Convenções da API

Autenticação, formato de requisição e resposta, erros, paginação, idempotência, webhooks e limites.

Arquitetura

Como os serviços se dividem e conversam.

Modelo de dados

As entidades e como elas se relacionam.

Padrões de serviço

O que todo serviço desta plataforma implementa igual.

Core

Contas, tenants e a árvore.

Relay multi-tenant

Entrega de e-mail, DKIM por domínio e reputação.

Referência completa

As 378 operações, com parâmetros, respostas e exemplo de chamada.

Superfícies

serviçobaseoperações
API pública (BFF) https://api.asender.net89 público
Identidade (OIDC / OAuth 2.1) https://auth.asender.net42 público
Core — contas e árvore de tenants http://asender-core:800263 interno
Messages — campanhas, contatos e envio http://asender-messages:800424 interno
CRM — jornadas, alertas e destinos http://asender-crm:800542 interno
Pages — páginas, formulários e mídia http://asender-pages:800649 interno
Runtime — publicação e analytics http://asender-runtime:800740 interno
Mail — e-mail corporativo http://asender-mail:801629 interno

Os serviços internos não são alcançáveis de fora — eles conversam pela malha privada. Estão aqui porque um agente que precisa entender o sistema precisa vê-los, e escondê-los não os tornaria menos reais.