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 aktualisieren/bearbeiten

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

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


Um einen vorhandenen Wholesale Pricing-Datensatz zu aktualisieren, verwenden Sie den folgenden Endpunkt:

PUT https://wholesale.samita.io/api/v1/wholesale-pricings/{id}
  • {id} ist die ID des Wholesale Pricing-Datensatzes
  • Die ID finden Sie in der App-Oberfläche (ohne das Zeichen „#“)
  • Beispiel:

PUT https://wholesale.samita.io/api/v1/wholesale-pricings/1

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 Aktualisieren von Wholesale Pricing müssen im JSON-Format gesendet werden. Eine Beispielstruktur im JSON-Format finden Sie am Ende dieses Dokuments.

_ In der Anfrage sind nur die Felder erforderlich, die aktualisiert werden sollen. Anders als bei der Create-API-Methode müssen nicht alle Felder gesendet werden.

_ Nicht angegebene Felder bleiben unverändert

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
  • In der Update-API optional
  • Muss ein String sein
  • Maximale Länge: 255 Zeichen

  • Legt fest, ob der Datensatz aktiv ist oder nicht
  • In der Update-API optional
  • 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:

  • all
  • logged
  • non-logged
  • customer-tags

tags

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

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
  • 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

Weitere Felder sind je nach gewähltem type erforderlich:

  • product_ids → erforderlich, wenn type == products
  • product_tags → erforderlich, wenn type == product-tags
  • collection_ids → erforderlich, wenn type == collections

apply_for_variants

  • 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": []
}

Akzeptierte Typen:

  • none
  • products
  • collections

Wird verwendet, wenn Rabatte pro Variante konfiguriert 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 Rabattkonfigurationen

Regeln für discount_groups

  • Wenn apply_customer.type den Wert all, logged oder non-logged hat
    → Es 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"]

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"
}

Regeln:

  • type muss einer der folgenden Werte sein:
    • percent
    • amount
    • fixed-amount
  • value
    • Muss größer als 0 sein
    • Bei type percent muss der Wert kleiner als 100 sein

Legt Start- und Endzeitpunkt der Preisregel fest.

Struktur:

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

types

  • Optional
  • Akzeptierte Werte: start_date, end_date
  • 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 Update
  • Jeder API-Schlüssel kann die Berechtigungen View, Create, Update und Delete haben
  • Diese API erfordert die Berechtigung Update
  • Wird auch zurückgegeben, wenn die angegebene ID nicht existiert

429 – Too Many Requests

Ratenlimit überschritten:

  • Höchstens 1 Anfrage pro 5 Minuten
  • Höchstens 50 Anfragen pro Tag

200 – API Success

  • Wholesale Pricing-Datensatz erfolgreich aktualisiert
  • Antwort wird im JSON-Format zurückgegeben

Beispiel-Antwort-JSON:

{
"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_at": "",
"end_at": ""
},
"created_at": "2026-01-15T10:00:00",
"updated_at": "2026-01-15T10:00:00"
}

War diese Seite hilfreich?