The IntegerAI REST API gives you programmatic access to the full Credibility Suite — fact-checking, bias detection, summarisation, headline analysis, and readability scoring. Submit text; receive structured JSON.
Base URL: https://api.integerai.org
All API requests require a bearer token in the Authorization header. Generate API keys from your dashboard.
Authorization: Bearer ia_live_your_api_key
/v1/*) is only available on Pay-as-you-go and Enterprise plans. The Base plan is dashboard-only — keys created on a Base account will authenticate but receive a 403 plan_upgrade_required response from every /v1/* endpoint. See Rate limits & plan access.IntegerAI uses word credits: 1 credit = 100 words of submitted text, rounded up. This applies to fact-check, bias detector, summariser, and headline analyser. PAYG rate: $0.012 per 100 words. Enterprise: $0.008. The readability endpoint is purely algorithmic and is always free — it never charges credits.
| Document size | Word credits | PAYG cost ($0.012) |
|---|---|---|
| 100 words | 1 | $0.012 |
| 500 words | 5 | $0.060 |
| 1,000 words | 10 | $0.120 |
| 3,000 words | 30 | $0.360 |
Every response includes word_credits_charged so you can reconcile usage in your own system.
/v1/fact-checkSubmit a document; receive a credibility score, an overall verdict, and a per-claim breakdown with supporting/contradicting evidence.
| Field | Type | Required | Description |
|---|---|---|---|
| document | string | Yes | The full text to fact-check. Must be 10–5,000 words. |
| source_region | string | No | Override your dashboard's default source region. Allowed values: "GLOBAL", "INDIA", "US_CA", "UK_EU", "MIDDLE_EAST", "SEA", "LATAM". Defaults to the user account's dashboard setting, falling back to "GLOBAL" if unset. |
| doc_type | string | No | Override your dashboard's default document type. Allowed values: "NEWS", "RESEARCH", "BLOG", "SOCIAL", "PRESS_RELEASE", "SPEECH", "HEALTH", "LEGAL". Defaults to the user account's dashboard setting, falling back to "NEWS" if unset. |
{
"id": "cm3x7k2p40001abc123def456",
"document_word_count": 312,
"word_credits_charged": 4,
"source_region": "GLOBAL",
"doc_type": "NEWS",
"credibility_score": 0.84,
"overall_verdict": "mostly_true",
"summary": "The article's core climate claims are accurate and supported by NASA and NOAA data.",
"claims": [
{
"claim": "2023 was the hottest year on record globally",
"verdict": "true",
"confidence": 0.99,
"explanation": "Confirmed by NASA, NOAA, and Copernicus.",
"evidence": [
{ "point": "NASA confirmed +1.17°C global temperature anomaly", "supports_claim": true }
],
"category": "scientific"
}
],
"usage": { "input_tokens": 892, "output_tokens": 1247, "cost_usd": 0.000571 },
"latency_ms": 3241,
"created_at": "2026-06-29T12:34:56.789Z"
}curl -X POST https://api.integerai.org/v1/fact-check \
-H "Authorization: Bearer ia_live_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"document": "Scientists confirmed that 2023 was the hottest year on record, with average global temperatures reaching 1.45°C above pre-industrial levels."
}'| Verdict | Meaning |
|---|---|
| true | Claim is accurate and well-supported by evidence |
| mostly_true | Core claim is accurate but missing context or has minor inaccuracies |
| false | Claim is demonstrably inaccurate |
| mostly_false | Core claim is inaccurate but contains a kernel of truth |
| disputed | Genuine expert disagreement exists |
| unverifiable | Cannot be verified with available information |
/v1/bias-detectorSubmit a document; receive a political-lean score, a tone classification, loaded phrases, and concrete bias indicators with explanations.
| Field | Type | Required | Description |
|---|---|---|---|
| text | string | Yes | The text to analyse for bias. Must be 20–5,000 words. |
{
"document_word_count": 84,
"word_credits_charged": 1,
"bias_direction": "left",
"bias_score": -42,
"tone": "alarmist",
"tone_score": 71,
"loaded_phrases": ["crippling inflation", "out-of-touch elites"],
"indicators": [
{
"type": "political",
"example": "radical left-wing government",
"explanation": "Loaded political framing rather than neutral description."
}
],
"summary": "The text uses emotionally charged language and one-sided framing typical of left-leaning opinion writing.",
"usage": { "input_tokens": 410, "output_tokens": 312, "cost_usd": 0.000156 },
"latency_ms": 1840
}curl -X POST https://api.integerai.org/v1/bias-detector \
-H "Authorization: Bearer ia_live_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"text": "The radical left-wing government today unveiled yet another bloated spending package..."
}'/v1/summariserSubmit a document and a target format; receive a ready-to-publish summary tailored to that format's conventions.
| Field | Type | Required | Description |
|---|---|---|---|
| text | string | Yes | The article text to summarise. Must be 50–10,000 words. |
| format | string | Yes | One of: executive, twitter, linkedin, newsletter. |
{
"document_word_count": 218,
"word_credits_charged": 3,
"format": "executive",
"content": "- 2023 was confirmed as the hottest year on record\n- Arctic sea ice hit a near-record low\n- CO2 levels reached 422ppm, highest in 3 million years",
"word_count": 28,
"usage": { "input_tokens": 340, "output_tokens": 96, "cost_usd": 0.000114 },
"latency_ms": 1520
}curl -X POST https://api.integerai.org/v1/summariser \
-H "Authorization: Bearer ia_live_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"text": "Scientists have confirmed that 2023 was the hottest year on record globally...",
"format": "executive"
}'/v1/headline-analyserSubmit a headline (and optionally the article body, for accuracy scoring); receive per-dimension scores, a letter grade, issues, strengths, and 5 alternative headlines.
| Field | Type | Required | Description |
|---|---|---|---|
| headline | string | Yes | The headline to analyse. Must be 300 characters or fewer. |
| article_body | string | No | The article body, used to score headline accuracy against the content. |
{
"word_credits_charged": 1,
"original": "You won't believe what scientists just discovered!",
"scores": { "clarity": 3, "seo_friendliness": 2, "engagement": 8, "clickbait_level": 9, "accuracy": -1, "overall": 4.1 },
"grade": "D",
"issues": ["Vague — doesn't say what was discovered", "High clickbait language"],
"strengths": ["Creates curiosity"],
"alternatives": [
"Scientists confirm 2023 was the hottest year on record",
"New climate data reveals record-breaking 2023 temperatures"
],
"latency_ms": 1310
}curl -X POST https://api.integerai.org/v1/headline-analyser \
-H "Authorization: Bearer ia_live_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"headline": "You won'"'"'t believe what scientists just discovered!"
}'/v1/readabilitySubmit any text; receive Flesch Reading Ease and Flesch-Kincaid Grade scores along with detailed document statistics. Purely algorithmic — no model call.
| Field | Type | Required | Description |
|---|---|---|---|
| text | string | Yes | The text to analyse. Must be 10–20,000 words. |
{
"word_credits_charged": 0,
"flesch_reading_ease": 78.4,
"flesch_kincaid_grade": 6.2,
"reading_level": "Easy — 6th grade",
"reading_time_minutes": 0.3,
"avg_sentence_length": 12.7,
"avg_word_length": 4.3,
"word_count": 38,
"sentence_count": 3,
"paragraph_count": 1,
"syllable_count": 54,
"complex_word_count": 2,
"complex_word_percentage": 5
}curl -X POST https://api.integerai.org/v1/readability \
-H "Authorization: Bearer ia_live_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"text": "The city council met on Tuesday to discuss the new park plan."
}'These error codes apply uniformly across all five endpoints.
invalid_api_keyplan_upgrade_requiredAdditional fields: "plan": "BASE"quota_exceededAdditional fields: "credits_used": 5000, "credits_limit": 5000, "credits_needed": 5, "plan": "PAYG"invalid_requestrate_limit_exceededAdditional fields: "retry_after": 60service_error/v1/* endpoint with a Free or Base-plan key returns 403 plan_upgrade_required. Upgrade to Pay-as-you-go or Enterprise to unlock programmatic access.| Plan | Public API access | Rate limit | Monthly word credits |
|---|---|---|---|
| Free | Dashboard only | — | 10 credits (1k words/mo) |
| Base | Dashboard only | — | 1,500 credits (150k words/mo) |
| Pay-as-you-go | Full /v1/* access | 120 req/min | Pre-purchased balance (2-yr expiry) |
| Enterprise | Full /v1/* access | 1,000 req/min | Custom |
Full JavaScript and Python examples for fact-check below — the same request/response pattern (fetch or requests, bearer auth, JSON body) applies to all five endpoints; see each endpoint's cURL example above for its specific payload shape.
curl -X POST https://api.integerai.org/v1/fact-check \
-H "Authorization: Bearer ia_live_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"document": "Scientists confirmed that 2023 was the hottest year on record, with average global temperatures reaching 1.45°C above pre-industrial levels."
}'const response = await fetch('https://api.integerai.org/v1/fact-check', {
method: 'POST',
headers: {
'Authorization': 'Bearer ia_live_your_api_key',
'Content-Type': 'application/json',
},
body: JSON.stringify({
document: articleText, // full news article text, 10–5,000 words
}),
});
const result = await response.json();
console.log(result.overall_verdict); // "mostly_true"
console.log(result.credibility_score); // 0.84
console.log(result.claims.length); // 4
result.claims.forEach(c => {
console.log(c.claim, c.verdict, c.confidence);
});import requests
response = requests.post(
'https://api.integerai.org/v1/fact-check',
headers={
'Authorization': 'Bearer ia_live_your_api_key',
'Content-Type': 'application/json',
},
json={
'document': article_text, # full news article text, 10–5,000 words
}
)
result = response.json()
print(result['overall_verdict']) # mostly_true
print(result['credibility_score']) # 0.84
for claim in result['claims']:
print(claim['claim'], '->', claim['verdict'])