iloveQR
    Pläne und PreiseFAQAPI
    iloveQR

    Erstellen, anpassen und verfolgen Sie QR-Codes für Ihr Unternehmen. Die vollständige QR-Code-Plattform mit Analysen und Teamzusammenarbeit.

    • QR-Typen
    • Dynamischer QR
    • Statischer QR
    • Analytik
    • Vorlagen
    • Bulk Builder
    • Benutzerdefinierte Domains
    • API
    • Über uns
    • Preise
    • Kontakt
    • Häufige Fragen
    • Hilfe-Center
    • Datenschutzrichtlinie
    • Allgemeine Geschäftsbedingungen
    • Cookies-Richtlinie
    • DSGVO
    • Missbrauch melden

    © 2026 iloveQR. Alle Rechte vorbehalten.

    API-Dokumentation
    API-Dokumentation
    Erste Schritte
    EinführungSchnellstartAuthentifizierung
    Authentifizierung
    QR-Codes
    Massenoperationen
    Analytik
    Webhooks
    EinrichtenVeranstaltungenSicherheit

    Schnellzugriffe

    API-Schlüssel abrufenKostenlose Testversion starten
    Webhooks

    Webhooks

    Erhalten Sie Echtzeitbenachrichtigungen, wenn Ereignisse in Ihrer Organisation auftreten. Webhooks ermöglichen es Ihnen, reaktive Integrationen zu erstellen, die sofort auf QR-Code-Scans und andere Ereignisse reagieren.

    Echtzeit

    Erhalten Sie sofortige Benachrichtigungen, wenn Ereignisse auftreten, kein Polling erforderlich

    Sicher

    HMAC-Signaturen bestätigen, dass Webhooks von iloveQR stammen

    Zuverlässig

    Automatische Wiederholungen mit exponentiellem Backoff bei fehlgeschlagenen Zustellungen

    Webhooks einrichten

    Konfigurieren Sie Webhooks über das Dashboard oder die API, um mit dem Empfang von Ereignissen zu beginnen.

    1

    Webhook-Endpunkt erstellen

    Richten Sie einen HTTPS-Endpunkt auf Ihrem Server ein, um Webhook-Nutzlasten zu empfangen.

    2

    Webhook registrieren

    Fügen Sie Ihre Endpunkt-URL hinzu und wählen Sie aus, für welche Ereignisse Sie sich anmelden möchten.

    3

    Signaturen überprüfen

    Implementieren Sie die Signaturüberprüfung, um sicherzustellen, dass die Nutzlast authentisch ist.

    Webhook registrieren
    curl -X POST \
      "https://api.iloveqr.com/api/v1/organizations/org_abc123/webhooks" \
      -H "X-API-Key: YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "url": "https://your-server.com/webhooks/iloveqr",
        "events": ["qr.scanned", "qr.created", "qr.updated"],
        "secret": "your_webhook_secret"
      }'

    Webhook-Ereignisse

    Melden Sie sich für die Ereignisse an, die Sie benötigen. Jeder Ereignistyp hat eine spezifische Nutzlaststruktur.

    QR-Code-Ereignisse

    qr.createdEin neuer QR-Code wurde erstellt
    qr.updatedEin QR-Code wurde aktualisiert
    qr.deletedEin QR-Code wurde gelöscht
    qr.scannedEin QR-Code wurde gescannt
    qr.archivedEin QR-Code wurde archiviert
    qr.restoredEin QR-Code wurde aus dem Archiv wiederhergestellt

    Abonnement-Ereignisse

    subscription.createdEin neues Abonnement wurde erstellt
    subscription.updatedEin Abonnement wurde aktualisiert
    subscription.cancelledEin Abonnement wurde storniert
    subscription.payment_succeededEine Zahlung war erfolgreich
    subscription.payment_failedEine Zahlung ist fehlgeschlagen

    Team-Ereignisse

    member.joinedEin Mitglied trat der Organisation bei
    member.leftEin Mitglied verließ die Organisation
    member.role_changedDie Rolle eines Mitglieds wurde geändert

    Webhook-Nutzlast

    Alle Webhook-Nutzlasten folgen einer konsistenten Struktur mit Ereignismetadaten und Daten.

    Beispiel: qr.scanned Ereignis
    {
      "id": "evt_1a2b3c4d5e6f",
      "event": "qr.scanned",
      "createdAt": "2024-01-15T14:30:00Z",
      "organizationId": "org_abc123",
      "data": {
        "qrCodeId": "qr_xyz789",
        "qrCodeName": "Product Landing Page",
        "shortCode": "xyz789",
        "destinationUrl": "https://example.com/product",
        "scan": {
          "id": "scan_123abc",
          "timestamp": "2024-01-15T14:30:00Z",
          "location": {
            "country": "US",
            "city": "New York",
            "latitude": 40.7128,
            "longitude": -74.0060
          },
          "device": {
            "type": "mobile",
            "os": "iOS",
            "browser": "Safari"
          },
          "isUnique": true
        }
      }
    }
    Beispiel: qr.created Ereignis
    {
      "id": "evt_7g8h9i0j1k2l",
      "event": "qr.created",
      "createdAt": "2024-01-15T10:00:00Z",
      "organizationId": "org_abc123",
      "data": {
        "qrCode": {
          "id": "qr_newcode",
          "type": "URL",
          "name": "New Campaign QR",
          "shortUrl": "https://ilqr.co/newcode",
          "destinationUrl": "https://example.com/campaign",
          "createdBy": "user_abc123"
        }
      }
    }

    Webhooks verifizieren

    Überprüfen Sie immer die Signaturen von Webhooks, um sicherzustellen, dass die Nutzlast von iloveQR stammt und während der Übertragung nicht manipuliert wurde.

    Signatur-Header

    Jede Webhook-Anfrage enthält einen X-Webhook-Signature-Header, der eine HMAC-SHA256-Signatur des Anfragekörpers enthält.

    Node.js Verifizierungsbeispiel
    const crypto = require('crypto');
    
    function verifyWebhookSignature(payload, signature, secret) {
      const expectedSignature = crypto
        .createHmac('sha256', secret)
        .update(payload)
        .digest('hex');
    
      return crypto.timingSafeEqual(
        Buffer.from(signature),
        Buffer.from(expectedSignature)
      );
    }
    
    // In your webhook handler
    app.post('/webhooks/iloveqr', (req, res) => {
      const signature = req.headers['x-webhook-signature'];
      const payload = JSON.stringify(req.body);
    
      if (!verifyWebhookSignature(payload, signature, WEBHOOK_SECRET)) {
        return res.status(401).send('Invalid signature');
      }
    
      // Process the webhook
      const event = req.body;
      console.log('Received event:', event.event);
    
      res.status(200).send('OK');
    });
    Python Verifizierungsbeispiel
    import hmac
    import hashlib
    
    def verify_webhook_signature(payload: bytes, signature: str, secret: str) -> bool:
        expected = hmac.new(
            secret.encode(),
            payload,
            hashlib.sha256
        ).hexdigest()
        return hmac.compare_digest(signature, expected)
    
    # In your Flask handler
    @app.route('/webhooks/iloveqr', methods=['POST'])
    def handle_webhook():
        signature = request.headers.get('X-Webhook-Signature')
        payload = request.get_data()
    
        if not verify_webhook_signature(payload, signature, WEBHOOK_SECRET):
            return 'Invalid signature', 401
    
        event = request.get_json()
        print(f"Received event: {event['event']}")
    
        return 'OK', 200

    Best Practices

    Schnell antworten

    Geben Sie innerhalb von 5 Sekunden eine 2xx-Antwort zurück. Verarbeiten Sie Webhooks asynchron, wenn Ihre Bearbeitung länger dauert.

    Duplikate behandeln

    Speichern Sie die Ereignis-ID und überprüfen Sie auf Duplikate. Webhooks können in seltenen Fällen mehr als einmal zugestellt werden.

    HTTPS verwenden

    Verwenden Sie immer HTTPS-Endpunkte. Wir liefern keine Webhooks an HTTP-URLs.

    Fehler überwachen

    Richten Sie ein Monitoring für fehlgeschlagene Webhook-Zustellungen ein. Überprüfen Sie die Webhook-Protokolle im Dashboard zur Fehlersuche.

    Wiederholungsrichtlinie

    Wenn Ihr Endpunkt einen Fehler zurückgibt oder nicht antwortet, versuchen wir die Zustellung automatisch mit exponentiellem Backoff:

    VersuchVerzögerung
    1. Wiederholung1 Minute
    2. Wiederholung5 Minuten
    3. Wiederholung30 Minuten
    4. Wiederholung2 Stunden
    5. Wiederholung (final)24 Stunden

    Hinweis: Nach 5 fehlgeschlagenen Versuchen wird der Webhook als fehlgeschlagen markiert und wir hören auf, es erneut zu versuchen. Sie erhalten eine E-Mail-Benachrichtigung über den Fehler.

    Nächste Schritte

    Bereit, loszulegen? Entdecken Sie weitere Ressourcen: