TrueCheckIA API
Detect AI-generated content at scale. Integrate our multi-layer analysis technology into your applications with just a few lines of code.
Get Started in 3 Steps
Integrate AI detection into your application in less than 5 minutes
Create Your Account
Sign up for free and access the dashboard to generate your API Key
Install the SDK
Use our SDK or make direct calls via cURL, Python, or JavaScript
Make Your First Analysis
Submit an image or video and receive detailed results in seconds
Authentication
All API requests must include your API Key in theAuthorization header.
Bearer Token: Use the formatBearer YOUR_API_KEY
HTTPS Required: All requests must use HTTPS
Never expose: Do not include your API Key in frontend code
GET /api/v1/status/job_123 HTTP/1.1
Host: api.truecheckia.com
Authorization: Bearer tcia_live_abc123xyz789...
Content-Type: application/jsonCode Examples
import requests
API_KEY = "YOUR_API_KEY"
# Analyze an image
response = requests.post(
"https://api.truecheckia.com/v1/analyze",
headers={"Authorization": f"Bearer {API_KEY}"},
files={"file": open("image.jpg", "rb")},
data={"type": "image"}
)
result = response.json()
print(f"AI Score: {result['score']}%")
print(f"Recommendation: {result['recommendation']}")Endpoints
/api/v1/analyzeSubmit an image or video for AI content analysis
Parameters
fileFile (multipart)type"image" | "video"asyncboolean (optional)Response
{
"success": true,
"jobId": "job_abc123",
"status": "processing"
}/api/v1/status/:jobIdCheck the status of an ongoing analysis
Use this endpoint to check if the analysis has completed. The status can be: queued,processing,completed orfailed.
curl https://api.truecheckia.com/v1/status/job_abc123 \
-H "Authorization: Bearer YOUR_API_KEY"/api/v1/result/:jobIdGet the complete analysis results
Returns detailed results including score, evidences, and recommendation.
{
"success": true,
"jobId": "job_abc123xyz",
"status": "completed",
"result": {
"score": 87,
"confidence": "HIGH",
"recommendation": "REJECT",
"isAiGenerated": true,
"evidences": [
{
"type": "AI_DETECTOR_CONSENSUS",
"severity": 0.9,
"description": "Multiple detectors agree: likely AI-generated",
"layer": "ai_ensemble"
},
{
"type": "VISUAL_NOISE_UNIFORM",
"severity": 0.7,
"description": "Uniform noise pattern detected",
"layer": "visual"
}
],
"processingTimeMs": 2340
}
}Evidence Types
Our multi-layer analysis detects various types of evidence that indicate whether the content was generated by AI:
Layer 1: Metadata
Layer 2: Visual
Layer 3: Semantic
Layer 4: AI Ensemble
Layer 5: Provenance
Layer 6: Statistical
Official SDKs
Use our official SDKs to integrate the TrueCheckIA API into your application quickly and securely.
Sandbox Environment
Use our test environment to develop and test your integration at no cost. Test API Keys have the prefix tcia_test_.
No cost: All analyses in test mode are free
Isolated data: Test data never affects production
Sample images: Use our test images to validate
# Test Environment
curl -X POST https://sandbox.truecheckia.com/v1/analyze \
-H "Authorization: Bearer tcia_test_abc123..." \
-F "file=@test_image.jpg"
# Simulated response with sample data
{
"success": true,
"jobId": "test_job_xyz",
"environment": "sandbox"
}Error Reference
The API uses conventional HTTP codes to indicate the success or failure of requests.
| Code | Name | Description |
|---|---|---|
| 200 | OK | Request processed successfully |
| 201 | Created | Resource created successfully |
| 400 | Bad Request | Invalid or missing parameters |
| 401 | Unauthorized | Invalid or missing API Key |
| 403 | Forbidden | No permission for this resource |
| 404 | Not Found | Resource not found |
| 429 | Rate Limited | Request limit exceeded |
| 500 | Server Error | Internal server error |
Error Response Example
{
"success": false,
"error": {
"code": "invalid_api_key",
"message": "The provided API Key is invalid or expired.",
"doc_url": "https://docs.truecheckia.com/errors/invalid_api_key"
}
}Webhooks
Receive real-time notifications when analyses are completed. Configure webhooks in your dashboard to receive events automatically.
Available Events
analysis.completed—Analysis finished successfullyanalysis.failed—Analysis failed or timed outbatch.completed—Batch of analyses completedquota.warning—Usage quota reaching limitPayload Example
{
"id": "evt_abc123",
"type": "analysis.completed",
"created": 1705766400,
"data": {
"jobId": "job_xyz789",
"score": 87,
"recommendation": "REJECT"
}
}Signature Verification
Always verify the HMAC-SHA256 signature in the X-TrueCheckIA-Signature header to ensure authenticity.
Changelog
- NewAPI v1.0 release with 6 analysis layers
- NewSupport for image analysis (JPEG, PNG, WebP)
- NewWebhooks for real-time notifications
- NewOfficial SDKs for Python, Node.js, PHP, and Ruby
- NewPrivate beta with selected partners
- ImprovedLatency optimization to < 2s
- FixedFixed false positives on HDR photos
Rate Limits & Pricing
Pro
1,000 analyses/month
- Multiple API Keys
- Priority support
- 6 analysis layers
- Webhooks
Ready to Get Started?
Create your free account and start detecting AI content in minutes.