TypeScript
@adlass/api installieren und verwenden.
npm install @adlass/apiDas Paket exportiert createAdlassClient, den Helfer paginate, die Klasse AdlassError sowie die generierten Typen paths, components und operations. Es läuft überall, wo fetch existiert: Node.js 20+, Deno, Bun, Cloudflare Workers und Vercel Edge.
Client erstellen
import { createAdlassClient } from "@adlass/api";
const client = createAdlassClient({
token: process.env.ADLASS_API_KEY!,
// baseUrl: "https://dev.adlass.io/v1", // Entwicklungsumgebung, adl_test_-Schlüssel
// maxRetries: 3, maxRetryDelayMs: 60_000,
});client ist ein openapi-fetch-Client. Pfade, Parameter und Bodies werden zur Kompilierzeit gegen das Schema geprüft.
Lesen
const { data, error, response } = await client.GET("/spaces/{space_id}", {
params: { path: { space_id: "123e4567-e89b-42d3-a456-426614174000" } },
});
if (error) throw new Error(`${response.status}: ${error.code}`);
console.log(data.name);error ist der geparste Problem-Body mit code, detail und request_id. Bewahre request_id für Support-Anfragen auf.
Schreiben
const { data } = await client.POST("/spaces", {
body: { name: "Kundendokumente" },
headers: { "Idempotency-Key": orderId }, // optional; sonst wird eine UUID erzeugt
});Paginieren
import { paginate } from "@adlass/api";
for await (const document of paginate((cursor) =>
client.GET("/documents", { params: { query: { limit: 100, cursor } } }),
)) {
console.log(document.file_name);
}paginate folgt next_cursor, bis es null ist, und wirft AdlassError, wenn eine Seite fehlschlägt.
Wiederholungen und Abbruch
429-Antworten werden bis zu maxRetries-mal wiederholt; gewartet wird gemäß Retry-After oder exponentiell, nie länger als maxRetryDelayMs. Übergib in jedem Aufruf ein AbortSignal über signal, um Wartezeiten und Requests abzubrechen. Weiterleitungen werden abgelehnt, damit ein Schlüssel nie die API-Origin verlässt.