Lafzaly API
Add Roman Urdu and English caption writing to your own app, bot or workflow. Send a topic, get back a hook, caption, call to action and hashtags.
Price
$5 per month (paid in rupees by JazzCash, Easypaisa or bank transfer, about Rs 1,400). Admin accounts get API access for free. Each key can generate up to 500 captions a day.
Get your API key
- Create a free account or log in.
- Open Account and find the Lafzaly API card.
- Click Get API access, pay, and enter your transaction ID. Access is switched on after we check the payment.
- Click Create my key. Copy it right away, because it is shown only once.
Keep your key on your server. Never put it in website or app code that other people can read. If it leaks, create a new key and the old one stops working.
Generate captions
curl -X POST https://lafzaly.xyz/api/captions \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"action": "generate",
"topic": "Eid collection sale, 30 percent off, free delivery",
"platform": "Instagram",
"type": "Promotional",
"tone": "Friendly",
"length": "Medium",
"count": 3,
"language": "Roman Urdu"
}'
Fields
topic(required): what the post is about, 4 to 300 characters. It can be in English, Urdu or Roman Urdu.language:Roman UrduorEnglish.platform: Instagram, TikTok, YouTube Shorts, Facebook, LinkedIn or X.type: Business, Real Estate, Product, Promotional, Educational, Funny, Motivation, Personal, Story or Other.tone: Casual, Professional, Funny, Emotional, Viral, Friendly or Powerful.length: Short, Medium or Long.count: 1 to 5 captions per request.
Response
{
"captions": [
{
"hook": "...",
"body": "...",
"cta": "...",
"hashtags": ["#EidSale", "#ShopPakistan"]
}
],
"usage": { "used": 3, "limit": 500, "resetsAt": "2026-11-01T00:00:00.000Z" }
}
Errors
400: the topic is missing or too short.429: the daily limit was reached. It resets at midnight UTC.503: caption writing is temporarily unavailable. Try again in a minute.
If your key is wrong or its month has ended, the request is treated like a free visitor request and limited to 10 captions a day, so check the usage.limit value in the response.
Questions
Need more than 500 captions a day or a different plan? See the contact page.