Zum Hauptinhalt springen

Public API – RIP-Tag & Angehörigen-Link

RIP-Tag per Startcode verbinden und Angehörigen-Link auslesen – ohne Bluetooth/NFC.

Verfasst von Support Team

So verbindest du einen RIP-Tag per Startcode und holst den öffentlichen Trauerlink für Angehörige.

Basis-URL:https://de.rip-app.business/api/public/v1 – Details: Public API – Einstieg & Authentifizierung.

Typischer Ablauf

  1. Trauerfall anlegen → uuid merken

  2. RIP-Tag per Startcode verbinden

  3. customer_link_url an Angehörige weitergeben

RIP-Tag verbinden – POST /cases/{uuid}/tag

Du brauchst den Startcode auf dem Tag im Format XXXX-XXXX (Ziffern und Großbuchstaben).

Feld

Pflicht

Beschreibung

startcode

ja

z. B. AB12-CD34 (wird getrimmt und uppercased)

latitude

nein

Aktivierungsstandort (−90…90)

longitude

nein

Aktivierungsstandort (−180…180)

action

nein

store_activation_location = Standort nachträglich speichern (braucht lat/lng + bestehenden Tag)

NFC-Scan und Bluetooth bleiben der mobilen App vorbehalten – in der Public API funktioniert nur der Startcode.

curl -X POST "https://de.rip-app.business/api/public/v1/cases/CASE-UUID/tag" \
  -H "Authorization: Bearer rip_pub_DEIN_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{
    "startcode": "AB12-CD34",
    "latitude": 48.137154,
    "longitude": 11.576124
  }'
const base = "https://de.rip-app.business/api/public/v1";

await fetch(`${base}/cases/${caseUuid}/tag`, {
  method: "POST",
  headers: {
    Authorization: `Bearer ${token}`,
    "Content-Type": "application/json",
    Accept: "application/json",
  },
  body: JSON.stringify({
    startcode: "AB12-CD34",
    latitude: 48.137154,
    longitude: 11.576124,
  }),
});

Erfolgreiche Antwort:

{
  "success": true,
  "message": "RIP Tag erfolgreich aktiviert",
  "data": {
    "tag_uuid": "…",
    "tag_startcode": "AB12-CD34",
    "location_stored": true
  }
}

Typische Fehler:

Status

Bedeutung

400

Startcode fehlt / ungültig / nicht gefunden

409

Fall bereits abgeschlossen oder archiviert, Tag schon am Fall, Startcode schon verwendet

429

zu viele Aktivierungsversuche – retry_after beachten

Angehörigen-Link – customer_link_url

Der Link steckt in customer_link_url – schon direkt nach dem Anlegen und auch beim erneuten Abruf:

curl -X GET "https://de.rip-app.business/api/public/v1/cases/CASE-UUID" \
  -H "Authorization: Bearer rip_pub_DEIN_TOKEN" \
  -H "Accept: application/json"
{
  "success": true,
  "data": {
    "uuid": "19b79bbb-d5e5-40f3-b017-b9e472c80bba",
    "customer_link_url": "https://de.rip-app.business/trauerfall/19b79bbb-d5e5-40f3-b017-b9e472c80bba",
    "tag_startcode": "AB12-CD34",
    "tag_uuid": "…"
  }
}

Diesen Link können Angehörige ohne Login öffnen. Er zeigt immer auf die Instanz-Domain des Falls – nicht auf den API-Pfad.

Standort nachträglich speichern

Wenn der Tag schon verbunden ist und du nur den Aktivierungsstandort nachreichen willst:

curl -X POST "https://de.rip-app.business/api/public/v1/cases/CASE-UUID/tag" \
  -H "Authorization: Bearer rip_pub_DEIN_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "startcode": "AB12-CD34",
    "action": "store_activation_location",
    "latitude": 48.137154,
    "longitude": 11.576124
  }'

Komplett-Beispiel (JavaScript)

const base = "https://de.rip-app.business/api/public/v1";
const headers = {
  Authorization: `Bearer ${token}`,
  "Content-Type": "application/json",
  Accept: "application/json",
};

// 1) Fall anlegen
const created = await fetch(`${base}/cases`, {
  method: "POST",
  headers,
  body: JSON.stringify({
    first_name: "Max",
    last_name: "Mustermann",
    date_of_death: "2026-07-20",
  }),
}).then((r) => r.json());

if (!created.success) throw new Error(created.error);
const caseUuid = created.data.uuid;

// 2) Tag verbinden
await fetch(`${base}/cases/${caseUuid}/tag`, {
  method: "POST",
  headers,
  body: JSON.stringify({ startcode: "AB12-CD34" }),
});

// 3) Link holen
const detail = await fetch(`${base}/cases/${caseUuid}`, { headers }).then((r) =>
  r.json()
);

console.log(detail.data.customer_link_url);
console.log(detail.data.tag_startcode);
Hat dies deine Frage beantwortet?