Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
de:survey:mailing-api [01.02.2018 15:54] – [Manueller Aufruf] msd-media | de:survey:mailing-api [10.12.2023 21:12] (aktuell) – admin | ||
---|---|---|---|
Zeile 6: | Zeile 6: | ||
* Optional den Versand einzelner Serienmails auslösen, ebenfalls automatisiert durch eine externe Software. | * Optional den Versand einzelner Serienmails auslösen, ebenfalls automatisiert durch eine externe Software. | ||
* Personalisierte Links zum Fragebogen erstellen, die genauso funktionieren wie die personalisierten Links in Serienmails. | * Personalisierte Links zum Fragebogen erstellen, die genauso funktionieren wie die personalisierten Links in Serienmails. | ||
+ | * Abruf des Teilnahmestatus für ein Serienmail. | ||
Eine wesentliche Anwendung der API-Funktion für Serienmails ist die Anbindung eines Shop-Systems. So kann man einem Kunden etwa nach Kauf der Zugangsberechtigung einen gültigen Teilnahme-Link zum Fragebogen übermitteln. | Eine wesentliche Anwendung der API-Funktion für Serienmails ist die Anbindung eines Shop-Systems. So kann man einem Kunden etwa nach Kauf der Zugangsberechtigung einen gültigen Teilnahme-Link zum Fragebogen übermitteln. | ||
Zeile 12: | Zeile 13: | ||
===== Hintergrund ===== | ===== Hintergrund ===== | ||
- | Für gewöhnlich erstellt SoSci Survey eine personalisierten URL zur Teilnahme an einer Befragung in dem Moment, wenn Sie eine [[: | + | Für gewöhnlich erstellt SoSci Survey eine personalisierten URL zur Teilnahme an einer Befragung in dem Moment, wenn Sie eine [[: |
- | Mit der Funktion **Einladungen verschicken** -> **API-Zugriff** können Sie personalisierte Links zum Fragebogen erstellen und ggf. in einer externen Software verwenden, die genauso funktionieren wie die personalisierten Links in Serienmails. Allerdings wird dabei keine E-Mail verschickt | + | Mit der Funktion **Einladungen verschicken** -> **API-Zugriff** können Sie personalisierte Links zum Fragebogen erstellen und ggf. in einer externen Software verwenden, die genauso funktionieren wie die personalisierten Links in Serienmails. Allerdings wird dabei nicht zwangsläufig eine E-Mail verschickt. Wenn keine Serienmail verschickt werden soll, ist nicht einmal eine E-Mail-Adresse notwendig. |
- | ===== Verwendung | + | ===== Adresseinträge erstellen |
- | * Legen Sie zunächst unter **Einladungen verschicken** -> **Serienmails** eine neue Serienmail an. Diese wird zwar nicht verschickt, | + | * Legen Sie zunächst unter **Einladungen verschicken** -> **Serienmails** eine neue Serienmail an. Diese wird nicht zwangsläufig |
* Anschließend wählen Sie unter **Einladungen verschicken** -> **API-Zugriff** diese // | * Anschließend wählen Sie unter **Einladungen verschicken** -> **API-Zugriff** diese // | ||
* Mit dem Speichern-Symbol {{: | * Mit dem Speichern-Symbol {{: | ||
- | Beim Aufruf der API-URL erwartet SoSci Survey, dass eines der folgenden Identifikationsmerkmale für den (eventuell neuen) Adresseintrag mittels GET oder POST übermittelt wird: | + | Beim Aufruf der API-URL erwartet SoSci Survey, dass mindestens |
* //email// E-Mail-Adresse | * //email// E-Mail-Adresse | ||
* //mobile// Mobil-Nummer für SMS-Versand | * //mobile// Mobil-Nummer für SMS-Versand | ||
- | * //uid// Eindeutige Kennung für den Adressat | + | * //uid// Eindeutige Kennung für den Adressat |
Wenn die API-URL '' | Wenn die API-URL '' | ||
Zeile 33: | Zeile 34: | ||
https:// | https:// | ||
- | Falls ein passender Eintrag in der Adressliste gefunden wird, wird diese verwendet. Ansonsten wird unter **Einladungen verschicken** -> **Adressliste** ein neuer Eintrag erstellt. | + | Falls ein passender Eintrag in der Adressliste gefunden wird, wird dieser |
SoSci Survey erstellt nun einen gültigen Teilnahmelink und übermittelt diesen als Antwort auf den Aufruf als JSON zurück. | SoSci Survey erstellt nun einen gültigen Teilnahmelink und übermittelt diesen als Antwort auf den Aufruf als JSON zurück. | ||
- | ===== Rückgabewert | + | ==== Rückgabewert ==== |
Die Antwort auf eine gültige Anfrage könnte etwa wie folgt aussehen: | Die Antwort auf eine gültige Anfrage könnte etwa wie folgt aussehen: | ||
Zeile 62: | Zeile 63: | ||
- | ===== Manueller Aufruf | + | ==== Manueller Aufruf ==== |
Der **API-Zugriff** ist eigentlich für einen automatisierten Aufruf durch eine externe Software ausgelegt (Maschine-zu-Maschine Kommunikation), | Der **API-Zugriff** ist eigentlich für einen automatisierten Aufruf durch eine externe Software ausgelegt (Maschine-zu-Maschine Kommunikation), | ||
Zeile 76: | Zeile 77: | ||
Ihr Browser zeigt nach jedem Aufruf eine gültige Teilnahme-URL an, die etwa per E-Mail an die Teilnehmer verschickt werden kann. | Ihr Browser zeigt nach jedem Aufruf eine gültige Teilnahme-URL an, die etwa per E-Mail an die Teilnehmer verschickt werden kann. | ||
- | Eine Funktion zum automatisierten Erstellen einer größeren Anzahl von Teilnahmelinks ohne externe Software ist in Planung, derzeit allerdings nur mit geringer Priorität. Falls die Anonymität nicht kritisch ist (oder wenn sie ganz besonders kritisch ist), kann dafür die [[: | + | Eine Funktion zum automatisierten Erstellen einer größeren Anzahl von Teilnahmelinks ohne externe Software ist in Planung, derzeit allerdings nur mit geringer Priorität. Falls die Anonymität nicht kritisch ist (oder wenn sie ganz besonders kritisch ist), kann dafür die Funktion |
+ | |||
+ | |||
+ | ===== Teilnahmestatus Teilnahmecode ===== | ||
+ | |||
+ | * Wählen Sie unter **Einladungen verschicken** -> **API-Zugriff** bei // | ||
+ | * Mit dem Speichern-Symbol {{: | ||
+ | |||
+ | Beim Aufruf der API-URL erwartet SoSci Survey, dass ein Parameter //serial// mit dem zu prüfenden Teilnahmecode übermittelt wird. | ||
+ | |||
+ | Wenn die API-URL '' | ||
+ | |||
+ | https:// | ||
+ | |||
+ | Als Rückgabewert wird ein JSON-String mit folgender Struktur geliefert: | ||
+ | |||
+ | <code javascript> | ||
+ | { | ||
+ | result: | ||
+ | code: " | ||
+ | started: | ||
+ | completed: false, | ||
+ | notice: | ||
+ | error: | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | Die Attribute haben die folgende Bedeutung: | ||
+ | |||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * "not found" -- Der gesuchte Teilnahmecode ist im Befragungsprojekt nicht bekannt | ||
+ | |||
+ | Im Fehlerfall wird nur der Status-Code und eine Fehlermeldung zurückgegeben, | ||
+ | |||
+ | <code javascript> | ||
+ | { | ||
+ | result: | ||
+ | error: | ||
+ | code: " | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | |||
+ | ===== Teilnahmestatus für Adresseintrag ===== | ||
+ | |||
+ | * Wählen Sie unter **Einladungen verschicken** -> **API-Zugriff** bei // | ||
+ | * Mit dem Speichern-Symbol {{: | ||
+ | |||
+ | Beim Aufruf der API-URL erwartet SoSci Survey, dass mindestens ein Parameter angegeben wird, um den Adresseintrag zu identifizieren. Falls mehrere Eigenschaften angegeben werden, wird nach einem Adresseintrag gesucht, der alle Eigenschaften hat. Der Adresseintrag kann anhand folgender Eigenschaften gesucht werden: | ||
+ | |||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | |||
+ | Wenn die API-URL '' | ||
+ | |||
+ | https:// | ||
+ | |||
+ | Als Rückgabewert wird ein JSON-String mit folgender Struktur geliefert: | ||
+ | |||
+ | <code javascript> | ||
+ | { | ||
+ | result: | ||
+ | serial: | ||
+ | email: | ||
+ | mobile: | ||
+ | uid: | ||
+ | mailings: { | ||
+ | M1: { | ||
+ | id: 1 | ||
+ | status: | ||
+ | statusMail: " | ||
+ | statusSMS: | ||
+ | sendTime: | ||
+ | }, | ||
+ | M2: { | ||
+ | id: 2 | ||
+ | status: | ||
+ | statusMail: " | ||
+ | statusSMS: | ||
+ | sendTime: | ||
+ | } | ||
+ | }, | ||
+ | error: | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | Im ersten Teil der Antwort werden die verwendeten Suchparameter zurückgegeben. | ||
+ | |||
+ | Der Teilnahmestatus wird für jede Serienmail angegeben, für welche ein Versand an diesen Adresseintrag versucht wurde. Als Schlüssel für die '' | ||
+ | |||
+ | Die Attribute haben die folgende Bedeutung: | ||
+ | |||
+ | Im Fehlerfall wird nur der Status-Code und eine Fehlermeldung zurückgegeben, | ||
+ | |||
+ | <code javascript> | ||
+ | { | ||
+ | result: | ||
+ | error: | ||
+ | serial: | ||
+ | email: | ||
+ | mobile: | ||
+ | uid: | ||
+ | } | ||
+ | </ |