Tento balíček poskytuje moderní a flexibilní Node.js API wrapper pro práci se službou Ecomail. Wrapper je postaven na JavaScriptu (ES6 třídy, async/await) a využívá knihovnu axios pro HTTP požadavky. Díky jednoduchému rozhraní můžete snadno spravovat seznamy kontaktů, kampaně, automatizace a další funkce Ecomail API.
-
Seznamy (Lists)
-
Načítání, vytváření, aktualizace a získávání detailů seznamů
-
Přihlašování a odhlašování odběratelů
-
-
Odběratelé (Subscribers)
- Získávání detailů odběratelů, hromadné přihlašování, aktualizace a odstranění
-
Kampaně (Campaigns)
- Vytváření, aktualizace, odeslání kampaní a získávání statistik
-
Automatizace (Automations)
- Správa pipeline automatizací, spouštění akcí a získávání statistik
-
Další funkce
- Správa šablon, domén, transakčních e-mailů, transakcí, feedů, sledovacích událostí, vyhledávání a slevových kupónů
Balíček nainstalujete pomocí npm:
npm install ecomail-nodeNíže je uveden jednoduchý příklad, jak použít tento API wrapper:
const Ecomail = require('ecomail-node');
// Vytvoření instance s vaším API klíčem a volitelným nastavením
const ecomail = new Ecomail('your-api-key', {
defaultQuery: {},
responseType: 'json',
server: 'https://api2.ecomailapp.cz',
});
// Příklad: Načtení všech seznamů
(async () => {
try {
const lists = await ecomail.fetchLists();
console.log('Seznamy:', lists);
} catch (error) {
console.error('Chyba při načítání seznamů:', error);
}
})();-
fetchLists()-- Načte všechny seznamy. -
createList(data)-- Vytvoří nový seznam s předanými daty. -
getList(listId)-- Získá detail konkrétního seznamu. -
updateList(listId, data)-- Aktualizuje existující seznam. -
fetchSubscribers(listId)-- Načte odběratele pro daný seznam. -
subscribe(listId, data)-- Přihlásí odběratele do seznamu.
-
getSubscriber(listId, email)-- Získá detail odběratele v daném seznamu. -
getSubscriberList(email)-- Získá globální informace o odběrateli. -
removeSubscriber(listId, data)-- Odhlásí odběratele ze seznamu. -
updateSubscriber(listId, data)-- Aktualizuje údaje odběratele. -
addSubscriberBulk(listId, data)-- Hromadně přihlásí odběratele. -
deleteSubscriber(email)-- Odstraní odběratele. -
getSubscriberByEmail(email)-- Získá odběratele podle emailu.
-
listCampaigns(filters)-- Načte seznam kampaní (s volitelnými filtry). -
addCampaign(data)-- Vytvoří novou kampaň. -
updateCampaign(campaignId, data)-- Aktualizuje kampaň. -
sendCampaign(campaignId)-- Odesílá kampaň. -
getCampaignStats(campaignId)-- Získá statistiky kampaně. -
getCampaignStatsDetail(campaignId, queryParams)-- Získá detailní statistiky kampaně.
-
listAutomations()-- Načte seznam automatizací. -
triggerAutomation(automationId, data)-- Spustí automatizaci. -
getPipelineStats(pipelineId)-- Získá statistiky automatizace. -
getPipelineStatsDetail(pipelineId, queryParams)-- Získá detailní statistiky automatizace.
-
createTemplate(data)-- Vytvoří novou šablonu. -
listDomains()-- Načte seznam domén. -
createDomain(data)-- Vytvoří novou doménu. -
deleteDomain(id)-- Odstraní doménu. -
sendTransactionalEmail(data)-- Odesílá transakční e-mail. -
sendTransactionalTemplate(data)-- Odesílá transakční šablonu. -
getTransactionalStats()-- Získá statistiky transakčních e-mailů. -
getTransactionalStatsDOI()-- Získá statistiky DOI transakčních e-mailů. -
createNewTransaction(data)-- Vytvoří novou transakci. -
createBulkTransactions(data)-- Vytvoří transakce hromadně. -
updateTransaction(transactionId, data)-- Aktualizuje transakci. -
deleteTransaction(transactionId)-- Odstraní transakci. -
refreshProductFeed(feedId)-- Obnoví produktový feed. -
refreshDataFeed(feedId)-- Obnoví datový feed. -
addEvent(data)-- Přidá sledovanou událost. -
search(query)-- Provede vyhledávání. -
importCoupons(data)-- Importuje slevové kupóny. -
deleteCoupons(data)-- Odstraní slevové kupóny. -
page(page)-- Přidá query parametrpagepro stránkování. -
joinString(...args)-- Spojí předané řetězce.
Balíček používá Jest pro jednotkové testy. Pro spuštění testů postupujte následovně:
- Nainstalujte závislosti:
npm install- Spusťte testy:
npm testTesty jsou rozděleny do jednotlivých souborů podle funkčních oblastí (např. lists.test.js, campaigns.test.js, automations.test.js atd.). Pro vývoj a úpravy se doporučuje používat režim sledování změn:
npm test -- --watchMáte-li nápady na vylepšení, problémy nebo návrhy na rozšíření funkcí, neváhejte otevřít issue nebo pull request. Vaše příspěvky jsou vítány!