# Marketo-Integration

<Aside type="caution" icon="setting" title="Hilfe von Entwicklern benötigt">
 Sie benötigen Hilfe von Ihrem Entwicklungsteam, um die Integration einzurichten. Bitte teilen Sie diese Anleitung mit ihnen.
</Aside>

Diese Anleitung erklärt, wie Sie [Marketo](https://login.marketo.com/) mit Pushwoosh integrieren. Sie können den Kommunikationskanal Web-Push-Benachrichtigungen als Teil Ihrer Marketingkampagnen mit Marketo nutzen.

Stellen Sie sich zum Beispiel vor, ein Benutzer hat Ihre Marketo-Landingpage besucht, aber dort keine Aktion ausgeführt. Sie könnten diesen Benutzer mit einer Web-Push-Benachrichtigung als Erinnerung erreichen. Diese Web-Push-Benachrichtigung kann auch mit den für diesen Benutzer erfassten Marketo-Daten personalisiert werden, um ein maximales Engagement zu erzielen!

<Aside type="note">
#### HTTPS („Gesicherte Landingpages“) sollte in Ihrer Marketo-Instanz aktiviert sein.

Obwohl es möglich ist, Web-Push-Benachrichtigungen mit ungesicherten HTTP-Websites auszuführen, empfehlen wir dringend, HTTPS-gesicherte Webseiten zu verwenden.
Ab Oktober 2017 mit der Veröffentlichung von Chrome 62 markiert Google Chrome alle ungesicherten Webseiten, die Formulare enthalten, mit der Warnung „Nicht sicher“.

Lesen Sie hier mehr:
[https://nation.marketo.com/docs/DOC-3891-faq-ssl-landing-pages-and-tracking-links](https://nation.marketo.com/docs/DOC-3891-faq-ssl-landing-pages-and-tracking-links)
[https://nation.marketo.com/docs/DOC-4742-ssl-certificates-and-marketo-faq](https://nation.marketo.com/docs/DOC-4742-ssl-certificates-and-marketo-faq)

Wenn Sie dennoch eine ungesicherte HTTP-Website verwenden möchten, folgen Sie der Anleitung [Chrome/Firefox Web Push für HTTP-Websites](/de/developer/pushwoosh-sdk/web-push-notifications/chrome-firefox-web-push-for-http-websites).

Sie können hier ein KOSTENLOSES SSL-Zertifikat erhalten:
[https://letsencrypt.org/](https://letsencrypt.org/)
</Aside>

## 1. Erstellen des Service Workers

Folgen Sie dieser [Anleitung](/de/developer/pushwoosh-sdk/web-push-notifications/web-push-sdk-30) und führen Sie die **Voraussetzungsschritte** und die Schritte **1 - 2.2** durch.

Nach Abschluss der obigen Schritte sollten Sie die Dateien _manifest.json_ und _pushwoosh-service-worker.js_ zur Hand haben.

Wechseln Sie zum **Marketo Design Studio**.
Marketo kann Dateien nur in den Ressourcenordner hochladen, den Ordner namens „Images and Files“.
Laden Sie _manifest.json_ und _pushwoosh-service-worker.js_ in diesen Ordner hoch.

<img src="/integrations-marketo-integration-1.webp" alt="Hochladen der Dateien manifest.json und Service Worker in Marketo"/>

## 2. Erstellen der Push-Abonnementseite

Wie oben erwähnt, kann Marketo Dateien nur in den Ressourcenordner hochladen, der sich vom Geltungsbereich der Landingpages unterscheidet.
Wenn Sie beispielsweise auf eine der oben hochgeladenen Dateien klicken und deren URL überprüfen, sehen Sie etwas wie „[https://your-host-name.com/rs/765-IWA-819/images/pushwoosh-service-worker.js](https://your-host-name.com/rs/765-IWA-819/images/pushwoosh-service-worker.js)“.
Wenn Sie jedoch auf die Landingpage klicken und deren URL überprüfen, wird es etwas wie „[https://your-host-name.com/lp/765-IWA-819/pushwoosh-landing.html](https://your-host-name.com/lp/765-IWA-819/pushwoosh-landing.html)“ sein.
Beachten Sie den Teil **„lp“** in den URLs der Landingpages und **„rs“** in den Skript-URLs.

Das bedeutet, wir müssen unser _Service Worker_-Skript in einem anderen Geltungsbereich als den Landingpages registrieren.

Um dies zu erreichen, laden wir eine spezielle Push-Abonnementseite in den Marketo-Ressourcenordner hoch und öffnen sie dann von der Landingpage aus. Erstellen wir diese Abonnementseite.

Holen Sie sich die Datei _push-subscription.html_ aus dem folgenden Gist:
[https://gist.github.com/shaders/2b518e3acaf9b4712d5260205243343d#file-push-subscription-html](https://gist.github.com/shaders/2b518e3acaf9b4712d5260205243343d#file-push-subscription-html)

Öffnen Sie die Datei und ändern Sie die folgenden Zeilen:

* Zeile 8 – ändern Sie den Link zur URL der im vorherigen Schritt hochgeladenen Datei _manifest.json_.
* Zeile 24 – ändern Sie den Wert des Parameters _scope_ auf die URL Ihres Ressourcenordners (dies ist der Ordner, in dem sich _manifest.json_ befindet).
* Zeile 20 – ändern Sie den Wert des Parameters _applicationCode_ auf Ihre Pushwoosh App-ID.

Beachten Sie, dass das Skript auch die benutzerzentrierten Push-Benachrichtigungen von Pushwoosh mit der Lead-Kennung von Marketo verknüpft: _userId:leadId_ (Zeile 26)

Laden Sie die resultierende Datei in den Ordner „Images and Files“ hoch. Jetzt sollten Sie diese Dateien im Ordner haben:

<img src="/integrations-marketo-integration-2.webp" alt="In den Ordner „Images and Files“ von Marketo hochgeladene Dateien"/>

## 3. Erstellen einer Landingpage mit Push-Abonnement

Holen Sie sich die Datei _pushwoosh-template.html_ aus dem folgenden Gist:
[https://gist.github.com/shaders/2b518e3acaf9b4712d5260205243343d#file-pushwoosh-template-html](https://gist.github.com/shaders/2b518e3acaf9b4712d5260205243343d#file-pushwoosh-template-html)

Öffnen Sie die Datei und ändern Sie die folgenden Zeilen:

* Zeile 47 – ändern Sie den Wert des Parameters _scope_ auf die URL Ihres Ressourcenordners.
* Zeile 65 – ändern Sie den Link zur URL der im vorherigen Schritt hochgeladenen Datei _push-subscription.html_.
* Zeile 43 – ändern Sie den Wert des Parameters _applicationCode_ auf Ihre Pushwoosh App-ID.

Dieses Skript verknüpft wie das vorherige auch die benutzerzentrierten Push-Benachrichtigungen von Pushwoosh mit der Lead-Kennung von Marketo: _userId:leadId_ (Zeile 49)

Gehen Sie nun zum Abschnitt **„Vorlagen“** Ihrer **Marketo-Landingpages**, erstellen Sie die Vorlage (im Screenshot unten „pushwoosh-template“ genannt) und kopieren Sie den Inhalt der resultierenden Datei dorthin.

<img src="/integrations-marketo-integration-3.webp" alt="Erstellen von pushwoosh-template im Marketo-Vorlagenbereich"/>

Erstellen wir nun eine neue Landingpage basierend auf dieser Vorlage.

<img src="/integrations-marketo-integration-4.webp" alt="Erstellen einer neuen Landingpage basierend auf der pushwoosh-Vorlage"/>

In unserem Beispiel fügen wir der Einfachheit halber einen einfachen Link zur Landingpage hinzu, um die Möglichkeiten der Pushwoosh-Integration mit der Marketo-Kampagnenautomatisierung zu zeigen. Wir werden eine Kampagne erstellen, die eine persönliche Push-Benachrichtigung auslöst, wenn der Benutzer auf diesen Link klickt.

Wir werden dieselbe URL wie die Landingpage verwenden.

```txt
<a href="https://na-ab24.marketo.com/lp/765-IWA-819/pushwoosh-landing.html">Senden Sie mir ein Angebot!</a>
```

<img src="/integrations-marketo-integration-5.webp" alt="Landingpage mit Link für Push-Benachrichtigungsangebot"/>

## 4. Erstellen eines Pushwoosh-Webhooks

Gehen Sie zum **„Admin“-Bereich von Marketo** und erstellen Sie einen neuen Webhook mit den folgenden Parametern:

* URL - [https://go.pushwoosh.com/json/1.3/createMessage](https://go.pushwoosh.com/json/1.3/createMessage)
* Anfragetyp: POST

Fügen Sie den folgenden Code als Vorlage ein.

```
{
        "request": {
            "application": "IHRE_PUSHWOOSH_APP_ID_EINGEBEN",
            "auth": "IHR_PUSHWOOSH_API_TOKEN_HIER_EINGEBEN",
            "notifications": [{
                "send_date": "now",
                "ignore_user_timezone": true,
                "content": "Wir haben ein neues Angebot für Sie!",
                "users" : ["{{lead.Id:default="ABCD-EFGH"}}"]
            }]
        }
    }
```

Beachten Sie, dass wir die Marketo Lead-ID verwenden, um den Benutzer in Pushwoosh zu referenzieren. Erfahren Sie mehr über benutzerzentrierte Push-Benachrichtigungen [hier](/de/product/messaging-channels/push-notifications/send-push-notifications/push-by-user-id).

<img src="/integrations-marketo-integration-6.webp" alt="Webhook-Konfiguration im Marketo-Admin-Bereich"/>

In unserem sehr einfachen Beispiel verwenden wir eine statische Push-Nachricht. Sie können jedoch die gesamte Funktionalität von [`createMessage`](/de/developer/api-reference/messages-api/#createmessage) nutzen.

Um eine Push-Benachrichtigung zu personalisieren, können Sie ein **Preset** von Pushwoosh verwenden und die Werte von Marketo in den **„dynamic_content_placeholders“**-Parametern des `/createMessage`-Aufrufs zur Push-Personalisierung übergeben.

## 5. Integration mit einer Marketo-Automatisierungskampagne

Gehen Sie zum Bereich **„Marketingaktivitäten“** von Marketo und erstellen Sie eine Kampagne.

Für unser Beispiel lösen wir die Kampagne aus, wenn der Benutzer auf einen Link (den wir gerade zwei Schritte zuvor erstellt haben) auf unserer Landingpage klickt.

<img src="/integrations-marketo-integration-7.webp" alt="Trigger-Konfiguration für Benutzerklick-Ereignis in der Marketo-Kampagne"/>

b. Wählen Sie den Webhook „send_push“ im Abschnitt „Flow“ aus.

<img src="/integrations-marketo-integration-8.webp" alt="Auswahl des send_push-Webhooks im Kampagnen-Flow-Bereich"/>

* Öffnen Sie nun die URL der Landingpage
* Klicken Sie auf die Schaltfläche **„Ja, ich möchte“**, um den Dialog zum Abonnieren von Push-Benachrichtigungen zu öffnen
* Abonnieren Sie die Push-Benachrichtigungen
* Klicken Sie auf den Link **„Senden Sie mir ein Angebot!“**

Sie haben Ihre automatisierte Push-Benachrichtigung von Marketo erhalten!

<img src="/integrations-marketo-integration-9.webp" alt="Automatisierte Push-Benachrichtigung von Marketo erfolgreich gesendet"/>