SDK

Verwenden Sie die öffentliche BARFLAB-API mit Java, Python oder Node.js.

Einen lokalen Client generieren

Öffentliche Pakete für Java, Python oder Node.js sind noch nicht veröffentlicht. Generieren Sie einen lokalen Client aus dem versionierten öffentlichen Vertrag mit dem unten gezeigten festgelegten Generatorbefehl. Eine festgelegte Generatorversion sorgt für bewusst geplante Vertragsaktualisierungen.

Anfragen konfigurieren

Führen Sie Aufrufe von einem vertrauenswürdigen Server aus, lesen Sie das Zugriffstoken aus der Umgebung und verwenden Sie die in den Beispielen gezeigte Basisadresse und Zeitlimits. Platzieren Sie das Token niemals in Browsercode.

Tiere auflisten

Die folgenden Beispiele für Java, Python und Node.js führen denselben ersten Vorgang mit den Standardbibliotheken der jeweiligen Plattform aus und benötigen daher kein unveröffentlichtes Paket.

Fehler behandeln

Prüfen Sie sowohl den Antwortstatus als auch den Antworttext. Bewahren Sie die Anfragekennung auf, wenn Sie den Support kontaktieren, aber protokollieren Sie niemals das Zugriffstoken. Wiederholen Sie einen Schreibvorgang oder die Erstellung einer Diät nur, wenn die Anfrage sicher wiederholt werden kann.

Version und Quelle

Generieren Sie Clients aus dem öffentlichen OpenAPI-Bundle. Legen Sie Vertrags- und Generatorversionen in Ihrem Build fest, damit Aktualisierungen geprüft und reproduzierbar sind.

Java
curl --fail --silent --show-error https://api.barflab.io/openapi.yaml -o openapi.yaml
docker run --rm -v "$PWD:/local" openapitools/openapi-generator-cli:v7.24.0 generate \
  -i /local/openapi.yaml -g java -o /local/generated/barflab-java \
  --additional-properties=library=native
Java HTTP
var request = HttpRequest.newBuilder(URI.create(
    "https://api.barflab.io/v1/pets"))
  .header("Authorization", "Bearer " + System.getenv("BARFLAB_TOKEN"))
  .header("Accept", "application/json")
  .timeout(Duration.ofSeconds(30))
  .GET()
  .build();
var response = httpClient.send(request, BodyHandlers.ofString());
Python
curl --fail --silent --show-error https://api.barflab.io/openapi.yaml -o openapi.yaml
docker run --rm -v "$PWD:/local" openapitools/openapi-generator-cli:v7.24.0 generate \
  -i /local/openapi.yaml -g python -o /local/generated/barflab-python
Python HTTP
import os
import urllib.request

request = urllib.request.Request(
    "https://api.barflab.io/v1/pets",
    headers={
        "Authorization": f"Bearer {os.environ['BARFLAB_TOKEN']}",
        "Accept": "application/json",
    },
)
with urllib.request.urlopen(request, timeout=30) as response:
    body = response.read()
Node.js
curl --fail --silent --show-error https://api.barflab.io/openapi.yaml -o openapi.yaml
docker run --rm -v "$PWD:/local" openapitools/openapi-generator-cli:v7.24.0 generate \
  -i /local/openapi.yaml -g typescript-fetch -o /local/generated/barflab-node
Node.js HTTP
const response = await fetch(
  "https://api.barflab.io/v1/pets",
  {
    headers: {
      Authorization: `Bearer ${process.env.BARFLAB_TOKEN}`,
      Accept: "application/json",
    },
    signal: AbortSignal.timeout(30_000),
  },
);
const body = await response.json();
Operations-ID
petsList