Our AI detection models just got upgraded. They now catch ChatGPT and Claude in student code more accurately than ever. See what's new
Developer API

Code Plagiarism
Detection API

Build plagiarism detection into your apps. Check code against 20+ billion sources.

const response = await fetch('https://codequiry.com/api/v1/check', { method: 'POST', headers: { 'apikey': 'YOUR_API_KEY' }, body: formData }); // Check created!
TEST TYPES API

Get Available Test Types

Retrieve all available plagiarism detection engines (test types), their capabilities, features, and your account's access level for each.

API Endpoint

GET/POST https://codequiry.com/api/v1/test-types
No Parameters Required: This endpoint only requires your API key. The response is personalized based on your account's subscription level.

Authentication

Include your API key in the request header:

apikey: YOUR_API_KEY_HERE

Success Response

HTTP Status: 200 OK

Engine IDs, names, and descriptions are returned from the live engine list and may differ from the illustrative values below. Always read the id values from the live response rather than hard-coding them.

{
    "success": true,
    "test_types": [
        {
            "id": 1,
            "name": "Peer Similarity",
            "description": "Compares submissions against each other within the same check",
            "features": [
                "Local peer-to-peer comparison",
                "AST-based analysis",
                "Variable renaming detection"
            ],
            "consumption": 1,
            "peer_only": true,
            "auto_detect_base_code": false,
            "available": true
        },
        {
            "id": 1,
            "name": "Standard Web Check",
            "description": "Checks against web sources including GitHub, Stack Overflow, and code repositories",
            "features": [
                "20+ billion web sources",
                "GitHub repository search",
                "Stack Overflow matching",
                "Open source detection"
            ],
            "consumption": 2,
            "peer_only": false,
            "auto_detect_base_code": true,
            "available": true
        },
        {
            "id": 2,
            "name": "Advanced Database Check",
            "description": "Deep analysis against our proprietary database of code submissions",
            "features": [
                "Proprietary code database",
                "Historical submission matching",
                "Cross-institution detection",
                "AI-generated code detection"
            ],
            "consumption": 3,
            "peer_only": false,
            "auto_detect_base_code": true,
            "available": true
        }
    ],
    "user_access": {
        "has_full_access": true,
        "is_pro": true,
        "is_edu_verified": false,
        "is_enterprise": false
    },
    "default_test_type": 1,
    "recommended_test_type": 9,
    "note": "Engine availability and quota consumption may vary based on your subscription plan"
}
        
JSON Response
Response Fields
  • success — Boolean indicating the request was successful
  • test_types — Array of available analysis engines
  • test_types[].id — Test type (engine) identifier to use in start check and create check endpoints
  • test_types[].name — Human-readable name of the detection engine
  • test_types[].description — Description of what this test type analyzes
  • test_types[].features — Array of capabilities included in this test type
  • test_types[].consumption — Credit consumption multiplier for this test type
  • test_types[].peer_only — Whether this test type only compares files within the same check
  • test_types[].auto_detect_base_code — Whether base code is automatically excluded from results
  • test_types[].available — Whether your account has access to this test type
  • test_types[].requires — Only present when the engine needs higher access and you don't have it; describes the requirement (e.g. "Pro subscription, EDU verification, or Enterprise plan")
  • user_access — Object with has_full_access, is_pro, is_edu_verified, and is_enterprise booleans for your account
  • default_test_type — The test type ID used if none is specified (currently 1)
  • recommended_test_type — The recommended test type ID (currently 9, Group Similarity)
  • note — Informational note about availability and quota consumption

Understanding Test Types

Peer Similarity

Compares all submissions within a check against each other. Best for detecting copying between students in the same class. (peer_only: true)

Web Check

Searches 20+ billion web sources including GitHub, Stack Overflow, and public repositories for matching code.

Database Check

Deep analysis against our proprietary database with AI-generated code detection and cross-institution matching.

Error Responses

401 Unauthorized

Invalid or missing API key. Response body: { "success": false, "error": "Invalid API key" }.

500 Server Error

An unexpected error occurred while fetching test types. Response body: { "success": false, "error": "...", "message": "..." }.

Code Examples

cURL
curl -X GET "https://codequiry.com/api/v1/test-types" \
  -H "apikey: YOUR_API_KEY_HERE"
        
cURL
JavaScript
const response = await fetch('https://codequiry.com/api/v1/test-types', {
    headers: { 'apikey': 'YOUR_API_KEY_HERE' }
});

const data = await response.json();

if (data.success) {
    data.test_types.forEach(type => {
        console.log(`${type.name} (ID: ${type.id})`);
        console.log(`  Available: ${type.available}`);
        console.log(`  Features: ${type.features.join(', ')}`);
    });
    console.log(`Recommended: Type ${data.recommended_test_type}`);
}
        
JavaScript