Code Plagiarism & Similarity API

Integrate your existing software with Codequiry's source code plagiarism checker.

API Demonstration

Connect your account to run the live examples.

5. Uploading Source Code Submissions

Now that you know how to create a check, it's time to upload your code files. This section contains important information. Make sure to read carefully to prevent any potential errors.

Endpoint for uploading files

Second Step: Uploading to a check

Important: A check supports multiple files. Each submission is represented as its own zip file (only zip files are supported) where the source code is stored (structure does not matter). We do not recommend checking hundreds of files at once, as peer check will run each file against one another, which may not complete successfully.

When sending the request, we will need to POST two variables (Content-Type: multipart/form-data):

file - Location of the zip file (must be .zip compressed under 2mb)
check_id - The id of the check you wish to upload the file to

				curl -i -X POST \
    -H "Content-Type: multipart/form-data" \
    -H 'apikey:  YOUR_API_KEY_HERE ' \
    -F "file=@/" \
    -F "check_id=YOUR_CHECK_ID" \
cURL Command
Sample Response (JSON Object)
    "data": [
            "id": 12,
            "filename": "SourceCode-Java",
            "status_id": 2,
            "created_at": "2019-05-29 21:50:08",
            "updated_at": "2019-05-29 21:50:08",
            "result1": "0.00",
            "result2": "0.00",
            "result3": "0.00",
            "total_result": "0.00",
            "modify_updated_at": "May 29, 2019 9:50 PM UTC",
            "assignmentstatuses": {
                "id": 2,
                "status": "Ready for checking",
                "icon": null,
                "color": "secondary",
                "created_at": null,
                "updated_at": null
    "file": "",
    "submission_count": 12,
    "check": {
        "id": 231,
        "name": "Test from API!",
        "created_at": "2019-05-29 20:52:02",
        "updated_at": "2019-05-29 20:53:57",
        "status_id": 2,
        "job_id": 0
JSON Array
Error Format Response (422 error)
    "error": "The file must be a file of type: zip."
JSON Array

About uploading

The uploading endpoint supports concurrent requests, meaning you can have multiple threads sending files to the same check_id. This becomes useful for components such as DropzoneJS.

After you have finished uploading all the necessary zip files, all being the same source language as the language specific upon check creation, we can move to the last step of the checking process.

What's next

For optimal understanding of API usage, we recommend following this guide.

Our Mission

Codequiry aims to achieve an equally fair environment for fields relating to computer science by preventing the use of unoriginal code. The first step to preserving academic integrity and original source code starts here.


© 2018-2025 Codequiry, LLC.