canonical: https://jentic.com/apis/loops.so/loops

# Loops So Loops OpenAPI Spec

The Loops API sends transactional emails, triggers event-based email flows, and manages the contacts, contact properties, and mailing lists behind a product's email program. It lets you create, find, and update contacts, define custom contact properties, send an event to start an automation, send and list transactional emails, and read dedicated sending IP addresses. Requests are authenticated with a bearer API key.

## For AI agents

Send transactional emails, trigger event-based flows, and manage contacts, contact properties, and mailing lists through the Loops API.

## Scope

Does not handle SMS, push notifications, or voice calls. Use for transactional and event-based email and contact management only.

## Capabilities

- Send a transactional email to a contact
- Trigger event-based email automations by sending an event
- Create, find, and update contacts in the audience
- Define and list custom contact properties
- List transactional emails and mailing lists
- Read the dedicated sending IP addresses on the account

## Use cases

### Send product emails from an AI agent

An AI agent integration created through Jentic needs to email users as part of a flow. The Loops API sends a transactional email to a contact and can trigger an event-based automation, so the agent delivers a receipt, reset link, or onboarding step without the product wiring an email service directly.

Example prompt: Send a transactional email to a contact and confirm it was accepted for delivery

### Keep the audience in sync

Contacts in Loops must reflect the product's users. The Loops API creates, finds, and updates contacts and manages their custom properties, so an automation can add a new signup, enrich an existing contact, and keep attributes current for later segmentation.

Example prompt: Find a contact by email, create it if missing, then update its custom properties

### Event-driven onboarding

Onboarding emails fire off product events rather than manual sends. The Loops API sends an event for a contact to start the matching automation, so an agent can advance a user through an onboarding sequence by emitting the right event at each step.

Example prompt: Send an onboarding event for a contact to start its automation

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/contacts/create` | Create a contact |
| PUT | `/contacts/update` | Update a contact |
| GET | `/contacts/find` | Find a contact |
| POST | `/events/send` | Send an event |
| POST | `/transactional` | Send a transactional email |
| GET | `/lists` | Get mailing lists |

## Key resources

- **Transactional** — Send transactional emails and list the transactional templates
- **Events** — Send an event for a contact to trigger an automation
- **Contacts** — Create, find, update, and delete contacts
- **Contact properties** — List and create custom contact properties
- **Lists** — List the mailing lists on the account

## AI readiness

This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.

- **Score:** 44 / 100
- **Maturity:** Foundational
- **Dimensions:**
  - Foundational Compliance: 55 / 100
  - Developer Experience & Jentic Compatibility: 66 / 100
  - AI-Readiness & Agent Experience: 21 / 100
  - Agent Usability: 94 / 100
  - Security: 60 / 100
  - AI Discoverability: 78 / 100
- **View full report:** https://jentic.com/apis/loops.so/loops/scorecard
- **How the score is calculated:** https://docs.jentic.com/reference/api-readiness-framework/overview/
- **More about the dimensions:** https://docs.jentic.com/reference/api-readiness-framework/specification/#dimensional-model-overview

### Score it yourself

Every API in the directory is allowlisted, so you can re-score it with no key required.

- **Score your own API:** https://jentic.com/scorecard.md
- **Scoring CLI agent skill:** https://github.com/jentic/jentic-api-scorecard/blob/main/skills/jentic-api-scorecard/SKILL.md

```sh
npx @jentic/api-scorecard-cli score <openapi-url>
```

## Why Jentic

- **Setup:** Wiring Loops by hand means handling its bearer API key and shaping the contact, event, and transactional email payloads yourself. Through Jentic you install once, import Loops from the API Directory, store the key once, and your agent calls it.
- **Permission scoping:** The contact and email details travel in the request body, so rules bound which operations your agent may call, not which contact or list. You can allow the transactional-send and contact operations while leaving contact deletion out unless you add it.
- **Credential handling:** Your Loops 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 'send a transactional email' or 'create a contact', and Jentic returns the matching Loops operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Resend** — Resend is a developer-focused transactional email API; Loops pairs transactional sends with contact and event management.
- **Customer.io** — Customer.io runs event-driven messaging across channels; Loops focuses on email with contacts and events.
- **Mailchimp** — Mailchimp runs marketing campaigns and audiences; pair it with Loops for broad campaigns alongside transactional email.

## FAQ

### What authentication does the Loops API use?

The Loops API authenticates with a bearer API key in the Authorization header, per its OpenAPI spec. Through Jentic the key is stored encrypted by your own Jentic One instance and injected at call time, so it never reaches the agent's prompt or logs.

### Can I send a transactional email with the Loops API?

Yes. The transactional operation sends an email to a contact using a template, and you can also send an event to trigger an automation, so an agent can deliver receipts, reset links, and lifecycle messages.

### Can I manage contacts with the Loops API?

Yes. The API creates, finds, and updates contacts and manages their custom properties, so an agent can add a signup, enrich an existing contact, and keep attributes current for segmentation.

### How do I send a transactional email through Jentic?

Install Jentic One on your own infrastructure with `curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh`, then import the Loops API from the API Directory and search for 'send a transactional email'. Store the API key once and your agent can send email and manage contacts. To run it on your own infrastructure, install Jentic One from its GitHub repo.

### Is there a Loops MCP server?

You don't need an MCP server to give your agent the Loops API. Jentic connects it directly from the API Directory: import it, store your key once, and your agent calls it, with operations discovered on demand instead of loaded into the agent's context.

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

Yes. The contact and email details travel in the request body, so a rule bounds which operations the agent may call rather than which contact. Allow the transactional-send and contact-find operations and the agent can email and look up contacts while contact deletion stays out of reach, and every action is recorded in an audit log.
