Quickstart
Pre-release v1, published 2026-09-14. This page commits to the shape of the API, not to a
date. We will build exactly what is documented here. The shape can still change until
2026-10-14; after that, changes follow Versioning and stability.
The banner comes off one page at a time as each route goes live. While it is here, build against the contract and assume the route is not callable yet.
Before you start
API access comes with a plan. You need Commercial, Professional, or the Instagram API plan. See pricing.
With one of those active, set up the rest at chat.parstechai.com:
Creating and deleting robots, and connecting an Instagram service, are partner operations. If you need them, contact sales.
The one thing to know first
A service always belongs to a robot. You cannot connect an Instagram page on its own. Create the robot, then attach the service to it.
If you manage many end customers, create one robot per customer. That is what keeps one customer’s conversations out of another’s.
1. Create a robot
external_id is yours. Put your own customer id in it and we return it on every event, so you
never need a lookup table.
Each robot consumes one unit of your plan’s capacity. When it runs out you get
403 capacity_exhausted. Deleting a robot frees capacity immediately.
2. Start the service connection
This does not connect anything yet. Instagram requires the page owner to authorise in their
own browser. Send them to authorisation_url. The channel activates when they finish.
Read Connect Instagram before you build this flow. There is a redirect back to your panel that has to be configured first.
3. Confirm the service is live
4. Verify your first event
Events arrive at the webhook URL you set in your panel. Verify the signature before you trust a payload.
The signature arrives in X-ParsChat-Signature as the hex HMAC-SHA256 of the raw request body,
keyed with your secret.
Verify against the raw bytes, before any JSON parsing. Re-serialising the payload changes key order and whitespace, and the signature will never match.
Reply 2xx as soon as you have stored the event. Anything else, including a timeout, is retried.
See Webhook events.
Common errors
Every code is listed in Errors.
Next
The full redirect flow, and the return URL you configure first.
Send text, files and voice notes back to the end customer.
Every event type, full payload contract, retry behaviour.
Keyword triggers, public replies, follow gating, targeting one post.
Every endpoint, with a live playground.