OpenAPI e outras linguagens
A API completa é descrita por um documento OpenAPI 3.1. Ele alimenta a referência da API deste site e pode gerar clientes para linguagens sem um SDK oficial.
- Especificação:
https://api.spacepost.dev/openapi.json - Arquivo-fonte no repositório:
openapi/openapi.yaml
Gere um cliente
Seção intitulada “Gere um cliente”Defina a URL base como https://api.spacepost.dev e configure a autenticação bearer com a sua chave sp_live_.
Tipos e um cliente fetch com o openapi-typescript e o openapi-fetch:
npx openapi-typescript https://api.spacepost.dev/openapi.json -o spacepost.d.tsnpm install openapi-fetchimport createClient from "openapi-fetch";import type { paths } from "./spacepost";
const client = createClient<paths>({ baseUrl: "https://api.spacepost.dev", headers: { Authorization: `Bearer ${process.env.SPACEPOST_API_KEY}` },});
const { data, error } = await client.POST("/emails", { body: { from: "Acme <hello@acme.com>", to: ["user@example.com"], subject: "Hi", html: "<p>Hi</p>" },});pipx install openapi-python-clientopenapi-python-client generate --url https://api.spacepost.dev/openapi.jsongo install github.com/oapi-codegen/oapi-codegen/v2/cmd/oapi-codegen@latestcurl -s https://api.spacepost.dev/openapi.json -o openapi.jsonoapi-codegen -package spacepost -generate types,client openapi.json > spacepost.gen.goUse o OpenAPI Generator:
npx @openapitools/openapi-generator-cli generate \ -i https://api.spacepost.dev/openapi.json \ -g ruby -o ./spacepost-rubyExistem geradores para PHP, Ruby, Java, Kotlin, Swift, C#, Rust e dezenas de outras linguagens.
Postman e ferramentas de API
Seção intitulada “Postman e ferramentas de API”Importe a URL da especificação no Postman, no Insomnia, no Bruno ou no Hoppscotch. Defina uma variável de coleção para o bearer token.
Use os SDKs do Resend
Seção intitulada “Use os SDKs do Resend”Como o SpacePost é compatível com o Resend, os SDKs oficiais do Resend em outras linguagens muitas vezes funcionam bastando substituir a URL base. Veja Migrar do Resend.