Developer API · Available now

AI Text Detector API

Send text and receive a document-level AI score with sentence-level results that show which passages need a closer look.

  • 1 credit / word
  • Sync + async
  • Sentence-level items
POST /api/detector/ 200 OK
EXAMPLE REQUEST
{
  "content": "Generative systems
  can produce fluent prose..."
}
EXAMPLE RESULT
ai_score
0.87
result
"ai"
word_count
18
1 sentence item returned 18 credits charged

Response anatomy

Show the score and the sentence-level results.

Each response includes the document result, sentence-level scores, execution details and remaining credits. You can present the overall score without losing the passages that contributed to it.

EXAMPLE RESPONSE · 200 OK · application/json
{
  "status": "completed",
  "task_id": "...",
  "result": "ai",
  "ai_score": 0.87,
  "items": [
    {
      "text": "Generative systems can...",
      "prediction": "ai-generated",
      "ai_score": 0.87
    }
  ],
  "word_count": 18,
  "credits_remaining": 1982
}
Sentence 01

Generative systems can produce fluent academic prose.

Likely AI 87%
Sentence 02

The reviewer still needs the source context and drafting history.

Likely human 18%
Document result 87%

Example document-level result

Delivery modes

Choose synchronous or asynchronous delivery.

With no asynchronous fields, the endpoint returns the completed result with 200 OK. Add poll, callback_url or both to receive 202 Accepted and process the result asynchronously.

01 / Sync

Immediate response

No async fields

Receive the completed result in the HTTP response with status 200.

POST → analysis → result
02 / Poll

Check job status

poll: true

Receive a task ID with status 202, then retrieve the completed result from the Jobs API.

POST → task_id → GET job
03 / Webhook

Receive a callback

callback_url: "https://..."

Send the result to your endpoint and optionally verify it with your webhook secret.

POST → 202 → callback

Text detection request

Send text with one required field.

The only required field is content. Use the optional asynchronous fields when the analysis should continue after the initial request ends.

Open request parameters →
POST /api/detector/
curl -X POST \
  https://developer-portal.proofademic.ai/api/detector/ \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "content": "Text to analyze",
    "poll": true
  }'
application/json scope: ai_detector
01 Authorize Send a scoped key
02 Submit Send the text
03 Inspect Read the score and sentences
04 Decide Send flagged passages for review

Operational details

Handle detector requests and API errors.

Validate the content field, use a key with the correct scope and handle authentication, credit and rate-limit errors in your integration.

Input contract

Text request

Required
content string
Optional
callback_url, poll, webhook_secret
Scope
ai_detector
Detector reference ↗
Response detail

Score plus sentence analysis

Each completed response provides a document result, AI score and sentence-level items for review.

Result AI or human Score 0 to 1 Items Per sentence Modes Sync or async
Request limits

Current account limits

POST /api/detector/
Check the current reference Review the current limits for your account
Review current limits ↗

Use cases

Use AI text detection in review workflows.

Research and guidance

Learn how to interpret AI detection results.

View all articles →

API questions

Before your first text request.

Start building

Add AI text detection to your workflow.

Create an API key, send text and review the document score with its sentence-level results.