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

# Isendpro API iSendPro

iSendPro is a French SMS gateway run by CALL ON IT covering single and bulk SMS delivery, HLR lookup, contact directory management, blocklist administration, and subaccount provisioning. The 14 endpoints support sending one-shot SMS via POST /sms, broadcasting through POST /smsmulti, retrieving campaign recaps, validating numbers via HLR, generating short links, and metering character counts before send. Authentication is a per-account keyid passed in the request body alongside an IP allow-list configured in the iSendPro dashboard.

## For AI agents

Send single or bulk SMS messages, validate numbers via HLR, manage directories and blocklists, and pull campaign recaps from the iSendPro French SMS gateway.

## Scope

Does not handle voice calls, MMS, RCS, or email - use for SMS messaging and number validation only.

## Capabilities

- Send a single SMS to a French or international mobile number with optional sender ID
- Broadcast SMS to a list of recipients in one call via the smsmulti endpoint
- Validate a mobile number with an HLR lookup before charging the campaign
- Add or remove numbers from the account blocklist to enforce opt-out compliance
- Maintain a contact directory with create and update operations
- Retrieve campaign-level recaps to feed reporting dashboards
- Generate trackable short links to embed inside outgoing SMS

## Use cases

### Transactional SMS delivery for French ecommerce

Send order confirmations, delivery alerts, and OTP codes to French and European customers through POST /sms. iSendPro routes via tier-1 carriers and supports custom alphanumeric sender IDs where local regulation allows. Integration takes a couple of hours including HLR validation and credit-check wiring.

Example prompt: Send the message 'Votre commande #4231 est expediee' to phone number 33612345678 with sender ID 'BOUTIQUE'

### Bulk marketing campaign with opt-out enforcement

Run a marketing SMS broadcast against a contact directory while honouring blocklisted numbers. The agent posts the recipient list to POST /smsmulti, then queries POST /campagne for the per-message status. Numbers added to the blocklist via POST /setlistenoire are filtered out automatically by iSendPro before billing applies.

Example prompt: Broadcast the message 'Soldes -30%' to the directory 'newsletter-fr' and skip numbers on the blocklist

### Number validation pipeline before campaign send

Reduce wasted SMS credit by running an HLR lookup against every recipient via POST /hlr before broadcasting. Invalid or unreachable numbers are removed from the campaign so the spend lands only on numbers with active SIMs. Combined with the POST /comptage character-count check, the agent can predict campaign cost to within a few percent.

Example prompt: For each number in the supplied CSV, run POST /hlr and write back active or inactive status

### AI agent customer support SMS notifications

An AI customer support agent can fire SMS alerts during workflow handoffs without operating a separate SMS integration. Through Jentic the agent searches for 'send a French SMS' and the matching iSendPro operation is loaded with the keyid already injected from the vault. Lets the agent close the loop with the customer over the channel they actually read.

Example prompt: After a refund is approved, send the customer at 33612345678 the message 'Remboursement approuve, sous 3 jours ouvres'

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | /sms | Send a single SMS |
| POST | /smsmulti | Broadcast SMS to multiple recipients |
| POST | /hlr | Validate a number via HLR lookup |
| POST | /campagne | Retrieve campaign recaps |
| POST | /credit | Get remaining account credit |
| POST | /comptage | Count characters of an SMS body |
| POST | /setlistenoire | Add a number to the blocklist |
| POST | /shortlink | Generate a trackable short link |

## Key resources

- **SMS** — Single and bulk SMS sending endpoints with sender ID and short-link options
- **HLR** — Real-time mobile number validation
- **Campagne** — Campaign recap retrieval for reporting
- **Liste Noire** — Blocklist add, remove, and retrieve operations
- **Repertoire** — Contact directory create and update
- **Subaccount** — Subaccount provisioning under a master account

## Why Jentic

- **Setup:** Wiring API iSendPro by hand means managing your keyid, POSTing to the cgi-bin endpoints on apirest.isendpro.com, and building the sms array and campaign payloads correctly to avoid billing for malformed sends. Through Jentic you install once, import API iSendPro from the API Directory, store the keyid once, and your agent calls it.
- **Permission scoping:** iSendPro takes the recipient and message in the request body rather than a resource path, so limit the agent to the operations it needs, such as sending an SMS or running an HLR number check. You choose the operations it may call, so billing-sensitive ones like campaign sends stay out unless you add them.
- **Credential handling:** Your iSendPro keyid 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, which matters because iSendPro charges per SMS sent.
- **Discovery method:** Agents search Jentic by intent such as 'send a French SMS' or 'validate a phone number by HLR', and Jentic returns the matching iSendPro operation with its body schema, including the sms array structure, so the agent calls the right endpoint without reading the docs.

## Related APIs

- **Twilio Messaging** — Global SMS gateway with stronger international reach but higher per-message price for France
- **Plivo Messaging** — Global SMS provider competitive on price for high-volume international campaigns
- **seven SMS API** — European SMS provider with a similar feature set including HLR and bulk send

## FAQ

### What authentication does the iSendPro API use?

iSendPro authenticates with a per-account keyid sent inside the JSON request body, alongside an IP allow-list configured in the iSendPro dashboard. The keyid is generated under the 'mon compte' panel of the iSendPro account. Through Jentic the keyid is held in the vault and injected at request time.

### Can I send bulk SMS in a single call?

Yes. POST /smsmulti accepts a list of recipients in one request and returns a per-message status array. For very large lists the request can be split into batches; recap retrieval through POST /campagne reconciles the status of each message later.

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

Hard rate limits are not declared in the spec. iSendPro applies a fair-use ceiling tied to the account's monthly volume tier, with the IP allow-list serving as the practical gating mechanism. Confirm the account-level throughput before driving very large bursts.

### How do I validate a mobile number before sending through Jentic?

Search Jentic with the query 'validate French mobile number' or 'HLR lookup', load the POST /hlr operation, and execute it with the recipient phone number. The response indicates whether the number is active and which operator is hosting it.

### Is the iSendPro API free?

iSendPro is a paid service. New accounts can request a test credit on application; production usage is billed per SMS with volume tiering. Check current pricing on the iSendPro website before forecasting campaign cost.

### Does iSendPro support short links inside SMS?

Yes. POST /shortlink generates a trackable short URL that can be embedded in the SMS body. Click counts are then surfaced through the campaign recap endpoint.

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

Yes. Because you run Jentic One yourself, you decide which iSendPro operations your agent may call, so you can allow a read-only HLR number check via POST /hlr or a single send via POST /sms while withholding the rest. Billing-sensitive operations like the bulk broadcast POST /smsmulti stay off limits unless you add them to the agent's allowed set. Your keyid is held by your own instance and injected only when a permitted operation runs, so the agent never sees the credential or reaches endpoints you have not granted.
