Create Check
Build plagiarism detection into your apps. Check code against 20+ billion sources.
Create a New Plagiarism Check
Initialize a new plagiarism detection analysis by creating a check. This is the first step in your workflow—after creating a check, you'll upload source code files and then start the analysis to detect code similarity and plagiarism.
API Endpoint
Understanding Checks
Think of a check as a project container for your plagiarism analysis. Each check has a name and programming language, and can contain multiple code submissions that you want to compare. This organizational structure makes it easy to manage different assignments, projects, or code reviews.
Common Use Cases
Student Assignments
Compare student submissions to detect code copying and collaboration
Code Reviews
Verify originality of code contributions in pull requests and projects
Open Source Auditing
Check for unauthorized use of licensed or proprietary code
Interview Assessments
Detect cheating in coding tests and technical interviews
Request Parameters
Creating a check requires a name to identify your analysis. You can optionally specify the programming language and the analysis engine type.
| Parameter | Type | Required | Description |
|---|---|---|---|
name |
String | Required | Human-readable name for your check (minimum 3 characters). Use descriptive names like "CS101 Assignment 3" or "React Project Review" |
language |
Integer | Optional | Programming language ID from our supported languages list (see reference below). Defaults to Java (ID 13) if not provided. Pass 999 ("Auto Detect Language") to let the engine detect the source language automatically. Any unknown/invalid ID also falls back to auto-detect rather than failing. |
test_type |
Integer | Optional | Analysis engine/test type (minimum value: 1). Determines the plagiarism detection engine used when the check is started. |
Example Request
curl -X POST \
https://codequiry.com/api/v1/check/create \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-H 'apikey: YOUR_API_KEY_HERE ' \
-d '{
"name": "Python Assignment - Week 5",
"language": 14
}'
Success Response (HTTP 201 Created)
{
"id": 2810,
"name": "Python Assignment - Week 5",
"status_id": 1,
"job_id": 0,
"created_at": "2024-01-15 14:30:22",
"updated_at": "2024-01-15 14:30:22"
}
Understanding the Response
- id — Unique check identifier. Save this value! You'll need it for uploading files and retrieving results.
- name — The name you assigned to this check for identification purposes
- status_id — Current status (1 = newly created, awaiting file uploads)
- job_id — Processing job ID (0 indicates analysis hasn't started yet)
- created_at / updated_at — Timestamps in UTC format showing when the check was created
Supported Programming Languages
Choose the appropriate language ID for your source code. Codequiry supports 65+ programming languages with intelligent syntax-aware plagiarism detection:
Most Popular Languages
| Language | File Extensions | Language ID |
|---|---|---|
| Python | .py |
14 |
| Java | .java |
13 |
| JavaScript | .js, .jsx |
39 |
| TypeScript | .ts, .tsx |
55 |
| C++ | .cpp, .hpp, .cc |
17 |
| C# | .cs |
18 |
| PHP | .php |
21 |
| Ruby | .rb |
33 |
Modern & Systems Languages
| Language | File Extensions | Language ID |
|---|---|---|
| Go | .go |
30 |
| Rust | .rs |
51 |
| Swift | .swift |
43 |
| Kotlin | .kt, .kts |
44 |
| C | .c, .h |
16 |
| R | .r, .R |
32 |
GET /languages). Not sure which ID to use? Pass 999 (Auto Detect) and the engine will detect the language from your source.
Error Responses
999) and the engine detects the source language from your files. Language IDs no longer return a 422. Use the Languages endpoint to look up exact IDs.
Common Errors
Cause: Missing or invalid name parameter
Solution: The name field is required and must be between 3 and 255 characters. The response includes both an error message and a validation_errors object detailing each failed field. (language is optional.)
Cause: Invalid or missing API key
Solution: Verify your API key is correct and properly included in the apikey header.
What's Next?
Congratulations! You've created a check. Now you're ready to upload code files and start the plagiarism analysis: