Zum Inhalt springen
14 Tage kostenlos testen
Deutsch
English简体中文繁體中文ČeštinaBald verfügbarDanskBald verfügbarNederlandsSuomiBald verfügbarFrançaisDeutschItaliano日本語한국어Norsk bokmålBald verfügbarPolskiPortuguêsEspañolSvenskaTürkçe
In Claude öffnen Fragen zu dieser Seite stellenIn ChatGPT öffnen Fragen zu dieser Seite stellen

Wholesale Pricing über APIs erstellen

Erstellen Sie über die Public API eine neue Wholesale-Pricing-Regel, einschließlich der vollständigen Referenz zum Request-Body.

Dieses Dokument erklärt, wie Sie mit der Public API eine neue Wholesale Pricing-Regel erstellen.


Um einen neuen Wholesale Pricing-Datensatz zu erstellen, verwenden Sie den folgenden Endpunkt:

POST - https://wholesale.samita.io/api/v1/wholesale-pricings

Alle API-Anfragen müssen die folgenden Pflicht-Header enthalten:

Header Beschreibung Erforderlich
X-SAMITA-API-KEY In der Wholesale-App bereitgestellter API-Schlüssel Ja
X-SAMITA-SHOP-URL Shopify-Shop-Domain im Format xxx.myshopify.com Ja
CONTENT-TYPE Muss application/json sein Ja

Fehlt ein Pflicht-Header, wird die Anfrage abgelehnt.


Die Daten zum Erstellen von Wholesale Pricing müssen im JSON-Format gesendet werden.
Eine Beispielstruktur im JSON-Format finden Sie am Ende dieses Dokuments.

Beispiel-Request-JSON:

{
"title": "New Wholesale Pricing",
"status": true,
"apply_customer": {
"type": "all",
"tags": []
},
"exclude_customer": {
"type": "none",
"tags": []
},
"apply_product": {
"type": "all",
"product_ids": [],
"product_tags": [],
"collection_ids": [],
"apply_for_variants": false
},
"exclude_product": {
"type": "none",
"product_ids": [],
"collection_ids": []
},
"discount_for_variants": [
{
"id": 8516448190631,
"variant_pricing": true,
"variants": [
{
"id": 46747346763943,
"discount_groups": [
{
"name": "all",
"type": "percent",
"value": "10"
}
]
}
]
}
],
"apply_market": {
"type": "all",
"handle": []
},
"discount_group": {
"type": "percent",
"value": "10"
},
"active_date": {
"types": ["start_date", "end_date"],
"start_at": "2026-01-15 10:00:00",
"end_at": "2026-01-15 10:00:00"
}
}

  • Der Name zur Identifizierung des Wholesale Pricing-Datensatzes
  • Muss ein String sein
  • Maximale Länge: 255 Zeichen

  • Legt fest, ob der Datensatz aktiv ist oder nicht
  • Akzeptiert nur die folgenden Werte:
Wert Beschreibung
true Preisregel ist aktiv
false Preisregel ist inaktiv

Legt fest, welche Kundschaft für diese Preisregel infrage kommt.

Struktur:

"apply_customer": {
"type": "all",
"tags": []
}

type

Akzeptierte Werte (nur einer davon):

  • all – für die gesamte Kundschaft
  • logged – nur für angemeldete Kundschaft
  • non-logged – nur für Gäste
  • customer-tags – nur für Kundschaft mit bestimmten Tags

tags

  • Nur erforderlich, wenn type == customer-tags
  • Muss ein Array mit kommagetrennten Werten sein
  • Beispiel: ["wholesale","b2b"]

Wenn type nicht customer-tags ist, kann dieses Feld ignoriert werden.


Schließt bestimmte Kundschaft von der Preisregel aus.

Struktur:

"exclude_customer": {
"type": "none",
"tags": []
}

type

  • Standardwert: none
  • Akzeptierte Werte:
Wert Beschreibung
none Keine Kundschaft ausschließen
customer-tags Kundschaft nach Tags ausschließen

tags

  • Nur erforderlich, wenn type == customer-tags
  • Array mit kommagetrennten Werten
  • Beispiel: ["vip","wholesale"]

Legt fest, auf welche Produkte die Preisregel angewendet wird.

Struktur:

"apply_product": {
"type": "all",
"product_ids": [],
"product_tags": [],
"collection_ids": [],
"apply_for_variants": false
}

type

Akzeptierte Werte:

  • all
  • products
  • collections
  • product-tags

product_ids

  • Nur erforderlich, wenn type == products
  • Kommagetrennte Liste von Produkt-IDs
  • Beispiel: [1,2,3]

product_tags

  • Nur erforderlich, wenn type == product-tags
  • Beispiel: ["tag1","tag2"]

collection_ids

  • Nur erforderlich, wenn type == collections
  • Beispiel: [1,2,3]

apply_for_variants

  • Legt fest, ob Rabatte pro Variante konfiguriert werden können
  • Akzeptierte Werte: true oder false
  • Standardwert: false

Legt Produkte fest, die von der Regel ausgeschlossen werden.

Struktur:

"exclude_product": {
"type": "none",
"product_ids": [],
"collection_ids": []
}

type

  • Standard: none
  • Akzeptierte Werte:
Wert Beschreibung
none Keine Produkte ausschließen
products Bestimmte Produkte ausschließen
collections Bestimmte Kollektionen ausschließen

Weitere Felder sind je nach gewähltem type erforderlich.


Wird verwendet, wenn Rabatte pro Variante angewendet werden.

  • Muss leer sein, wenn apply_product.apply_for_variants == false
  • Erforderlich, wenn apply_product.apply_for_variants == true

Beispielstruktur:

"discount_for_variants": [
{
"id": 8516448190631,
"variant_pricing": true,
"variants": [
{
"id": 46747346763943,
"discount_groups": [
{
"name": "all",
"type": "percent",
"value": "10"
}
]
}
]
}
]

Struktur:

  • Array von Produkten
  • Jedes Produkt enthält:
    • id – Produkt-ID
    • variant_pricing – muss true sein
    • variants – Array von Varianten

Jede Variante enthält:

  • id – Varianten-ID
  • discount_groups – Array mit Rabatteinstellungen

Regeln für discount_groups

  • Wenn apply_customer.type den Wert all, logged oder non-logged hat:
    → Im Array ist nur ein Eintrag erlaubt
  • Wenn apply_customer.type == customer-tags:
    → Es können mehrere Rabattgruppen angegeben werden

Felder innerhalb von discount_groups:

Feld Beschreibung
name Muss dem Kundentyp oder Kunden-Tag entsprechen
type Rabattart
value Rabattwert

Akzeptierte Rabattarten:

  • percent
  • amount
  • fixed-amount

Regeln für den Wert:

  • Muss eine Zahl größer als 0 sein
  • Bei type percent muss der Wert kleiner als 100 sein

Legt fest, für welche Shopify-Märkte die Regel gilt.

Struktur:

"apply_market": {
"type": "all",
"handle": []
}

type

Akzeptierte Werte:

  • all
  • specific-market

handle

  • Nur erforderlich, wenn type == specific-market
  • Kommagetrennte Liste von Markt-Handles
  • Beispiel: ["japan","us"]

So finden Sie das Markt-Handle:

  • Gehen Sie in Shopify Admin zu Märkte, klicken Sie auf Weitere Aktionen, wählen Sie Markt-Handles bearbeiten und kopieren Sie das dort angezeigte Handle:


Wird verwendet, wenn der Rabatt nicht pro Variante konfiguriert wird.

Erforderlich, wenn:

  • apply_product.type nicht products ist, ODER
  • apply_product.type == products gilt UND keine Varianten angewendet werden

Struktur:

"discount_group": {
"type": "percent",
"value": "10"
}

Für Rabattarten und Rabattwerte gelten dieselben Regeln wie oben beschrieben.


Legt Start- und Endzeitpunkt der Preisregel fest.

Struktur:

"active_date": {
"types": ["start_date", "end_date"],
"start_at": "2026-01-15 10:00:00",
"end_at": "2026-01-15 10:00:00"
}

types

  • Optional
  • Akzeptierte Werte: start_date, end_date
  • Kann einen oder beide Werte enthalten, durch Komma getrennt
  • Beispiel: ["start_date","end_date"]

start_at

  • Erforderlich, wenn types den Wert start_date enthält
  • Format: YYYY-MM-DD HH:MM:SS

end_at

  • Erforderlich, wenn types den Wert end_date enthält
  • Format: YYYY-MM-DD HH:MM:SS

401 – Unauthorized

Mögliche Gründe:

  • Shop-URL fehlt
  • API-Schlüssel fehlt
  • Ungültige Shop-URL
  • Ungültiger API-Schlüssel
  • API-Schlüssel passt nicht zum Shop

403 – This action is unauthorized

  • API-Schlüssel hat keine Berechtigung Create
  • Jeder API-Schlüssel kann die Berechtigungen View, Create, Update und Delete haben
  • Diese API erfordert die Berechtigung Create
  • Wird auch zurückgegeben, wenn eine angegebene ID nicht existiert

429 – Too Many Requests

  • Ratenlimit überschritten
  • Maximal zulässig:
Limit Wert
Anfragehäufigkeit 1 Anfrage pro 5 Minuten
Tageslimit 50 Anfragen pro Tag

200 – API Success

  • Wholesale Pricing-Datensatz erfolgreich erstellt
  • Antwort wird im JSON-Format zurückgegeben
{
"id": 1,
"title": "New Wholesale Pricing",
"status": true,
"apply_customer": {
"type": "all",
"tags": []
},
"exclude_customer": {
"type": "none",
"tags": []
},
"apply_product": {
"type": "all",
"product_ids": [],
"product_tags": [],
"collection_ids": [],
"apply_for_variants": false
},
"exclude_product": {
"type": "none",
"product_ids": [],
"collection_ids": []
},
"discount_for_variants": [
{
"id": 8516448190631,
"variant_pricing": true,
"variants": [
{
"id": 46747346763943,
"discount_groups": [
{
"name": "all",
"type": "percent",
"value": "10"
}
]
}
]
}
],
"apply_market": {
"type": "all",
"handle": []
},
"discount_group": {
"type": "percent",
"value": "10"
},
"active_date": {
"types": ["start_date", "end_date"],
"start_at": "2026-01-15 10:00:00",
"end_at": "2026-01-15 10:00:00"
},
"created_at": "2026-01-15T10:00:00",
"updated_at": "2026-01-15T10:00:00"
}

War diese Seite hilfreich?