Developers
The Pothikrit API
Datasets, models and research, all reachable from your own programs. Take a key and start.
Start here
Send your key in the X-Api-Key header. Without one you can still read everything that is public — it simply is not counted for you.
curl -H "X-Api-Key: $POTHIKRIT_KEY" \
"https://pothikrit.nagorikwatch.com/api/v1/catalog/artefacts?kind=dataset&q=dhan"Python SDK
pip install pothikrit — listing, search, downloads and running a model, in a few lines.
from pothikrit import Pothikrit
client = Pothikrit(base_url="https://pothikrit.nagorikwatch.com", api_key="pat_…")
for dataset in client.datasets(q="ধান"):
print(dataset.title_bn, dataset.slug)
# Trying a model out
print(client.run("bangla-asr", "আজ রংপুরে বৃষ্টি হচ্ছে।").output)Three kinds of key
pat_…Personal token
Acts as you — for scripts, notebooks and your own server.
app_…Application key
Acts as an organization's application; keep it secret, keep it on a server.
pub_…Publishable key
Safe to ship in a browser — it can read, never write.
A key is shown once; we keep only its hash. Lose it and you revoke it and make another.
Plans and limits
Every organization is on a plan; limits are counted per application.
| Plan | Per minute | Per day | Per month | Applications | Keys per app | Model runs a day |
|---|---|---|---|---|---|---|
| OpenFor everyone registered — learning, experiments and small projects. | 60 | 5,000 | 50K | 2 | 3 | 50 |
| ResearchFor verified teams at universities and research institutes. | 300 | 50K | 1M | 10 | 10 | 500 |
| PartnerFor government offices and partner organizations, by agreement. | 1,200 | 500K | 10M | 50 | 20 | 5,000 |
Ask a platform administrator if you need the research or partner plan.
What happens at the limit
Over a limit the answer is 429 with a Retry-After header saying how many seconds to wait. At 80% and 100% of the monthly quota, the application's owner is e-mailed.
HTTP/1.1 429 Too Many Requests
Retry-After: 27
{"error": {"code": "quota_exhausted",
"message": "…",
"details": {"window": "month", "limit": 50000, "used": 50000}}}