Cehpoint AI API
Zero-friction chat completions. No auth. One model. Unlimited possibilities.
India-built, OpenAI-compatible, and made to grow with you. Start free with no key, scale to the Commercial API for production, and request any capability your team needs — we ship customer-requested features every month.
Endpoint
Send requests to this URL. No authentication headers needed. Just Content-Type: application/json and your messages.
Model
| Model | Description |
|---|---|
cehpoint-ai | The only model — smart, fast, general-purpose. Use it for everything. |
"model": "cehpoint-ai" in your requests. Other models will return a 400 error.Request Parameters
| Param | Type | Default | Required | Description |
|---|---|---|---|---|
model | string | — | Yes | cehpoint-ai |
messages | array | — | Yes | Array of {role, content} objects |
temperature | number | 1.0 | No | 0–2. Lower = more precise |
max_tokens | number | 4096 | No | Max response length |
stream | bool | false | No | SSE streaming |
The only two things you must send are model and messages. Everything else is optional.
Message Roles
| Role | Purpose |
|---|---|
system | Sets assistant behavior and constraints |
user | Your questions or instructions |
assistant | Previous AI replies for multi-turn context |
Use system to control personality/tone. Use assistant for follow-up conversations.
Response Format
{
// standard chat completion response
"model": "cehpoint-ai",
"provider": "ai-api.cehpoint.co.in",
"choices": [{
"message": { "content": "Hello!" },
"finish_reason": "stop"
}],
"usage": { "total_tokens": 52 }
}
Standard JSON response structure. The provider field is set to our domain. model is always cehpoint-ai.
Error Codes
| Code | Cause |
|---|---|
400 | Missing or unknown model — make sure model is cehpoint-ai |
502 | Upstream provider unavailable — try again in a few seconds |
Limits
| Limit | Value |
|---|---|
| Max tokens per response | 4096 |
| Rate limit | None enforced (please use responsibly) |
| Authentication | None required |
Commercial API
The public endpoint above is free and key-less for builders and prototypes. When you ship to production — with commercial-use rights, higher throughput, dedicated support, GST invoicing and your own licence key — move to the Commercial API. It's the same OpenAI-compatible interface and the same cehpoint-ai model, just an authenticated, metered base URL. See plans & get a key →
Authentication
Unlike the free endpoint, every commercial request is authenticated with your licence key as a Bearer token:
Keys begin with cehk_ and are issued from your dashboard once a licence is active. Treat a key like a password — keep it server-side. Requests without a valid key return 401 Unauthorized.
Endpoint & migration
Same request and response shape as the free API — migrating is two lines: point base_url at /capi/v1 and add your key. Any OpenAI SDK or existing OpenAI integration works unchanged.
# Drop-in: same OpenAI SDK, two lines changed from openai import OpenAI client = OpenAI( base_url="https://ai-api.cehpoint.co.in/capi/v1", api_key="cehk_your_licence_key", ) resp = client.chat.completions.create( model="cehpoint-ai", messages=[{"role": "user", "content": "Hello"}], ) # set stream=True for SSE, exactly like the free endpoint
| Endpoint | Method | Purpose |
|---|---|---|
/capi/v1/chat/completions | POST | Chat completions — streaming & non-streaming |
/capi/v1/models | GET | List models available to your licence |
messages, temperature, max_tokens, stream and the system/user/assistant roles all behave exactly as documented above for the free API.Plans & limits
Pricing is usage-sized — tell us your expected volume and our AI sizes a plan and quotes you in minutes. Every commercial plan includes commercial-use rights, dedicated support and a GST invoice for India.
| Plan | Best for | Requests / month | Rights & extras |
|---|---|---|---|
| Free (public) | Prototypes, side-projects, learning | Fair-use · no key | Non-commercial |
| Monthly commercial | Growing products in production | Custom — sized to you | Commercial-use · support · GST |
| Lifetime licence | One-time purchase / on-prem | Custom | Perpetual commercial-use |
| Enterprise | Scale, SLAs, custom features | Custom + SLA | Everything + roadmap input |
Use Cases
Every example below was tested live against the API. Pick a category, copy the code, and run it.
curl https://ai-api.cehpoint.co.in/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "cehpoint-ai",
"messages": [{"role": "user", "content": "Explain quantum computing in 3 sentences."}]
}'import requests
resp = requests.post(
"https://ai-api.cehpoint.co.in/v1/chat/completions",
json={
"model": "cehpoint-ai",
"messages": [{"role": "user", "content": "Explain quantum computing in 3 sentences."}]
},
)
print(resp.json()["choices"][0]["message"]["content"])const resp = await fetch("https://ai-api.cehpoint.co.in/v1/chat/completions", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
model: "cehpoint-ai",
messages: [{ role: "user", content: "Explain quantum computing in 3 sentences." }],
}),
});
const data = await resp.json();
console.log(data.choices[0].message.content);from openai import OpenAI
client = OpenAI(
base_url="https://ai-api.cehpoint.co.in/v1",
api_key="x",
)
resp = client.chat.completions.create(
model="cehpoint-ai",
messages=[{"role": "user", "content": "Explain quantum computing in 3 sentences."}],
)
print(resp.choices[0].message.content)curl https://ai-api.cehpoint.co.in/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "cehpoint-ai",
"messages": [{"role": "user", "content": "Write a Python class for a banking account with deposit, withdraw, and balance check. Include error handling."}]
}'import requests
resp = requests.post(
"https://ai-api.cehpoint.co.in/v1/chat/completions",
json={
"model": "cehpoint-ai",
"messages": [{"role": "user", "content": "Write a Python class for a banking account with deposit, withdraw, and balance check. Include error handling."}]
},
)
print(resp.json()["choices"][0]["message"]["content"])const resp = await fetch("https://ai-api.cehpoint.co.in/v1/chat/completions", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
model: "cehpoint-ai",
messages: [{ role: "user", content: "Write a Python class for a banking account with deposit, withdraw, and balance check. Include error handling." }],
}),
});
const data = await resp.json();
console.log(data.choices[0].message.content);from openai import OpenAI
client = OpenAI(
base_url="https://ai-api.cehpoint.co.in/v1",
api_key="x",
)
resp = client.chat.completions.create(
model="cehpoint-ai",
messages=[{"role": "user", "content": "Write a Python class for a banking account with deposit, withdraw, and balance check. Include error handling."}],
)
print(resp.choices[0].message.content)curl https://ai-api.cehpoint.co.in/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "cehpoint-ai",
"messages": [
{"role": "system", "content": "You are a friendly support agent."},
{"role": "user", "content": "My order has not arrived yet."}
]
}'import requests
resp = requests.post(
"https://ai-api.cehpoint.co.in/v1/chat/completions",
json={
"model": "cehpoint-ai",
"messages": [
{"role": "system", "content": "You are a friendly support agent."},
{"role": "user", "content": "My order has not arrived yet."}
]
},
)
print(resp.json()["choices"][0]["message"]["content"])const resp = await fetch("https://ai-api.cehpoint.co.in/v1/chat/completions", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
model: "cehpoint-ai",
messages: [
{ role: "system", content: "You are a friendly support agent." },
{ role: "user", content: "My order has not arrived yet." }
],
}),
});
const data = await resp.json();
console.log(data.choices[0].message.content);from openai import OpenAI
client = OpenAI(
base_url="https://ai-api.cehpoint.co.in/v1",
api_key="x",
)
resp = client.chat.completions.create(
model="cehpoint-ai",
messages=[
{"role": "system", "content": "You are a friendly support agent."},
{"role": "user", "content": "My order has not arrived yet."}
],
)
print(resp.choices[0].message.content)curl https://ai-api.cehpoint.co.in/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "cehpoint-ai",
"messages": [{"role": "user", "content": "Write a professional email apologizing for a delayed delivery and offering a 10% discount."}]
}'import requests
resp = requests.post(
"https://ai-api.cehpoint.co.in/v1/chat/completions",
json={
"model": "cehpoint-ai",
"messages": [{"role": "user", "content": "Write a professional email apologizing for a delayed delivery and offering a 10% discount."}]
},
)
print(resp.json()["choices"][0]["message"]["content"])const resp = await fetch("https://ai-api.cehpoint.co.in/v1/chat/completions", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
model: "cehpoint-ai",
messages: [{ role: "user", content: "Write a professional email apologizing for a delayed delivery and offering a 10% discount." }],
}),
});
const data = await resp.json();
console.log(data.choices[0].message.content);from openai import OpenAI
client = OpenAI(
base_url="https://ai-api.cehpoint.co.in/v1",
api_key="x",
)
resp = client.chat.completions.create(
model="cehpoint-ai",
messages=[{"role": "user", "content": "Write a professional email apologizing for a delayed delivery and offering a 10% discount."}],
)
print(resp.choices[0].message.content)curl https://ai-api.cehpoint.co.in/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "cehpoint-ai",
"messages": [{"role": "user", "content": "Write a 50-word product description for a premium leather wallet."}]
}'import requests
resp = requests.post(
"https://ai-api.cehpoint.co.in/v1/chat/completions",
json={
"model": "cehpoint-ai",
"messages": [{"role": "user", "content": "Write a 50-word product description for a premium leather wallet."}]
},
)
print(resp.json()["choices"][0]["message"]["content"])const resp = await fetch("https://ai-api.cehpoint.co.in/v1/chat/completions", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
model: "cehpoint-ai",
messages: [{ role: "user", content: "Write a 50-word product description for a premium leather wallet." }],
}),
});
const data = await resp.json();
console.log(data.choices[0].message.content);from openai import OpenAI
client = OpenAI(
base_url="https://ai-api.cehpoint.co.in/v1",
api_key="x",
)
resp = client.chat.completions.create(
model="cehpoint-ai",
messages=[{"role": "user", "content": "Write a 50-word product description for a premium leather wallet."}],
)
print(resp.choices[0].message.content)curl https://ai-api.cehpoint.co.in/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "cehpoint-ai",
"messages": [{"role": "user", "content": "Extract names, dates, amounts as JSON: John paid $150 on March 5th, Sarah paid $75 on March 12th."}]
}'import requests
resp = requests.post(
"https://ai-api.cehpoint.co.in/v1/chat/completions",
json={
"model": "cehpoint-ai",
"messages": [{"role": "user", "content": "Extract names, dates, amounts as JSON: John paid $150 on March 5th, Sarah paid $75 on March 12th."}]
},
)
print(resp.json()["choices"][0]["message"]["content"])const resp = await fetch("https://ai-api.cehpoint.co.in/v1/chat/completions", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
model: "cehpoint-ai",
messages: [{ role: "user", content: "Extract names, dates, amounts as JSON: John paid $150 on March 5th, Sarah paid $75 on March 12th." }],
}),
});
const data = await resp.json();
console.log(data.choices[0].message.content);from openai import OpenAI
client = OpenAI(
base_url="https://ai-api.cehpoint.co.in/v1",
api_key="x",
)
resp = client.chat.completions.create(
model="cehpoint-ai",
messages=[{"role": "user", "content": "Extract names, dates, amounts as JSON: John paid $150 on March 5th, Sarah paid $75 on March 12th."}],
)
print(resp.choices[0].message.content)curl https://ai-api.cehpoint.co.in/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "cehpoint-ai",
"messages": [{"role": "user", "content": "List 3 AI applications in healthcare diagnostics."}]
}'import requests
resp = requests.post(
"https://ai-api.cehpoint.co.in/v1/chat/completions",
json={
"model": "cehpoint-ai",
"messages": [{"role": "user", "content": "List 3 AI applications in healthcare diagnostics."}]
},
)
print(resp.json()["choices"][0]["message"]["content"])const resp = await fetch("https://ai-api.cehpoint.co.in/v1/chat/completions", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
model: "cehpoint-ai",
messages: [{ role: "user", content: "List 3 AI applications in healthcare diagnostics." }],
}),
});
const data = await resp.json();
console.log(data.choices[0].message.content);from openai import OpenAI
client = OpenAI(
base_url="https://ai-api.cehpoint.co.in/v1",
api_key="x",
)
resp = client.chat.completions.create(
model="cehpoint-ai",
messages=[{"role": "user", "content": "List 3 AI applications in healthcare diagnostics."}],
)
print(resp.choices[0].message.content)50 Complete Examples
cURL
curl https://ai-api.cehpoint.co.in/v1/chat/completions \ -H "Content-Type: application/json" \ -d '{ "model": "cehpoint-ai", "messages": [{"role": "user", "content": "Hello!"}] }'
Python
import requests resp = requests.post( "https://ai-api.cehpoint.co.in/v1/chat/completions", json={"model": "cehpoint-ai", "messages": [{"role": "user", "content": "Hello!"}]}, ) print(resp.json()["choices"][0]["message"]["content"])
JavaScript (Fetch)
const resp = await fetch("https://ai-api.cehpoint.co.in/v1/chat/completions", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ model: "cehpoint-ai", messages: [{ role: "user", content: "Hello!" }], }), }); const data = await resp.json(); console.log(data.choices[0].message.content);
OpenAI Python SDK
from openai import OpenAI client = OpenAI( base_url="https://ai-api.cehpoint.co.in/v1", api_key="x", ) resp = client.chat.completions.create( model="cehpoint-ai", messages=[{"role": "user", "content": "Hello!"}], ) print(resp.choices[0].message.content)
base_url to our endpoint and anything as api_key. No token needed.