SocialHub.AI

Compliance & Einwilligung API Live

Lesen Sie die veröffentlichte Datenschutzerklärung/Compliance-Erklärung Ihres Teams und überprüfen Sie die Zustimmung jedes einzelnen Mitglieds zu einer verwalteten Version REST API. Ihr Online-Shop, Ihre App, Ihr Data Warehouse oder Ihr Backoffice kann die aktuelle Erklärung abrufen, deren Versionsverlauf einsehen und genau bestätigen, welcher Version ein Mitglied zugestimmt hat – mit geschützten und protokollierten Schlüsseln.

Authentifizierung & Bereiche

Alle Endpunkte befinden sich auf dem Host Flash API und authentifizieren sich mit einem serverseitigen Schlüssel API (Bearer). Das Team wird immer vom Schlüssel abgeleitet – es wird niemals in der Anfrage gesendet. Zwei schreibgeschützte Bereiche steuern den Zugriff:

  • privacy:read – die Anweisung: aktuelle Version, Verlauf und eine spezifische Version.
  • consent:read — Einwilligungsdatensätze eines Mitglieds (Version, Geltungsbereich, Status, Zeit).
# Every call uses a server-side API key (Bearer). teamId is derived from the key,
# never sent in the request. Two read scopes:
#   privacy:read  → the statement (current / history / a version)
#   consent:read  → a member's consent records
curl https://flash.socialhub.ai/api/v2/privacy/current \
  -H "Authorization: Bearer fl_live_your_key_here"

Lesen Sie die Erklärung.

Nur veröffentlichte und archivierte Versionen – Entwürfe werden niemals offengelegt, und Inhalte werden bereinigt (interne Prüfmarkierungen entfernt), bevor sie die API verlassen.

GET https://flash.socialhub.ai/api/v2/privacy/current          # scope: privacy:read

# 200 — the current published statement (sanitized), or { "data": null } if none published.
{
  "data": {
    "id": "pol_…",
    "version": "v3",
    "versionSeq": 3,
    "status": "published",
    "locale": "en",
    "changeType": "material",
    "changeSummary": "Updated data-retention section",
    "effectiveAt": "2026-02-01T00:00:00.000Z",
    "contentHash": "…sha256…",
    "content": { "sections": [ { "key": "intro", "title": "…", "body": "…" } ] }
  }
}
GET https://flash.socialhub.ai/api/v2/privacy/policies         # scope: privacy:read

# 200 — version history, newest first (metadata only; published & archived — never drafts).
{
  "data": [
    { "id": "pol_3", "version": "v3", "versionSeq": 3, "status": "published",
      "changeType": "material", "effectiveAt": "2026-02-01T00:00:00.000Z", "contentHash": "…" },
    { "id": "pol_2", "version": "v2", "versionSeq": 2, "status": "archived",
      "changeType": "minor", "effectiveAt": "2026-01-01T00:00:00.000Z", "contentHash": "…" }
  ],
  "total": 2
}

GET https://flash.socialhub.ai/api/v2/privacy/policies/{id}    # one version, full sanitized content (404 for a draft id)

Zustimmung überprüfen

Bestätigen Sie genau, welcher Version und welchem ​​Umfang die Zustimmung eines Mitglieds zu den Datenschutzbestimmungen erteilt wurde. Datensätze dienen als Anhänge und bleiben auch nach dem Löschen durch ein Mitglied erhalten; API liefert die zur Überprüfung benötigten Daten – ohne die rohe IP-Adresse oder den User-Agent (Minimierung personenbezogener Daten).

GET https://flash.socialhub.ai/api/v2/members/{id}/consents   # scope: consent:read

# 200 — the member's consent records, newest first. The evidence to VERIFY consent:
# which statement version + scopes, the method, status and time. No raw IP / user-agent.
{
  "data": [
    {
      "id": "con_…",
      "scopes": ["privacy_policy", "marketing_email"],
      "method": "register",
      "status": "active",                 // active | legacy_unverified | withdrawn
      "policyVersion": "v3",
      "policyVersionSeq": 3,
      "policyContentHash": "…sha256…",
      "consentedAt": "2026-02-02T10:30:00.000Z"
    }
  ]
}
# A member of another team (or unknown) → 404. No consents yet → { "data": [] }.

Garantien

Mandantenisoliert

teamId kommt vom Schlüssel API; Die ID eines anderen Teams wird zu 404 aufgelöst. Endpunkte sind pro Schlüssel ratenbegrenzt.

Entwürfe sickern niemals durch

Es werden nur veröffentlichte/archivierte Versionen bereitgestellt, bereinigt – Entwürfe und interne Markierungen bleiben intern.

Einwilligung an Formulierung gebunden

Jeder Datensatz enthält die Versionsnummer number und einen Inhalts-Hash, sodass „v3“ immer denselben Inhalt hat.

Standardmäßig minimal

Einwilligungsdatensätze enthalten keine Roh-IP-Adresse/User-Agent – ​​Sie erhalten den Verifizierungsnachweis, keine Überwachungsdaten.

Maschinenlesbare Referenz: Die Endpunkte befinden sich in der OpenAPI-Spezifikation v2 unter https://flash.socialhub.ai/api/v2/openapi.json (Tag Privacy).

Über die Einwilligung hinaus: Themenabonnements, die beim Absenden erzwungen werden

Die Zustimmung ist das rechtliche Tor; Themenabonnements bieten dem Mitglied eine detailliertere Auswahl an welchemMarketing es möchte. Im Datenschutzbereich des Portals kann ein Mitglied einzelne Themen – Werbung, Newsletter, Treue, Produktankündigungen – deaktivieren und den Rest beibehalten. Es handelt sich um ein Opt-out-Modell (kein Datensatz = abonniert) und wird serverseitig durchgesetzt: Jede Kampagne enthält ein Thema, und das Sendetor unterdrückt eine Nachricht, wenn das Mitglied dieses Thema deaktiviert hat – zusammen mit der Häufigkeitsbegrenzung der Kommunikationsrichtlinie und den Ruhezeiten. Transaktionsnachrichten sind niemals betroffen. Die Mitglieder verwalten es selbst; Das Portal liest und schreibt es über einen Verbrauchersitzungsendpunkt (/api/member/topic-subscriptions), sodass kein Administratorschlüssel API beteiligt ist.