Kiraru API
Integrate AI detection and text humanization directly into your applications with the Kiraru API.
API Base URL
All API requests must be sent to the production API endpoint below.
Authentication
API requests are authenticated using Bearer tokens. You can generate and manage your API keys from your API Dashboard.
Authorization: Bearer kr_prod_xxxxxxxxxxxxxxxxx
Keep your API key private. Never expose it in client-side code, public repositories, or browser applications.
Quick Start
Add the key
Use the Authorization: Bearer YOUR_API_KEY header.
Send requests
Call the /api/detect or /api/humanize endpoints.
Detect Endpoint
/api/detectAnalyze text and estimate whether it was generated by AI.
Headers
Content-Type: application/json Authorization: Bearer YOUR_API_KEY
Request Body
{
"text": "Your text to analyze"
}Response Example
{
"id": "example-id",
"result": "AI",
"humanScore": 12,
"message": "Text analysis completed successfully."
}Humanize Endpoint
/api/humanizeRewrite text to make it sound more natural and human-like.
Headers
Content-Type: application/json Authorization: Bearer YOUR_API_KEY
Request Body
{
"text": "Your text to humanize"
}Response Example
{
"success": true,
"result": "The humanized version of your text..."
}Code Examples
cURL
Detect API
curl -X POST https://www.kiraru.com/api/detect \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Your text here"}'Humanize API
curl -X POST https://www.kiraru.com/api/humanize \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Your text here"}'JavaScript (Fetch)
Detect API
const response = await fetch("https://www.kiraru.com/api/detect", {
method: "POST",
headers: {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
},
body: JSON.stringify({
text: "Your text here"
})
});
const data = await response.json();
console.log(data);Humanize API
const response = await fetch("https://www.kiraru.com/api/humanize", {
method: "POST",
headers: {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
},
body: JSON.stringify({
text: "Your text here"
})
});
const data = await response.json();
console.log(data);Rate Limits & Quotas
Rate Limits
- API Key30 req / min
- Authenticated User15 req / min
- Guest User5 req / min
The 30 requests/minute limit applies to all requests authenticated with an API key.
Payload & Word Quotas
- Max Payload Size50,000 chars
- Guest Word Quota1,000 / day
API usage counts toward your account's plan quota. Your API requests and website usage share the applicable word usage allowance.
Error Responses
| Status Code | Description |
|---|---|
| 400 | Invalid request (e.g. missing text, exceeds character limit) |
| 401 | Unauthorized / Invalid API key |
| 403 | Usage quota exceeded / API access not available |
| 429 | Rate limit exceeded |
| 500 | Internal server error |
| 504 | AI provider timeout |