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

# Onurix API

Jentic publishes the only available OpenAPI specification for Onurix API, keeping it validated and agent-ready. Onurix is a Spanish-language messaging platform that exposes a REST API for sending SMS, WhatsApp messages, voice calls, and 2FA verification codes, plus URL shortening with click analytics. The same API also supports event-ticket workflows where a confirmation SMS is sent to attendees and the ticket is later validated at the door. The surface is small (nine endpoints) and oriented around one-shot sends rather than long-running campaigns.

## For AI agents

Send SMS messages, trigger 2FA verification codes, and shorten campaign URLs through a single API. Useful for agents that need to deliver one-off transactional messages or verify a phone number.

## Scope

Does not handle email delivery, push notifications, or rich messaging campaigns - use for transactional SMS, 2FA codes, and URL shortening only.

## Capabilities

- Send transactional SMS messages to a phone number with custom sender ID
- Trigger and verify 2FA one-time passcodes over SMS
- Block phone numbers from receiving further SMS sends
- Shorten long URLs and retrieve click statistics for the shortened link
- Send event-ticket confirmation SMS and validate ticket state at venue entry
- Check the current account balance before launching a send

## Use cases

### SMS Two-Factor Authentication

Add SMS-based 2FA to a sign-in flow by sending a one-time code to the user's phone and verifying their input. Onurix exposes a paired send-and-verify pair of endpoints so the application does not need to store or hash the code locally. Suitable for low-volume consumer apps that want SMS 2FA without standing up a dedicated verification provider.

Example prompt: Call POST `/2fa/send-sms` with the user's mobile number, then call POST `/2fa/verification-code` with the code they entered and return whether verification succeeded.

### Event Ticket Confirmations

Send an SMS confirmation to attendees when a ticket is purchased and validate the ticket at the venue using a state-change call. The flow uses POST /show-send-sms for delivery and POST /show-state-change for entry validation, eliminating the need for a separate ticketing-platform integration for small events.

Example prompt: Send an event ticket SMS to +34600000000 for show ID SHOW123, then mark that ticket as used when the attendee arrives.

### Campaign Link Shortening with Analytics

Shorten a long marketing URL and pull click statistics back to measure campaign performance. POST `/url/short` returns the short link and POST `/url/short-statistic` returns the click count, so an agent can stage a campaign and report on it from the same API surface.

Example prompt: Shorten https://example.com/promo-summer-2026 and return the click count for the resulting short link 24 hours later.

### AI Agent SMS Notifications

Let a Jentic-orchestrated agent send a transactional SMS without holding the raw API key. The agent searches for a send-SMS operation, Jentic injects the credential at execution time, and the message is delivered through Onurix while the agent only ever sees a scoped token.

Example prompt: Search Jentic for 'send a transactional SMS', load the Onurix send-sms schema, and execute it for phone number +34600000000 with body 'Order #1234 confirmed'.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/send-sms` | Send a transactional SMS message |
| POST | `/2fa/send-sms` | Send a 2FA verification code over SMS |
| POST | `/2fa/verification-code` | Verify a 2FA code submitted by a user |
| POST | `/url/short` | Create a shortened URL |
| POST | `/url/short-statistic` | Retrieve click statistics for a short URL |
| GET | `/balance` | Get the current account balance |
| POST | `/block-phone` | Block a phone number from receiving SMS |

## Key resources

- **SMS** — Send transactional SMS messages and manage blocked numbers.
- **2FA** — Send and verify one-time SMS verification codes.
- **Events** — Send event ticket SMS and validate ticket state at the door.
- **URL** — Create shortened URLs and retrieve click statistics.
- **Account** — Read the account balance to gate sends on remaining credit.

## Why Jentic

- **Setup:** Wiring the Onurix API by hand means passing your client id and API key on every request as query parameters and handling the SMS, 2FA, and URL-shortening paths yourself. Through Jentic you install once, import the Onurix API from the API Directory, store the client id and key once, and your agent calls it.
- **Permission scoping:** Onurix takes its send targets in the request body and query rather than a resource id in the URL path, so limit the agent to the operations it needs, such as sending a transactional SMS, sending a 2FA code, or creating a short URL. You credit the agent only with the operations you allow.
- **Credential handling:** Your Onurix client id and API key are stored once, encrypted, by your own Jentic One instance and injected at execution time. They never enter the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'send a verification code by SMS' or 'shorten a link', and Jentic returns the matching Onurix operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Twilio Messaging API** — Global SMS and MMS provider with a substantially larger feature set than Onurix.
- **MessageBird SMS API** — European SMS provider with broader carrier coverage and an SMS-first product surface.
- **Twilio Verify** — Dedicated verification service that handles OTP send, retry, and rate-limit logic.
- **Bitly API** — Standalone link shortener with deeper analytics and custom domains.

## FAQ

### Why is there no official OpenAPI spec for Onurix API?

Onurix does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call Onurix API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the Onurix API use?

The spec does not declare a security scheme; the live API uses an account credential that callers pass with each request. When called through Jentic, the credential is held in your Jentic One instance and a scoped token is injected at execution time so the agent never sees the raw value.

### Can I send WhatsApp or voice calls with the Onurix API?

The published spec exposes SMS, 2FA SMS, event-ticket SMS, URL shortening, and account balance. WhatsApp and voice are described in Onurix's product literature but are not in the current 9-endpoint spec, so an agent should treat this surface as SMS-only until those endpoints are added.

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

Onurix does not document a public rate-limit ceiling in the spec. Sends are gated by the account balance returned from GET /balance, so an agent should check the balance before high-volume runs and back off on any 429 response.

### How do I send a 2FA code with the Onurix API through Jentic?

Run pip install jentic, then search for 'send a 2FA code over SMS'. Jentic returns the POST `/2fa/send-sms` operation; load its schema, call it with the destination phone number, and follow up with POST `/2fa/verification-code` to validate the code the user enters.

### Is there a free tier for the Onurix API?

Onurix sells SMS credit by package; there is no published free tier in the spec. GET /balance returns the remaining credit on the account so an agent can confirm there is enough budget before issuing sends.

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

Yes. Because you run Jentic One yourself, you decide which Onurix operations the agent may call, so you can allow only sending a transactional SMS (POST /send-sms) while withholding operations like blocking a phone number (POST /block-phone) or reading the account balance (GET /balance). Onurix takes its send targets in the request body and query rather than as a resource id in the URL path, so scoping happens at the operation level: you might permit sending a 2FA code (POST `/2fa/send-sms`) and verifying it (POST `/2fa/verification-code`) but not URL shortening (POST `/url/short`). Your Onurix client id and API key stay in your own instance and are injected only when an operation you have permitted runs, so the agent never sees the raw credential.
