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/sdk

Usage

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 npm

Search Companies#

GET/companies/search

Search for companies by name or code.

Parameters

ParameterTypeDescription
qstringSearch text (name or code)
limitnumberNumber of results (max: 100, default: 20)
offsetnumberSkip 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#

GET/companies/:code

Get 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#

GET/addresses/search

Search for streets, settlements, and municipalities. Supports multi-word search (e.g., "kaunas basanavi" or "vilnius centro").

Parameters

ParameterTypeDescription
qstringSearch text (street, settlement, or municipality name)
limitnumberNumber of results (max: 100, default: 20)
offsetnumberSkip 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#

POST/addresses/normalize

Convert an arbitrary address string (with possible typos) to structured address components. Uses fuzzy matching to handle spelling errors.

Request Body

ParameterTypeDescription
addressstringAddress string to normalize (e.g., "gedimno pr 28 vilnus")
limitnumberMaximum 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/normalize

Response

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#

GET/addresses/postal/:code

Get county, municipality, settlement, and streets by postal code. Supports 5-digit format (e.g., "54306" or "LT-54306").

Parameters

ParameterTypeDescription
codestringPostal 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#

GET/workdays/check

Check if a specific date is a workday in Lithuania. Returns information about weekends and Lithuanian public holidays.

Parameters

ParameterTypeDescription
datestringDate 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#

GET/workdays/add

Add a number of workdays to a given date, skipping weekends and Lithuanian public holidays. Supports negative values to subtract workdays.

Parameters

ParameterTypeDescription
datestringStart date in YYYY-MM-DD format
daysnumberNumber 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#

GET/usage

Get 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#

CodeDescription
400Invalid parameters
401Invalid API key
404Company not found
429Request limit exceeded
500Server error

Need Help?#

If you have questions or need help integrating the API, contact us:

Contact →