Skip to content
Back to skills

Sinch Api Batch Send

ASecurity

Send a batch of messages to up to 1000 recipients via Sinch Batch API

  • 6 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 6, 2026
ai-agentsapidocumentation

Works with

  • api

Security analysis

A100/100

Scanned September 6, 2026

npx -y skills add sinch/sinch-plugins --skill sinch-api-batch-send --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Sinch Api Batch Send?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Sinch Api Batch Send
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/sinch-sinch-api-batch-send/badge)](https://www.skillsdirectory.com/skills/sinch-sinch-api-batch-send)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: sinch-api-batch-send
description: Send a batch of messages to up to 1000 recipients via Sinch Batch API
---

# Send Batch Messages

Send a single message definition to up to 1000 recipients in one API call using the Sinch Conversation Batch API. Supports per-recipient parameter substitution (e.g. ${name}).

**IMPORTANT: Execute this command directly. Do NOT generate script files. Perform the API call immediately.**

## Input

- `--message` / `-m`: Message text; use ${param} for per-recipient substitution - required
- `--recipients` / `-r`: Comma-separated E.164 numbers, or path to file with one number per line - required
- `--channel` / `-c`: Channel (SMS, RCS, etc.) - optional, default SMS
- `--params` / `-p`: Optional JSON object or file mapping recipient index to parameters for substitution

Arguments: $ARGUMENTS

## Instructions

**Execute these steps directly - do not write code or scripts:**

0. If $ARGUMENTS empty: ask for message text (with ${variable} placeholders if needed), recipient list (comma-separated or file), and channel. Otherwise parse.

1. Validate: --message (non-empty, may contain ${var}), --recipients (1-1000 identities). Parse recipients into array. Build recipient_and_params: each recipient has recipient.identified_by.channel_identities and optional parameters object for ${} substitution.

2. Get CONVERSATION_* env vars (project, region, app, key id/secret). Batch API base: https://{region}.conversationbatch.api.sinch.com. If missing, report "Sinch API is not configured."

3. Request body: app_id, message (e.g. text_message with text), recipient_and_params array. Do NOT use a "messages" array - Batch API expects one message + recipient_and_params.

4. POST https://{region}.conversationbatch.api.sinch.com/v1/projects/{projectId}/messages with OAuth2 Bearer token and JSON body.

5. On success: display "✅ Batch submitted" with batch_id and recipient count. Handle errors (400, 401, 429) with clear messages.

6. Handle all errors gracefully.

## Examples

```
/sinch-api-batch-send --message="Hello ${name}, your code is ${code}" --recipients=+15551234567,+15559876543 --params='{"0":{"name":"Alice","code":"111"},"1":{"name":"Bob","code":"222"}}'
/sinch-api-batch-send -m "Hi!" -r +15551111111,+15552222222 --channel=SMS
```

## API Reference

- **Base URL**: https://{region}.conversationbatch.api.sinch.com (us, eu, br)
- **Endpoint**: POST /v1/projects/{project_id}/messages
- **Documentation**: https://developers.sinch.com/docs/conversation/batch/

## Notes

- Max 1000 recipients per request. One message object; recipient_and_params array.
- Use ${parameter} in message text; supply parameters per recipient in recipient_and_params[].parameters.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.