API: helyszínek és egyéni mezők
Helyszínek és a foglalási űrlap egyéni mezőinek létrehozása, módosítása, lekérése és törlése az API-val.
Ez a fejezet a helyszínek és az egyéni mezők végpontjait írja le.
Az API az Elite licenchez tartozik, használatához programozási ismeret kell, a szokásos támogatás nem terjed ki rá. A hitelesítés az Amelia fejlécben küldött API-kulccsal történik (részletek). Az alap útvonal: {{az_oldalad_URL-je}}/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1.
| Művelet | Metódus | Útvonal |
|---|---|---|
| Helyszín létrehozása | POST |
/locations |
| Helyszín módosítása | POST |
/locations/{{helyszin_id}} |
| Egy helyszín lekérése | GET |
/locations/{{helyszin_id}} |
| Törölhetőség ellenőrzése | GET |
/locations/effect/{{helyszin_id}} |
| Helyszínek listázása | GET |
/locations |
| Helyszín törlése | POST |
/locations/delete/{{helyszin_id}} |
| Egyéni mező létrehozása | POST |
/fields |
| Egyéni mező módosítása | POST |
/fields/{{mezo_id}} |
| Sorrend módosítása | POST |
/fields/positions |
| Egyéni mezők listázása | GET |
/fields |
| Egyéni mező törlése | POST |
/fields/delete/{{mezo_id}} |
Helyszínek
Szekció neve “Helyszínek”Helyszín létrehozása
Szekció neve “Helyszín létrehozása”Csak a name (szöveg, a helyszín neve) kötelező.
| Tulajdonság | Típus | Leírás |
|---|---|---|
status |
szöveg | visible, hidden vagy disabled. Alapérték: visible. |
description |
szöveg | Leírás. |
address |
szöveg | Cím. |
phone |
szöveg | Telefonszám. |
latitude |
tizedes szám | Szélességi fok. Alapérték: 40.7484405. |
longitude |
tizedes szám | Hosszúsági fok. Alapérték: -73.9878531. |
pictureFullPath, pictureThumbPath |
szöveg | A kép és a bélyegkép útvonala. |
pin |
szöveg | A térképjelölő ikon útvonala. Az alapértelmezett ikonok a bővítmény /public/img/pins/ mappájában vannak (orange.png, green.png, purple.png, red.png). |
translations |
szöveg | JSON-ként kódolt fordítás a névhez és a leíráshoz. |
curl --location 'https://pelda.hu/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/locations' \--header 'Content-Type: application/json' \--header 'Amelia: AZ_API_KULCSOD' \--data '{ "status": "visible", "name": "Belvárosi stúdió", "description": "A személyes időpontok fő helyszíne.", "address": "Budapest, Váci utca 1.", "phone": "+3612345678", "latitude": 47.4925, "longitude": 19.0513, "pictureFullPath": "", "pictureThumbPath": ""}'Módosítás, lekérés, törölhetőség, listázás és törlés
Szekció neve “Módosítás, lekérés, törölhetőség, listázás és törlés”- Módosítás: a
/locations/{{helyszin_id}}végpontra csak a változtatni kívánt mezőket küldd (name,status,description,address,phone,latitude,longitude,pictureFullPath,pictureThumbPath,pin,translations). - Lekérés: a
GET /locations/{{helyszin_id}}egy helyszín adatait adja vissza. - Törölhetőség ellenőrzése: a
GET /locations/effect/{{helyszin_id}}megmutatja, van-e a helyszínnek jövőbeli időpontja, amely akadályozná a biztonságos törlést. - Listázás: a
GET /locationsa helyszínek listáját adja. Opcionális paraméterek:page(oldalszám),sort(name,-name,address,-address),search(keresőszöveg),services(szolgáltatásazonosítók vesszővel elválasztva). - Törlés: a
POST /locations/delete/{{helyszin_id}}törli a helyszínt, ha ez biztonságosan megtehető.
curl --location 'https://pelda.hu/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/locations&page=1&sort=name' \--header 'Amelia: AZ_API_KULCSOD'Egyéni mezők
Szekció neve “Egyéni mezők”Az egyéni mezők további kitöltendő mezőket adnak a szolgáltatások és események foglalási űrlapjához. A végpontokkal a mezők sorrendjét és azt is szabályozhatod, mely szolgáltatásoknál és eseményeknél jelennek meg.
Egyéni mező létrehozása
Szekció neve “Egyéni mező létrehozása”A type kötelező, értéke text, text-area, select, checkbox, radio, content, file, datepicker vagy address.
| Tulajdonság | Típus | Leírás |
|---|---|---|
label |
szöveg | A mező címkéje. |
options |
tömb | A select és radio típus választási lehetőségei. |
position |
egész | A megjelenítési sorrend. Alapérték: 1. |
required |
logikai | Kötelező-e kitölteni. Alapérték: false. |
services |
tömb | Azok a szolgáltatások, amelyeknél a mező megjelenik. |
events |
tömb | Azok az események, amelyeknél a mező megjelenik. |
useAsLocation |
logikai | A mező értéke legyen a naptáresemény helyszíne; csak address típusnál. |
width |
egész | A mező szélessége a foglalási űrlapon: 50 vagy 100. |
saveType |
szöveg | A mező mentésének típusa: bookings vagy customer. |
saveFirstChoice |
logikai | Az első választási lehetőség mentése. |
includeInInvoice |
logikai | Szerepeljen-e a számlán. Alapérték: false. |
curl --location 'https://pelda.hu/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/fields' \--header 'Content-Type: application/json' \--header 'Amelia: AZ_API_KULCSOD' \--data '{ "label": "Választó mező", "options": [], "position": 3, "required": false, "services": [ { "id": 1 } ], "events": [ { "id": 120 } ], "type": "select", "useAsLocation": false}'Egyéni mező módosítása
Szekció neve “Egyéni mező módosítása”A /fields/{{mezo_id}} végpontra csak a változtatni kívánt mezőket küldd. A létrehozásnál felsorolt mezők mellett használható még a translations (JSON-ként kódolt címkefordítás), az allServices (minden szolgáltatásra érvényes) és az allEvents (minden eseményre érvényes) logikai mező.
curl --location 'https://pelda.hu/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/fields/11' \--header 'Content-Type: application/json' \--header 'Amelia: AZ_API_KULCSOD' \--data '{ "label": "Választó mező", "type": "select", "required": false, "position": 3, "options": [ { "label": "Lehetőség", "position": 1, "new": true } ], "services": [ { "id": 1 } ], "events": [], "allServices": false, "allEvents": false, "useAsLocation": false}'Sorrend, listázás és törlés
Szekció neve “Sorrend, listázás és törlés”- Sorrend módosítása: a
POST /fields/positionskötelezőcustomFieldstömbje a mezők azonosítóit és új helyüket tartalmazza, például{ "customFields": [ { "id": 1, "position": 1 }, { "id": 3, "position": 2 } ] }. - Listázás: a
GET /fieldsaz összes egyéni mezőt visszaadja. - Törlés: a
POST /fields/delete/{{mezo_id}}törli az egyéni mezőt.
Készült: