OpenAPI et autres langages
L’API complète est décrite par un document OpenAPI 3.1. Il alimente la référence de l’API de ce site et peut générer des clients pour les langages sans SDK officiel.
- Spécification :
https://api.spacepost.dev/openapi.json - Fichier source dans le dépôt :
openapi/openapi.yaml
Générer un client
Section intitulée « Générer un client »Définissez l’URL de base sur https://api.spacepost.dev et configurez l’authentification bearer avec votre clé sp_live_.
Types et client fetch avec openapi-typescript et 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.goUtilisez OpenAPI Generator :
npx @openapitools/openapi-generator-cli generate \ -i https://api.spacepost.dev/openapi.json \ -g ruby -o ./spacepost-rubyDes générateurs existent pour PHP, Ruby, Java, Kotlin, Swift, C#, Rust et des dizaines d’autres.
Postman et outils d’API
Section intitulée « Postman et outils d’API »Importez l’URL de la spécification dans Postman, Insomnia, Bruno ou Hoppscotch. Définissez une variable de collection pour le jeton bearer.
Utiliser les SDK Resend
Section intitulée « Utiliser les SDK Resend »SpacePost étant compatible avec Resend, les SDK Resend officiels dans d’autres langages fonctionnent souvent en remplaçant leur URL de base. Voir Migrer depuis Resend.