# EmailOctopus > EmailOctopus is an affordable email-marketing platform for newsletters, campaigns, automations and audience management. Its v2 REST API is served from a single host, https://api.emailoctopus.com, authenticated with a Bearer API key, and covers lists, contacts, custom fields, tags, campaigns, campaign reports and automation enqueueing. EmailOctopus publishes a real OpenAPI 3.1.0 document for the API and a documented, HMAC-signed webhook event surface. Generated by API Evangelist from the provider's published OpenAPI and documentation. EmailOctopus does not serve an /llms.txt of its own (https://emailoctopus.com/llms.txt returned 404 on 2026-08-13). ## Quick facts - Base URL: https://api.emailoctopus.com (no version segment in the path) - Auth: `Authorization: Bearer {api_key}` — create a key at https://api.emailoctopus.com/developer/api-keys/create - Current version: v2, launched 2024-10-07. API keys created before that date are legacy and will not authenticate against v2. - Rate limit: token bucket — 10 requests/second sustained, burst of 100. HTTP 429 on exhaustion. - Pagination: cursor. `limit` + `starting_after`; results in `data`, cursor in `paging.next.starting_after`. Max 100 per page. - Errors: RFC 7807 envelope `{type, title, detail, status}`; 422 adds an `errors[]` array with JSON Pointers. Served as `application/json`. - Idempotency: none. No Idempotency-Key contract. Use `PUT /lists/{list_id}/contacts` (upsert) for safe retries. - Webhooks: 8 contact event types, signed with `EmailOctopus-Signature` (HMAC-SHA256, `sha256=` prefix). ## APIs - [EmailOctopus v2 API reference and OpenAPI](https://emailoctopus.com/api-documentation/v2): The v2 reference. This URL returns the raw OpenAPI 3.1.0 JSON when requested with a JSON Accept. - [EmailOctopus v1 API (legacy)](https://emailoctopus.com/api-documentation): Legacy, no longer actively maintained; still functional for pre-2024-10-07 keys. ## Specs - [OpenAPI 3.1.0 (verbatim harvest)](openapi/_original/emailoctopus-v2-openapi.json): 15 paths, 25 operations, 19 schemas. - [List API](openapi/emailoctopus-list-api-openapi.yml): 5 operations. - [Contact API](openapi/emailoctopus-contact-api-openapi.yml): 7 operations. - [Campaign API](openapi/emailoctopus-campaign-api-openapi.yml): 5 operations. - [Tag API](openapi/emailoctopus-tag-api-openapi.yml): 4 operations. - [Field API](openapi/emailoctopus-field-api-openapi.yml): 3 operations. - [Automation API](openapi/emailoctopus-automation-api-openapi.yml): 1 operation. ## Operations Lists: `api_lists_get`, `api_lists_post`, `api_lists_list_id_get`, `api_lists_list_id_put`, `api_lists_list_id_delete` Contacts: `api_lists_list_idcontacts_get`, `api_lists_list_idcontacts_post`, `api_lists_list_idcontacts_put`, `api_lists_list_idcontactsbatch_put`, `api_lists_list_idcontacts_contact_id_get`, `api_lists_list_idcontacts_contact_id_put`, `api_lists_list_idcontacts_contact_id_delete` Fields: `api_lists_list_idfields_post`, `api_lists_list_idfields_tag_put`, `api_lists_list_idfields_tag_delete` Tags: `api_lists_list_idtags_get`, `api_lists_list_idtags_post`, `api_lists_list_idtags_tag_put`, `api_lists_list_idtags_tag_delete` Campaigns: `api_campaigns_get`, `api_campaigns_campaign_id_get`, `api_campaigns_campaign_idreportssummary_get`, `api_campaigns_campaign_idreportslinks_get`, `api_campaigns_campaign_idreports_get` Automations: `api_automations_automation_idqueue_post` ## Artifacts - [Authentication profile](authentication/emailoctopus-authentication.yml) - [API conventions](conventions/emailoctopus-conventions.yml) - [Error catalog (RFC 7807)](errors/emailoctopus-problem-types.yml) - [Webhook event catalog](asyncapi/emailoctopus-webhooks.yml) - [Data model](data-model/emailoctopus-data-model.yml) - [Lifecycle and versioning](lifecycle/emailoctopus-lifecycle.yml) - [Rate limits](rate-limits/emailoctopus-rate-limits.yml) - [Plans and pricing](plans/emailoctopus-plans-pricing.yml) - [Packages and client libraries](packages/emailoctopus-packages.yml) - [Conformance](conformance/emailoctopus-conformance.yml) - [Embeddable components](components/emailoctopus-components.yml) - [Domain security probe](security/emailoctopus-domain-security.yml) - [Well-known probe (all 404)](well-known/emailoctopus-well-known.yml) - [Agent skills](skills/_index.yml) ## Docs - [Developer documentation (v2)](https://emailoctopus.com/api-documentation/v2) - [Knowledge base](https://help.emailoctopus.com) - [API limits](https://help.emailoctopus.com/article/91-api-limits) - [Webhooks](https://help.emailoctopus.com/article/314-webhooks) - [SDKs and libraries](https://help.emailoctopus.com/article/93-sdks-and-libraries) - [Pricing](https://emailoctopus.com/pricing) - [Status page](https://status.emailoctopus.com) - [Terms of service](https://emailoctopus.com/legal/terms) - [Privacy policy](https://emailoctopus.com/legal/privacy) - [GDPR](https://emailoctopus.com/legal/gdpr) ## Not published EmailOctopus does not publish: an official client SDK, a CLI, an MCP server, an A2A agent card, an AsyncAPI document, a security.txt or any /.well-known/ document, a trust center or named certifications, a public Postman workspace, a sandbox/test mode, a dated developer changelog, or a public roadmap. Every one of these was probed on 2026-08-13 and recorded as absent rather than assumed.