# ApresMail > ApresMail is Apresly’s newsletter workspace. Use the REST API or MCP tools to work with newsletters, subscribers and campaigns. Each authenticated action operates within the account and permissions of the credential. REST API: http://localhost:3000/api/v1, with Authorization: Bearer . MCP server (Streamable HTTP): http://localhost:3000/mcp, same key, or OAuth for apps like ChatGPT, Claude and Grok Bot. ## API and MCP - [Getting started](http://localhost:3000/docs): Make a first request and connect an AI assistant. - [Authentication](http://localhost:3000/docs/authentication): API keys, their two levels and the rate limits. - [Errors](http://localhost:3000/docs/errors): The error shape and every code. - [MCP](http://localhost:3000/docs/mcp): The MCP server, its tools and setup for ChatGPT, Claude, Grok Bot, Claude Code, Codex and Cursor. - [API reference](http://localhost:3000/docs/api): Every endpoint with its parameters and an example. - [OpenAPI document](http://localhost:3000/api/v1/openapi.json): the API as OpenAPI 3.1. - [Full reference](http://localhost:3000/llms-full.txt): every endpoint and MCP tool in Markdown. ## Help How ApresMail works, for the people who use it. - [Kampanie SMS](http://localhost:3000/help/sms): Zgody SMS, polski nadawca, planowanie i limity pilotażu. - [Email sequences](http://localhost:3000/help/sequences): Build signup journeys with delays and conditions. - [Subscribers](http://localhost:3000/help/recipients): One profile with separate newsletter subscriptions and consent. - [Signup forms](http://localhost:3000/help/signup-forms): Publish hosted or embedded forms with required email confirmation. - [Getting started](http://localhost:3000/help/getting-started): Sign in, set up your newsletter and send your first issue. - [Newsletter settings](http://localhost:3000/help/newsletters): Name, sender, website, signups and the emails new subscribers get. - [Sender addresses and domains](http://localhost:3000/help/sender-addresses): Send from the shared address, or from your own domain once its DNS records are in. - [Website and signups](http://localhost:3000/help/website): Each newsletter's website, its issue pages, and how people sign up. - [Design and themes](http://localhost:3000/help/design): Pick a theme for your website and emails, then change its colors, fonts and shapes. - [Contacts](http://localhost:3000/help/contacts): Statuses, segments, adding people by hand, unsubscribes, exports and deleting. - [Groups](http://localhost:3000/help/groups): Organize existing subscribers within each newsletter without changing consent. - [Importing contacts](http://localhost:3000/help/importing-contacts): Import a CSV, review activations and preserve existing subscription restrictions. - [List cleanup](http://localhost:3000/help/list-cleanup): What happens to contacts who stop opening: a last-chance email, then dormant. - [Writing an issue](http://localhost:3000/help/writing): The editor, pictures, moving blocks, the preview and test emails. - [Sending and scheduling](http://localhost:3000/help/sending): The checks before sending, send now or later, who gets it, first sends in steps and reports. - [Warm-up and sending pace](http://localhost:3000/help/warm-up): Why a new account sends gradually for its first 30 days, and how a send's pace is set. - [Bounces, complaints and pauses](http://localhost:3000/help/deliverability): What bounces and spam complaints do, when a send pauses and when an account is blocked. - [API and AI assistants](http://localhost:3000/help/api-and-ai): Run everything from code, or from ChatGPT, Claude and other assistants. - [Your account](http://localhost:3000/help/account): Signing in, connected apps, and deleting or restoring your account. ## Endpoints ### Campaigns - [List countdown campaigns](http://localhost:3000/docs/api#list-native-campaigns): GET /api/v1/native-campaigns (MCP tool list_native_campaigns) - [Validate a countdown destination](http://localhost:3000/docs/api#validate-native-countdown): POST /api/v1/native-campaigns/validate (MCP tool validate_native_countdown) - [List campaigns](http://localhost:3000/docs/api#list-campaigns): GET /api/v1/campaigns (MCP tool list_campaigns) - [Get a campaign](http://localhost:3000/docs/api#get-campaign): GET /api/v1/campaigns/{id} (MCP tool get_campaign) - [Get a campaign's report](http://localhost:3000/docs/api#get-campaign-report): GET /api/v1/campaigns/{id}/report (MCP tool get_campaign_report) - [Create a draft campaign](http://localhost:3000/docs/api#create-campaign): POST /api/v1/campaigns (MCP tool create_campaign) - [Update a draft campaign](http://localhost:3000/docs/api#update-campaign): PATCH /api/v1/campaigns/{id} (MCP tool update_campaign) - [Delete a draft campaign](http://localhost:3000/docs/api#delete-campaign): DELETE /api/v1/campaigns/{id} (MCP tool delete_campaign) - [Duplicate a campaign](http://localhost:3000/docs/api#duplicate-campaign): POST /api/v1/campaigns/{id}/duplicate (MCP tool duplicate_campaign) - [Send a test email](http://localhost:3000/docs/api#send-test-email): POST /api/v1/campaigns/{id}/test (MCP tool send_test_email) - [Schedule a reviewed campaign](http://localhost:3000/docs/api#schedule-campaign): POST /api/v1/campaigns/{id}/schedule (MCP tool schedule_campaign) - [Cancel a reviewed schedule](http://localhost:3000/docs/api#unschedule-campaign): POST /api/v1/campaigns/{id}/unschedule (MCP tool unschedule_campaign) - [Send a reviewed campaign now](http://localhost:3000/docs/api#send-campaign): POST /api/v1/campaigns/{id}/send (MCP tool send_campaign) - [Send a campaign to more contacts](http://localhost:3000/docs/api#send-campaign-to-more): POST /api/v1/campaigns/{id}/send-more (MCP tool send_campaign_to_more) - [Pause a reviewed campaign](http://localhost:3000/docs/api#pause-campaign): POST /api/v1/campaigns/{id}/pause (MCP tool pause_campaign) - [Resume a reviewed campaign](http://localhost:3000/docs/api#resume-campaign): POST /api/v1/campaigns/{id}/resume (MCP tool resume_campaign) - [Cancel an approved campaign](http://localhost:3000/docs/api#cancel-campaign): POST /api/v1/campaigns/{id}/cancel (MCP tool cancel_campaign) - [Update a campaign's archive page](http://localhost:3000/docs/api#update-campaign-archive): PATCH /api/v1/campaigns/{id}/archive (MCP tool update_campaign_archive) - [Preview the list cleanup of a send](http://localhost:3000/docs/api#preview-campaign-cleanup): GET /api/v1/campaigns/{id}/cleanup-preview (MCP tool preview_campaign_cleanup) - [Preview campaign audience](http://localhost:3000/docs/api#preview-campaign-audience): GET /api/v1/campaigns/{id}/audience-preview (MCP tool preview_campaign_audience) - [Prepare a campaign review](http://localhost:3000/docs/api#prepare-campaign-review): POST /api/v1/campaigns/{id}/reviews (MCP tool prepare_campaign_review) - [Get a campaign review](http://localhost:3000/docs/api#get-campaign-review): GET /api/v1/campaigns/{id}/reviews/{reviewId} (MCP tool get_campaign_review) - [List campaign review recipients](http://localhost:3000/docs/api#list-campaign-review-recipients): GET /api/v1/campaigns/{id}/reviews/{reviewId}/recipients (MCP tool list_campaign_review_recipients) - [Preview frozen campaign content](http://localhost:3000/docs/api#get-campaign-review-preview): GET /api/v1/campaigns/{id}/reviews/{reviewId}/preview (MCP tool get_campaign_review_preview) - [Approve a campaign review](http://localhost:3000/docs/api#approve-campaign-review): POST /api/v1/campaigns/{id}/reviews/{reviewId}/approve (MCP tool approve_campaign_review) ### Overview - [Get the overview](http://localhost:3000/docs/api#get-overview): GET /api/v1/overview (MCP tool get_overview) ### Newsletters - [List newsletters](http://localhost:3000/docs/api#list-newsletters): GET /api/v1/newsletters (MCP tool list_newsletters) - [Get a newsletter](http://localhost:3000/docs/api#get-newsletter): GET /api/v1/newsletters/{id} (MCP tool get_newsletter) - [Create a newsletter](http://localhost:3000/docs/api#create-newsletter): POST /api/v1/newsletters (MCP tool create_newsletter) - [Update a newsletter](http://localhost:3000/docs/api#update-newsletter): PATCH /api/v1/newsletters/{id} (MCP tool update_newsletter) - [List themes](http://localhost:3000/docs/api#list-themes): GET /api/v1/themes (MCP tool list_themes) - [Check a slug](http://localhost:3000/docs/api#check-newsletter-slug): GET /api/v1/newsletters/slugs/{slug} (MCP tool check_newsletter_slug) - [Send a test of the welcome email](http://localhost:3000/docs/api#send-welcome-test-email): POST /api/v1/newsletters/{id}/welcome-test (MCP tool send_welcome_test_email) ### SMS - [Get SMS settings](http://localhost:3000/docs/api#get-sms-settings): GET /api/v1/sms/settings (MCP tool get_sms_settings) - [List SMS senders](http://localhost:3000/docs/api#list-sms-senders): GET /api/v1/sms/senders (MCP tool list_sms_senders) - [Update SMS consent wording](http://localhost:3000/docs/api#update-newsletter-sms-consent): PUT /api/v1/newsletters/{id}/sms-consent (MCP tool update_newsletter_sms_consent) - [Get subscriber SMS preferences](http://localhost:3000/docs/api#get-subscriber-sms): GET /api/v1/subscribers/{id}/sms (MCP tool get_subscriber_sms) - [Remove subscriber SMS phone](http://localhost:3000/docs/api#remove-subscriber-sms-phone): DELETE /api/v1/subscribers/{id}/sms/phone (MCP tool remove_subscriber_sms_phone) - [Withdraw subscriber SMS consent](http://localhost:3000/docs/api#withdraw-subscriber-sms): POST /api/v1/subscribers/{id}/sms/subscriptions/{subscriptionId}/withdraw (MCP tool withdraw_subscriber_sms) ### Contacts - [Inspect proposed import recipients](http://localhost:3000/docs/api#inspect-import-recipients): POST /api/v1/contacts/import-preview (MCP tool inspect_import_recipients) - [Create subscriber import](http://localhost:3000/docs/api#create-subscriber-import): POST /api/v1/subscriber-imports (MCP tool create_subscriber_import) - [Upload subscriber import chunk](http://localhost:3000/docs/api#upload-subscriber-import-chunk): POST /api/v1/subscriber-imports/{id}/chunks (MCP tool upload_subscriber_import_chunk) - [Stage subscriber import](http://localhost:3000/docs/api#stage-subscriber-import): POST /api/v1/subscriber-imports/{id}/stage (MCP tool stage_subscriber_import) - [Preview subscriber import](http://localhost:3000/docs/api#preview-subscriber-import): POST /api/v1/subscriber-imports/{id}/preview (MCP tool preview_subscriber_import) - [Get subscriber import](http://localhost:3000/docs/api#get-subscriber-import): GET /api/v1/subscriber-imports/{id} (MCP tool get_subscriber_import) - [List subscriber imports](http://localhost:3000/docs/api#list-subscriber-imports): GET /api/v1/subscriber-imports (MCP tool list_subscriber_imports) - [Get subscriber import rows](http://localhost:3000/docs/api#get-subscriber-import-rows): GET /api/v1/subscriber-imports/{id}/rows (MCP tool get_subscriber_import_rows) - [Approve subscriber import](http://localhost:3000/docs/api#approve-subscriber-import): POST /api/v1/subscriber-imports/{id}/approve (MCP tool approve_subscriber_import) - [Apply subscriber import](http://localhost:3000/docs/api#apply-subscriber-import): POST /api/v1/subscriber-imports/{id}/apply (MCP tool apply_subscriber_import) - [Cancel subscriber import](http://localhost:3000/docs/api#cancel-subscriber-import): POST /api/v1/subscriber-imports/{id}/cancel (MCP tool cancel_subscriber_import) - [Export subscriber import report](http://localhost:3000/docs/api#export-subscriber-import-report): POST /api/v1/subscriber-imports/{id}/report (MCP tool export_subscriber_import_report) - [List contacts](http://localhost:3000/docs/api#list-contacts): GET /api/v1/contacts (MCP tool list_contacts) - [Get a contact](http://localhost:3000/docs/api#get-contact): GET /api/v1/contacts/{id} (MCP tool get_contact) - [Add a contact](http://localhost:3000/docs/api#add-contact): POST /api/v1/contacts (MCP tool add_contact) - [Change a contact's status](http://localhost:3000/docs/api#update-contact-status): PATCH /api/v1/contacts/{id} (MCP tool update_contact_status) - [Delete a contact](http://localhost:3000/docs/api#delete-contact): DELETE /api/v1/contacts/{id} (MCP tool delete_contact) - [Import contacts](http://localhost:3000/docs/api#import-contacts): POST /api/v1/contacts/import (MCP tool import_contacts) - [Export contacts](http://localhost:3000/docs/api#export-contacts): GET /api/v1/contacts/export (MCP tool export_contacts) ### Subscribers - [List subscribers](http://localhost:3000/docs/api#list-subscribers): GET /api/v1/subscribers (MCP tool list_subscribers) - [Get a subscriber](http://localhost:3000/docs/api#get-subscriber): GET /api/v1/subscribers/{id} (MCP tool get_subscriber) - [List subscriber subscriptions](http://localhost:3000/docs/api#list-subscriptions): GET /api/v1/subscribers/{id}/subscriptions (MCP tool list_subscriptions) - [List subscription groups](http://localhost:3000/docs/api#list-subscription-groups): GET /api/v1/subscriptions/{id}/groups (MCP tool list_subscription_groups) - [List subscription consent events](http://localhost:3000/docs/api#list-subscription-events): GET /api/v1/subscriptions/{id}/events (MCP tool list_subscription_events) - [Update subscriber profile](http://localhost:3000/docs/api#update-subscriber): PATCH /api/v1/subscribers/{id} (MCP tool update_subscriber) - [Withdraw subscription](http://localhost:3000/docs/api#withdraw-subscription): POST /api/v1/subscriptions/{id}/withdraw (MCP tool withdraw_subscription) - [Delete a subscription](http://localhost:3000/docs/api#delete-subscription): DELETE /api/v1/subscriptions/{id} (MCP tool delete_subscription) - [Erase subscriber](http://localhost:3000/docs/api#erase-subscriber): DELETE /api/v1/subscribers/{id} (MCP tool erase_subscriber) ### Recipients - [List recipients through the deprecated endpoint](http://localhost:3000/docs/api#list-recipients): GET /api/v1/recipients (MCP tool list_recipients) - [Get a recipient through the deprecated endpoint](http://localhost:3000/docs/api#get-recipient): GET /api/v1/recipients/{id} (MCP tool get_recipient) ### Segments - [List segments](http://localhost:3000/docs/api#list-segments): GET /api/v1/segments (MCP tool list_segments) - [Get a segment](http://localhost:3000/docs/api#get-segment): GET /api/v1/segments/{id} (MCP tool get_segment) - [Count a segment's contacts](http://localhost:3000/docs/api#count-segment): POST /api/v1/segments/count (MCP tool count_segment) - [Create a segment](http://localhost:3000/docs/api#create-segment): POST /api/v1/segments (MCP tool create_segment) - [Update a segment](http://localhost:3000/docs/api#update-segment): PATCH /api/v1/segments/{id} (MCP tool update_segment) - [Delete a segment](http://localhost:3000/docs/api#delete-segment): DELETE /api/v1/segments/{id} (MCP tool delete_segment) ### Sequences - [Import a Classic sequence draft](http://localhost:3000/docs/api#import-classic-sequence): POST /api/v1/sequences/import-classic (MCP tool import_classic_sequence) - [List sequences](http://localhost:3000/docs/api#list-sequences): GET /api/v1/sequences (MCP tool list_sequences) - [Get a sequence](http://localhost:3000/docs/api#get-sequence): GET /api/v1/sequences/{id} (MCP tool get_sequence) - [Create a sequence](http://localhost:3000/docs/api#create-sequence): POST /api/v1/sequences (MCP tool create_sequence) - [Save a sequence](http://localhost:3000/docs/api#update-sequence): PATCH /api/v1/sequences/{id} (MCP tool update_sequence) - [Preview a sequence](http://localhost:3000/docs/api#preview-sequence): POST /api/v1/sequences/{id}/preview (MCP tool preview_sequence) - [Publish a sequence](http://localhost:3000/docs/api#publish-sequence): POST /api/v1/sequences/{id}/publish (MCP tool publish_sequence) - [Change sequence state](http://localhost:3000/docs/api#sequence-lifecycle): POST /api/v1/sequences/{id}/lifecycle (MCP tool sequence_lifecycle) - [List sequence participants](http://localhost:3000/docs/api#list-sequence-participants): GET /api/v1/sequences/{id}/participants (MCP tool list_sequence_participants) - [Get sequence participant](http://localhost:3000/docs/api#get-sequence-participant): GET /api/v1/sequences/{id}/participants/{enrollmentId} (MCP tool get_sequence_participant) - [Change participant state](http://localhost:3000/docs/api#sequence-participant-lifecycle): POST /api/v1/sequences/{id}/participants/{enrollmentId}/lifecycle (MCP tool sequence_participant_lifecycle) ### Groups - [List groups](http://localhost:3000/docs/api#list-groups): GET /api/v1/groups (MCP tool list_groups) - [Get a group](http://localhost:3000/docs/api#get-group): GET /api/v1/groups/{id} (MCP tool get_group) - [Create a group](http://localhost:3000/docs/api#create-group): POST /api/v1/groups (MCP tool create_group) - [Rename a group](http://localhost:3000/docs/api#update-group): PATCH /api/v1/groups/{id} (MCP tool update_group) - [Archive a group](http://localhost:3000/docs/api#archive-group): DELETE /api/v1/groups/{id} (MCP tool archive_group) - [List group members](http://localhost:3000/docs/api#list-group-members): GET /api/v1/groups/{id}/members (MCP tool list_group_members) - [Add a group member](http://localhost:3000/docs/api#add-group-member): POST /api/v1/groups/{id}/members (MCP tool add_group_member) - [Remove a group member](http://localhost:3000/docs/api#remove-group-member): POST /api/v1/groups/{id}/members/remove (MCP tool remove_group_member) ### Signup forms - [List signup forms](http://localhost:3000/docs/api#list-forms): GET /api/v1/forms (MCP tool list_forms) - [Get a signup form](http://localhost:3000/docs/api#get-form): GET /api/v1/forms/{id} (MCP tool get_form) - [Create a signup form](http://localhost:3000/docs/api#create-form): POST /api/v1/forms (MCP tool create_form) - [Edit a signup form](http://localhost:3000/docs/api#update-form): PATCH /api/v1/forms/{id} (MCP tool update_form) - [Publish a signup form](http://localhost:3000/docs/api#publish-form): POST /api/v1/forms/{id}/publish (MCP tool publish_form) - [Archive a signup form](http://localhost:3000/docs/api#archive-form): DELETE /api/v1/forms/{id} (MCP tool archive_form) ### Domains - [List domains](http://localhost:3000/docs/api#list-domains): GET /api/v1/domains (MCP tool list_domains) - [Add a domain](http://localhost:3000/docs/api#add-domain): POST /api/v1/domains (MCP tool add_domain) - [Retry a domain's sender setup and check its DNS records](http://localhost:3000/docs/api#check-domain): POST /api/v1/domains/{id}/check (MCP tool check_domain) - [Remove a domain](http://localhost:3000/docs/api#remove-domain): DELETE /api/v1/domains/{id} (MCP tool remove_domain) ### Images - [List images](http://localhost:3000/docs/api#list-images): GET /api/v1/images (MCP tool list_images) - [Upload an image](http://localhost:3000/docs/api#upload-image): POST /api/v1/images (MCP tool upload_image) ### API keys - [List API keys](http://localhost:3000/docs/api#list-api-keys): GET /api/v1/api-keys (MCP tool list_api_keys) - [Create an API key](http://localhost:3000/docs/api#create-api-key): POST /api/v1/api-keys (MCP tool create_api_key) - [Revoke an API key](http://localhost:3000/docs/api#revoke-api-key): DELETE /api/v1/api-keys/{id} (MCP tool revoke_api_key) - [List connected apps](http://localhost:3000/docs/api#list-connected-apps): GET /api/v1/connected-apps (MCP tool list_connected_apps) - [Disconnect an app](http://localhost:3000/docs/api#revoke-connected-app): DELETE /api/v1/connected-apps/{id} (MCP tool revoke_connected_app)