Inhalt

GET Get message

https://api.getback.ch/v1/push/message/MESSAGE_ID
HEADERS
AuthorizationBasic API_KEY
curl --location --request GET "https://api.getback.ch/v1/push/message/MESSAGE_ID" \
  --header "Authorization: Basic API_KEY"
{
    "message": {
        "id": 6035,
        "autohide": false,
        "send_at": null,
        "sent_at": "2019-07-23 15:38:42",
        "is_draft": false,
        "is_silent": false,
        "ttl": null,
        "ttl_date": null,
        "rate_limit": false,
        "updated_at": "2019-07-23 13:51:15",
        "urgency": "normal",
        "is_hidden_in_widget": false,
        "lang": {
            "de": {
                "title": "Test",
                "body": "Test",
                "icon": "https://example.com/icon.png",
                "image": "https://example.com/image.jpg",
                "link": "https://example.com"
            }
        },
        "stats": {
            "failed": 0,
            "displays": 6,
            "clicks": 0,
            "conversions": 0,
            "ordervalue": 0,
            "recipients": 16,
            "sent": 16,
            "pending": 0
        },
        "created_at": "2019-07-23 15:38:41"
    }
}

GET Get messages

https://api.getback.ch/v1/push/messages
HEADERS
AuthorizationBasic API_KEY
Body
is_draft optionalintegerMit dem Parameter is_draft=1 können alle Nachrichten mit dem Status Entwurf abgerufen werden.
curl --location --request GET "https://api.getback.ch/v1/push/messages" \
  --header "Authorization: Basic API_KEY"
{
    "messages": [
        {
            "id": 6035,
            "is_draft": false,
            "send_at": null,
            "sent_at": "2019-07-23 15:38:42",
            "stats": {
                "failed": 0,
                "displays": 6,
                "clicks": 0,
                "conversions": 0,
                "ordervalue": 0,
                "recipients": 16,
                "sent": 16,
                "pending": 0
            },
            "created_at": "2019-07-23 15:38:41",
            "is_silent": false,
            "is_hidden_in_widget": false,
            "autohide": false,
            "rate_limit": false
        }
    ]
}

POST Create message

https://api.getback.ch/v1/push/message
HEADERS
AuthorizationBasic API_KEY
Content-Typeapplication/json
Body
is_draftbooleanDefiniert ob Message als Entwurf angelegt werden soll. Default: true Um eine Nachricht sofort zu versendet muss dieser Wert auf false gesetzt werden.
subscription optionalarrayArray mit Subscription IDs die direkt angeschrieben werden sollen (Direktnachricht). Beispiel: ["Z_7aWWIpvtKMPP01", "2-2VuH6bwnbhrmdo"]
campaign_id optionalstringNur in Zusammenhang mit dem Parameter subscription verwenden. Die Kampagne ID kann dazu verwendet werden, die Ergebnisse der Direktnachrichten im Getback Dashboard zu gruppieren. Wird keine Kampagne ID übergeben, werden die Ergebnisse der Default Kampagne zugeordnet.
audience_id optionalstringID der im Getback Backend definierten Empfänger Gruppe.
ttl optionalintegerGültigkeit der Nachricht in Minunten ab Versandzeitpunkt. Nicht zusammen mit ttl_date verwenden. Default: 1140 (3 Tage)
ttl_date optionalstringDatum und Uhrzeit bis zu der die Nachricht gültig sein soll. Nicht zusammen mit ttl verwenden. Format: yyyy-MM-dd HH:mm
autohide optionalboolean / integerZeit wie lange eine Nachricht stehen bleibt, bevor sie ausgeblendet und ins Notification-Center verschoben wird. Default: false
rate_limit optionalintegerAnzahl Nachrichten pro Minute. Default: 0 = Kein Rate Limit
urgency optionalstringBei einer niedrigen Priorität können Nachrichten ggf. verzögert zugestellt werden, um z.B. bei niedrigem Akkustand das Gerät nicht aufwecken zu müssen. Mögliche Werte: 'very-low' | 'low' | 'normal' | 'high' Default: 'normal'
is_silent optionalbooleanNur für Mobile Geräte. Nachricht wird ohne Ton/Vibration/Displayaktivierung zugestellt. Default: false
is_hidden_in_widget optionalbooleanWenn true übermittelt wird, wird die Nachricht nicht im Getback Push Widget angezeigt. Default: false
send_at optionalstringDatum und Uhrzeit an dem die Nachricht versendet werden soll. Wenn kein Wert übergeben wird, wird die Nachricht sofort versendet. Format: yyyy-MM-dd HH:mm
lang optionalobjectNachrichteninhalt aufgeteilt pro Sprache. Die Sprachspezifischen Elemente müssen innerhalb eines Keys der dem Sprachcode (de, en, fr, etc.) entspricht definiert werden.
titlestringNachrichtentitel
bodystringNachrichtentext
linkstringLink zur Landingpage
icon optionalstringURL des Nachrichten Icons
badge optionalstringBadge URL welches in der Benachrichtigungsleiste auf Mobile (Chrome auf Android) angezeigt wird.
image optionalstringBild URL für grosses Bild in Nachricht. Diese Funktion wird nur von Chrome auf Desktop unterstützen.
action_buttons optionalarray objectAction Buttons zur Nachricht hinzufügen. Beispiel: [{"text":"Button 1", "link": "https://example.org/page1"}, {"text":"Button 2", "link": "https://example.org/page2"}]
curl --location --request POST "https://api.getback.ch/v1/push/message" \
  --header "Content-Type: application/json" \
  --header "Authorization: Basic API_KEY" \
  --data "{
	\"is_draft\": true,
	\"ttl\": 600,
        \"ttl_date\": "2019-08-08 10:05",
	\"autohide\": false,
	\"rate_limit\": false,
	\"urgency\": \"normal\",
	\"is_silent\": false,
	\"is_hidden_in_widget\": false,
	\"send_at\": null,
	\"lang\": {
		\"de\": {
			\"title\": \"Testnachricht mda\",
			\"body\": \"Testbody mda\",
			\"link\": \"https://example.org\",
                        \"icon\":\"https://example.org/icon.png\",
                        \"badge\":\"https://example.org/badge.png\",
			\"image\": \"https://static.getback.ch/media/192x192/adfocuslogo(2).png\",
			\"action_buttons\" : [
				{
					\"text\":\"Button 1\",
					\"link\": \"https://example.org/page1\"
				},
				{
					\"text\":\"Button 2\",
					\"link\": \"https://example.org/page2\"
				}
				]
		}
	}
}"
body
message_idintegerID der erstellten Nachricht
{
    "message_id": MESSAGE_ID
}

PUT Edit message

https://api.getback.ch/v1/push/message/MESSAGE_ID
HEADERS
AuthorizationBasic API_KEY
Content-Typeapplication/json
curl --location --request PUT "https://api.getback.ch/v1/push/message/6335" \
  --header "Authorization: Basic API_KEY" \
  --header "Content-Type: application/json" \
  --data "{
	\"is_draft\": false,
	\"ttl_date\": \"2019-08-03 05:04\",
	\"autohide\": 60,
	\"rate_limit\": 0,
	\"urgency\": \"low\",
	\"is_silent\": false,
	\"is_hidden_in_widget\": true,
	\"send_at\": \"2019-07-31 10:30\",
	\"lang\": {
		\"de\": {
			\"title\": \"Testnachricht\",
			\"body\": \"Testbody\",
			\"link\": \"https://example.org\",
			\"icon\": \"https://example.org/icon.png\",
			\"badge\": \"https://example.org/badge.png\",
			\"image\": \"https://example.org/image.png\",
			\"action_buttons\" : [
				{
					\"text\":\"Button 1\",
					\"link\": \"https://example.org/page1\"
				},
				{
					\"text\":\"Button 2\",
					\"link\": \"https://example.org/page2\"
				}
				]
		}
	}
}"
{
    "success": true
}

DELETE Delete message

https://api.getback.ch/v1/push/message/MESSAGE_ID
HEADERS
AuthorizationBasic API_KEY
{
    "success": true
}

Wie komme ich an die Subscription ID eines Abonnenten?

Die Subscription ID des Abonnenten welche für Direktnachrichten benötigt wird (Parameter subscription) ist in der Variable window.gb_push_subscription_key gespeichert. Bei einer Änderung dieser ID wird der Event getback_push_subscription_change gefeuert. Dies ermöglicht es Ihnen z.B. die ID in Ihrem CRM zu speichern und somit personalisierte Direktnachrichten an Ihre Abonnenten zu versenden.

window.addEventListener("getback_push_subscription_change", function() { 
    console.log(window.gb_push_subscription_key);
});

Direktnachrichten-Kampagne anlegen

Über eine Direktnachrichten-Kampagne können Sie die Ergebnisse der versendeten Nachrichten gruppieren. Dies ermöglicht es Ihnen, Ihre einzelnen Massnahmen getrennt voneinander auszuwerten.

Kampagnen können Sie im Getback Backend unter „API -> Kampagne erstellen“ anlegen. Um die Kampagne danach beim erstellen einer Nachricht zu verwenden, muss die ID mittels dem Parameter campaign_id übergeben werden.

GET Get campaign stats

https://api.getback.ch/v1/stats/campaigns
HEADERS
Authorization optionalBasic API_KEY
Body
startstringStartdatum des Zeitraums Format: yyyy-MM-dd
endstringEnddatum des Zeitraums Format: yyyy-MM-dd
status optionalstringFilter nach Status der Kampagne. Mögliche Werte: active, inactive, all (default)
curl --location --request GET "https://api.getback.ch/v1/stats/campaigns?start=2021-12-01&end=2021-12-31&status=active" \
  --header "Authorization: Basic API_KEY"
[
  {
    "id": 0,
    "name": "string",
    "impressions": 0,
    "clicks": 0,
    "conversions": 0,
    "ordervalue": 0
  }
]