canonical: https://jentic.com/apis/listshot.com/listshot

# ListShot-Zapier Integration API

The ListShot-Zapier Integration API exposes the small set of webhook-style endpoints that Zapier uses to authenticate, subscribe, and unsubscribe a ListShot account against Zap triggers. The endpoints cover Zapier authentication tests, retrieving a sample export payload, registering a webhook subscription for new ListShot exports, and unsubscribing that webhook. It is intended as a Zapier-side integration surface rather than a general-purpose ListShot API.

## For AI agents

Authenticate, subscribe, and unsubscribe Zapier webhooks against a ListShot account so trigger-based automation can fire on new ListShot exports.

## Scope

Does not expose the underlying ListShot list, contact, or content endpoints - use only for managing Zapier authentication and webhook subscriptions on a ListShot account.

## Capabilities

- Test the Zapier authentication payload against a ListShot account via POST /zapier
- Retrieve a representative ListShot export payload for Zapier sample setup via GET `/zapier/subscription`
- Subscribe a Zapier webhook to receive new-export events via POST `/zapier/subscription`
- Unsubscribe a Zapier webhook from new-export events via DELETE `/zapier/subscription`
- Operate without auth at the spec level - gating is handled by ListShot account context

## Use cases

### Zapier Trigger Subscription

Wire a Zapier Zap to fire whenever ListShot publishes a new export. POST `/zapier/subscription` registers the Zapier-provided webhook URL against the user's ListShot account, and ListShot then POSTs each new-export payload to that URL. Use this when the ListShot UI should drive downstream automations in Sheets, Slack, CRMs, or task managers via Zapier.

Example prompt: POST `/zapier/subscription` with the Zapier-provided webhook URL to start receiving new-export events on the user's ListShot account.

### Zapier Authentication Setup

Validate that Zapier can authenticate with a ListShot account during Zap configuration. POST /zapier accepts the Zapier auth probe payload and confirms whether the linked account is valid before any subscription is created. This is the standard Zapier 'Test Connection' step exposed as an HTTP endpoint.

Example prompt: Call POST /zapier with the Zapier auth probe body during Zap setup to verify the connection before adding triggers.

### Subscription Lifecycle Cleanup

Remove stale Zapier subscriptions when a Zap is deleted or a ListShot user disconnects the integration. DELETE `/zapier/subscription` unsubscribes the webhook so ListShot stops sending export payloads to a dead URL. Use this on Zap deletion or account disconnection to keep the integration tidy.

Example prompt: Call DELETE `/zapier/subscription` for the webhook URL when the Zap is removed to stop ListShot from sending further events.

### AI Agent Zap Management

Let an AI agent set up or tear down a ListShot-Zapier connection on behalf of a user without exposing Zapier admin credentials. Through Jentic, the agent searches for the subscribe or unsubscribe operation, loads the schema, and executes the right `/zapier/subscription` endpoint. The agent never holds Zapier admin credentials - those stay in your Jentic One instance when present.

Example prompt: Search Jentic for 'subscribe a Zapier webhook to ListShot exports', load the schema, and execute POST `/zapier/subscription` with the user's webhook URL.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/zapier` | Test Zapier authentication |
| GET | `/zapier/subscription` | Get sample ListShot export payload |
| POST | `/zapier/subscription` | Subscribe a Zapier webhook |
| DELETE | `/zapier/subscription` | Unsubscribe a Zapier webhook |

## Key resources

- **Zapier auth** — Zapier authentication test via POST /zapier
- **Zapier subscription** — Subscribe and unsubscribe webhook URLs via POST and DELETE `/zapier/subscription`, with sample payload via GET `/zapier/subscription`

## Why Jentic

- **Setup:** Wiring the ListShot Zapier Integration API by hand means pointing at the right listshot.ai host rather than the SwaggerHub mock, managing the Zapier subscription lifecycle, and handling retries yourself. Through Jentic you install once, import the ListShot Zapier Integration API from the API Directory, store any required Zapier credential once, and your agent calls it.
- **Permission scoping:** This API identifies the subscription in the request body rather than a resource id in the URL path, so limit the agent to the operations it needs, such as GET or POST `/zapier/subscription.` You choose the operations it may call, so DELETE `/zapier/subscription` is not included unless you add it.
- **Credential handling:** Any Zapier-side credential 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 Zapier webhook to ListShot', and Jentic returns the matching ListShot operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Zapier NLA** — Zapier's natural-language action API for triggering Zaps from agents
- **n8n API** — Self-hosted automation platform with webhook triggers as an alternative to Zapier
- **Pipedream API** — Workflow automation with HTTP triggers similar to Zapier subscriptions

## FAQ

### What authentication does the ListShot-Zapier API use?

The OpenAPI spec does not define a security scheme - gating is handled by the ListShot account context that Zapier supplies during the auth probe. Through Jentic, any account-level credentials needed by the calling environment are held in your Jentic One instance and never exposed to the agent.

### Can I subscribe a Zapier webhook to ListShot exports with this API?

Yes. POST `/zapier/subscription` registers a Zapier-provided webhook URL so ListShot will POST each new export payload to that URL. DELETE `/zapier/subscription` removes the subscription when the Zap is deleted.

### What are the rate limits for the ListShot-Zapier API?

Rate limits are not declared in the OpenAPI spec. Because this is a Zapier integration surface, traffic is bounded by Zap polling and trigger frequency rather than a documented per-second cap. Build agents to run subscribe and unsubscribe as one-time operations, not loops.

### How do I subscribe a webhook through Jentic?

Run pip install jentic, then search for 'subscribe a Zapier webhook to ListShot exports'. Jentic returns POST `/zapier/subscription.` Load the schema, supply the webhook URL provided by Zapier, and execute. New ListShot exports will then be POSTed to that URL.

### Does the API include a sample export payload?

Yes. GET `/zapier/subscription` returns a representative ListShot export payload that Zapier uses during Zap setup to render field mapping. Inspect this payload when designing downstream Zap actions so each export field maps to the right destination.

### Can I limit what my agent is allowed to do with the ListShot-Zapier Integration API?

Yes. Because you run Jentic One yourself, your own rules decide which of this API's operations the agent may call, so you can grant only the ones it needs, such as GET `/zapier/subscription` to read the sample export payload and POST `/zapier/subscription` to register a webhook. This API identifies the subscription in the request body rather than by a resource id in the URL path, so DELETE `/zapier/subscription` stays out of the agent's reach unless you explicitly add it. Any Zapier-side credential is held by your own Jentic One instance and injected at execution time, never entering the agent's prompt or logs.
