ABSA API Dokumentation

REST API für die Integration der ABSA (Adaptive Bionische Stütz-Assistenz) in Ihre Healthcare-Anwendungen, Reha-Systeme und Gesundheits-Plattformen.

API Version: v1.0
OAuth 2.0
HIPAA-konform

Schnellstart

Die ABSA API ermöglicht Ihnen den Zugriff auf Echtzeit-Sensordaten, Gangbild-Analysen, Konfigurationseinstellungen und Gesundheitsstatistiken Ihrer ABSA-Geräte.

Base URL

https://api.absa-tech.eu/v1

Authentifizierung

Alle API-Anfragen erfordern OAuth 2.0 Authentifizierung mit Bearer Token:

curl -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     https://api.absa-tech.eu/v1/devices

Rate Limits

  • Standard: 1.000 Requests pro Stunde
  • Enterprise: 10.000 Requests pro Stunde
  • Healthcare Provider: Unbegrenzt

API Endpoints

Geräte-Management

GET/devices

Listet alle ABSA-Geräte auf, die mit Ihrem Account verbunden sind.

{
  "devices": [
    {
      "id": "absa_1a2b3c4d",
      "name": "ABSA Pro #001",
      "model": "ABSA Pro",
      "firmware_version": "1.2.3",
      "battery_level": 85,
      "status": "active",
      "last_sync": "2026-01-15T14:30:00Z"
    }
  ]
}
GET/devices/{device_id}

Ruft detaillierte Informationen zu einem spezifischen ABSA-Gerät ab.

Response:

{
  "id": "absa_1a2b3c4d",
  "name": "ABSA Pro #001",
  "model": "ABSA Pro",
  "serial_number": "ABSA-PRO-2026-001234",
  "firmware_version": "1.2.3",
  "battery_level": 85,
  "solar_charging": true,
  "status": "active",
  "sensors": {
    "ground_detection": true,
    "pressure_sensors": true,
    "imu": true,
    "gps": true
  },
  "configuration": {
    "haptic_feedback": true,
    "display_mode": "analytics",
    "auto_calibration": true
  },
  "last_sync": "2026-01-15T14:30:00Z",
  "created_at": "2026-01-01T10:00:00Z"
}
PATCH/devices/{device_id}

Aktualisiert die Konfiguration eines ABSA-Geräts.

Request Body:

{
  "name": "Meine ABSA",
  "configuration": {
    "haptic_feedback": false,
    "display_mode": "minimal",
    "auto_calibration": true
  }
}

Echtzeit-Sensordaten

GET/devices/{device_id}/sensors/realtime

Ruft aktuelle Echtzeit-Sensordaten ab (Bodensensorik, Drucksensoren, IMU, GPS).

{
  "timestamp": "2026-01-15T14:30:15Z",
  "ground_sensor": {
    "surface_type": "asphalt",
    "slip_risk": 0.05,
    "inclination": 2.3,
    "update_rate_hz": 20
  },
  "pressure_sensors": {
    "grip": 45.2,
    "arm_cuff": 32.1,
    "ground_contact": 98.5,
    "unit": "N"
  },
  "imu": {
    "gyro": {"x": 0.12, "y": -0.05, "z": 0.03},
    "accelerometer": {"x": 0.15, "y": 9.81, "z": 0.08},
    "magnetometer": {"x": 25.3, "y": -12.1, "z": 42.8},
    "frequency_hz": 100
  },
  "gps": {
    "latitude": 48.2082,
    "longitude": 16.3738,
    "altitude": 171.5,
    "accuracy": 3.2,
    "speed": 1.2
  },
  "battery": {
    "level": 85,
    "solar_charging": true,
    "solar_power_w": 8.5,
    "estimated_runtime_h": 10.5
  }
}
GET/devices/{device_id}/sensors/history

Ruft historische Sensordaten für einen bestimmten Zeitraum ab.

Query Parameters:

  • start_date: ISO 8601 Format (z.B. 2026-01-01T00:00:00Z)
  • end_date: ISO 8601 Format
  • interval: minute | hour | day (optional, default: hour)
GET /devices/absa_1a2b3c4d/sensors/history?start_date=2026-01-14T00:00:00Z&end_date=2026-01-15T00:00:00Z&interval=hour

KI-Gangbild-Analyse

GET/devices/{device_id}/gait-analysis

Ruft die aktuelle KI-basierte Gangbild-Analyse ab.

{
  "analysis_id": "ga_5f6g7h8i",
  "timestamp": "2026-01-15T14:30:00Z",
  "gait_score": 87,
  "metrics": {
    "step_count": 8543,
    "average_speed": 1.2,
    "stride_length": 0.65,
    "cadence": 105,
    "symmetry_score": 92,
    "stability_score": 88
  },
  "patterns": {
    "detected_irregularities": false,
    "fall_risk_score": 5,
    "fatigue_level": "low"
  },
  "recommendations": [
    "Gangbild ist optimal",
    "Weiterhin regelmäßige Bewegung empfohlen"
  ],
  "ml_model_version": "2.1.0",
  "confidence": 0.94
}
GET/devices/{device_id}/gait-analysis/history

Ruft historische Gangbild-Analysen ab, um Fortschritte zu tracken.

Query Parameters:

  • days: Anzahl der Tage (default: 7, max: 90)

Gesundheitsstatistiken

GET/devices/{device_id}/stats/daily

Ruft tägliche Aktivitätsstatistiken ab.

{
  "date": "2026-01-15",
  "steps": 8543,
  "distance_km": 6.2,
  "active_time_minutes": 185,
  "calories_burned": 420,
  "average_speed": 1.2,
  "floors_climbed": 12,
  "gait_score_average": 87,
  "fall_prevention_events": 0,
  "battery_usage": {
    "solar_contribution_percent": 65,
    "total_consumed_mah": 380
  }
}
GET/devices/{device_id}/stats/weekly

Ruft wöchentliche Zusammenfassung ab.

Notfall & Warnungen

GET/devices/{device_id}/emergency/contacts

Ruft konfigurierte Notfallkontakte ab.

POST/devices/{device_id}/emergency/trigger

Löst einen manuellen Notruf aus (benachrichtigt alle Notfallkontakte).

{
  "type": "manual",
  "message": "Benutzer benötigt Hilfe",
  "location": {
    "latitude": 48.2082,
    "longitude": 16.3738
  }
}
GET/devices/{device_id}/alerts/falls

Ruft Sturzerkennung-Events ab.

{
  "events": [
    {
      "id": "fall_9j8k7l6m",
      "timestamp": "2026-01-10T08:15:30Z",
      "type": "prevented",
      "severity": "medium",
      "location": {
        "latitude": 48.2082,
        "longitude": 16.3738
      },
      "action_taken": "adaptive_suspension_engaged",
      "user_confirmed": true
    }
  ]
}

Firmware-Updates

GET/devices/{device_id}/firmware/updates

Prüft auf verfügbare Firmware-Updates.

{
  "current_version": "1.2.3",
  "latest_version": "1.3.0",
  "update_available": true,
  "release_notes": "Verbesserte Gangbild-Erkennung, Bugfixes",
  "size_mb": 45.2,
  "critical": false
}
POST/devices/{device_id}/firmware/install

Startet Over-the-Air (OTA) Firmware-Update.

Webhooks

Registrieren Sie Webhook-URLs, um Echtzeit-Benachrichtigungen über wichtige Events zu erhalten:

Verfügbare Events:

  • device.connected - Gerät verbunden
  • device.disconnected - Gerät getrennt
  • battery.low - Batterie niedrig (<20%)
  • fall.detected - Sturz erkannt
  • fall.prevented - Sturz verhindert
  • emergency.triggered - Notruf ausgelöst
  • gait.analysis.completed - Gangbild-Analyse abgeschlossen
  • firmware.update.available - Firmware-Update verfügbar
POST/webhooks

Registriert eine neue Webhook-URL.

{
  "url": "https://your-app.com/webhooks/absa",
  "events": ["fall.detected", "emergency.triggered"],
  "secret": "your_webhook_secret"
}

Fehlerbehandlung

Die API verwendet Standard-HTTP-Statuscodes:

200Erfolgreiche Anfrage
201Ressource erfolgreich erstellt
400Fehlerhafte Anfrage (ungültige Parameter)
401Nicht authentifiziert (ungültiges Token)
403Keine Berechtigung (fehlende Permissions)
404Ressource nicht gefunden
429Rate Limit überschritten
500Interner Server-Fehler

Fehler-Response Format:

{
  "error": {
    "code": "invalid_request",
    "message": "Device ID ist erforderlich",
    "details": {
      "field": "device_id",
      "issue": "missing_parameter"
    }
  }
}

Sicherheit & Compliance

Datenschutz

  • Ende-zu-Ende-Verschlüsselung (AES-256)
  • DSGVO-konform (Art. 25 Privacy by Design)
  • Server-Standort: Deutschland (EU)
  • Keine Datenverkäufe an Dritte

Healthcare-Standards

  • HIPAA-konform
  • HL7 FHIR® kompatibel
  • MDR-zertifiziert (EU 2017/745)
  • ISO 27001 zertifiziert

OAuth 2.0 Scopes

  • devices:read
  • devices:write
  • sensors:read
  • gait:read
  • stats:read
  • emergency:write

Audit Logs

Alle API-Zugriffe werden protokolliert. Enterprise-Kunden erhalten Zugriff auf vollständige Audit-Logs gemäß Healthcare-Compliance-Anforderungen.

SDKs & Code-Beispiele

Offizielle SDKs für verschiedene Programmiersprachen:

Python SDK

pip install absa-sdk

from absa import ABSAClient

client = ABSAClient(api_key="your_key")
devices = client.devices.list()

for device in devices:
    print(device.name)
    stats = device.get_daily_stats()
    print(f"Steps: {stats.steps}")

JavaScript/Node.js SDK

npm install @absa/sdk

import { ABSAClient } from '@absa/sdk';

const client = new ABSAClient({
  apiKey: 'your_key'
});

const devices = await client.devices.list();
const stats = await devices[0]
  .getDailyStats();
console.log(stats);

Java SDK

<dependency>
  <groupId>eu.absa</groupId>
  <artifactId>absa-sdk</artifactId>
  <version>1.0.0</version>
</dependency>

ABSAClient client = 
  new ABSAClient("your_key");
List<Device> devices = 
  client.devices().list();

C# / .NET SDK

dotnet add package ABSA.SDK

using ABSA.SDK;

var client = new ABSAClient(
  apiKey: "your_key"
);
var devices = await client
  .Devices.ListAsync();

Support & Ressourcen

Developer Support

Technische Fragen zur API-Integration

api-support@absa-tech.eu

Developer Community

Austausch mit anderen Entwicklern

community.absa-tech.eu

API Changelog

Updates und Breaking Changes

api.absa-tech.eu/changelog

Hinweis: Diese API-Dokumentation bezieht sich auf das ABSA-Konzept, das sich derzeit in der Alpha-Phase befindet. Die API-Spezifikationen können sich bis zur Marktreife ändern.