SDK tipados
A API, em métodos tipados.
@openemail/sdk é um cliente TypeScript sem dependências para a API OpenEmail, verificado contra o seu documento OpenAPI em cada compilação.
Em resumo
O que é um SDK?
Um SDK, ou kit de desenvolvimento de software, envolve uma API HTTP nas funções e nos tipos de uma linguagem. Chama métodos em vez de construir pedidos, e o seu editor verifica os argumentos antes de algo ser enviado.
0
Dependências de execução
30s
Tempo limite por tentativa
2
Repetições em chamadas repetíveis
Como funciona
Verificado contra a API em cada compilação
Uma verificação de paridade lê o documento OpenAPI e faz falhar a compilação ao primeiro desvio: um método em falta, um método sem operação ou um âmbito errado.
Paginação sem ciclo de cursor
iterate() segue o cursor e só obtém cada página quando o seu ciclo lá chega, por isso um break para os pedidos.
Repetições que nunca enviam duas vezes
As chamadas repetíveis têm até duas repetições com espera crescente. Um envio reutiliza a mesma chave de idempotência em todas, por isso uma repetição devolve a mensagem original.
Envie o seu primeiro email
Instale-o com bun add @openemail/sdk e defina OPENEMAIL_API_KEY com uma chave de Definições, Chaves API.
import { init, openemail } from '@openemail/sdk' init({ apiKey: process.env.OPENEMAIL_API_KEY }) const email = await openemail.emails.send({ from: 'Acme Billing <[email protected]>', to: '[email protected]', subject: 'Your September invoice', html: '<p>Invoice attached.</p>',}) console.log(email.id, email.status)O que recebe
Já no produto
Node, Bun e Deno
Node 20 ou posterior, ESM ou CommonJS, e aceita o seu próprio fetch.
Chaves verificadas cedo
Uma chave com o prefixo errado lança um erro na construção, e não como um 401.
Um cliente, vários espaços de trabalho
Passe apiKey numa única chamada para agir noutro espaço de trabalho.
Erros fáceis de distinguir
OpenEmailApiError traz status, code e requestId, além de isRateLimited e isNotFound.
Boas práticas
Tirar o máximo partido
- 01
A chave no ambiente
Defina OPENEMAIL_API_KEY e deixe o cliente partilhado lê-la, para que nenhuma chave fique no código-fonte.
- 02
Crie um só cliente
Crie o cliente uma vez, no seu próprio módulo, e importe-o noutros sítios.
- 03
Leia o estado
Um envio resolvido ainda pode estar em fila, agendado ou falhado, por isso leia status antes de o dar como entregue.
Ponto de situação
Convém saber
- Automação de versões
- A publicação é manual, por isso uma versão chega ao npm quando alguém a executa, e não quando a alteração entra.
- Outras linguagens
- Só TypeScript. Ainda não há cliente para Python, Go ou Ruby.
Perguntas
O que mais nos perguntam
Continue a explorar
Combina bem com
Começar
O seu domínio,
o seu correio.
Aponte um domínio para o OpenEmail e leia o correio dele numa caixa de correio construída à volta dele. O plano gratuito inclui um domínio.