ninjaMail_public/README.md

208 lines
7.6 KiB
Markdown
Raw Permalink Normal View History

2017-12-04 13:26:31 +01:00
ninjaMail API
2017-12-04 13:05:23 +01:00
===============
2017-12-04 13:31:35 +01:00
2017-12-04 13:26:31 +01:00
Ebben a fájlban olvashat arról, hogyan használhatja a levelező
alkalmazásprogramozási interfészét.
A példákban szereplő lekérések PHP programozási szemszögből készültek, viszont
felhasználható más nyelven íródott projektekben is, amennyiben az rendelkezik
2017-12-04 13:31:35 +01:00
CURL könyvtárral vagy más, GET és POST hívást támogató eszközzel.
2017-12-04 13:26:31 +01:00
## Bevezetés
Az API használatához regisztráció után generálni kell egy kulcsot. Ez a
Beállítások -> API menüből érhető el. A generált kulcsot tartsa titokban!
Míg API kulccsal nem lehet bejelentkezni a webes felületen, az API felületen a
legtöbb funkció elérhető. A kulcs felhasználásával lehetőség nyílik többek
2017-12-04 13:31:35 +01:00
között feliratkozók hozzáadására, törlésére.
2017-12-04 13:26:31 +01:00
## API URL
2017-12-04 13:31:35 +01:00
Az URL kulcsgenerálás után ugyan azon a felületen lesz látható.
2017-12-04 13:31:55 +01:00
`Példa: http://example.org/a/<gyár>?key=<kulcs>
2021-01-31 21:04:11 +01:00
Ahol: example.org - szolgáltató, <gyár> - részegység, <kulcs> - API kulcs
2017-12-04 13:31:35 +01:00
2017-12-04 13:26:31 +01:00
### Feliratkozó hozzáadása
Feliratkozó hozzáadása esetén tudni kell a lista azonosítóját. Ez a webes
felületre történő belépés után a Listák menüpontban a kettőskereszt oszlopban
2017-12-04 13:31:35 +01:00
látható. A feliratkozást végző gyár: subscribe
A kérés a következőképpen alakul:
`POST: http://example.org/a/subscribe?key=<kulcs>`
2017-12-04 13:41:03 +01:00
`DATA: list=<id>&name=<Feliratkozó neve>&email=<Feliratkozó E-mail>&activated=<1|0>`
2017-12-04 13:26:31 +01:00
Az activated paraméter 1-es állásban megerősítettként rögzíti a feliratkozót,
2021-09-20 12:34:39 +02:00
míg 0 állásban küld megerősítő hivatkozást a megadott címre.
(Opcionális) Feliratkozó nevének módosítása: `forcenamechange=<1|0>`
2017-12-04 13:34:43 +01:00
#### Várható válaszok
Sikeres feliratkozás: `success`, Sikertelen feliratkozás: `sub_error`,
2021-02-11 14:28:18 +01:00
Nincs MX rekord: `no_mx_record` (ez lehet átmeneti hiba is),
2017-12-04 13:34:43 +01:00
Rossz lista azonosító: `bad_list`, Sikertelen regisztráció: `reg_error`
2018-02-14 11:46:20 +01:00
### Feliratkozó eltávolítása listáról
Feliratkozó eltávolításához szükségünk van a lista azonosítójára és a feliratkozó
e-mail címére.
2018-02-14 15:21:04 +01:00
A leiratkozást végző gyár: unsubscribe
2018-02-14 11:46:20 +01:00
A kérés a következőképpen alakul:
`POST: http://example.org/a/unsubscribe?key=<kulcs>`
`DATA: list=<id>&email=<Feliratkozó E-mail>`
#### Várható válaszok
Sikeres leiratkozás: `success`, Sikertelen leiratkozás: `unsub_error`,
Ismeretlen E-mail cím: `unknown_email`, Hiányzó paraméterek: `missing_parameters`
2018-02-14 15:21:04 +01:00
2019-04-08 10:25:53 +02:00
### Lista létrehozás
Levelezőlista létrehozására alkalmas.
A listát kezelő gyár: list
A kérés a következőképpen alakul:
`POST: http://example.org/a/list?key=<kulcs>`
`DATA: new&name=<Lista neve>`
#### Várható válaszok
Sikeres kérés: `success`, Sikertelen kérés: `failed`,
Nem megfelelő név: `bad_name`
### Lista törlése
Levelezőlista törlésére alkalmas.
A listát kezelő gyár: list
A kérés a következőképpen alakul:
`POST: http://example.org/a/list?key=<kulcs>`
`DATA: remove&id=<Lista ID>`
#### Várható válaszok
Sikeres kérés: `success`, Sikertelen kérés: `failed`
### Listák lekérdezése
Levelezőlisták lekérdezésére alkalmas.
A listát kezelő gyár: list
A kérés a következőképpen alakul:
`POST: http://example.org/a/list?key=<kulcs>`
`DATA: get`
#### Várható válaszok
Sikeres kérés: -tömb-
### Levél létrehozás
Levelek létrehozására alkalmas.
A leveleket kezelő gyár: newsletter
A kérés a következőképpen alakul:
2019-04-08 10:32:42 +02:00
`POST: http://example.org/a/newsletter?key=<kulcs>`
2019-04-08 10:25:53 +02:00
`DATA: new&subject=<Levél tárgya>&message=<Levél HTML tartalma>&message_text=<Levél TEXT tartalma>`
#### Várható válaszok
Sikeres kérés: `success`, `id`, Sikertelen kérés: `failed`,
Nem megfelelő tárgy: `bad_subject`, Túl hosszú üzenet: `message_too_powerful`,
Túl rövid üzenet: `message_too_short`
### Levél küldése
Levelek küldésére alkalmas.
A leveleket kezelő gyár: newsletter
A kérés a következőképpen alakul:
2019-04-08 10:32:42 +02:00
`POST: http://example.org/a/newsletter?key=<kulcs>`
2019-04-08 10:25:53 +02:00
`DATA: send&id=<Levél ID>&start=<Unix timestamp vagy 0 azonnal>`
#### Várható válaszok
Sikeres kérés: `success`, Már várólistán: `already_queued`, Sikertelen kérés: `failed`
### Levelek listázása
Levelek listázására alkalmas.
A leveleket kezelő gyár: newsletter
A kérés a következőképpen alakul:
2019-04-08 10:32:42 +02:00
`POST: http://example.org/a/newsletter?key=<kulcs>`
2019-04-08 10:25:53 +02:00
`DATA: get`
#### Várható válaszok
2019-04-08 10:32:42 +02:00
Sikeres kérés: -tömb-
### Kampány létrehozása
Kampányok létrehozására alkalmas.
A leveleket kezelő gyár: campaign
A kérés a következőképpen alakul:
`POST: http://example.org/a/campaign?key=<kulcs>`
`DATA: new&name=<Kampány neve>`
#### Várható válaszok
Sikeres kérés: `success`, `id`, Sikertelen kérés: `failed`
### Kampány törlése
Kampányok törlésére alkalmas.
A leveleket kezelő gyár: campaign
A kérés a következőképpen alakul:
`POST: http://example.org/a/campaign?key=<kulcs>`
`DATA: remove&id=<Kampány ID>`
#### Várható válaszok
Sikeres kérés: `success`, Sikertelen kérés: `failed`
### Kampány frissítése (csatolás)
Kampányok listához történő csatolására alkalmas.
A leveleket kezelő gyár: campaign
A kérés a következőképpen alakul:
`POST: http://example.org/a/campaign?key=<kulcs>`
`DATA: update&id=<Kampány ID>&lists=<Array of ListIDs>`
#### Várható válaszok
Sikeres kérés: `success`, Sikertelen kérés: `failed`
### Kampány csatolása levélhez
Kampányok levélhez történő csatolására alkalmas.
A leveleket kezelő gyár: campaign
A kérés a következőképpen alakul:
`POST: http://example.org/a/campaign?key=<kulcs>`
2020-03-02 12:34:14 +01:00
`DATA: relations&campaign=<Kampány ID1,ID2,ID3>&newsletter=<Levél ID>`
2019-04-08 10:32:42 +02:00
#### Várható válaszok
Sikeres kérés: `success`, Sikertelen kérés: `failed`
2019-04-08 10:25:53 +02:00
2019-04-02 14:43:10 +02:00
### E-mail küldése
Egyéni e-mail küldését, valamint annak sikerességének vizsgálatát teszi lehetővé.
Az üzenet HTML és Plain text formában kerül kiküldésre. Ha a `message_text` értéke
üres, a HTML formátumú levél tartalmával minusz HTML tag-ek lesz azonos. Az üzenet
2019-04-08 10:32:42 +02:00
csak a HTML body részét tartalmazza! Nagy mennyiségű üzenet küldésére használja a
newsletter, list és campaigns gyárakat!
2019-04-02 14:43:10 +02:00
A küldést és ellenőrzést végző gyár: send
A kérés a következőképpen alakul:
`POST: http://example.org/a/send?key=<kulcs>`
`DATA: to=<subscriber ID vagy Email cím>&subject=<Tárgy>&message=<Üzenet HTML formában>&message_text=<Üzenet TXT formában>`
2019-04-02 14:50:59 +02:00
#### Várható válaszok
Sikeres sorbaállítás: `message_queued`, `id`, Nem található feliratkozó: `subscriber_not_found`,
Sikertelen fekiratkozó mentés: `subscriber_error`, Sikertelen sorbaállítás: `message_failed`,
Csomagkorlát elérve: `quota_reached`, Hiányzó paraméter: `missing_parameter`
### E-mail küldés ellenőrzés
A send gyáron keresztül küldött levelek ellenőrzésére alkalmas. A kimenő levelek
pixel2 lekérésének idejét, a küldés befejezésének idejét és a sikerességét tudja.
`GET: http://example.org/a/send?key=<kulcs>`
`DATA: just_asking=<id>`
#### Várható válaszok
Sikeres lekérdezés: (status)`success/failed`, `read`, `to`, `time`
Sikertelen lekérdezés: `wrong_id`
2019-04-02 14:43:10 +02:00
2018-02-14 15:21:04 +01:00
### Belépés távolról
Lehetőség van távoli belépésre. Ilyenkor felhasználói név és jelszó megadása
nélkül is lehetőség adódik az adminisztrációs felület elérésére. Az API kérés
egy véletlenszerű kulcsot ad vissza, amit a http://example.org/ oldalnak kell
elküldeni böngészőből.
A belépést végző gyár: login
A kérés a következőképpen alakul:
`POST: http://example.org/a/login?key=<kulcs>`
`DATA: rkey=<véletlenszerű string>`
#### Várható válaszok
Sikeres token generálás: `success` és `token`