Back to Documentation
SDKs & Libraries
Official client libraries to integrate FirmAPI into your application in minutes.
PHP SDK
PHP 8.1+Official PHP client for FirmAPI. Requires PHP 8.1+ and supports Laravel auto-discovery.
Installation
composer require firmapi/php-sdk
Quick Start
Lookup by ICO
use FirmApi\Client;
// Create a client with your API key
$client = new Client('your-api-key');
// Look up a company by ICO
$company = $client->company->byIco('51636549');
echo $company->name; // "Version Two s. r. o."
echo $company->legal_form; // "Spolocnost s rucenim obmedzenym"
echo $company->address->city; // "Bratislava"
Search
// Search by name
$results = $client->search->byName('Version Two');
foreach ($results as $company) {
echo $company->ico . ' - ' . $company->name;
}
// Autocomplete (Select2-compatible)
$suggestions = $client->search->autocomplete('vers', limit: 5);
Batch Lookup
// Batch lookup by ICO (Starter plan+)
$batch = $client->batch->byIco([
'51636549',
'12345678',
'87654321',
]);
echo $batch->found; // 2
echo $batch->not_found; // 1
All Available Methods
| Method | Description | Returns |
|---|---|---|
$client->company->byIco($ico) |
Look up a company by ICO (registration number) | Company |
$client->company->byId($id) |
Look up a company by internal ID | Company |
$client->company->byOrsrId($id) |
Look up a company by ORSR ID | Company |
$client->search->byName($name) |
Search companies by name | Company[] |
$client->search->byIco($ico) |
Search companies by partial ICO | Company[] |
$client->search->autocomplete($q) |
Autocomplete search (Select2-compatible) | AutocompleteResult[] |
$client->search->advanced([...]) |
Advanced multi-field search | Company[] |
$client->batch->byIco([...])
Starter+
|
Batch lookup by multiple ICOs | BatchResult |
$client->batch->byNames([...])
Starter+
|
Batch lookup by multiple names | BatchResult |
$client->account->usage() |
Get current period usage statistics | Usage |
$client->account->quota() |
Get remaining quota for current period | Quota |
$client->account->history($days) |
Get usage history | UsageHistory |
JavaScript / TypeScript SDK
TypeScriptOfficial JavaScript client for FirmAPI. Works in Node.js and modern browsers with full TypeScript support.
Installation
npm install firmapi
Quick Start
Lookup by ICO
import { FirmApi } from 'firmapi';
// Create a client with your API key
const client = new FirmApi('your-api-key');
// Look up a company by ICO
const company = await client.company.byIco('51636549');
console.log(company.name); // "Version Two s. r. o."
console.log(company.legalForm); // "Spolocnost s rucenim obmedzenym"
console.log(company.address.city); // "Bratislava"
Search
// Search by name
const results = await client.search.byName('Version Two');
for (const company of results) {
console.log(`${company.ico} - ${company.name}`);
}
// Autocomplete (Select2-compatible)
const suggestions = await client.search.autocomplete('vers', { limit: 5 });
Batch Lookup
// Batch lookup by ICO (Starter plan+)
const batch = await client.batch.byIco([
'51636549',
'12345678',
'87654321',
]);
console.log(batch.found); // 2
console.log(batch.notFound); // 1
All Available Methods
| Method | Description | Returns |
|---|---|---|
client.company.byIco(ico) |
Look up a company by ICO (registration number) | Promise<Company> |
client.company.byId(id) |
Look up a company by internal ID | Promise<Company> |
client.company.byOrsrId(id) |
Look up a company by ORSR ID | Promise<Company> |
client.search.byName(name) |
Search companies by name | Promise<Company[]> |
client.search.byIco(ico) |
Search companies by partial ICO | Promise<Company[]> |
client.search.autocomplete(q) |
Autocomplete search (Select2-compatible) | Promise<AutocompleteResult[]> |
client.search.advanced({...}) |
Advanced multi-field search | Promise<Company[]> |
client.batch.byIco([...])
Starter+
|
Batch lookup by multiple ICOs | Promise<BatchResult> |
client.batch.byNames([...])
Starter+
|
Batch lookup by multiple names | Promise<BatchResult> |
client.account.usage() |
Get current period usage statistics | Promise<Usage> |
client.account.quota() |
Get remaining quota for current period | Promise<Quota> |
client.account.history(days) |
Get usage history | Promise<UsageHistory> |