PHPackages                             bsobbe/ithenticate - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. bsobbe/ithenticate

ActivePhp-library[API Development](/categories/api)

bsobbe/ithenticate
==================

A library to use Ithenticate API easier and faster, to check and prevent plagiarism

v1.0.0(9y ago)2313.2k↑247.1%20[3 issues](https://github.com/bsobbe/iThenticate/issues)[2 PRs](https://github.com/bsobbe/iThenticate/pulls)MITPHP

Since Mar 29Pushed 3y ago3 watchersCompare

[ Source](https://github.com/bsobbe/iThenticate)[ Packagist](https://packagist.org/packages/bsobbe/ithenticate)[ RSS](/packages/bsobbe-ithenticate/feed)WikiDiscussions master Synced today

READMEChangelog (1)Dependencies (1)Versions (4)Used By (0)

PHP [iThenticate](http://www.ithenticate.com/)
==============================================

[](#php-ithenticate)

A library to use **iThenticate** API easier and faster, to check and prevent plagiarism.

### Installation

[](#installation)

You can install via **composer** package manager with the following command:

```
composer.phar require bsobbe/ithenticate "*"

```

Or add the following to your **composer.json** file:

```
"require": {
        "bsobbe/ithenticate": "*"
},

```

### Usage

[](#usage)

Once the installation is completed, simply use the library with:

```
use bsobbe\ithenticate\Ithenticate;
```

You will be able to use the library by creating instance of the `Ithenticate` class, make sure you pass your iThenticate API **username** and **password** to the constructor (You might need SSL to connect to the API):

```
$ithenticate = new Ithenticate("Your username", "Your password");
```

After all simply call each method you want to use with passing the required parameters, and the library will take care of the rest.

I strongly suggest to read the [iThenticate API Guide](http://www.ithenticate.com/hs-fs/hub/92785/file-1383985272-pdf/iTh_documentation/iThenticate_API_Manual.pdf?t=1488585417195) before using the library and its methods.

### Methods

[](#methods)

#### Submit document

[](#submit-document)

Here is one simple example to send new document:

```
$ithenticate = new \bsobbe\ithenticate\Ithenticate("username", "password");
//The value in result variable is the document_id of the inserted document.
$result = $ithenticate->submitDocument(
                "Cloud Computing",
                "Sobhan",
                "Bagheri",
                "CloudComputingEssay.pdf", //File name from the object of the uploaded temp file.
                $content, //Document content fetched with php file_get_contents() function from the document file.
                649216 //Folder number to store document (You can get folder number from last part of ithenticate panel URL).
          );
```

#### Get document data

[](#get-document-data)

```
$ithenticate = new \bsobbe\ithenticate\Ithenticate("username", "password");
$result = $ithenticate->documentGetRequest(12345);
// Since we are requesting 1 document, there should be 1 document only in the response.
$document = reset($result['documents']);
$is_pending = $document['is_pending']; // If the report is pending.
$document_id = $document['id'];
$processed_time = $document['processed_time']; // The time the report has been created.
$percent_match = $document['percent_match']; // The percentage match for the document.
$title = $document['title']; // The submitted title of the document.
$uploaded_time = $document['uploaded_time']; // The time the document was uploaded.

// Also, $document['folder'] is available containing information related to the folder that the document is submitted
// into.
```

#### Get report data

[](#get-report-data)

```
$ithenticate = new \bsobbe\ithenticate\Ithenticate("username", "password");
$result = $ithenticate->reportGetRequest(98765, 1, 1, 1); // The report ID.

$view_only_url = $result['view_only_url'];
$view_only_expires = $result['view_only_expires'];
$report_url = $result['report_url'];
```

### Contribute

[](#contribute)

Feel free to **contribute** and add new methods based on ithenticate's [API Guide](https://help.turnitin.com/ithenticate/ithenticate-developer/api/api-guide.htm#APImethodreference)

Add method usage instructions in ReadMe.md

###  Health Score

38

—

LowBetter than 83% of packages

Maintenance17

Infrequent updates — may be unmaintained

Popularity37

Limited adoption so far

Community19

Small or concentrated contributor base

Maturity65

Established project with proven stability

 Bus Factor1

Top contributor holds 75% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

3384d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/16154351?v=4)[Sam Bagheri](/maintainers/bsobbe)[@bsobbe](https://github.com/bsobbe)

---

Top Contributors

[![bsobbe](https://avatars.githubusercontent.com/u/16154351?v=4)](https://github.com/bsobbe "bsobbe (18 commits)")[![asmecher](https://avatars.githubusercontent.com/u/200411?v=4)](https://github.com/asmecher "asmecher (2 commits)")[![djolemc](https://avatars.githubusercontent.com/u/14848370?v=4)](https://github.com/djolemc "djolemc (1 commits)")[![idimopoulos](https://avatars.githubusercontent.com/u/12171851?v=4)](https://github.com/idimopoulos "idimopoulos (1 commits)")[![jonasraoni](https://avatars.githubusercontent.com/u/361921?v=4)](https://github.com/jonasraoni "jonasraoni (1 commits)")[![phroggar](https://avatars.githubusercontent.com/u/542626?v=4)](https://github.com/phroggar "phroggar (1 commits)")

---

Tags

apiapi-clientcrossrefcrossref-apiithenticatephpphp-libraryphp7plagiarismplagiarism-checkerplagiarism-checkingplagiarism-detectionplagiarism-preventionxmlrpcphpapilibrarycrossrefplagiarismithenticateplagiarism-prevention

### Embed Badge

![Health badge](/badges/bsobbe-ithenticate/health.svg)

```
[![Health](https://phpackages.com/badges/bsobbe-ithenticate/health.svg)](https://phpackages.com/packages/bsobbe-ithenticate)
```

###  Alternatives

[checkout/checkout-sdk-php

Checkout.com SDK for PHP

563.6M13](/packages/checkout-checkout-sdk-php)[getjump/vk

Library for work with API Vk.com

20048.5k](/packages/getjump-vk)[mikealmond/musicbrainz

A PHP library for accessing the MusicBrainz API

6388.8k1](/packages/mikealmond-musicbrainz)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
