Everything an AI agent can do with the beehiiv API.

A reference guide for building AI agents: every method, how to authenticate, and the permissions each one needs.

Endpoints35
API versionv2
Last updated23 June 2026
Orientation

How the beehiiv API works.

The beehiiv API is how an app or AI agent works with a beehiiv publication: adding a subscriber, reading a newsletter post, building an audience segment, or enrolling someone into an automation. Access is granted through an API key sent as a Bearer token, or an OAuth token whose scopes set which areas a call can read or write, and either is tied to one organization and its publications. beehiiv treats its major version as a long-lived contract and can push events to a registered endpoint when activity happens.

35Endpoints
9Capability groups
20Read
15Write
16Permissions
Authentication
beehiiv authenticates a call with a Bearer token in the Authorization header. A raw API key is created in workspace settings and carries full access to the organization it belongs to, with no per-endpoint scope of its own. For a third-party integration, beehiiv recommends OAuth instead, where the access token carries scopes like subscriptions:read or posts:write that limit what it can reach.
Permissions
Each method documents one OAuth scope, named area:read or area:write, such as subscriptions:write, posts:read, or segments:write. Those scopes apply to OAuth tokens and bound what an integration can do. A plain API key has no granular scopes, so it reaches every area in its organization, which is why a governing layer in front of it matters.
Scope of a key
Calls are made against a single publication, identified by a publication id in the path, and a key or token belongs to one organization that may own several publications. There is no per-database or per-channel boundary inside a publication, so access is at the level of the whole publication and the areas a token's scopes allow.
Versioning
The API carries one major version, v2, in the request path. beehiiv treats v2 as a long-lived contract and states it will not introduce breaking changes or deprecations without advance notice, so an integration can add fields and methods over time without its existing calls breaking.
Connect & authenticate

Connection & authentication methods.

How an app or AI agent connects to beehiiv determines what it can reach. There is a route for making calls, a route for receiving events, and a hosted server that exposes beehiiv tools to agents, and each is governed by the key or token behind it and the publication it is tied to.

Ways to connect

REST API

The REST API takes JSON request bodies, returns JSON, and pages through lists with page and limit parameters, at https://api.beehiiv.com/v2. Most calls name a single publication by its id in the path. A call authenticates with a Bearer token in the Authorization header, either an API key or an OAuth access token.

Best forConnecting an app or AI agent to beehiiv.
Governed byThe key or token and, for OAuth, the scopes it carries.
Docs ↗

Webhooks

beehiiv POSTs an event to an HTTPS endpoint registered on a publication when something happens, like subscription.created or post.sent. Endpoints are created and managed through the webhooks methods, and an integration subscribes to the event types it cares about so it reacts to activity without polling.

Best forReceiving beehiiv events at an app or AI agent.
Governed byThe endpoint registered on the publication.
Docs ↗

MCP server

A first-party Model Context Protocol server connects a beehiiv account to AI clients like Claude and ChatGPT. It launched in March 2026 with read-only access, covering content, subscribers, analytics, automations, and more, with write actions on paid plans. It is connected and managed from beehiiv workspace settings rather than by holding a raw API key in the agent.

Best forConnecting an AI agent to beehiiv through MCP.
Governed byThe workspace MCP connection and the plan's read or write access.
Docs ↗
Authentication

API key

An API key is created in beehiiv workspace settings and sent as a Bearer token in the Authorization header. It carries full access to the organization it belongs to and has no per-endpoint scopes, so it can call every area on every publication in that organization. It must be kept secret and never exposed in client code.

TokenBearer API key
Best forServer-side calls for a single owner's own organization.
Docs ↗

OAuth 2.0

For an integration built for other people, beehiiv recommends OAuth instead of an API key. The resulting access token is sent as a Bearer token and carries scopes, named area:read or area:write such as subscriptions:write or posts:read, that limit which areas the token can reach. This is the granular permission model the per-method scopes in this reference describe.

TokenOAuth access token with area:read / area:write scopes
Best forIntegrations distributed to other beehiiv accounts.
Docs ↗
Capability map

What an AI agent can do in beehiiv.

The beehiiv API is split into areas an agent can act on, like a publication's posts, its subscriptions, segments, custom fields, automations, and paid tiers. Each area has its own methods, and writes in some areas add or remove real subscribers and publish real newsletters.

Endpoint reference

Every beehiiv API method.

Filter by method, access, or permission, or search any path. Select a row for version detail, rate limits, the related webhook event, and the source.

MethodEndpointWhat it doesAccessPermissionVersion

Publications

Methods for listing and reading the publications a token can reach.2

Read-only. A raw API key reaches every publication in its organization.

Acts onpublication
Permission (capability)publications:read
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Read-only.

Acts onpublication
Permission (capability)publications:read
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Posts

Methods for working with newsletter posts and their stats.5

Read-only.

Acts onpost
Permission (capability)posts:read
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Read-only.

Acts onpost
Permission (capability)posts:read
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Read-only; supports filtering by audience, platform, status, and author.

Acts onpost
Permission (capability)posts:read
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Builds the email from content blocks; can send or schedule the newsletter.

Acts onpost
Permission (capability)posts:write
VersionAvailable since the API’s base version
Webhook eventpost.sent
Rate limitStandard limits apply

A confirmed post becomes archived; a draft is permanently deleted.

Acts onpost
Permission (capability)posts:write
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Subscriptions

Methods for working with a publication's subscribers.8

Read-only; returns subscriber records page by page.

Acts onsubscription
Permission (capability)subscriptions:read
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Read-only.

Acts onsubscription
Permission (capability)subscriptions:read
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Read-only; the email lookup returns the subscriber record.

Acts onsubscription
Permission (capability)subscriptions:read
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

email is required; can reactivate a previously unsubscribed address.

Acts onsubscription
Permission (capability)subscriptions:write
VersionAvailable since the API’s base version
Webhook eventsubscription.created
Rate limitStandard limits apply

A core write to a real subscriber.

Acts onsubscription
Permission (capability)subscriptions:write
VersionAvailable since the API’s base version
Webhook eventsubscription.upgraded
Rate limitStandard limits apply

Same write as the id form, keyed on email.

Acts onsubscription
Permission (capability)subscriptions:write
VersionAvailable since the API’s base version
Webhook eventsubscription.upgraded
Rate limitStandard limits apply

Removes the subscriber from the publication.

Acts onsubscription
Permission (capability)subscriptions:write
VersionAvailable since the API’s base version
Webhook eventsubscription.deleted
Rate limitStandard limits apply

Tags a real subscriber for later segmentation.

Acts onsubscription_tag
Permission (capability)subscriptions:write
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Segments

Methods for building and reading audience segments.6

Read-only.

Acts onsegment
Permission (capability)segments:read
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Read-only.

Acts onsegment
Permission (capability)segments:read
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Read-only; returns email addresses and custom fields.

Acts onsegment_member
Permission (capability)segments:read
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Read-only; a lightweight array of ids without subscriber detail.

Acts onsegment_member
Permission (capability)segments:read
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

A dynamic segment built on custom field filters updates as values change.

Acts onsegment
Permission (capability)segments:write
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Removes the segment; it does not delete the subscribers in it.

Acts onsegment
Permission (capability)segments:write
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Custom Fields

Methods for the custom fields stored on subscribers.4

Read-only.

Acts oncustom_field
Permission (capability)custom_fields:read
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Read-only.

Acts oncustom_field
Permission (capability)custom_fields:read
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Adds a field to the publication's subscriber schema.

Acts oncustom_field
Permission (capability)custom_fields:write
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Removes the field and its stored values from subscribers.

Acts oncustom_field
Permission (capability)custom_fields:write
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Automations

Methods for reading automations and enrolling subscribers.3

Read-only.

Acts onautomation
Permission (capability)automations:read
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Read-only.

Acts onautomation
Permission (capability)automations:read
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Requires the automation to have an active Add by API trigger.

Acts onautomation_journey
Permission (capability)automations:write
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Tiers

Methods for the publication's paid subscription tiers.3

Read-only.

Acts ontier
Permission (capability)tiers:read
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Read-only.

Acts ontier
Permission (capability)tiers:read
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Defines a paid offering subscribers can be placed on.

Acts ontier
Permission (capability)tiers:write
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Referral Program

Methods for reading the publication's referral program.1

Read-only.

Acts onreferral_program
Permission (capability)referral_program:read
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Webhooks

Methods for registering and managing event endpoints.3

Read-only.

Acts onwebhook
Permission (capability)webhooks:read
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Subscribes the endpoint to events like subscription.created and post.sent.

Acts onwebhook
Permission (capability)webhooks:write
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Stops event delivery to that endpoint.

Acts onwebhook
Permission (capability)webhooks:write
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply
No endpoints match those filters.
Webhooks

Webhook events.

beehiiv can notify an app when something happens in a publication, like a new subscriber confirming or a post being sent. It POSTs an event to a registered endpoint, so an integration learns about activity without polling.

EventWhat it signalsTriggered by
subscription.createdA new subscription was created on the publication, for example because an agent added a subscriber./v2/publications/{publicationId}/subscriptions
subscription.confirmedA subscriber confirmed their subscription, for example by completing double opt-in./v2/publications/{publicationId}/subscriptions
subscription.deletedA subscription was deleted or unsubscribed from the publication./v2/publications/{publicationId}/subscriptions/{subscriptionId}
subscription.upgradedA subscription moved up to a paid tier./v2/publications/{publicationId}/subscriptions/{subscriptionId}
/v2/publications/{publicationId}/subscriptions/by_email/{email}
post.sentA post was sent to the audience as an email newsletter./v2/publications/{publicationId}/posts
post.scheduledA post was scheduled to be sent at a future time./v2/publications/{publicationId}/posts
No events match that search.
Rate limits & pagination

Rate limits, pagination & request size.

beehiiv limits how fast an app can call, by a request rate measured per minute and counted across the whole organization rather than per key.

Request rate

beehiiv allows 180 requests per minute, counted across the whole organization rather than per API key, so several agents or keys sharing one organization draw down the same budget. Every response carries RateLimit-Limit, RateLimit-Remaining, and RateLimit-Reset headers showing the ceiling, what is left, and when the window resets as a Unix timestamp. Going over returns HTTP 429, and beehiiv recommends retrying with exponential backoff.

Pagination

List endpoints page through results with page and limit query parameters and return total_results and total_pages alongside the data, so an integration walks pages until it has them all. The segment results endpoint returns subscription ids only, for counting or external lookups, while the members endpoint returns full subscriber detail.

Request size

A list endpoint returns a bounded page of records set by the limit parameter rather than the whole collection at once. Post and segment payloads are built from typed fields and content blocks rather than free-form size limits, and large audiences are read page by page.

Errors

Status codes & error handling.

The status codes an agent should handle, and what to do about each.

StatusCodeMeaningWhat to do
400bad_requestThe request was malformed or carried invalid data, like a missing required field or a bad parameter.Read the message in the errors array, fix the request body or parameters, and resend. The request is not retryable as-is.
401unauthorizedNo valid Bearer token was provided, or the token is wrong or revoked.Confirm a valid API key or OAuth token is sent in the Authorization header, and rotate the key if it may be compromised.
404not_foundThe publication, subscription, or other object does not exist, or is not visible to this token.Verify the publication id and object id, and confirm the token belongs to the organization that owns them.
429too_many_requestsThe organization went over 180 requests per minute. The RateLimit-Reset header gives the Unix time the window resets.Back off and retry with exponential backoff, and smooth the request rate across the organization's keys.
500internal_server_errorAn error on beehiiv's side. It is rare.Retry with backoff, and contact beehiiv support if it persists.
Versioning & freshness

Version history.

beehiiv pins a single major version of its API in the path and treats it as a long-lived contract, promising no breaking changes or deprecations without advance notice.

Version history

What changed, and when

Latest versionv2
v2Current version
API v2 (current)

beehiiv's current major version, launched in December 2022 and carried in the request path. beehiiv treats v2 as a long-lived contract and states it will not introduce breaking changes or deprecations without advance notice, so new fields and methods are added over time without breaking existing calls.

What changed
  • Full read and write coverage of publications, posts, subscriptions, segments, custom fields, automations, tiers, and webhooks.
  • Subscriptions can be looked up by email as well as by id.
  • Long-lived contract: no breaking changes or deprecations without advance notice.
2026-03-24Feature update
First-party MCP server (read-only v1)

beehiiv released v1 of its official Model Context Protocol server, connecting a beehiiv account to AI clients like Claude and ChatGPT. It started with read-only access, letting an agent query subscribers, posts, and analytics without making changes; write actions arrived on paid plans.

2025-01-16Feature update
Send API

beehiiv added the ability to create and send posts through the API, bringing newsletter sending into existing content workflows rather than only the beehiiv editor.

2023-10-10Feature update
Webhooks

beehiiv introduced webhooks, letting an integration register an endpoint and receive events when subscriptions and posts change, instead of polling the list endpoints.

Build against v2 and expect new fields to be added without breaking existing calls.

beehiiv API product updates ↗
Questions

beehiiv API, answered.

How do I authenticate with the beehiiv API?+
Every request sends an Authorization header of the form Bearer followed by the token. The token is either an API key created in workspace settings, or an OAuth access token if the integration uses the OAuth flow. beehiiv recommends OAuth for any integration distributed to other people, because its scopes limit what the token can reach, while a raw API key has full access to its organization.
Do beehiiv API keys have per-endpoint scopes?+
A raw API key does not. It is created at the workspace level and can call every area in the organization it belongs to, so it cannot be narrowed to, say, read-only. The named scopes in the reference, like subscriptions:read or posts:write, apply to OAuth tokens. To limit what a single agent can do with a plain key, a governing layer in front of beehiiv has to enforce it.
How is the rate limit counted?+
beehiiv allows 180 requests per minute on a per-organization basis, not per key, so multiple keys or agents in the same organization share one budget. Each response includes RateLimit-Limit, RateLimit-Remaining, and RateLimit-Reset headers. Exceeding the limit returns HTTP 429, and the guidance is to back off and retry rather than keep hammering.
What does the API key give access to, a workspace or a publication?+
A key or token belongs to one organization, which can own several publications, and most calls name a single publication by its id in the path. So access is scoped to the organization for the token, and to a specific publication for each call, with no finer boundary inside a publication.
How do I get notified when something changes?+
Register a webhook on a publication and beehiiv POSTs an event to that endpoint when something happens, like subscription.created when a new subscriber is added or post.sent when a newsletter goes out. This lets an integration react to activity without polling the list endpoints.
Does beehiiv have an official MCP server for AI agents?+
Yes. beehiiv ships a first-party Model Context Protocol server that connects a beehiiv account to AI clients like Claude and ChatGPT. It launched in March 2026 starting with read-only access, with write actions on paid plans, and is managed from the workspace settings rather than by holding a raw API key in the agent.
Related

More marketing API guides for agents

What is Bollard AI?

Control what every AI agent can do in beehiiv.

Bollard AI sits between a team's AI agents and beehiiv. Grant each agent exactly the access it needs, read or write, area by area, and every call is checked and logged.

  • Set read, write, or full access per agent, never a shared beehiiv API key.
  • Denied by default, so an agent reaches only what has been explicitly allowed.
  • Every call recorded in plain English: who, what, where, and the decision.
beehiiv
Newsletter Agent
View subscribers ResourceOffReadFull use
Publish posts ActionOffReadFull use
Segments ResourceOffReadFull use
Per-agent access, set in Bollard AI, not in beehiiv