Integrations & Webhooks

Connect Mailneo with your favorite tools to sync data, trigger automations, and streamline your workflow. This guide covers available integrations, webhooks, and the public API.

Available Integrations

Data & Productivity

Google Sheets

Two-way sync contacts with spreadsheets

Notion

Sync databases and create records

Airtable

Connect bases for contact management

Automation Platforms

Zapier

Connect to 5000+ apps via Zaps

Make (Integromat)

Build complex automation scenarios

n8n

Self-hosted workflow automation

E-commerce & Payments

Shopify

Import customers, trigger on purchases

Gumroad

Sync buyers, automate post-purchase

Polar

Subscription and payment events

Forms & Landing Pages

Typeform

Add respondents as subscribers

Tally

Sync form submissions

Setting Up Integrations

OAuth Integrations

  1. Go to Settings → Integrations.
  2. Find the integration you want and click "Connect".
  3. Authorize Mailneo in the provider's OAuth flow.
  4. Configure sync settings (what data to sync, frequency).
  5. Enable the integration to start syncing.

API Key Integrations

  1. Generate an API key in the external service.
  2. Go to Settings → Integrations in Mailneo.
  3. Paste the API key in the configuration.
  4. Test the connection.
  5. Configure sync options and save.

Webhooks

Webhooks allow real-time communication between Mailneo and external systems. Send data out on events or receive data from other services.

Outgoing Webhooks

Send HTTP requests when events occur in Mailneo:

  • New subscriber added
  • Subscriber unsubscribes
  • Email opened or clicked
  • Campaign completed
  • Tag added/removed
  • Custom field updated

Creating Outgoing Webhooks

  1. Go to Settings → Webhooks → Create Webhook.
  2. Enter the destination URL.
  3. Select which events should trigger the webhook.
  4. Choose HTTP method (POST, PUT, etc.).
  5. Optionally add custom headers or authentication.
  6. Save and test the webhook.

Webhook Payload

Webhooks send JSON data with event details:

{
  "event": "subscriber.created",
  "timestamp": "2024-12-31T10:00:00Z",
  "data": {
    "email": "john@example.com",
    "firstName": "John",
    "tags": ["new-subscriber"]
  }
}

Incoming Webhooks

Receive data from external services:

  • Each webhook has a unique URL you provide to external services
  • Supports signature verification for security
  • Can trigger automations on receipt
  • Logs all incoming requests for debugging

Webhook Security

  • Use HTTPS endpoints only
  • Verify webhook signatures when available
  • Implement idempotency for duplicate requests
  • Set up retry handling for failed deliveries

Public API

API Overview

The Mailneo API allows programmatic access to:

  • Contacts: Create, read, update, delete
  • Campaigns: Create and manage campaigns
  • Newsletters: Manage lists and subscribers
  • Tags: Apply and remove tags
  • Analytics: Retrieve campaign metrics

Authentication

Use API keys for authentication:

  1. Go to Settings → API Keys.
  2. Click "Create API Key" and name your key.
  3. Copy the key (it won't be shown again).
  4. Include in requests: Authorization: Bearer YOUR_API_KEY

Rate Limiting

  • Default limit: 100 requests per minute
  • Rate limit headers included in responses
  • 429 status returned when limit exceeded
  • Higher limits available on Business plans

Example Request

curl -X POST https://api.mailneo.co/v1/contacts \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "email": "john@example.com",
    "firstName": "John",
    "tags": ["api-import"]
  }'

Integration Events

Events That Trigger Automations

Integration events can start workflows:

  • Form submission (Typeform, Tally)
  • Purchase completed (Shopify, Gumroad)
  • Subscription created/cancelled (Polar)
  • Payment failed (Polar)
  • Data synced from integration
  • Custom webhook received

Set up integration-triggered automations →

Troubleshooting

Common Issues

Integration disconnected

OAuth tokens can expire. Go to Settings → Integrations and click "Reconnect" to re-authorize.

Webhook not receiving data

Check the webhook URL is correct and accessible. Review webhook logs for errors. Ensure your server returns 2xx status.

Data not syncing

Verify the integration is enabled. Check sync settings for filters that might exclude data. Review the sync log for errors.

API rate limited

Implement exponential backoff in your code. Batch requests where possible. Consider upgrading for higher limits.

Next Steps