Folyamat létrehozása - első példa
Az alábbi setAutomatism kérés létrehoz egy automata folyamatot, amely egy megrendelés leadás esemény hatására kiküld egy emailt a megrendelést leadó vásárlónak. A folyamat azonnali esemény, tehát a vásárló a megrendelés leadását követően max. 5 percen belül megkapja az e-mailt. Az e-mail sablon tetszőleges, a példában a neve "Megrendelést adtál le", azonosítója 64138. Az eseményhez tartozó szabályok jelenleg nem kerültek meghatározásra, így minden megrendelés leadáskor a vásárlónak küldi a rendszer az e-mailt.
Kérés
<?xml version="1.0" encoding="UTF-8" ?>
<Automatisms>
<Automatism>
<Action>add</Action>
<Name><![CDATA[Megrendelést leadás - E-mail küldése a vásárlónak]]></Name>
<Active>yes</Active>
<Schedule>
<Type>instant</Type>
</Schedule>
<Event>
<Type>order_send</Type>
</Event>
<Operation>
<Type>email</Type>
<Config>
<NewsletterTemplate>
<Id>64138</Id>
<Name><![CDATA[Megrendelést adtál le]]></Name>
</NewsletterTemplate>
</Config>
</Operation>
</Automatism>
</Automatisms>
Válasz
<?xml version="1.0" encoding="UTF-8" ?>
<Automatisms>
<Automatism>
<Action>add</Action>
<Id>1242</Id>
<Status>ok</Status>
</Automatism>
</Automatisms>
Folyamat létrehozása - második példa
Ebben a példában egy elhagyott kosár esemény hatására egy időzített automata folyamat jön létre. A művelet e-mail küldés, viszont ebben a folyamatban egy meghatározott email címre küldi ki a rendszer a választott e-mail sablont. A példában láthatóak meghatározott szabályok, melyek alapján a hírlevélre feliratkozott vásárlók elhagyott kosarairól küld a webáruház emailt, a meghatározott e-mail címre.
Kérés
<?xml version="1.0" encoding="UTF-8" ?>
<Automatisms>
<Automatism>
<Action>add</Action>
<Name><![CDATA[Kosár elhagyás - időzített, 45 perc]]></Name>
<Active>yes</Active>
<Schedule>
<Type>delayed</Type>
<Unit>minute</Unit>
<Value><![CDATA[45]]></Value>
</Schedule>
<Event>
<Type>abandoned_cart</Type>
<Rules>
<Rule>
<Entity>newsletter_up</Entity>
<Relation>equal</Relation>
<Values>
<Value><![CDATA[yes]]></Value>
</Values>
</Rule>
</Rules>
</Event>
<Operation>
<Type>email</Type>
<Config>
<NewsletterTemplate>
<Id>78669</Id>
<Name><![CDATA[Kosár elhagyás]]></Name>
</NewsletterTemplate>
<DirectUser>yes</DirectUser>
<DirectUserEmails>
<DirectUserEmail><![CDATA[admin@peldashop.hu]]></DirectUserEmail>
</DirectUserEmails>
</Config>
</Operation>
</Automatism>
</Automatisms>
Válasz
<?xml version="1.0" encoding="UTF-8" ?>
<Automatisms>
<Automatism>
<Action>add</Action>
<Id>1243</Id>
<Status>ok</Status>
</Automatism>
</Automatisms>
Folyamat létrehozása - harmadik példa
Az alábbi XML egy automata folyamatot hoz létre, amelynél az esemény vásárló regisztráció, a műveletet azonnal elvégzi a webáruház, ami vásárló csoportba helyezést jelent. Az eseményhez tartozó szabály úgy került megadásra, hogy ha a vásárló szállítási megyéje Győr-Moson-Sopron, Vas vagy Zala és a vásárló települése nem Kóny, Zalakaros vagy Ostffyasszonyfa akkor áthelyezésre kerül a Csoport 1 nevű vásárló csoportba.
Kérés
<?xml version="1.0" encoding="UTF-8" ?>
<Automatisms>
<Automatism>
<Action>add</Action>
<Name><![CDATA[Vásárló regisztráció - Vásárló csoportba helyezés]]></Name>
<Active>yes</Active>
<Schedule>
<Type>instant</Type>
</Schedule>
<Event>
<Type>customer_registration</Type>
<Rules>
<Rule>
<Entity>customer_shipping_county</Entity>
<Relation>equal</Relation>
<Values>
<Value><![CDATA[Győr-Moson-Sopron]]></Value>
<Value><![CDATA[Vas]]></Value>
<Value><![CDATA[Zala]]></Value>
</Values>
</Rule>
<Rule>
<Entity>customer_shipping_city</Entity>
<Relation>not_equal</Relation>
<Values>
<Value><![CDATA[Kóny]]></Value>
<Value><![CDATA[Zalakaros]]></Value>
<Value><![CDATA[Ostffyasszonyfa]]></Value>
</Values>
</Rule>
</Rules>
</Event>
<Operation>
<Type>change_customer_group</Type>
<Config>
<CustomerGroup>
<Id>25481</Id>
<Name><![CDATA[Csoport 1]]></Name>
</CustomerGroup>
</Config>
</Operation>
</Automatism>
</Automatisms>
Válasz
<?xml version="1.0" encoding="UTF-8" ?>
<Automatisms>
<Automatism>
<Action>add</Action>
<Id>1244</Id>
<Status>ok</Status>
</Automatism>
</Automatisms>
Folyamat létrehozása - negyedik példa
A negyedik példában egy Webhook művelet beállítását láthatod. Vásárló törlés esemény hatására a beállított webhook URL-re POST kérést intéz rendszerünk. A POST kérésben a vásárló azonosítója szerepel, az esemény vásárló törlése. Így a külső rendszer a hívás fogadásakor felkészíthető, hogy ott is törlésre kerüljön az adott vásárló.
A Webhook művelet során a fogadó oldalnak HTTP 200 OK válasz üzenettel kell jeleznie, hogy fogadta és feldolgozta a webhook hívást. Egyéb esetben rendszerünk hibás webhook hívást rögzít, majd újra ütemezi öt perccel későbbre. Összesen öt alkalommal ütemezzük újra a webhook hívásokat, az ötödik alkalom után a folyamat elhal. Fogadó oldalon a Webhook hívások ellenőrizhetők, erről a Webhook ellenőrzés fejezetben olvashatsz bővebben.
Kérés
<?xml version="1.0" encoding="UTF-8" ?>
<Automatisms>
<Automatism>
<Action>add</Action>
<Name><![CDATA[Vásárló törlés - Webook esemény]]></Name>
<Active>yes</Active>
<Schedule>
<Type>instant</Type>
</Schedule>
<Event>
<Type>customer_delete</Type>
</Event>
<Operation>
<Type>webhook</Type>
<Config>
<WebhookUrl><![CDATA[https://example.com/recieve_webhook.php]]></WebhookUrl>
</Config>
</Operation>
</Automatism>
</Automatisms>
Válasz
<?xml version="1.0" encoding="UTF-8" ?>
<Automatisms>
<Automatism>
<Action>add</Action>
<Id>1245</Id>
<Status>ok</Status>
</Automatism>
</Automatisms>
Automata folyamatok törlése
Az alábbi példakódban automata folyamatok törlését láthatod. A kérésben több automata folyamat azonosítója szerepel, így látható, hogy miként lehet egy kérésben több folyamatot is törölni.
Kérés
<?xml version="1.0" encoding="UTF-8" ?>
<Automatisms>
<Automatism>
<Action>delete</Action>
<Id>1203</Id>
</Automatism>
<Automatism>
<Action>delete</Action>
<Id>1196</Id>
</Automatism>
<Automatism>
<Action>delete</Action>
<Id>1188</Id>
</Automatism>
</Automatisms>
Válasz
<?xml version="1.0" encoding="UTF-8" ?>
<Automatisms>
<Automatism>
<Action>delete</Action>
<Id>1203</Id>
<Status>ok</Status>
</Automatism>
<Automatism>
<Action>delete</Action>
<Id>1196</Id>
<Status>ok</Status>
</Automatism>
<Automatism>
<Action>delete</Action>
<Id>1188</Id>
<Status>ok</Status>
</Automatism>
</Automatisms>