Tovább a tartalomhoz

API: időpontok

Időpontok létrehozása, módosítása, állapotának váltása, lekérése, listázása és törlése az API-val.

Az időpontok végpontjaival külső rendszerből (például CRM-ből vagy saját admin felületről) hozhatsz létre, módosíthatsz, kérdezhetsz le, listázhatsz és törölhetsz időpontokat, valamint válthatsz az állapotukon.

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). Minden időponti végpont ugyanazt az alap útvonalat használja, csak a végpont része változik:

{{az_oldalad_URL-je}}/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1
Művelet Metódus Útvonal
Időpont létrehozása POST /appointments
Időpont módosítása POST /appointments/{{idopont_id}}
Állapot módosítása POST /appointments/status/{{idopont_id}}
Egy időpont lekérése GET /appointments/{{idopont_id}}
Időpontok listázása GET /appointments
Időpont törlése POST /appointments/delete/{{idopont_id}}

Az időpont kezdő dátumával és a foglalások tömbjével küldött POST kérés hozza létre.

Kötelező tulajdonságok:

Tulajdonság Típus Leírás
bookingStart szöveg Az időpont kezdete, ÉÉÉÉ-HH-NN ÓÓ:PP formában.
bookings tömb A foglalások. Mindegyikben szerepelnie kell egy meglévő vásárló customerId-jének. Új vásárló egyidejű létrehozásához a /bookings végpontot használd.
locationId egész A helyszín azonosítója.
providerId egész A munkavállaló azonosítója.
serviceId egész A szolgáltatás azonosítója.
recurring tömb Az ismétlődő időpontok. Csak akkor kötelező, ha az időpont ismétlődő.

Nem kötelező tulajdonságok:

Tulajdonság Típus Leírás
internalNotes szöveg Belső megjegyzés.
notifyParticipants logikai Értesítést kapjanak-e a vásárlók. Alapértelmezés: false.
timeZone szöveg A vásárló időzónája, például Europe/Budapest.
lessonSpace szöveg A Lesson Space azonosítója. Ha kihagyod, újat hozhat létre a rendszer.
utc logikai UTC-ben küldöd-e a dátumot és időt. Alapértelmezés: false.
Terminál
curl --location 'https://pelda.hu/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/appointments' \
--header 'Content-Type: application/json' \
--header 'Amelia: AZ_API_KULCSOD' \
--data '{
"bookingStart": "2026-01-14 13:00",
"bookings": [
{
"customFields": "{\"1\":{\"label\":\"text\",\"value\":\"\",\"type\":\"text\"}}",
"customerId": 10,
"duration": 1800,
"extras": [],
"packageCustomerId": null,
"persons": 1,
"status": "approved"
}
],
"internalNotes": "",
"lessonSpace": "",
"locationId": 2,
"notifyParticipants": 1,
"providerId": 1,
"recurring": [],
"serviceId": 1,
"timeZone": "Europe/Budapest",
"utc": false
}'

A válasz az appointment objektumban adja vissza a létrehozott időpontot: az azonosítóját, a foglalásokat (vásárló, állapot, ár, személyek száma, fizetések), a szolgáltatás, a munkavállaló és a helyszín azonosítóját, a kezdő és a záró időpontot, valamint az esetleges Google Naptár-, Outlook-, Zoom- vagy Lesson Space-adatokat. A recurring tömbben az ismétlődő időpontok szerepelnek.

A módosításhoz csak azokat a mezőket küldd, amelyeket változtatni akarsz. Az útvonalban az időpont azonosítója áll.

Tulajdonság Típus Leírás
bookingStart szöveg Az új kezdés, ÉÉÉÉ-HH-NN ÓÓ:PP formában.
bookings tömb A módosítandó foglalások (az id-jükkel).
notifyParticipants logikai Értesítést kapjanak-e a vásárlók.
locationId egész A helyszín azonosítója.
providerId egész A munkavállaló azonosítója.
serviceId egész A szolgáltatás azonosítója.
internalNotes szöveg Belső megjegyzés.
lessonSpace szöveg A Lesson Space azonosítója.
removedBookings tömb Az eltávolítandó foglalások.
recurring tömb Az ismétlődő időpontok, ha az időpont ismétlődő.

Az állapotot ezzel a végponttal nem lehet módosítani, ahhoz a /appointments/status/{{idopont_id}} való.

Terminál
curl --location 'https://pelda.hu/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/appointments/742' \
--header 'Content-Type: application/json' \
--header 'Amelia: AZ_API_KULCSOD' \
--data '{
"bookingStart": "2026-02-06 11:00",
"bookings": [
{
"id": 979,
"customerId": 10,
"duration": 1800,
"extras": [],
"packageCustomerId": null,
"persons": 2,
"status": "approved"
}
],
"internalNotes": "",
"locationId": 2,
"notifyParticipants": 1,
"providerId": 1,
"removedBookings": [],
"serviceId": 1
}'

A válasz az appointment mellett jelzi, hogy változott-e az állapot (appointmentStatusChanged), átütemezték-e az időpontot (appointmentRescheduled), mi volt az eredeti kezdés és záró időpont (initialAppointmentDateTime), melyik foglalásnak változott az állapota (bookingsWithChangedStatus), cserélődött-e a munkavállaló, és hozzáadtak-e foglalást (bookingAdded).

Az új állapotot tartalmazó POST kérés váltja az időpont állapotát.

Tulajdonság Típus Kötelező Leírás
status szöveg igen Az új állapot: approved (jóváhagyott), pending (függőben), canceled (lemondott), rejected (elutasított) vagy no-show (nem jelent meg).
packageCustomerId egész igen A csomagvásárló azonosítója, ha az időpont csomaghoz tartozik, különben null.
Terminál
curl --location 'https://pelda.hu/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/appointments/status/742' \
--header 'Content-Type: application/json' \
--header 'Amelia: AZ_API_KULCSOD' \
--data '{
"status": "pending",
"packageCustomerId": null
}'

A válasz tartalmazza a módosított időpontot, az új (status) és a korábbi (oldStatus) állapotot, a változott állapotú foglalásokat és egy üzenetet az állapotváltásról.

Az azonosító alapján adja vissza az időpontot. A kérésnek nincs törzse.

Terminál
curl --location 'https://pelda.hu/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/appointments/742' \
--header 'Amelia: AZ_API_KULCSOD'

A válasz az appointment objektumban adja az időpontot, a recurring tömbben az ismétlődő társait.

Időpontok listázása dátumtartományra

Szekció neve “Időpontok listázása dátumtartományra”

Dátumtartományra és lapozásra szűrt listát ad vissza.

Paraméter Típus Leírás
dates szöveg A kezdő és záró dátum vesszővel elválasztva, például 2026-03-10,2026-03-11.
page egész Oldalszám. Az oldalankénti darabszámot a beállítások határozzák meg.
skipServices logikai Kihagyja a szolgáltatások részleteit.
skipProviders logikai Kihagyja a munkavállalók részleteit.
asArray logikai false esetén dátumokkal kulcsolt objektumot, true esetén tömböt ad vissza.
Terminál
curl --location 'https://pelda.hu/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/appointments&dates=2026-03-10,2026-03-11&page=1&skipServices=1&skipProviders=1' \
--header 'Amelia: AZ_API_KULCSOD'

A válasz az appointments objektumban napok szerint csoportosítva adja az időpontokat. Minden időpontnál szerepel a foglalások listája a vásárlók adataival és a fizetésekkel, valamint az, hogy lemondható (cancelable), átütemezhető (reschedulable), múltbeli (past) vagy csoportos (isGroup) az időpont. A válasz végén az összesítők: az összes időpont (total), a jóváhagyottak (totalApproved) és a függőben lévők (totalPending) száma.

Az azonosító alapján töröl egy időpontot. A kérésnek nincs törzse.

Terminál
curl --location --request POST 'https://pelda.hu/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/appointments/delete/173' \
--header 'Amelia: AZ_API_KULCSOD'

A válasz a törölt időpontot adja vissza (a foglalások állapota rejected), és a bookingsWithChangedStatus tömbben azokat a foglalásokat, amelyeknek a törléskor változott az állapotuk.

  • Először tesztelj egy próbaoldalon, és az integráció építésekor naplózd a kéréseket és a válaszokat is.
  • Az időpont adatait a /appointments/{{idopont_id}}, az állapotát a /appointments/status/{{idopont_id}} végponton módosítsd.
  • A módosításkor elég azt küldeni, amit változtatsz.
  • Ha a timeZone és az utc értékét is megadod, az egész integrációban következetesen használd.
  • Ismétlődő időpontnál add meg a recurring tömböt.
  • Az API-kulcsot tárold biztonságosan, és soha ne add át a weboldal felületének (front end).

Készült:

Tiszteletben tartjuk a magánszférádat

Sütiket használunk a böngészési élmény javítására és a forgalom elemzésére. Az analitika csak akkor indul, ha engeded. Adatvédelmi irányelvek, Sütitájékoztató.

Sütibeállítások