Partnerships-API
Eine Partnerschaft verknüpft ein Partnerkonto mit einem Händlerkonto. Sie erfasst die Art der Partnerschaft (AFFILIATE oder ISV), das Preisprofil für den Verkaufspreis, das Abonnementprodukt und den Status.
Basispfad: /api/v2.0/join-program/partnerships · Berechtigung: JOIN_PROGRAM_ACCESS
| Methode | Pfad | Beschreibung |
|---|---|---|
| POST | /create-affiliate | Partnerprogramm anlegen (neuer Händler) |
| POST | /create-isv | ISV-Partnerschaft erstellen (neues Unterkonto) |
| POST | /create-simple | Partnerschaft für ein bestehendes Konto erstellen |
| GET | / | Alle Partnerschaften auflisten |
| GET | /search | Partnerschaften suchen |
| GET | /{id} | Eine Partnerschaft abrufen |
| PATCH | /{id} | Partnerschaft aktualisieren (z. B. Status) |
| DELETE | /{id} | Eine Partnerschaft löschen |
Eine Partnerpartnerschaft aufbauen
Lädt einen neuen Händler zum Partnerprogramm ein. Der Händler erhält eine E-Mail-Einladung; die Partnerschaft wird während der Registrierung des Händlers eingerichtet und nach Abschluss der Registrierung bestätigt.
POST /api/v2.0/join-program/partnerships/create-affiliate
{
"merchantEmailAddress": "merchant@example.com",
"partnerAccountId": 100,
"pricingProfileSellRateId": 4001,
"subscriptionProductId": 301
}
Antwort: 200 OK
Eine ISV-Partnerschaft aufbauen
Die Partnerschaft wird sofort eingerichtet: Unter Ihrem Partnerkonto wird ein neues Unterkonto (mit einem Space) angelegt, und der Händler wird als Benutzer eingeladen. Da Unterkonten die Einstellungen des übergeordneten Kontos übernehmen, wird für das Unterkonto selbst kein Abonnementprodukt bereitgestellt.
POST /api/v2.0/join-program/partnerships/create-isv
{
"merchantEmailAddress": "merchant@example.com",
"partnerAccountId": 100,
"pricingProfileSellRateId": 4001
}
Antwort: 200 OK
{
"id": 5020,
"state": "ACTIVE",
"partnershipType": "ISV",
"createdOn": "2026-03-05T16:00:00Z"
}
Eine Partnerschaft für ein bestehendes Konto anlegen
Verknüpfen Sie ein bereits vorhandenes Konto mit Ihrem Partnerprogramm – um ein eigenständiges Konto anzubinden oder eine fehlerhafte Einrichtung zu korrigieren. Bei AFFILIATE können nur bestehende reguläre Konten verknüpft werden; bei ISV nur bestehende Unterkonten.
POST /api/v2.0/join-program/partnerships/create-simple
{
"partnerAccount": { "id": 100 },
"merchantAccount": { "id": 200 },
"subscriptionProductId": 301,
"pricingProfileSellRate": { "id": 4001 },
"partnershipType": "AFFILIATE"
}
Antwort: 200 OK
{
"id": 5010,
"state": "ACTIVE",
"partnerAccount": { "id": 100 },
"merchantAccount": { "id": 200 },
"subscriptionProductId": 301,
"pricingProfileSellRate": { "id": 4001 },
"partnershipType": "AFFILIATE",
"createdOn": "2026-03-05T15:10:00Z"
}
Eine Partnerschaft abrufen
GET /api/v2.0/join-program/partnerships/{id}
Antwort: 200 OK
{
"id": 5001,
"state": "ACTIVE",
"partnerAccount": { "id": 100 },
"merchantAccount": { "id": 200 },
"subscriptionProductId": 301,
"pricingProfileSellRate": { "id": 4001 },
"partnershipType": "AFFILIATE",
"createdOn": "2026-03-05T12:30:00Z"
}
Partnerschaften auflisten und suchen
GET /api/v2.0/join-program/partnerships
GET /api/v2.0/join-program/partnerships/search
Antwort: 200 OK
{
"entities": [
{ "id": 5001, "state": "ACTIVE", "partnershipType": "AFFILIATE", "createdOn": "2026-03-05T12:30:00Z" },
{ "id": 5002, "state": "PENDING", "partnershipType": "ISV", "createdOn": "2026-03-06T10:00:00Z" }
],
"count": 2
}
Eine Partnerschaft aktualisieren
PATCH /api/v2.0/join-program/partnerships/{id}
{ "state": "INACTIVE" }
Antwort: 200 OK mit der aktualisierten Partnerschaft.
Eine Partnerschaft löschen
DELETE /api/v2.0/join-program/partnerships/{id}
Antwort: 204 No Content
Validierung
- Für AFFILIATE-Partnerschaften ist ein Abonnementprodukt erforderlich.
- ISV-Partnerschaften dürfen kein Abonnementprodukt haben (Unterkonten verfügen über kein eigenes Abonnement).
- Die Verkaufspreisrate des Preisprofils muss eines der Profile sein, die in Ihrer Partnerkonfiguration aktiviert sind.
- Anfragen mit fehlenden oder ungültigen Eingaben geben den Fehlercode
400mit einer Meldung zurück, die das betreffende Feld identifiziert.
Vollständige Anfrage-/Antwortschemas: Interaktiver API-Client.