SDK

Bruk BARFLAB sitt offentlige API fra Java, Python eller Node.js.

Generer en lokal klient

Offentlige pakker er ennå ikke publisert for Java, Python eller Node.js. Generer en lokal klient fra den versjonerte offentlige kontrakten med den fastlåste generator-kommandoen som vises nedenfor. En fast generatorversjon gjør kontraktoppdateringer bevisste.

Konfigurer forespørsler

Kjør kall fra en klarert server, les tilgangstokenet fra miljøet, og bruk basisadressen og tidsavbruddene som vises i eksemplene. Plasser aldri tokenet i nettleserkode.

List kjæledyr

Eksemplene for Java, Python og Node.js nedenfor utfører den samme første operasjonen med standardbiblioteker fra plattformen, så de er ikke avhengige av en upublisert pakke.

Håndter feil

Kontroller både svarstatusen og innholdet. Ta vare på forespørselsidentifikatoren når du kontakter kundestøtte, men logg aldri tilgangstokenet. Gjenta en skriveoperasjon eller diettgenerering bare når forespørselen kan gjentas trygt.

Versjon og kilde

Generer klienter fra den offentlige OpenAPI-pakken. Fastsett kontrakt- og generatorversjonene i bygget ditt, slik at oppgraderinger blir gjennomgått og kan gjentas.

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();
Operasjons-ID
petsList