This project is a simple learning repo for integrating the latest Loops JavaScript SDK in a Next.js App Router app.
- Install dependencies:
npm install- Add your API key:
export LOOPS_API_KEY="your-api-key"- Run locally:
npm run devGET /api/health- test API key (loops.testApiKey())POST /api/contacts- upsert contact (loops.updateContact())GET /api/contacts- find byemailoruserId(loops.findContact())DELETE /api/contacts- delete byemailoruserId(loops.deleteContact())GET /api/lists- list mailing lists (loops.listMailingLists())GET /api/properties- list contact properties (loops.listContactProperties())POST /api/properties- create contact property (loops.createContactProperty())POST /api/events- send an event (loops.sendEvent())GET /api/transactional- list transactional emails (loops.listTransactionalEmails())POST /api/transactional- send transactional email (loops.sendTransactionalEmail())
- Shows clean server-side SDK usage with Next.js route handlers.
- Includes practical error handling for validation, API errors, and rate limits.
- Includes a small UI (
/) so users can try endpoints without writing scripts first.
- Campaign creation/editing (
createCampaign,updateEmailMessage) to demonstrate LMX workflows. - Upload flow (
createUpload,completeUpload) for email assets. - Suppression flows (
checkContactSuppression,removeContactSuppression) for compliance support. - Optional idempotency examples in webhook-like routes for safe retries.