Choose the checks your service needs
Use /demo or Workspace → Submit images to test real jobs. Choose manual checks or a saved workflow. The playground uses POST /api/v1/jobs for URLs or POST /api/v1/jobs/upload for files and uses your normal quotas; there is no separate demo detection algorithm.
GET /api/v1/capabilities lists configured availability for six check IDs: five defaults plus optional, experimental ai_generated. Configured availability is not a live health guarantee. Unselected and unsupported checks are not evaluated.
Upload static JPEG, PNG or WebP files, or use approved public HTTPS URLs. Up to 8 images, 10 MiB per file, 16 megapixels per image and 20 MiB total per upload. Blur/redaction and image transforms are not supported.
Save reusable rules
Workspace → Workflows lets you name a ruleset, choose checks and set review and block thresholds for adult content and other checks. Every threshold is between 0 and 1 and each review threshold must be below its block threshold. Sensitive-document and AI-generated signals remain review-only; AI detection is experimental and does not prove origin.
Workflows belong to the customer who creates them. Each update increments a version. Disable a workflow to prevent new submissions; up to 100 workflows can be stored per customer.
{
"name": "Product images",
"checks": [
"adult_nsfw",
"weapon"
],
"thresholds": {
"nsfw_review": 0.55,
"nsfw_block": 0.82,
"vision_review": 0.25,
"vision_block": 0.5
}
}Submit by workflow ID
Use workflow_id instead of checks; sending both is rejected. The job stores the resolved checks, thresholds, name and version at admission. Later workflow edits cannot change queued jobs or existing results.
Retry the same body and Idempotency-Key after uncertain network failures. An exact retry returns the original job even if the workflow has since changed or been disabled.
{
"reference": "product-123",
"workflow_id": "replace-with-your-workflow-uuid",
"images": [
{
"url": "https://media.example.com/photo.jpg"
}
]
}A completed result has block, review or no_signal decisions. No_signal does not mean universally safe. Failed jobs need review.