API reference · v2 compat + v3 native

Boring docs for production APIs.

Endpoints you can copy-paste. Auth via key only — no OAuth dance. Every order field, with ranges and defaults, is listed below.

Authentication

Every request carries a single key field. Generate one in the dashboard, rotate whenever. No expiry unless you set one.

Rate limits

60 requests per minute per API key. Need more throughput? Message support — higher per-key ceilings are available.

Core endpoints (JAP-compatible)
POST/api/japaction =services

List available services with current rates and min/max quantities.

POST/api/japaction =add

Create an order. Returns the order id you poll with action=status.

POST/api/japaction =status

Live order status: charge, current state, and remaining quantity.

POST/api/japaction =refill

Request a free refill inside the 90-day window on eligible subscriber orders.

Placing an order: action=add

Send these fields to /api/jap as form data or JSON. Service ids come from action=services.

Every service

keyrequired
Your API key.
actionrequired
Always add.
servicerequired
Service id from action=services.
linkrequired
Channel, post or bot link, e.g. https://t.me/yourchannel.
quantityrequired
How many to order. For auto-view subscriptions this is views per post.

Auto-view subscriptions (Fast Daily Views, Instant Daily Views)

These feed views to every new post in the channel for a set number of days. The price depends on all three fields below — if you leave one out, its default is used and priced.

daysoptional
How many days the subscription runs, 1–365. Default 7.
postsPerDayoptional
How many new posts per day to cover, 1–100. Default 1: if the channel posts more often, set this, otherwise only one post a day gets views. postCount is accepted as an alias.
speedoptional
Delivery speed step, 1–4. Default 1.
Example: 1,000 views on each of up to 20 posts a day, for 30 days
POST https://telegram.software/api/jap

key=YOUR_API_KEY&action=add&service=1008&link=https://t.me/yourchannel&quantity=1000&days=30&postsPerDay=20

Values outside these ranges are refused with an error before anything is charged.

Panel scripts that render the JAP Subscriptions form can send username, min, max (views per post), posts (total posts over the term) and expiry (dd/mm/yyyy) instead.

Order status, in one paragraph.

Poll action=status with your order id. You get one of:Pending,In progress,Completed,Paused,Canceled. Statuses are plain strings — most panel scripts match on them directly. Polling once a minute per order stays well inside the rate limit.

Free tools while you build

We publish a small set of free browser tools for the Telegram API: MarkdownV2 and HTML message formatting with correct UTF-16 entity offsets, a t.me and tg:// link generator, and a rich message builder for Bot API 10.3. No account, no upload, and we never ask for a bot token.

Open the free tools

Your keys live in the dashboard.

Create, name, and revoke API keys from the dashboard — one key works across every endpoint format. Sign in to manage yours.

Manage API keys