canonical: https://jentic.com/apis/inboxroute.com/mailsquad

# Inboxroute MailSquad API

MailSquad is an email marketing platform for designing, sending, and tracking campaigns. The API exposes 8 endpoints covering contacts, contact lists, list subscriptions, and contact maintenance. Authentication uses an Authorization header containing the MailSquad API key. The API is best suited for syncing contact data from CRMs and websites, managing list membership, and driving subscription flows from agents and automations.

## For AI agents

Manage MailSquad contacts, lists, and subscriptions. Useful for syncing contact data and powering subscribe and unsubscribe flows.

## Scope

Does not send SMS, voice, or push notifications, and does not deliver transactional email - use for marketing contact and list management plus subscriptions only.

## Capabilities

- List contacts in the account
- Manage contact lists used for segmenting recipients
- Subscribe a contact to a specific list
- Update contact details by id
- Remove contacts that should no longer receive mail
- Power form-driven subscribe flows from a website or agent

## Use cases

### Website Signup to List

Power a website newsletter signup by calling POST `/subscription/{listid}` with the form input. The API adds the contact to MailSquad and to the chosen list in one call, which is the right pattern for landing pages and lead magnets.

Example prompt: Subscribe email priya@example.com to list id 1234 from a website signup form.

### List Lifecycle Management

Marketing operators can create, rename, and delete contact lists through the lists endpoints. The contact list resources support clean segmentation for campaigns without leaving the API surface for the dashboard.

Example prompt: Create a new list called 'Q3-Webinar-Attendees' and return the new list id.

### Contact Sync from CRM

Sync contact records from a CRM to MailSquad by listing existing contacts, calling PUT `/contacts/{contactid}` to update changes, and DELETE for hard-deletes. The flow keeps the marketing audience aligned with the source-of-truth in the CRM.

Example prompt: Update contact id c-9876 to set their first name to 'Alex' and remove contact id c-1234 from MailSquad entirely.

### Jentic Subscriber Agent

Through Jentic, an agent can manage MailSquad subscriptions from a chat surface. The agent searches by intent, loads the schema, and executes the right MailSquad endpoint without needing to remember the path or auth header format.

Example prompt: Search Jentic for 'subscribe a contact to a list', load the schema, and subscribe alex@example.com to list 5678.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/contacts` | List contacts |
| GET | `/contacts/lists` | List contact lists |
| POST | `/contacts/lists` | Create a contact list |
| PUT | `/contacts/{contactid}` | Update a contact |
| DELETE | `/contacts/{contactid}` | Delete a contact |
| POST | `/subscription/{listid}` | Subscribe a contact to a list |

## Key resources

- **Contacts** — List, update, and delete contact records
- **Lists** — Create, list, update, and delete contact lists used for segmentation
- **Subscriptions** — Add a contact to a specific list for campaign sends

## Why Jentic

- **Setup:** Wiring the MailSquad API by hand means passing your key in the Authorization header on every call and mapping its contact and list endpoints yourself. Through Jentic you install once, import MailSquad from the API Directory, store the API key once, and your agent calls it.
- **Permission scoping:** MailSquad puts the list id in the URL path (`/subscription/{listid}`) and the contact id in `/contacts/{contactid}`, so a rule can pin your agent to subscribing contacts to one list. You choose the operations it may call, so deleting contacts is not included unless you add it.
- **Credential handling:** Your MailSquad API key is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'subscribe a contact to a list', and Jentic returns the matching MailSquad operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Mailchimp** — Larger email marketing platform with richer automation, audience, and reporting tooling
- **Constant Contact** — Email marketing for small and mid-size businesses with similar list semantics
- **Klaviyo** — E-commerce focused marketing automation that pairs with MailSquad list semantics

## FAQ

### What authentication does the MailSquad API use?

MailSquad uses an Authorization header containing the API key issued from the MailSquad dashboard. Through Jentic, the key is stored in the encrypted vault and injected at runtime, so the raw key never enters the agent prompt or logs.

### Can I subscribe a contact to a specific list?

Yes. POST `/subscription/{listid}` with the contact email and any custom fields adds the contact to MailSquad and to the specified list in one call, which is the recommended pattern for newsletter signups.

### What are the rate limits for the MailSquad API?

The published spec does not declare hard rate limits. MailSquad enforces per-account fair-use limits, so bulk imports and sweeps should be paced and the response checked for 429 before retrying.

### How do I add a contact to a list through Jentic?

Search Jentic for 'subscribe a contact to a list' to find the operation backed by POST `/subscription/{listid}.` Load the schema, pass the list id and contact email, and execute. Jentic injects the Authorization header at runtime.

### Can I delete a contact via the MailSquad API?

Yes. DELETE `/contacts/{contactid}` removes the contact from MailSquad. Use this for hard-delete flows when a CRM record is removed or a user invokes a right-to-erasure request.

### Can I limit what my agent is allowed to do with the MailSquad API?

Yes. Because you run Jentic One yourself, you decide which MailSquad operations the agent may call, and your own rules are enforced at execution time. MailSquad carries the list id in the path at POST `/subscription/{listid}` and the contact id at `/contacts/{contactid}`, so you can pin the agent to subscribing contacts to a single list while excluding PUT `/contacts/{contactid}` and DELETE `/contacts/{contactid}.` Deleting or updating contacts is available only if you explicitly grant it, and the stored API key is injected at runtime rather than exposed to the agent.
