Quickstart: Get your first company in 30 seconds
Entyrix je REST API nad verejnou databázou 3.27M slovenských a českých firiem. Tento tutorial ti ukáže ako integrovať KYC/KYB compliance check, credit score alebo B2B sales prospecting do tvojej aplikácie — za menej ako 30 sekúnd.
1Authentifikácia
Všetky authenticated endpoints akceptujú Bearer token v Authorization header-i:
Authorization: Bearer sk_...
Alternatívne cez query parameter ?api_key=sk_... (užitočné pri testovaní v browseri). Rate limit: 600 requestov/min per key.
2Základný lookup podľa IČO
Endpoint: GET /api/v1/companies/lookup?ico=:ico — vráti plný detail firmy vrátane adresy, právnej formy, NACE, štatutárov, finančných výkazov a compliance flags. Exact B-tree index lookup, latencia <5ms.
curl -H "Authorization: Bearer sk_..." \
"https://entyrix.com/api/v1/companies/lookup?ico=31322832"
import requests
r = requests.get(
"https://entyrix.com/api/v1/companies/lookup",
params={"ico": "31322832"},
headers={"Authorization": "Bearer sk_..."},
timeout=10,
)
r.raise_for_status()
company = r.json()["data"]
print(company["name"], company["country"])
const r = await fetch(
"https://entyrix.com/api/v1/companies/lookup?ico=31322832",
{ headers: { Authorization: "Bearer sk_..." } }
);
if (!r.ok) throw new Error(`${r.status}`);
const { data } = await r.json();
console.log(data.name, data.country);
<?php
$ch = curl_init("https://entyrix.com/api/v1/companies/lookup?ico=31322832");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ["Authorization: Bearer sk_..."]);
$res = json_decode(curl_exec($ch), true);
curl_close($ch);
echo $res["data"]["name"] . PHP_EOL;
3Batch lookup (do 100 IČOs)
Pre portfolio monitoring alebo bulk import. POST /api/v1/companies/bulk berie JSON body {"icos": [...]}, vracia array — 1 request namiesto N.
curl -X POST \
-H "Authorization: Bearer sk_..." \
-H "Content-Type: application/json" \
-d '{"icos":["31322832","35763469","00151700"]}' \
https://entyrix.com/api/v1/companies/bulk
r = requests.post(
"https://entyrix.com/api/v1/companies/bulk",
json={"icos": ["31322832", "35763469", "00151700"]},
headers={
"Authorization": "Bearer sk_...",
"Content-Type": "application/json",
},
)
for c in r.json()["data"]:
print(c["ico"], c["name"])
const r = await fetch(
"https://entyrix.com/api/v1/companies/bulk",
{
method: "POST",
headers: {
Authorization: "Bearer sk_...",
"Content-Type": "application/json",
},
body: JSON.stringify({ icos: ["31322832","35763469","00151700"] }),
}
);
const { data } = await r.json();
data.forEach(c => console.log(c.ico, c.name));
<?php
$ch = curl_init("https://entyrix.com/api/v1/companies/bulk");
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => [
"Authorization: Bearer sk_...",
"Content-Type: application/json",
],
CURLOPT_POSTFIELDS => json_encode(["icos" => ["31322832","35763469","00151700"]]),
]);
$res = json_decode(curl_exec($ch), true);
foreach ($res["data"] as $c) echo "{$c["ico"]} {$c["name"]}\n";
4KYB compliance check
Endpoint: GET /api/v1/companies/:ico/compliance — unified kyb summary: tier (PROHIBITED / HIGH_RISK / ENHANCED_DD / STANDARD), flags (bankruptcy, sanctions, PEP, tax debt, shell address, ...), credit grade. Perfect pre onboarding workflows kde potrebuješ 1 call namiesto 14.
curl -H "Authorization: Bearer sk_..." \
"https://entyrix.com/api/v1/companies/:ico/compliance" \
| jq '.data.tier, .data.flags'
r = requests.get(
f"https://entyrix.com/api/v1/companies/{ico}/compliance",
headers={"Authorization": "Bearer sk_..."},
)
c = r.json()["data"]
if c["tier"] in ("HIGH_RISK", "PROHIBITED"):
reject_order(ico, reason=c["flags"])
const r = await fetch(
`https://entyrix.com/api/v1/companies/${ico}/compliance`,
{ headers: { Authorization: "Bearer sk_..." } }
);
const { data } = await r.json();
if (["HIGH_RISK","PROHIBITED"].includes(data.tier)) {
rejectOrder(ico, data.flags);
}
<?php
$ch = curl_init("https://entyrix.com/api/v1/companies/$ico/compliance");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ["Authorization: Bearer sk_..."]);
$d = json_decode(curl_exec($ch), true)["data"];
if (in_array($d["tier"], ["HIGH_RISK","PROHIBITED"])) reject_order($ico, $d["flags"]);
5Advanced search (screener)
GET /api/v1/companies/advanced-search podporuje 30+ filters: country, NACE, region, size, VAT status, shell-address flag, turnover range, credit grade, NIS2 scope. Ideal pre B2B sales prospecting alebo compliance portfolio segmentation. Príklad: všetky SK IT firmy (NACE 6201) s VAT registráciou, zoradené podľa tržieb:
curl -G \
-H "Authorization: Bearer sk_..." \
--data-urlencode "country=sk" \
--data-urlencode "nace_prefix=6201" \
--data-urlencode "is_vat_payer=true" \
--data-urlencode "order_by=turnover_desc" \
--data-urlencode "limit=50" \
https://entyrix.com/api/v1/companies/advanced-search
CSV export: to isté URL s príponou .csv (40 stĺpcov vrátane compliance flags).
Odpoveď + error handling
Všetky endpointy vracajú jednotnú obálku { data, meta: { request_id, duration_ms, cached } }. Chyby: { error: { code, message } }.
Status codes: 200 (success), 400 (invalid input), 401 (bad API key), 404 (not found), 429 (rate limited — 600/min), 500 (internal error). Použi request_id pre support requesty.
Ďalšie zdroje
- Swagger UI — interaktívne docs s Try-it-out
- OpenAPI 3.1 spec — import do Postman/Insomnia, SDK generator
- Postman Collection — native Postman import (12 folders, 92 requestov)
- Plný API reference — všetky endpointy + popis + auth badges
- Rankings — najväčšie firmy, top dodávatelia štátu, schránkové adresy, najpozerané
- Entyrix Check — verejný compliance lookup (no auth, share-able)