# Compliance SDK Demo

Integrieren Sie DSGVO-konforme Einwilligungsverwaltung, DSR-Portale und Compliance-Features mit nur wenigen Zeilen Code.

Integration starten GitHub

## 1. Embed Script Integration

Fuegen Sie das SDK mit einem einzigen Script-Tag zu Ihrer Website hinzu:

    <!-- BreakPilot Compliance SDK -->
    <script src="https://cdn.breakpilot.app/sdk/v1/compliance.min.js"></script>
    <script>
      BreakPilotSDK.init({
        apiEndpoint: 'https://compliance.example.com/api/v1',
        apiKey: 'pk_live_xxx',
        autoInjectBanner: true,
        bannerConfig: {
          position: 'bottom',
          theme: 'light',
          language: 'de'
        },
        onConsentChange: function(consent) {
          if (consent.analytics) loadAnalytics();
          if (consent.marketing) loadMarketing();
        }
      });
    </script>

### Auto-Inject Banner

Cookie-Banner wird automatisch eingeblendet wenn keine Einwilligung vorliegt.

### Consent Callbacks

Reagieren Sie auf Einwilligungsaenderungen mit Custom-Callbacks.

### Multi-Language

Unterstuetzung fuer DE, EN, FR, ES, IT und weitere Sprachen.

## 2. Web Components

Verwenden Sie vorgefertigte Web Components fuer gaengige Compliance-Features:

    <!-- Consent Banner -->
    <breakpilot-consent-banner
      api-key="pk_live_xxx"
      position="bottom"
      theme="light"
    ></breakpilot-consent-banner>

    <!-- DSR Portal -->
    <breakpilot-dsr-portal
      language="de"
    ></breakpilot-dsr-portal>

    <!-- Compliance Score Widget -->
    <breakpilot-compliance-score
      show-details="true"
    ></breakpilot-compliance-score>

### Live Demo

Consent Banner wird hier angezeigt

Compliance Score Widget

78%

## 3. Events & Callbacks

Das SDK emittiert Events fuer alle wichtigen Aktionen:

    // Event Listener registrieren
    window.addEventListener('breakpilot:consent-granted', (e) => {
      console.log('Einwilligung erteilt:', e.detail.purposes);
    });

    window.addEventListener('breakpilot:consent-revoked', (e) => {
      console.log('Einwilligung widerrufen:', e.detail.purposes);
    });

    window.addEventListener('breakpilot:dsr-submitted', (e) => {
      console.log('DSR Anfrage eingereicht:', e.detail.requestType);
    });

    // Consent programmatisch pruefen
    const hasAnalytics = BreakPilotSDK.hasConsent('analytics');
    const allConsents = BreakPilotSDK.getConsents();

### consent-granted

Wird ausgeloest wenn der Nutzer eine Einwilligung erteilt.

### consent-revoked

Wird ausgeloest wenn eine Einwilligung widerrufen wird.

### dsr-submitted

Wird ausgeloest wenn eine Betroffenenanfrage eingereicht wird.

### state-changed

Wird ausgeloest wenn sich der SDK-State aendert.

## 4. API-Referenz

Vollstaendige API-Dokumentation fuer alle SDK-Methoden:

    // SDK Initialisieren
    BreakPilotSDK.init(config);

    // Consent Management
    BreakPilotSDK.grantConsent('analytics');
    BreakPilotSDK.revokeConsent('marketing');
    BreakPilotSDK.hasConsent('functional');
    BreakPilotSDK.getConsents();

    // DSR (Data Subject Requests)
    BreakPilotSDK.submitDSR({
      type: 'ACCESS',
      email: 'user@example.com',
      name: 'Max Mustermann'
    });

    // Banner Control
    BreakPilotSDK.showBanner();
    BreakPilotSDK.hideBanner();

    // State Management
    BreakPilotSDK.getState();
    BreakPilotSDK.resetState();