1. Integrations
mailfloss API
  • Verification
    • Verify a single email address
      GET
  • Batch
    • Submit a batch of emails for async verification
      POST
    • Get batch job status
      GET
    • Get batch job results (paginated)
      GET
    • Cancel a batch verification job
      POST
    • List verification jobs
      GET
    • Get a verification job
      GET
  • Account
    • Account activity timeline
      GET
    • Verify an API key
      GET
    • Read the authenticated account holder
      GET
    • Update the authenticated account holder
      PATCH
    • Read the authenticated organization
      GET
  • Team
    • List team members
      GET
    • Get the account owner as a team member
      GET
    • Get a team member
      GET
  • Reports
    • Get verification usage analytics
  • Webhooks
    • List webhook subscriptions
    • Create a webhook subscription
    • Get a webhook subscription
    • Update a webhook subscription
    • Delete a webhook subscription
  • Integrations
    • List all integrations (connected + disconnected)
      GET
    • Read one integration with all of its connections
      GET
    • Connect a new connection (with credentials)
      POST
    • Read one connection
      GET
    • Update a connection's settings
      PATCH
    • Disconnect a connection
      DELETE
    • Re-sync a connection's audiences
      POST
    • Test a connection's credentials
      POST
    • List a connection's keyword rules
      GET
    • Add keyword rules
      POST
    • Delete a keyword rule
      DELETE
  • Privacy
    • Erase stored verification records (data privacy)
  • Schemas
    • ErrorEnvelope
  1. Integrations

Connect a new connection (with credentials)

POST
/v1/integrations/{type}/connections
Creates a brand-new connection for the ESP type with fresh credentials. The credentials shape depends on type; the single-key ESPs currently connectable via the API (Klaviyo, MailerLite) take { "credentials": { "api_key": "..." }, "name"?: "..." }. The key is validated against the ESP live before anything is stored (a rejected key → 400 invalid_credentials, nothing written), then encrypted at rest; it is never returned. On success returns 201 with the new connection in the same shape as GET /v1/integrations/{type}/connections/{id}. A valid ESP slug that cannot be connected via the API yet (OAuth ESPs, or ESPs not wired) → 422 unsupported_integration (connect it in the dashboard); an unknown slug → 404. (org, type) is 1:N, so this always creates a new connection. Honors Idempotency-Key (a retried POST with the same key replays the original 201 instead of creating a duplicate).

Request

Authorization
Bearer Token
Provide your bearer token in the
Authorization
header when making requests to protected resources.
Example:
Authorization: Bearer ********************
or
Path Params

Header Params

Body Params application/json

Examples

Responses

🟢201
application/json
Connection created
Bodyapplication/json

🟠400
🟠401
🟠403
🟠404
🟠409
🟠422
🟠429
🔴500
🔴503
Request Request Example
Shell
JavaScript
Java
Swift
curl --location 'https://api.mailfloss.com/v1/integrations//connections' \
--header 'Idempotency-Key;' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
    "name": "string",
    "credentials": {
        "api_key": "string"
    }
}'
Response Response Example
201 - Success
{
    "id": "conn_5d4c3b2a1e0f9z",
    "name": "Main Marketing List",
    "status": "active",
    "created_at": "2026-02-10T14:20:00Z",
    "last_synced_at": null,
    "settings": {
        "aggressiveness": "normal",
        "manual_mode": false,
        "autofloss": true,
        "decay_protection": true,
        "instafloss": false,
        "action": "unsubscribe",
        "checks": {
            "disposable": true,
            "nonexistent": true,
            "deactivated": true,
            "inbox_full": true,
            "bounced": true,
            "banned_words": true,
            "role_based": true,
            "complainers": true,
            "spam": true,
            "failed_exchange": true,
            "unverified": true,
            "accept_all": false
        },
        "blacklist_count": 5,
        "whitelist_count": 2
    }
}
Modified at 2026-10-20 13:54:45
Previous
Read one integration with all of its connections
Next
Read one connection
Built with