SDK

Gebruik de openbare BARFLAB API vanuit Java, Python of Node.js.

Een lokale client genereren

Openbare pakketten voor Java, Python of Node.js zijn nog niet gepubliceerd. Genereer een lokale client uit het versiebeheerste openbare contract met het hieronder getoonde vastgelegde generatorcommando. Door de generatorversie vast te zetten, worden contractupdates bewust uitgevoerd.

Verzoeken configureren

Voer aanroepen uit vanaf een vertrouwde server, lees het toegangstoken uit de omgeving en gebruik het basisadres en de time-outs uit de voorbeelden. Plaats het token nooit in browsercode.

Huisdieren opvragen

De onderstaande voorbeelden voor Java, Python en Node.js voeren dezelfde eerste bewerking uit met standaardbibliotheken van het platform en zijn daarom niet afhankelijk van een niet-gepubliceerd pakket.

Fouten afhandelen

Controleer zowel de status als de inhoud van het antwoord. Bewaar de aanvraag-ID wanneer je contact opneemt met ondersteuning, maar log nooit het toegangstoken. Probeer een schrijfactie of dieetgeneratie alleen opnieuw als het verzoek veilig kan worden herhaald.

Versie en bron

Genereer clients vanuit de openbare OpenAPI-bundel. Zet de versies van het contract en de generator vast in je build, zodat upgrades worden beoordeeld en herhaalbaar zijn.

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