Impfungen melden

Ihre Software hat geimpft; Petla führt die Historie und berechnet daraus die Erinnerung. Über die Produkt-Id — nie über einen Namen.

Warum ein Produkt und kein Name Extended

Petla berechnet die nächste Fälligkeit je Antigen. Ein Produkt bildet auf seine Antigene ab; die Zeichenkette „Versican Plus“ tut das nicht — sie landet als Zeile, aus der die Erinnerung nichts berechnen kann. Deshalb ist productId Pflicht.

Woher die Produkt-Id kommt

Die Ids stammen aus Petlas Impfstoffverzeichnis und werden über GET /vaccine-products abgerufen. Ein Freitextname wird nicht angenommen, weil die Erinnerungsrechnung daraus keine Antigene ableiten kann.

Welches Intervall Petla rechnet

Sie senden die Dosis, nicht das Intervall. Es gibt im Rumpf kein Feld für eine Fälligkeit oder einen Abstand; Petla leitet beides je Antigen aus seinem eigenen Regelwerk ab.

Grundlage sind die StIKo-Leitlinien: für Hund, Katze und Kaninchen StIKo Kleintiere, für Pferde die StIKo-Pferd-Leitlinie. Die Ausgabe ist versioniert und wird auf jede berechnete Erinnerung gestempelt, sodass eine Fälligkeit immer auf das Regelwerk zurückführbar ist, das sie erzeugt hat. Für Arten außerhalb dieser Liste rechnet Petla keine protokollgenaue Erinnerung.

Die Praxis kann das Regelwerk überschreiben — und das gilt

Eine Praxis kann in ihren Erinnerungs-Einstellungen eigene Intervalle hinterlegen und einzelne Antigene ganz abschalten. Petla wendet sie vom Genauesten zum Allgemeinsten an:

  1. Vorgabe der Praxis für dieses Produkt
  2. Regel des Verzeichnisses für dieses Produkt
  3. Vorgabe der Praxis für die Krankheit
  4. StIKo-Vorgabe für die Krankheit

⚠️ Damit schlägt eine produktbezogene Regel eine krankheitsweite Vorgabe der Praxis — ein pauschales „Tollwut = 12 Monate“ überschreibt also nicht die 36 Monate eines Produkts, das so zugelassen ist. Rechnen Sie deshalb keine Fälligkeit selbst nach: Was Ihr System als Intervall annimmt, muss nicht das sein, was für diese Praxis gilt.

1. Den Katalog einmal abbilden

GET /vaccine-products

{
  "products": [
    {
      "id": "…",
      "name": "Versican Plus DHPPi/L4R",
      "manufacturer": "Zoetis",
      "species": ["HUND"],
      "antigens": ["canine_distemper", "canine_hepatitis", "canine_lepto",
                   "canine_parainfluenza", "canine_parvo", "rabies"],
      "formerNames": []
    }
  ]
}
Die Id ist undurchsichtig

Speichern Sie sie, aber parsen Sie sie nicht und setzen Sie kein UUID-Format voraus. Petlas eigene Ids sind nicht durchgängig RFC 4122 — am 07.09.2026 fallen 31 von 251 Pet-Ids im Testsystem durch eine strenge UUID-Prüfung. Eine Formatprüfung auf einem Wert, den wir ausgeben, kann nur mit uns uneins werden.

2. Die Dosis melden

POST /appointments/{appointmentId}/vaccinations

{
  "externalId": "pms-dose-4711",
  "petlaPetId": "…",
  "productId": "…",
  "administeredAt": "2026-09-01T09:30:00Z",
  "stage": "BOOSTER",
  "batchNumber": "A1B2C3",
  "administeredBy": "Dr. Sandra Weiß"
}

201  { "id": "…", "status": "recorded" }
Der Termin ist der Anker

Dieselbe Eigenschaft wie bei Dokumenten: das Tier muss zu den Patienten dieses Termins gehören, und Petla prüft das, statt dem Rumpf zu glauben. So erreicht keine Anfrage einen Patienten, den Ihre Verbindung nicht ohnehin schon teilt — ein bloßes POST /vaccinations mit einer Tier-Id könnte einen klinischen Eintrag auf jede erratbare Id schreiben. ⚠️ Und es ist fachlich richtig statt nur bequem: geimpft wird bei einem Besuch.

Nur anfügen — es gibt kein Ändern und kein Löschen

Eine Korrektur ist ein neuer Eintrag, der auf den zeigt, den er ablöst. Erzwungen wird das in der Datenbank: Petlas Impfverzeichnis trägt einen Trigger, der UPDATE und DELETE verweigert.

Die Erinnerung entsteht zeitversetzt

Die Dosis wird entgegengenommen, geprüft und gespeichert, gegen das aufgelöste Produkt, sodass die Antigene daranhängen, die die Erinnerung liest. Der Aufruf selbst berechnet aber keine Erinnerung und verschickt nichts: Ein 201 belegt, dass die Dosis in der Akte steht, nicht, dass sich eine Erinnerung bewegt hat.

Die Berechnung läuft planmäßig, nicht beim Schreiben — eine Fälligkeit hängt am Datum und nicht am Zeitpunkt der Eingabe. Ihre Dosis geht dabei genauso ein wie eine in der Praxis erfasste; ein gesonderter Freigabeschritt ist dafür nicht nötig. Rechnen Sie also mit einer Verzögerung, nicht mit einem Ausbleiben.

Datenschutz

Eine Dosis ist ein klinischer Eintrag über ein Tier, dessen Halter auf demselben Termin genannt ist. ⛔ Ihr AVV muss das abdecken — ein auf Termindaten zugeschnittener Vertrag erlaubt das so wenig wie ein Dokument. Prüfen Sie Kategorien und Zweck, bevor Sie vaccinations.push deklarieren. ⚠️ Es gibt keinen Endpunkt, der Impfungen wieder herausliest, und es darf auch keiner beiläufig hinzukommen: §2 verspricht, dass diese Integration Petla keinen Lesezugriff auf klinische Akten gibt.