DrillBit API is a service to check plagiarism, this guide helps to integrate in a convenient way.
If you have any prior knowledge of the REST services, it would be easy to start with integrations.

Please find below the base URL :

https://www.drillbitplagiarismcheck.com/drillbit_new

API provides methods for interacting with the following system entities:

  • Authentication
    • Generate Token
  • Submissions
    • File Submissions
    • Get Submission details
    • File Deletion
    • Get total file submission details
    • Downloading file
  • Assignment/Folder
    • Update Folder settings
    • Get balance

HTTP defines a set of request methods to indicate the desired action to be performed for a given resource. It can be as follows:

HTTP Method Description
GET Requests data from a resource
POST Submits data to a resource to process
PUT/PATH Updates a resource
DELETE Deletes a resource

HTTP Code Description
200 OK - Request succeeded. Сlient can read the result of it in the body and the headers of response.
202 Accepted - Request is accepted for processing, but the processing has not been completed.
401 Unauthorized - Request requires user authentication or, if the request includes authorization credentials, authorization is refused for those credentials.
403 Forbidden - The server accepted the request, but is refusing to fulfill it.
404 Not Found - The requested resource could not be found.
424 Failed Dependency - The request failed because it depended on another one. Usually it means resource is not ready yet.
429 Too Many Requests - Rate limiting has been applied.

DrillBit REST API uses basic auth to authorize calls. In exchange for these credentials,
DrillBit provides access token on valid authentication called JWT tokens that you
use for authorization when making any REST API requests.








Get Access Token

POST

https://www.drillbitplagiarismcheck.com/drillbit_new/api/authenticate

Request :
{
"username" : "xyz@hotmail.com",
"password" : "XGHSUTD"
}

Response :

{
"jwt" : "eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJyYWtlc2hAZHJpbGxiaXRwbGFna                WFyaXNtLmNvbSIsImV4cCI6MTYwODgzOTgyMCwiaWF0IjoxNjA4ODAzODI                wfQ.8FxwAphb7qWeIt3ETTRYrtLlpvFWr7FMQp5tqYVeVLM"
}

Sample request to get submission details:
curl -X GET \ https://www.drillbitplagiarismcheck.com/drillbit_new/api/submission/123456 \
-H 'Accept: application_json' \
-H 'Authorization: Bearer Access-Token'
Uploading a file

POST

https://www.drillbitplagiarismcheck.com/drillbit_new/api/submission

Request :
Key Value Type
name test text
title 1 text
assignment_id 58963 text
doc_type thesis text
file sample.pdf file

Response :
{
"paper_id" : 202576,
"name" : "test",
"title" : "1",
"mail_id" : "rakesh@drillbitplagiarism.com",
"ass_id" : 58963,
"percent" : "--",
"upload_time" : "2020-12-25 15:11:39",
"d_key" : "--",
"pages" : "12",
"file_size" : "0 Kb",/span>
"language" : "English",
"doc_type" : "thesis",
"links": [
      {
        "rel": "self",
        "href":"https://www.drillbitplagiarismcheck.com/drillbit_new/api/submission/202576"
      },
      {
        "rel": "Submissions-List",
        "href":"https://www.drillbitplagiarismcheck.com/drillbit_new/api/submissionsList/58963"
      }
   ]
}

Submission Details

GET

https://www.drillbitplagiarismcheck.com/drillbit_new/api/submission/{paper_id}

Response :
{
"paper_id" : 184563,
"name" : "Sakshi",
"title" : "research paper",
"mail_id" : "rakesh@drillbitplagiarism.com",
"ass_id" : 56715,
"percent" : "19",
"upload_time" : "2020-11-19 17:47:06",
"d_key" : "7HHJXDYVNQ3Y5JF7RNFN",
"pages" : "11",
"file_size" : "431 KB",
"language" : "English",
"doc_type" : "Research Paper",
"links": [
      {
        "rel": "self",
        "href":"https://www.drillbitplagiarismcheck.com/drillbit_new/api/submission/184563"
      },
      {
        "rel": "download-link",
        "href":"https://www.drillbitplagiarismcheck.com/drillbit_new/api/submission/184563/7HHJXDYVNQ3Y5JF7RNFN/download"
      }
   ]
}
Delete a file

DELETE

https://www.drillbitplagiarismcheck.com/drillbit_new/api/submission/{paper_id}

To delete a submission provide paper_id.
Response :
{
"submissionDetails" : {
"paper_id" : 183271,
"name": "Princelina Bora",
"title": "Plagiarism check",
"ass_id": 0,
"links": []
},
"status": 200,
"message": "Submission Deleted Successfully",
"links": []
}
Submissions list

GET

https://www.drillbitplagiarismcheck.com/drillbit_new/api/submissionsList/ass_id

To get list of submissions, provide Assignment Id / ass_id.
Response :
{
"submissionsListResponse" : {
"content" : [
{
"paper_id" : 163261,
"name" : "Ananya Sharma",
"title" : "Contempt of court with reference to Justice CS Karnan v
                 The Honourable SC of India",

"mail_id" : "rakesh@drillbitplagiarism.com",
"ass_id" : 56715,
"percent" : "3",
"upload_time" : "2020-10-15 16:10:26",
"d_key" : "22VU9KRUU7PL3XDQJDOW",
"pages" : "30",
"file_size" : "162",
"language" : "English",
"doc_type" : "Thesis",
"links" : []
}
],
"pageable" : {
"sort" : {
"sorted" : false,
"unsorted" : true,
"empty" : true
},
"offset": 0,
"pageSize": 25,
"pageNumber": 0,
"unpaged": false,
"paged": true
},
"last": true,
"totalElements": 1,
"totalPages": 1,
"size": 25,
"number": 0,
"sort": {
"sorted": false,
"unsorted": true,
"empty": true
},
"numberOfElements": 1,
"first": true,
"empty": false
},
"status": 200,
"message": "success"
}
}
Download Submission Report

GET

https://www.drillbitplagiarismcheck.com/drillbit_new/api/submission/{paper_id}/{dkey}/download

To download submission report, provide Paper Id (paper_id) and Download Key* (dkey) provided by GET Submission Details API to the above API URL.

*dkey is available only after the Plagiarism report is generated. This usually takes 2-10 minutes from the time of upload.

Updating folder settings

PUT

https://www.drillbitplagiarismcheck.com/drillbit_new/api/assignments/{ass_id}

Use Assignment Id / ass_id to update settings by using JSON request body as below :
Request :
{
"assignment_name" : "test100",
"exclude_refernces" : "no",
"exclude_quotes" : "no",
"exclude_small_sources" : "yes"
}
Response :
{
"status" : 200,
"message" : "Assignment has been updated successfully",
"links" : [
{
"rel" : "self",
"href": "https://www.drillbitplagiarismcheck.com/drillbit_new/
               api/assignments/58963"

}
]
}