REST API
Nagykereskedelmi szerepkörök, termékek, variációk, kategória- és általános kedvezmények kezelése REST API-n, azonosítással és példa kérésekkel.
A bővítmény REST API-t kínál a nagykereskedelmi szerepkörök, termékek, variációk, kategória szintű és általános kedvezmények létrehozására, lekérdezésére, módosítására és törlésére. A végpontok a /wp-json/wholesale/v1/ alatt érhetők el. A példákban Postmant használunk, de bármilyen HTTP-kliens megfelel.
Azonosítás
Szekció neve “Azonosítás”Az API hitelesítést igényel. Hitelesítés nélkül az API-hívások hibát adnak. Alkalmazásjelszóval azonosíthatod magad:
- Nyisd meg a Felhasználók oldalt, és szerkeszd azt a felhasználót, akinek API-hozzáférést adsz.
- A felhasználó szerkesztőoldalán írd be az alkalmazásjelszó nevét, és kattints az Új alkalmazásjelszó hozzáadása gombra.
- Egy egyedi jelszó generálódik. Másold ki.
- A Postmanben az Authorization fülön az Auth Type értéke legyen Basic Auth, és add meg a felhasználónevet és az alkalmazásjelszót.
- A Send gombbal próbáld ki a hitelesítést.
Szerepkörök (Roles)
Szekció neve “Szerepkörök (Roles)”| Metódus | Végpont | Feladat |
|---|---|---|
| GET | wholesale/v1/roles |
Az összes nagykereskedelmi szerepkör lekérése. |
| GET | wholesale/v1/roles/{role_key} |
Egy szerepkör lekérése (például default_wholesaler). |
| POST | wholesale/v1/roles |
Új szerepkör létrehozása. |
| PUT | wholesale/v1/roles/{role_key} |
Szerepkör módosítása. |
| DELETE | wholesale/v1/roles/{role_key} |
Szerepkör törlése. |
Szerepkör létrehozásának és módosításának törzse:
{ "wholesale_role": { "name": "Sample Wholesale Role", "slug": "sample_role", "term_group": 0, "description": "Minta nagykereskedelmi szerepkör", "parent": 0, "count": 0, "filter": "raw" }}Sikeres kérésre 200 OK a válasz. Ha a szerepkör már létezik, vagy hiányzik egy kötelező mező, 400 Bad Request érkezik. Érvénytelen szerepkörnévvel történő törléskor is 400 Bad Request a válasz.
Termékek (Products)
Szekció neve “Termékek (Products)”| Metódus | Végpont | Feladat |
|---|---|---|
| GET | wholesale/v1/products |
Az összes nagykereskedelmi termék. A ?wholesale_role=default_wholesaler paraméterrel egy szerepkörre szűrhetsz. |
| GET | wholesale/v1/products/{product_id} |
Egy termék (a wholesale_role paraméterrel a szerepkör szerinti adatokkal). |
| POST | wholesale/v1/products |
Új termék létrehozása. |
| PUT | wholesale/v1/products/{product_id} |
Termék módosítása. |
| DELETE | wholesale/v1/products/{product_id} |
Termék törlése. |
| POST | wholesale/v1/products/batch?wholesale_role=default_wholesaler |
Tömeges létrehozás, módosítás és törlés. |
Termék létrehozásának és módosításának törzse (a wholesale_price szerepkörönként tartalmazza az árat, a kedvezmény típusát és a minimális mennyiséget):
{ "name": "Sample Product", "type": "simple", "regular_price": "250", "wholesale_price": { "default_wholesaler": { "wholesale_price": "33", "discount_type": "percent", "min_qty": "15" }, "wholesaler_b": { "wholesale_price": "88", "discount_type": "fixed", "min_qty": "20" } }}Hibák: érvénytelen terméktípusnál vagy termékazonosítónál 400 Bad Request, törlésnél érvénytelen azonosítóra 404 Not Found.
A tömeges kérés törzse három listát tartalmazhat:
{ "create": [ { "name": "Új minta termék", "type": "simple", "regular_price": "22", "wholesale_price": { "default_wholesaler": { "wholesale_price": "70", "discount_type": "percent", "min_qty": "10" } } } ], "update": [ { "id": 728, "name": "Módosított termék", "regular_price": "500", "wholesale_price": { "wholesale_price": "75", "role": "default_wholesaler", "discount_type": "percent", "min_qty": "1" } } ], "delete": [761, 762, 763]}Variációk (Variations)
Szekció neve “Variációk (Variations)”| Metódus | Végpont | Feladat |
|---|---|---|
| GET | wholesale/v1/products/{product_id}/variations?wholesale_role=default_wholesaler |
A termék variációinak lekérése. |
| GET | wholesale/v1/products/{product_id}/variations/{variation_id}?wholesale_role=default_wholesaler |
Egy variáció lekérése. |
| POST | wholesale/v1/products/{product_id}/variations?wholesale_role=default_wholesaler |
Variáció létrehozása. |
| PUT | wholesale/v1/products/{product_id}/variations/{variation_id}?wholesale_role=default_wholesaler |
Variáció módosítása. |
| DELETE | wholesale/v1/products/{product_id}/variations/{variation_id}?wholesale_role=default_wholesaler |
Variáció törlése. |
| POST | wholesale/v1/products/{product_id}/variations/batch |
Tömeges művelet variációkra. |
Variáció létrehozásának törzse:
{ "regular_price": "12.00", "attributes": [ { "id": 1, "name": "Color", "option": "Red" } ], "wholesale_price": { "default_wholesaler": { "wholesale_price": "33", "discount_type": "percent", "min_qty": "15" } }}Sikeres létrehozásra 201 Created a válasz. Érvénytelen termék- vagy variációazonosítónál 404 Not Found (variáció lekérésekor) vagy 403 Forbidden (létrehozáskor és módosításkor) érkezik.
Kategória szintű kedvezmények (Category Discounts)
Szekció neve “Kategória szintű kedvezmények (Category Discounts)”| Metódus | Végpont | Feladat |
|---|---|---|
| GET | wholesale/v1/category-discount |
Az összes kategória szintű kedvezmény. |
| GET | wholesale/v1/category-discount/{category-discount_id} |
Egy kedvezmény lekérése. |
| POST | wholesale/v1/category-discount |
Kedvezmény létrehozása. |
| PUT | wholesale/v1/category-discount/{category-discount_id} |
Kedvezmény módosítása. |
| DELETE | wholesale/v1/category-discount/{category-discount_id} |
Kedvezmény törlése. |
A létrehozás és módosítás törzse:
{ "update_category": { "name": "Update Sample Category", "slug": "update-category-discount", "term_group": 0, "description": "Minta kategória kedvezmény", "parent": 0, "count": 0 }, "wholesale_price": { "wholesale_price": "100", "role": "wholesaler_b", "discount_type": "fixed", "min_qty": "5" }}Általános kedvezmények (General Discounts)
Szekció neve “Általános kedvezmények (General Discounts)”| Metódus | Végpont | Feladat |
|---|---|---|
| GET | wholesale/v1/general-discount |
Az összes szerepkör általános kedvezménye. |
| GET | wholesale/v1/general-discount/{general-discount_id} |
Egy szerepkör általános kedvezménye. |
| POST | wholesale/v1/general-discount |
Általános kedvezmény létrehozása egy szerepkörre. |
| PUT | wholesale/v1/general-discount/{general-discount_id} |
Általános kedvezmény módosítása. |
| DELETE | wholesale/v1/general-discount/{general-discount_id} |
Általános kedvezmény törlése. |
A törzs szerkezete ugyanaz, mint a kategória szintű kedvezményé (a módosításnál az update_general kulcs alatt a megnevezés és a leírás, mellette a wholesale_price blokk).
Csomag- és összetett termékek (Bundle és Composite)
Szekció neve “Csomag- és összetett termékek (Bundle és Composite)”Ha a WooCommerce Product Bundles vagy a Composite Products be van kapcsolva, a termékek végponton (wholesale/v1/products?wholesale_role=default_wholesaler) és a tömeges végponton csomag (bundle) és összetett (composite) termék is létrehozható, módosítható és törölhető.
Csomagtermék létrehozásának törzse:
{ "name": "Happy Ninja", "type": "bundle", "regular_price": "53.0", "sale_price": "37.0", "bundle_layout": "default", "bundled_items": [ { "product_id": 470, "quantity_min": 1, "quantity_max": 1, "priced_individually": false, "shipped_individually": false, "optional": false, "override_title": true, "title": "Happy Ninja T-Shirt" } ], "wholesale_price": { "wholesale_price": "50", "role": "default_wholesaler", "discount_type": "percent", "min_qty": "1" }}Összetett termék létrehozásához a type értéke composite, és megadható a composite_layout (például single). A sikeres létrehozás 201 Created választ ad. A tömeges végponton ugyanúgy használhatók a create, update és delete listák, és vegyesen tartalmazhatnak egyszerű, csomag és összetett termékeket is.
Készült: