Create Batch
Create a new batch verification job using POST /v1/batch.
Create Batch
Create a new batch job to verify multiple content items.
POST
/v1/batchSubmit items for batch verification. Returns 202 Accepted with batch ID.
Batch processing requires a Pro or Enterprise plan.
Request Body
Parameters
| Parameter | Type | Description |
|---|
Verification Options
Fine-tune verification behavior for all batch items with the optional options object:
| Option | Type | Description |
|---|---|---|
timeout | number | Timeout per item in ms (1000-300000). Default: 30000 |
minConfidence | number | Minimum confidence threshold (0-1). Used with retryOnLowConfidence |
acceptThreshold | number | Override default accept threshold (0.95) |
escalateThreshold | number | Override default escalate threshold (0.5) |
maxRetries | number | Per-paradigm retry count (0-5) |
retryOnLowConfidence | boolean | Retry all paradigms if confidence < minConfidence |
Note: acceptThreshold must be greater than escalateThreshold. Using retryOnLowConfidence requires minConfidence to be set.
Available Methods
| Method | Description | Plan Required |
|---|---|---|
semantic | Embedding similarity checks | Free |
reasoning | LLM chain-of-thought analysis | Free |
tool | Web search grounding | Pro |
biprm | Bidirectional reasoning | Pro |
ensemble | Multi-model voting | Pro |
entropy | Semantic consistency | Pro |
formal | Mathematical verification | Enterprise |
Example Request
Using File Upload
# First upload the file
curl -X POST https://api.check.ai/v1/batch/upload \
-H "Authorization: Bearer vfy_your_api_key" \
-F "file=@claims.csv"
# Response: { "fileId": "abc123", ... }
# Then create batch with fileId
curl -X POST https://api.check.ai/v1/batch \
-H "Authorization: Bearer vfy_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"fileId": "abc123",
"methods": { "reasoning": 1 }
}'Response
Success Response (202 Accepted)
{
"id": "batch_abc123def456",
"status": "processing",
"totalItems": 2,
"message": "Batch created successfully. Items are being processed."
}Validation Error Response (400)
{
"id": "batch_xyz789",
"status": "failed",
"validationErrors": [
{ "row": 1, "error": "Content is required" },
{ "row": 3, "error": "Content exceeds maximum length (50000 chars)" }
],
"message": "2 validation error(s) found"
}Error Responses
400 Bad Request
{
"error": {
"code": "validation_error",
"message": "Either items array or fileId must be provided"
}
}402 Payment Required
{
"error": {
"code": "quota_exceeded",
"message": "Batch processing is not available on the free plan. Please upgrade to Pro or Enterprise."
}
}404 Not Found (when using fileId)
{
"error": {
"code": "not_found",
"message": "File not found, expired, or already used. Please upload the file again."
}
}