canonical: https://jentic.com/apis/ostana.io/ostana

# Ostana Gateway API

The Ostana Gateway API is the integration surface for Ostana's SMS marketing and customer-engagement platform for fitness and wellness studios. It receives inbound and outbound SMS events, redirects SMS click-throughs, processes Stripe webhooks for billing, and ingests customer and order data from POS systems including Lightspeed, Clover, and Mindbody. With 13 endpoints, the API is designed primarily as a webhook receiver and partner ingestion layer rather than a general developer surface.

## For AI agents

Ingest SMS click events, POS order and customer data, and Stripe billing events into Ostana. Agents can forward webhook payloads from POS systems and email verification services into the Ostana gateway.

## Scope

Does not handle outbound SMS sending, generic email marketing, or Stripe charge creation - use for ingesting inbound SMS, POS, and webhook events into the Ostana gateway only.

## Capabilities

- Receive inbound SMS replies from members and route them to the correct campaign
- Track outbound SMS delivery status callbacks per campaign and member
- Redirect SMS click-throughs and capture the click event for attribution
- Ingest customer and order webhooks from Lightspeed and Clover POS systems
- Receive Mindbody studio booking and customer events
- Process Stripe webhook events for business-entity billing

## Use cases

### POS to SMS Marketing Sync

Studios using Lightspeed or Clover at the till and Mindbody for class bookings push customer and order events into Ostana so SMS campaigns reflect the latest member behaviour. The `/lightspeed/customers`, `/lightspeed/orders`, /clover, and /mind-body endpoints accept webhook payloads from each platform, letting Ostana segment audiences without a manual export.

Example prompt: Forward a Lightspeed customer.created webhook payload to Ostana by POSTing it to `/lightspeed/customers.`

### Two-Way SMS Conversation Logging

When a member replies to a marketing SMS, the carrier posts the inbound message to /inbound-sms, which Ostana ties back to the originating campaign. Outbound delivery status callbacks land at `/outbound-sms-status/{campaignId}/{businessEntityId}/{memberId}`, giving the platform per-recipient delivery and failure data without polling. Click-tracking is handled by /redirect-sms-click which records the click event before redirecting the user.

Example prompt: POST an inbound SMS payload - sender, body, campaign ID - to /inbound-sms so Ostana attaches the reply to the correct conversation thread.

### Stripe Billing Event Forwarding

Ostana receives Stripe webhook events for both the platform itself and per-business-entity billing through `/stripe/webhook` and `/business-entity-service/stripe/webhook.` This keeps Ostana's view of subscription state, invoice failures, and customer status aligned with Stripe without daily reconciliation jobs.

Example prompt: Forward a Stripe invoice.payment_failed event to Ostana by POSTing the original Stripe payload to `/business-entity-service/stripe/webhook.`

### AI Agent Webhook Routing via Jentic

Operations agents that monitor partner webhooks (POS, email verification, payments) need a way to forward selected events into Ostana for audit and replay. Through Jentic, the agent searches for 'forward a Stripe webhook to Ostana' and the matching operation surfaces with its schema; the call runs without the agent holding the gateway URL or credentials in its prompt.

Example prompt: Use Jentic to search 'forward a Stripe webhook to Ostana', load the POST `/stripe/webhook` schema, and execute it with the original webhook payload.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/inbound-sms` | Receive an inbound SMS message |
| POST | `/outbound-sms-status/{campaignId}/{businessEntityId}/{memberId}` | Receive outbound SMS delivery status |
| PUT | `/redirect-sms-click` | Track an SMS click redirect |
| POST | `/lightspeed/customers` | Ingest a Lightspeed customer event |
| POST | `/lightspeed/orders` | Ingest a Lightspeed order event |
| POST | `/clover` | Ingest a Clover POS event |
| POST | `/mind-body` | Ingest a Mindbody event |
| POST | `/stripe/webhook` | Receive a platform-level Stripe webhook |

## Key resources

- **SMS Events** — Inbound SMS, outbound delivery status, and click redirects
- **POS Integrations** — Webhook ingestion endpoints for Lightspeed, Clover, and Mindbody
- **Stripe Webhooks** — Platform and per-business-entity Stripe billing event receivers
- **External Sync** — Generic `/external/orders` and `/external/customers` ingestion endpoints
- **Email Verification** — ZeroBounce email verification result ingestion

## Why Jentic

- **Setup:** Wiring the Ostana Gateway by hand means routing inbound SMS, POS, and webhook events to the gateway-service host and mapping each source's payload shape yourself. Through Jentic you install once, import the Ostana Gateway API from the API Directory, and your agent calls it.
- **Permission scoping:** The Ostana Gateway routes events by request body and by source-specific paths like the Lightspeed and Clover ingest endpoints, so scope by operations: limit the agent to the operations it needs, such as posting inbound SMS or Lightspeed orders, and leave the others out. You choose the allowed set, so an ingest-only agent handles one source and nothing more.
- **Credential handling:** Any gateway access value the Ostana deployment requires 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 'ingest an inbound SMS event' or 'post a Lightspeed order to the gateway', and Jentic returns the matching Ostana operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Twilio API** — Twilio sends and receives the underlying SMS that Ostana ties back into campaigns and member records.
- **Stripe API** — Stripe is the source of truth for billing while Ostana ingests the Stripe webhook events to keep its CRM in sync.
- **Mailchimp Marketing API** — Mailchimp is a general-purpose marketing automation API; Ostana is purpose-built for fitness and wellness studios.

## FAQ

### What authentication does the Ostana Gateway API use?

The published OpenAPI does not declare a security scheme; Ostana relies on per-partner shared secrets and webhook signatures verified by the platform behind each endpoint. Through Jentic, any partner-issued shared secret or signing key is held in your Jentic One instance and applied at execution time.

### Can I forward POS events into Ostana?

Yes. The gateway exposes dedicated endpoints for the major POS systems Ostana supports - POST `/lightspeed/customers` and `/lightspeed/orders` for Lightspeed, POST /clover for Clover, and POST /mind-body for Mindbody. Generic ingestion is available through POST `/external/customers` and POST `/external/orders.`

### What are the rate limits for the Ostana Gateway API?

Rate limits are not declared in the OpenAPI spec; the gateway is sized to accept partner webhook traffic and relies on upstream platforms (Stripe, Lightspeed, Mindbody) to throttle their own outbound webhook volume. Excessive callers should expect 429 responses.

### How do I forward an inbound SMS through Jentic?

Through Jentic, search for 'forward an inbound SMS', load the POST /inbound-sms schema, and execute it with the message body, sender, and campaign identifiers. Jentic injects any configured shared secret from the vault.

### Does the API expose configuration data?

GET `/configs/private` returns private configuration scoped to the calling partner - useful for sanity-checking that the gateway has been provisioned for the integration in question. Treat the response as sensitive and never log it in plaintext.

### Is the Ostana API free to use?

The gateway is a partner integration surface for Ostana customers and accredited POS vendors. There is no public per-call pricing; access is gated by the commercial relationship with Ostana.

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

Yes. Because you run Jentic One yourself, your own rules decide which Ostana operations and credentials the agent may use, and the gateway's source-specific paths make it easy to scope by operation. You can allow only the endpoints a given agent needs, such as POST /inbound-sms or POST `/lightspeed/orders`, and leave the Clover, Mindbody, and Stripe webhook receivers out. An ingest-only agent then handles just its one source and cannot call anything else.
