API Documentation
Start using JARS.LT API in minutes
API Documentation
Start using JARS.LT API in minutes
Authentication#
All API requests require an API key. Add it as x-api-key header:
curl -H "x-api-key: your_api_key_here" \ https://api.jars.lt/api/v1/companies/search?q=UAB
Base URL#
All API endpoints start with:
https://api.jars.lt/api/v1
Node.js SDK#
Official TypeScript/JavaScript SDK for easy integration with JARS.LT API.
Installation
npm install @jars-lt/sdkUsage
import { JarsClient } from '@jars-lt/sdk';
const client = new JarsClient({
apiKey: 'your_api_key_here'
});
// Search companies
const companies = await client.searchCompanies({ q: 'UAB Maxima' });
// Get company by code
const company = await client.getCompany('123456789');
// Search addresses
const addresses = await client.searchAddresses({ q: 'vilnius gedimino' });
// Normalize address (with typos)
const normalized = await client.normalizeAddress('gedimno pr 28 vilnus');
// Check workday
const workday = await client.checkWorkday('2024-12-25');
// Add workdays
const result = await client.addWorkdays('2024-01-15', 5);View on npmSearch Companies#
/companies/searchSearch for companies by name or code.
Parameters
| Parameter | Type | Description |
|---|---|---|
| q | string | Search text (name or code) |
| limit | number | Number of results (max: 100, default: 20) |
| offset | number | Skip results (default: 0) |
Example
curl -H "x-api-key: your_api_key_here" \ "https://api.jars.lt/api/v1/companies/search?q=Maxima&limit=5"
Response
{
"results": [
{
"code": "111111111",
"name": "UAB Maxima",
"address": "Vilnius, Lietuva",
"status": "Registered",
"registrationDate": "2020-01-15"
}
],
"total": 1,
"limit": 5,
"offset": 0
}Get Company by Code#
/companies/:codeGet detailed information about a company by legal entity code.
Example
curl -H "x-api-key: your_api_key_here" \ https://api.jars.lt/api/v1/companies/111111111
Response
{
"code": "111111111",
"name": "UAB Maxima",
"address": "Vilnius, Lietuva",
"status": "Registered",
"registrationDate": "2020-01-15",
"email": "info@maxima.lt",
"phone": "+370 5 123 4567",
"website": "https://maxima.lt"
}Search Addresses#
/addresses/searchSearch for streets, settlements, and municipalities. Supports multi-word search (e.g., "kaunas basanavi" or "vilnius centro").
Parameters
| Parameter | Type | Description |
|---|---|---|
| q | string | Search text (street, settlement, or municipality name) |
| limit | number | Number of results (max: 100, default: 20) |
| offset | number | Skip results (default: 0) |
Example
curl -H "x-api-key: your_api_key_here" \ "https://api.jars.lt/api/v1/addresses/search?q=kaunas+basanavi&limit=5"
Response
Results are grouped by type: streets, settlements, municipalities. Each group includes relevant location data.
{
"streets": [
{
"code": 1231645,
"name": "J. Basanavičiaus",
"typeAbbr": "al.",
"settlementId": "58437361-d62a-4714-9b74-f07ae0b9d66b",
"buildings": [
{ "number": "3", "postalCode": "LT-50282" },
{ "number": "4", "postalCode": "LT-50290" }
],
"settlement": {
"name": "Kaunas",
"typeAbbr": "m."
}
}
],
"settlements": [],
"municipalities": [],
"total": 1,
"limit": 5,
"offset": 0
}Normalize Address#
/addresses/normalizeConvert an arbitrary address string (with possible typos) to structured address components. Uses fuzzy matching to handle spelling errors.
Request Body
| Parameter | Type | Description |
|---|---|---|
| address | string | Address string to normalize (e.g., "gedimno pr 28 vilnus") |
| limit | number | Maximum results to return (default: 5, max: 20) |
Example
curl -X POST -H "x-api-key: your_api_key_here" \
-H "Content-Type: application/json" \
-d '{"address": "gedimno pr 28 vilnus", "limit": 3}' \
https://api.jars.lt/api/v1/addresses/normalizeResponse
Returns matching addresses with confidence scores. Higher confidence indicates better match.
{
"results": [
{
"confidence": 0.87,
"formatted": "Gedimino pr. 28, Vilnius, Vilniaus m. sav., LT-01104",
"components": {
"street": { "code": 105641, "name": "Gedimino", "type": "prospektas", "typeAbbr": "pr." },
"building": { "number": "28", "postalCode": "LT-01104" },
"settlement": { "code": 101580, "name": "Vilnius", "type": "miestas", "typeAbbr": "m." },
"municipality": { "code": 58, "name": "Vilniaus m.", "typeAbbr": "sav." },
"county": { "code": 9, "name": "Vilniaus" },
"postalCode": "LT-01104"
}
}
],
"query": "gedimno pr 28 vilnus",
"parsed": {
"tokens": ["gedimno", "vilnus"],
"building": "28",
"streetType": "pr."
}
}Get Location by Postal Code#
/addresses/postal/:codeGet county, municipality, settlement, and streets by postal code. Supports 5-digit format (e.g., "54306" or "LT-54306").
Parameters
| Parameter | Type | Description |
|---|---|---|
| code | string | Postal code (5 digits, with or without "LT-" prefix) |
Example
curl -H "x-api-key: your_api_key_here" \ https://api.jars.lt/api/v1/addresses/postal/54306
Response
Returns all streets with this postal code, along with settlement, municipality, and county information.
{
"postalCode": "LT-54306",
"streets": [
{
"code": 1873961,
"name": "Viesulo",
"type": "gatvė",
"typeAbbr": "g."
}
],
"settlement": {
"code": 88888,
"name": "Kaunas",
"type": "miestas",
"typeAbbr": "m."
},
"municipality": {
"code": 15,
"name": "Kauno m."
},
"county": {
"code": 4,
"name": "Kauno"
}
}Check Workday#
/workdays/checkCheck if a specific date is a workday in Lithuania. Returns information about weekends and Lithuanian public holidays.
Parameters
| Parameter | Type | Description |
|---|---|---|
| date | string | Date in YYYY-MM-DD format |
Example
curl -H "x-api-key: your_api_key_here" \ "https://api.jars.lt/api/v1/workdays/check?date=2024-12-25"
Response
{
"date": "2024-12-25",
"dayOfWeek": "Wednesday",
"isWorkday": false,
"isWeekend": false,
"isHoliday": true,
"holidayName": "Kalėdos",
"holidayNameEn": "Christmas Day"
}Add Workdays#
/workdays/addAdd a number of workdays to a given date, skipping weekends and Lithuanian public holidays. Supports negative values to subtract workdays.
Parameters
| Parameter | Type | Description |
|---|---|---|
| date | string | Start date in YYYY-MM-DD format |
| days | number | Number of workdays to add (can be negative) |
Example
curl -H "x-api-key: your_api_key_here" \ "https://api.jars.lt/api/v1/workdays/add?date=2024-12-20&days=5"
Response
{
"startDate": "2024-12-20",
"workdaysAdded": 5,
"resultDate": "2024-12-30",
"resultIsWorkday": true,
"skippedDays": [
{ "date": "2024-12-21", "reason": "weekend" },
{ "date": "2024-12-22", "reason": "weekend" },
{ "date": "2024-12-25", "reason": "holiday", "holidayName": "Kalėdos" },
{ "date": "2024-12-26", "reason": "holiday", "holidayName": "Antra Kalėdų diena" },
{ "date": "2024-12-28", "reason": "weekend" },
{ "date": "2024-12-29", "reason": "weekend" }
]
}Get Usage Statistics#
/usageGet your API key statistics and remaining quota.
Example
curl -H "x-api-key: your_api_key_here" \ https://api.jars.lt/api/v1/usage
Response
rateLimit indicates maximum requests per second.
{
"dataDelay": 0,
"limit": 50000,
"plan": "PROFESSIONAL",
"rateLimit": 300,
"remaining": 49997,
"requestCount": 3,
"resetDate": "2025-11-10T14:20:13.260Z",
"webhooksEnabled": true
}Rate Limits#
API request limits depend on your plan:
- Free: 100 requests per month
- Starter: 5,000 requests per month
- Professional: 50,000 requests per month
- Enterprise: 1,000,000 requests per month
When exceeding the limit, you will receive 429 Too Many Requests response.
Error Codes#
| Code | Description |
|---|---|
| 400 | Invalid parameters |
| 401 | Invalid API key |
| 404 | Company not found |
| 429 | Request limit exceeded |
| 500 | Server error |
Need Help?#
If you have questions or need help integrating the API, contact us:
Contact →