API: események
Események létrehozása, módosítása, lekérése, státuszváltása és törlése, eseményfoglalások módosítása és naptárütközés-ellenőrzés az API-val.
Az események végpontjaival eseményeket hozhatsz létre és módosíthatsz, beállíthatod az időszakokat és az ismétlődési szabályokat, kezelheted a munkavállalókat és a jegyeket, módosíthatod a foglalásokat és a státuszt, ellenőrizheted a törlés hatását, és törölhetsz.
Az API az Elite licenchez tartozik, használatához programozási ismeret kell. 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 |
|---|---|---|
| Esemény létrehozása | POST |
/events |
| Esemény módosítása | POST |
/events/{{esemeny_id}} |
| Esemény státuszának módosítása | POST |
/events/status/{{esemeny_id}} |
| Eseményfoglalás módosítása | POST |
/events/bookings/{{foglalas_id}} |
| Egy esemény lekérése | GET |
/events/{{esemeny_id}} |
| Események listázása | GET |
/events |
| Naptárütközés ellenőrzése | POST |
/events/calendar |
| Törölhetőség ellenőrzése | GET |
/events/effect/{{esemeny_id}} |
| Eseményfoglalás törlése | POST |
/events/bookings/delete/{{foglalas_id}} |
| Esemény törlése | POST |
/events/delete/{{esemeny_id}} |
Esemény létrehozása
Szekció neve “Esemény létrehozása”Új eseményt hoz létre egy vagy több időszakkal, férőhellyel és árral. Beállíthatod a foglalás nyitását és zárását, a munkavállalókat, a címkéket, a jegyeket és az ismétlődést is.
Kötelező tulajdonságok
| Tulajdonság | Típus | Leírás |
|---|---|---|
name |
szöveg | Az esemény neve. |
periods |
tömb | Időszakobjektumok periodStart és periodEnd mezővel. |
maxCapacity |
egész | A résztvevők legnagyobb száma. |
price |
tizedes | Az esemény ára. |
További tulajdonságok
| Tulajdonság | Típus | Leírás |
|---|---|---|
show |
logikai | Megjelenjen-e a felületen. Alapérték: false. |
parentId |
egész | Ismétlődő eseménynél a szülő esemény azonosítója. |
bookingOpens |
szöveg | A foglalás nyitása, ÉÉÉÉ-HH-NN óó:pp:mm formában. |
bookingCloses |
szöveg | A foglalás zárása, ugyanebben a formában. |
bookingOpensRec |
szöveg | Az ismétlődő események foglalásnyitási szabálya: same vagy calculate. |
bookingClosesRec |
szöveg | Az ismétlődő események foglalászárási szabálya: same vagy calculate. |
recurring |
objektum | Az ismétlődés beállításai. |
bringingAnyone |
logikai | Lehet-e további személyt hozni. Alapérték: false. |
bookMultipleTimes |
logikai | Foglalhat-e egy vásárló többször. Alapérték: false. |
maxExtraPeople |
egész | Foglalásonként a legtöbb további személy. |
tags |
tömb | Címkeobjektumok name mezővel. |
providers |
tömb | Munkavállalói objektumok az azonosítókkal. |
description |
szöveg | Az esemény leírása. |
gallery |
tömb | A galéria képeinek útvonala. |
color |
szöveg | HEX színkód. |
locationId |
egész | Helyszínazonosító. |
customLocation |
szöveg | Egyéni helyszín szövege. |
settings |
szöveg | JSON-ként kódolt eseménybeállítások. Alapból az általános beállítások érvényesek. |
translations |
szöveg | JSON-ként kódolt fordítások a névhez és a leíráshoz. |
depositPayment |
szöveg | Az előleg típusa: disabled, fixed vagy percentage. |
deposit |
egész | Az előleg összege. |
depositPerPerson |
logikai | Az előleg szorzódjon-e a létszámmal. Alapérték: false. |
fullPayment |
logikai | Engedélyezze-e a teljes összeg kifizetését. Alapérték: false. |
customPricing |
logikai | Egyéni áras jegyek bekapcsolása. Alapérték: false. |
organizerId |
egész | A szervező munkavállaló azonosítója. |
closeAfterMin |
egész | Az esemény lezárása, ha elérte a minimumot. |
closeAfterMinBookings |
logikai | A minimum a foglalásokra vagy a foglalásonkénti személyekre vonatkozik. |
customTickets |
tömb | Jegyobjektumok. |
maxCustomCapacity |
egész | A jegytípusok együttes legnagyobb férőhelye. |
Kérés:
curl --location 'https://pelda.hu/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/events' \--header 'Content-Type: application/json' \--header 'Amelia: AZ_API_KULCSOD' \--data '{ "parentId": null, "name": "Wellness workshop", "periods": [ { "periodStart": "2026-03-10 14:00:00", "periodEnd": "2026-03-10 22:30:00" } ], "bookingOpens": "2026-03-01 09:00:00", "bookingCloses": "2026-03-10 12:00:00", "bookingOpensRec": "same", "bookingClosesRec": "same", "recurring": { "monthlyRepeat": "each", "monthDate": null, "monthlyOnRepeat": null, "monthlyOnDay": null, "cycleInterval": 1, "cycle": "weekly", "order": null, "until": "2026-04-21 00:00:00" }, "bringingAnyone": true, "bookMultipleTimes": true, "maxCapacity": 100, "maxExtraPeople": null, "price": 100, "tags": [ { "name": "workshop" } ], "providers": [ { "id": 1 }, { "id": 3 } ], "description": "Vezetett műhely gyakorlatokkal.", "gallery": [], "color": "#1788FB", "show": true, "locationId": 2, "customLocation": null, "applyGlobally": true, "translations": null, "deposit": 10, "depositPayment": "fixed", "depositPerPerson": true, "fullPayment": true, "customPricing": true, "organizerId": 1, "closeAfterMin": null, "closeAfterMinBookings": false, "customTickets": [ { "name": "Standard ticket", "price": 10, "spots": 10, "enabled": true, "dateRanges": "[]" }, { "name": "VIP ticket", "price": 20, "spots": 20, "enabled": true, "dateRanges": "[]" } ], "maxCustomCapacity": null}'A válasz az events tömbben tartalmazza a létrehozott eseményt (azonosító, időszakok, címkék, jegyek, munkavállalók, ismétlődés, státusz):
{ "message": "Successfully added new event.", "data": { "events": [ { "id": 122, "name": "Wellness workshop", "price": 100, "periods": [ { "id": 125, "eventId": 122, "periodStart": "2026-03-10 14:00:00", "periodEnd": "2026-03-10 22:30:00" } ], "status": "approved", "maxCapacity": 100, "show": true, "locationId": 2, "organizerId": 1, "type": "event" } ] }}Esemény módosítása
Szekció neve “Esemény módosítása”Egy esemény adatait módosítja. Az applyGlobally mezővel a változtatást a következő ismétlődő eseményekre is érvényesítheted. Csak azokat a tulajdonságokat küldd el, amelyeket változtatni akarsz. A providers tömbben a hiányzó azonosítójú munkavállalók eltávolításra kerülnek az eseményről.
A tulajdonságok megegyeznek a létrehozásnál leírtakkal (mind opcionális), és kiegészülnek ezzel:
| Tulajdonság | Típus | Leírás |
|---|---|---|
applyGlobally |
logikai | A változtatás érvényesüljön-e a következő ismétlődő eseményekre is. Alapérték: false. |
curl --location 'https://pelda.hu/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/events/122' \--header 'Content-Type: application/json' \--header 'Amelia: AZ_API_KULCSOD' \--data '{ "name": "Wellness workshop updated", "applyGlobally": true, "customTickets": []}'A válasz az events objektumban csoportosítja a változásokat (cloned, edited, added, deleted, rescheduled).
Esemény státuszának módosítása
Szekció neve “Esemény státuszának módosítása”Jóváhagy vagy elutasít egy eseményt, és a státuszváltást kiterjesztheti a következő ismétlődő eseményekre is.
| Tulajdonság | Típus | Kötelező | Leírás |
|---|---|---|---|
status |
szöveg | igen | approved (jóváhagyott) vagy rejected (elutasított). |
applyGlobally |
logikai | igen | A következő ismétlődő eseményekre is vonatkozzon-e. |
curl --location 'https://pelda.hu/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/events/status/122' \--header 'Content-Type: application/json' \--header 'Amelia: AZ_API_KULCSOD' \--data '{ "applyGlobally": false, "status": "rejected" }'Eseményfoglalás módosítása
Szekció neve “Eseményfoglalás módosítása”Egy meglévő eseményfoglalást módosít, az egyéni mezőket és a jegyadatokat is. Kötelező a bookings tömb (a módosítandó foglalásobjektumok).
curl --location 'https://pelda.hu/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/events/bookings/1145' \--header 'Content-Type: application/json' \--header 'Amelia: AZ_API_KULCSOD' \--data '{ "bookings": [ { "customFields": { "7": { "label": "Address", "value": "", "type": "address" }, "13": { "label": "file", "value": "", "type": "file" } }, "persons": 1, "customerId": 10, "ticketsData": [ { "id": 62, "eventTicketId": 39, "customerBookingId": 1145, "persons": 2, "price": 20 }, { "id": 63, "eventTicketId": 38, "customerBookingId": 1145, "persons": 2, "price": 10 } ] } ], "couponCode": null, "createPaymentLinks": false}'A válasz tartalmazza a fizetés azonosítóját (paymentId) és azt, hogy a foglalás státusza változott-e (bookingStatusChanged).
Esemény lekérése
Szekció neve “Esemény lekérése”Egyetlen esemény adatait adja vissza. Nincs további paraméter, az azonosító az útvonalban van.
curl --location 'https://pelda.hu/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/events/122' \--header 'Amelia: AZ_API_KULCSOD'Események listázása
Szekció neve “Események listázása”Az eseményeket keresőszóra, dátumtartományra, oldalra és vásárlóra szűrheted.
| Paraméter | Típus | Leírás |
|---|---|---|
search |
szöveg | Keresőszó. |
page |
egész | Oldalszám. |
dates |
tömb | Dátumtartomány: dates[0] a kezdő, dates[1] a záró nap, ÉÉÉÉ-HH-NN formában. |
customerId |
egész | Annak a vásárlónak az azonosítója, aki az eseményeket foglalta. |
curl --location 'https://pelda.hu/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/events&search=workshop&dates[0]=2026-05-01&dates[1]=2026-05-31&page=1' \--header 'Amelia: AZ_API_KULCSOD'A válasz az events tömbben adja a találatokat, a count mezőben a találatok számát.
Naptárütközés ellenőrzése
Szekció neve “Naptárütközés ellenőrzése”Ellenőrzi a kiválasztott munkavállalók külső naptárait a megadott időszakokra. Segít kiszűrni az átfedéseket a csatlakoztatott Google vagy Outlook naptár eseményeivel, esemény létrehozásakor vagy módosításakor.
| Tulajdonság | Típus | Kötelező | Leírás |
|---|---|---|---|
providers |
tömb | igen | Az ellenőrzendő munkavállalók. |
periods |
tömb | igen | Az ellenőrzendő időszakok. |
eventIds |
tömb | nem | Azok az Amelia-események, amelyeket ki kell hagyni a naptárkeresésből. |
recurring |
objektum | nem | Az ismétlődés adatai az ütközésvizsgálathoz. |
curl --location 'https://pelda.hu/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/events/calendar' \--header 'Content-Type: application/json' \--header 'Amelia: AZ_API_KULCSOD' \--data '{ "providers": [ { "id": 1 } ], "periods": [ { "id": null, "eventId": null, "periodStart": "2026-03-05 12:30:00", "periodEnd": "2026-03-05 23:30:00" } ], "eventIds": [82, 81], "recurring": { "cycle": null, "order": null, "until": null, "cycleInterval": null }}'Ütközés esetén a válasz data.calendarConflict értéke true.
Törölhetőség ellenőrzése
Szekció neve “Törölhetőség ellenőrzése”Megmondja, törölhető-e az esemény. Ha nem, a válasz üzenete megadja az okot.
curl --location 'https://pelda.hu/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/events/effect/122' \--header 'Amelia: AZ_API_KULCSOD'Példaválasz, amikor a törlés nem engedélyezett: "valid": false és az üzenet: „Please cancel the event first before deleting it.” (előbb mondd le az eseményt).
Eseményfoglalás törlése
Szekció neve “Eseményfoglalás törlése”Egy adott eseményfoglalást töröl. Nincs törzs, az azonosító az útvonalban áll.
curl --location --request POST 'https://pelda.hu/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/events/bookings/delete/1145' \--header 'Amelia: AZ_API_KULCSOD'Esemény törlése
Szekció neve “Esemény törlése”Töröl egy eseményt. Ismétlődő esemény esetén megadhatod, hogy a következőket is törölje.
| Tulajdonság | Típus | Leírás |
|---|---|---|
applyGlobally |
logikai | A következő ismétlődő események is törlődjenek-e. |
curl --location 'https://pelda.hu/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/events/delete/122' \--header 'Content-Type: application/json' \--header 'Amelia: AZ_API_KULCSOD' \--data '{ "applyGlobally": false }'Készült: