Update von Bonus Punkten mit der API
Wir stellen die API für die Aktualisierung von Kundenpunkten zur Verfügung. Nachfolgend findest du eine Postman-Sammlung mit allen erforderlichen Daten. Die postman-Sammlung enthält diese Variablen:
SHOPWARE_DOMAIN - Die Domain des Shopware Projekts, ohne http/https Protokol.
SW_ACCESS_KEY - Der Shopware Access Key. (Wird in Shopware definiert)
SW_SECRET_ACCESS_KEY - Der Shopware Secret Key. (Wird in Shopware definiert)
ACCESS_TOKEN - Das Bearer Token. (Wird automatisch ausgefüllt nach Ausführung von "1. Obtain API access token" aus der Kollektion)
Der Testvorgang mit einem Postman: Erstelle eine JSON Datei mit dem unten stehenden Code.
Importieren eine Sammlung. (eine Datei im JSON-Format)
Füllen die Variablen der Sammlung aus.
Führen den Post „1. Obtain API access token“ aus, um die erforderliche Variable ACCESS_TOKEN zu füllen.
Führe andere Einträge aus der Sammlung aus. (Aktualisierung der Bonuspunkte nach Kunden-ID oder -nummer)
{
"info": {
"_postman_id": "55d7c3c5-bd28-44ad-bb5a-093a40ccd426",
"name": "PremsBonusSystem: Update bonus points",
"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json",
"_exporter_id": "5184947"
},
"item": [
{
"name": "1. Obtain API access token",
"event": [
{
"listen": "test",
"script": {
"exec": [
"var jsonData = JSON.parse(responseBody);",
"pm.collectionVariables.set(\"ACCESS_TOKEN\", jsonData.access_token);"
],
"type": "text/javascript",
"packages": {}
}
}
],
"request": {
"method": "POST",
"header": [],
"body": {
"mode": "raw",
"raw": "{\n \"grant_type\": \"client_credentials\",\n \"client_id\": \"{{SW_ACCESS_KEY}}\",\n \"client_secret\": \"{{SW_SECRET_ACCESS_KEY}}\"\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "https://{{SHOPWARE_DOMAIN}}/api/oauth/token",
"protocol": "https",
"host": [
"{{SHOPWARE_DOMAIN}}"
],
"path": [
"api",
"oauth",
"token"
]
}
},
"response": []
},
{
"name": "Update bonus points by customer number",
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{ACCESS_TOKEN}}",
"type": "string"
}
]
},
"method": "POST",
"header": [],
"body": {
"mode": "raw",
"raw": "{\n \"customerNumber\": \"10382\", // Customer number\n \"description\": \"Test points\", // Description for added/removed bonus points\n \"points\": 5, // Amount of points, can be positive or negative\n \"salesChannelId\": \"\" // Optional: If it's not defined, it's obtained from the customer\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "https://{{SHOPWARE_DOMAIN}}/api/v2/prems-bonus-system/create-bonus-booking",
"protocol": "https",
"host": [
"{{SHOPWARE_DOMAIN}}"
],
"path": [
"api",
"v2",
"prems-bonus-system",
"create-bonus-booking"
]
}
},
"response": []
},
{
"name": "Update bonus points by customer ID",
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{ACCESS_TOKEN}}",
"type": "string"
}
]
},
"method": "POST",
"header": [],
"body": {
"mode": "raw",
"raw": "{\n \"customerId\": \"019685763d44731cb4ac5938f107993e\", // Customer ID\n \"description\": \"Test points\", // Description for added/removed bonus points\n \"points\": 5, // Amount of points, can be positive or negative\n \"salesChannelId\": \"\" // Optional: If it's not defined, it's obtained from the customer\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "https://{{SHOPWARE_DOMAIN}}/api/_action/prems/create-bonus-booking-by-customer-id",
"protocol": "https",
"host": [
"{{SHOPWARE_DOMAIN}}"
],
"path": [
"api",
"_action",
"prems",
"create-bonus-booking-by-customer-id"
]
}
},
"response": []
}
],
"event": [
{
"listen": "prerequest",
"script": {
"type": "text/javascript",
"packages": {},
"exec": [
""
]
}
},
{
"listen": "test",
"script": {
"type": "text/javascript",
"packages": {},
"exec": [
""
]
}
}
],
"variable": [
{
"key": "SHOPWARE_DOMAIN",
"value": "domain.dev",
"type": "string"
},
{
"key": "SW_ACCESS_KEY",
"value": "xxx",
"type": "string"
},
{
"key": "SW_SECRET_ACCESS_KEY",
"value": "xxx",
"type": "string"
},
{
"key": "ACCESS_TOKEN",
"value": "",
"type": "string"
}
]
}
Zuletzt aktualisiert
War das hilfreich?