PHPackages                             renderbit-technologies/indos-checker-api - 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. [Testing &amp; Quality](/categories/testing)
4. /
5. renderbit-technologies/indos-checker-api

ActiveLibrary[Testing &amp; Quality](/categories/testing)

renderbit-technologies/indos-checker-api
========================================

Check seafarer details from Indos number

v2.1.0(today)2195↑2638.5%1MITPHPPHP ^8.1CI passing

Since Mar 21Pushed today4 watchersCompare

[ Source](https://github.com/RenderbitTechnologies/Indos-Checker-API)[ Packagist](https://packagist.org/packages/renderbit-technologies/indos-checker-api)[ RSS](/packages/renderbit-technologies-indos-checker-api/feed)WikiDiscussions master Synced today

READMEChangelog (3)Dependencies (6)Versions (5)Used By (0)

Indos Checker API
=================

[](#indos-checker-api)

[![Tests](https://github.com/RenderbitTechnologies/Indos-Checker-API/actions/workflows/tests.yml/badge.svg)](https://github.com/RenderbitTechnologies/Indos-Checker-API/actions/workflows/tests.yml)[![Latest Stable Version](https://camo.githubusercontent.com/a33b790764647b4adb2d21313f63549352676222c890fc5e1300d13ae2bbbc17/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f72656e6465726269742d746563686e6f6c6f676965732f696e646f732d636865636b65722d617069)](https://packagist.org/packages/renderbit-technologies/indos-checker-api)[![Total Downloads](https://camo.githubusercontent.com/cb8befd8d25c3fba63338c4da1b6cf84ed7e3fc8ad22bf9717284e03ee986256/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f72656e6465726269742d746563686e6f6c6f676965732f696e646f732d636865636b65722d617069)](https://packagist.org/packages/renderbit-technologies/indos-checker-api)[![PHP Version](https://camo.githubusercontent.com/ba09ddf3be6ab4f4e63279a916ebccc8314ffb3c11c027f1830468fec1cec2c2/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f72656e6465726269742d746563686e6f6c6f676965732f696e646f732d636865636b65722d617069)](https://packagist.org/packages/renderbit-technologies/indos-checker-api)[![License: MIT](https://camo.githubusercontent.com/fdf2982b9f5d7489dcf44570e714e3a15fce6253e0cc6b5aa61a075aac2ff71b/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c6963656e73652d4d49542d79656c6c6f772e737667)](https://opensource.org/licenses/MIT)

A PHP library to check seafarer details from INDOS numbers as issued by the Directorate General of Shipping, Mumbai, India. Queries the DGS eSamudra server and returns validated INDOS records.

Requirements
------------

[](#requirements)

- PHP &gt;= 8.1
- [Composer](https://getcomposer.org/)

### Dependencies

[](#dependencies)

PackagePurpose`guzzlehttp/guzzle` ^7.4HTTP client for API requests`symfony/dom-crawler` ^6.0HTML response parsing`symfony/css-selector` ^6.0CSS selector support for DomCrawlerInstallation
------------

[](#installation)

```
composer require renderbit-technologies/indos-checker-api
```

Usage
-----

[](#usage)

### Check if an INDOS number is valid

[](#check-if-an-indos-number-is-valid)

```
use RenderbitTechnologies\IndosCheckerApi\IndosChecker;

$checker = new IndosChecker();
$checker->checkValid('05LL0262', '14/08/1963');
// true
```

### Retrieve seafarer details

[](#retrieve-seafarer-details)

```
$data = $checker->getData('05LL0262', '14/08/1963');
// [
//     "Name"                => "YADAV SANJEEV",
//     "Date of Birth"       => "14-AUG-1963",
//     "INDoS No."           => "05LL0262",
//     "Passport No."        => "M2069200",
//     "Passport Issue Date" => "15-SEP-2014",
//     "Passport Valid To"   => "14-SEP-2024",
//     "CDC No."             => "MUM 133201",
//     "CDC Issue Date"      => "22-MAY-2015",
//     "CDC Valid To"        => "21-MAY-2025",
//     "CDC Issue Place"     => "Mumbai",
// ]
```

The returned array contains up to 10 fields: Name, Date of Birth, INDoS No., Passport No., Passport Issue Date, Passport Valid To, CDC No., CDC Issue Date, CDC Valid To, and CDC Issue Place. An empty array is returned when no record is found.

### Exception handling

[](#exception-handling)

```
use RenderbitTechnologies\IndosCheckerApi\IndosCheckerException;

try {
    $data = $checker->getData($no, $dob);
} catch (IndosCheckerException $e) {
    // Network or server error — inspect $e->getPrevious() for the Guzzle cause
} catch (\InvalidArgumentException $e) {
    // Bad input: empty INDOS number or wrong date format (must be DD/MM/YYYY)
}
```

- `IndosCheckerException` wraps all Guzzle/HTTP errors (timeouts, connection failures, server errors).
- `\InvalidArgumentException` is thrown for invalid input: empty or whitespace-only INDOS numbers, or DOB not in `DD/MM/YYYY` format.

### Custom HTTP client

[](#custom-http-client)

Pass a configured `GuzzleHttp\Client` to override timeouts, proxies, etc.:

```
$client  = new \GuzzleHttp\Client(['timeout' => 5.0]);
$checker = new IndosChecker($client);
```

### Custom endpoint

[](#custom-endpoint)

Override the default DGS eSamudra endpoint (useful for testing):

```
$checker = new IndosChecker(null, 'http://staging.example.com/indos');
```

Project Structure
-----------------

[](#project-structure)

```
Indos-Checker-API/
├── src/
│   ├── IndosChecker.php          # Core class: validation, HTTP request, HTML parsing
│   └── IndosCheckerException.php # Custom exception for API/network errors
├── tests/
│   └── IndosCheckerTest.php      # PHPUnit tests (input validation, parsing, exceptions)
├── .github/
│   ├── workflows/tests.yml       # CI: tests on PHP 8.1–8.4
│   └── dependabot.yml            # Automated dependency updates
├── composer.json
├── phpunit.xml
└── LICENSE                       # MIT

```

Testing
-------

[](#testing)

```
composer install
vendor/bin/phpunit
```

CI
--

[](#ci)

GitHub Actions runs the PHPUnit suite on every push and pull request to `master`, across PHP 8.1, 8.2, 8.3, and 8.4.

License
-------

[](#license)

MIT © Renderbit Technologies

###  Health Score

51

—

FairBetter than 95% of packages

Maintenance100

Actively maintained with recent releases

Popularity20

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity61

Established project with proven stability

 Bus Factor1

Top contributor holds 88.9% 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

Every ~519 days

Total

4

Last Release

0d ago

Major Versions

v1.0.1 → v2.0.02026-06-26

PHP version history (2 changes)v1.0.0PHP &gt;=8.0.0

v2.1.0PHP ^8.1

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/16665819?v=4)[Renderbit Technologies](/maintainers/renderbit-technologies)[@renderbit-technologies](https://github.com/renderbit-technologies)

---

Top Contributors

[![soham2008xyz](https://avatars.githubusercontent.com/u/7334295?v=4)](https://github.com/soham2008xyz "soham2008xyz (24 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (3 commits)")

---

Tags

composer-packagegithub-actionsguzzlehttpindospackagistphp8phpunit

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/renderbit-technologies-indos-checker-api/health.svg)

```
[![Health](https://phpackages.com/badges/renderbit-technologies-indos-checker-api/health.svg)](https://phpackages.com/packages/renderbit-technologies-indos-checker-api)
```

###  Alternatives

[craftcms/cms

Craft CMS

3.6k3.6M2.9k](/packages/craftcms-cms)[spatie/crawler

Crawl all internal links found on a website

2.8k17.7M58](/packages/spatie-crawler)[drupal/drupal-extension

Drupal extension for Behat

21215.5M166](/packages/drupal-drupal-extension)[drupal/core-dev

require-dev dependencies from drupal/drupal; use in addition to drupal/core-recommended to run tests from drupal/core.

2022.0M321](/packages/drupal-core-dev)[neuron-core/neuron-ai

The PHP Agentic Framework.

2.0k496.1k33](/packages/neuron-core-neuron-ai)[spatie/laravel-export

Create a static site bundle from a Laravel app

672139.5k6](/packages/spatie-laravel-export)

PHPackages © 2026

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