Developer

Language: English
Appearance

Theme

Accent colour

Your theme and colour carry over to satelit.md and the app.

Sign in

Companies

Companies by name or IDNO

GET/v1/companies

Moldova's companies as the state register publishes them: by name (without the legal form) or by the first 5 digits of the IDNO. Sole traders and farms are not here: their name is a person's. Pages stop at 5.

Credits
3 for every 20 rows
With a key

Parameters

  • qstringrequired

    Words to search for.

  • citystringoptional

    The city.

  • formstringoptional

    Only this legal form: SRL, SA, ÎS, ÎM, OCN...

  • activebooleanoptional

    true: only active companies; false: liquidated or in liquidation. The register's word.

  • sectorstringoptional

    Only this field (`sectors[].key` of `/companies/stats`).

  • klassstringoptional

    Only this CAEM-2 class, such as 47.11.

  • sortstring: best, new, old, won, nameoptionaldefault best

    price or date.

  • pageintegeroptionaldefault 1

    The page, starting at 1.

  • perintegeroptionaldefault 20

    Rows per page, at most 20.

Possible errors

Try it

curl "https://api.satelit.md/v1/companies?q=exemplu" \
  -H "Authorization: Bearer $SATELIT_KEY"
const res = await fetch("https://api.satelit.md/v1/companies?q=exemplu", {
  headers: { Authorization: `Bearer ${process.env.SATELIT_KEY}` },
});
const { data, meta } = await res.json();
console.log(data, meta.credits);
import json, os, urllib.request

req = urllib.request.Request(
    "https://api.satelit.md/v1/companies?q=exemplu",
    headers={"Authorization": f"Bearer {os.environ['SATELIT_KEY']}"},
)
with urllib.request.urlopen(req) as res:
    body = json.load(res)
print(body["data"], body["meta"]["credits"])
<?php
$ch = curl_init("https://api.satelit.md/v1/companies?q=exemplu");
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => ["Authorization: Bearer " . getenv("SATELIT_KEY")],
]);
$body = json_decode(curl_exec($ch), true);
curl_close($ch);
print_r($body["data"]);
Response
{
  "data": [
    {
      "idno": "1003600000001",
      "slug": "exemplu-1003600000001",
      "name": "Societatea cu Răspundere Limitată \"EXEMPLU\"",
      "display": "EXEMPLU",
      "legal_form": "SRL",
      "active": true,
      "city": "Chișinău",
      "registered": "2004-03-12",
      "activity": {
        "text": "47.11 Comerț cu amănuntul",
        "division": {
          "key": "r2-47",
          "code": "47",
          "revision": "r2",
          "name": "Retail trade"
        },
        "class": {
          "code": "47.11",
          "name": "Retail sale in non-specialised stores with food, beverages or tobacco predominating"
        },
        "sector": {
          "key": "trade",
          "name": "Trade"
        }
      },
      "contracts_won": 12,
      "contracts_mdl": 845200.5,
      "court_cases": 3,
      "page": "https://satelit.md/en/legislation/companies/exemplu-1003600000001"
    }
  ],
  "meta": {
    "credits": 3,
    "updated_at": "2026-11-02T13:05:00+02:00",
    "sources": [
      {
        "name": "Agenția Servicii Publice (registrul de stat)",
        "url": "https://asp.gov.md/ro/date-deschise",
        "license": "Open data (Law 109/2025), source named"
      }
    ],
    "attribution": "Date: Satelit (satelit.md); Sursa: Agenția Servicii Publice, registrul de stat al persoanelor juridice (date.gov.md, asp.gov.md)",
    "page": {
      "page": 1,
      "per": 20,
      "total": 1,
      "pages": 1
    }
  }
}

The register's figures

GET/v1/companies/stats

How many companies and how many active, by legal form, field, town and year, and the public contracts won.

Credits
2
With a key

Parameters

No parameters.

Possible errors

Try it

curl "https://api.satelit.md/v1/companies/stats" \
  -H "Authorization: Bearer $SATELIT_KEY"
const res = await fetch("https://api.satelit.md/v1/companies/stats", {
  headers: { Authorization: `Bearer ${process.env.SATELIT_KEY}` },
});
const { data, meta } = await res.json();
console.log(data, meta.credits);
import json, os, urllib.request

req = urllib.request.Request(
    "https://api.satelit.md/v1/companies/stats",
    headers={"Authorization": f"Bearer {os.environ['SATELIT_KEY']}"},
)
with urllib.request.urlopen(req) as res:
    body = json.load(res)
print(body["data"], body["meta"]["credits"])
<?php
$ch = curl_init("https://api.satelit.md/v1/companies/stats");
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => ["Authorization: Bearer " . getenv("SATELIT_KEY")],
]);
$body = json_decode(curl_exec($ch), true);
curl_close($ch);
print_r($body["data"]);
Response
{
  "data": {
    "total": 254160,
    "active": 140081,
    "in_register": 254160,
    "register_date": "2025-08-04",
    "forms": [
      {
        "form": "SRL",
        "n": 101230
      }
    ],
    "cities": [
      {
        "city": "Chișinău",
        "n": 70110
      }
    ],
    "sectors": [
      {
        "key": "trade",
        "name": "Trade",
        "n": 41200
      }
    ],
    "years": [
      {
        "year": 2024,
        "n": 6100
      }
    ],
    "with_site": 2400,
    "contracts": 88000,
    "contracts_mdl": 41250000000
  },
  "meta": {
    "credits": 2,
    "updated_at": "2026-11-02T13:05:00+02:00",
    "sources": [
      {
        "name": "Agenția Servicii Publice (registrul de stat)",
        "url": "https://asp.gov.md/ro/date-deschise",
        "license": "Open data (Law 109/2025), source named"
      },
      {
        "name": "MTender",
        "url": "https://public.mtender.gov.md",
        "license": "Open data (OCDS), source named"
      }
    ],
    "attribution": "Date: Satelit (satelit.md); Sursa: Agenția Servicii Publice, registrul de stat al persoanelor juridice (date.gov.md, asp.gov.md)"
  }
}

One company

GET/v1/companies/{idno}

The register's row and what older files said, directors and founders as the register publishes them, MTender contracts, AIPA subsidies, statements (APP, BNM), the proven site and the court cases with its name. No phone, e-mail or reviews.

Credits
2
With a key

Parameters

  • idnostringrequired

    The 13-digit IDNO, or the page's slug that ends with it.

Possible errors

Try it

curl "https://api.satelit.md/v1/companies/1003600000001" \
  -H "Authorization: Bearer $SATELIT_KEY"
const res = await fetch("https://api.satelit.md/v1/companies/1003600000001", {
  headers: { Authorization: `Bearer ${process.env.SATELIT_KEY}` },
});
const { data, meta } = await res.json();
console.log(data, meta.credits);
import json, os, urllib.request

req = urllib.request.Request(
    "https://api.satelit.md/v1/companies/1003600000001",
    headers={"Authorization": f"Bearer {os.environ['SATELIT_KEY']}"},
)
with urllib.request.urlopen(req) as res:
    body = json.load(res)
print(body["data"], body["meta"]["credits"])
<?php
$ch = curl_init("https://api.satelit.md/v1/companies/1003600000001");
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => ["Authorization: Bearer " . getenv("SATELIT_KEY")],
]);
$body = json_decode(curl_exec($ch), true);
curl_close($ch);
print_r($body["data"]);
Response
{
  "data": {
    "idno": "1003600000001",
    "slug": "exemplu-1003600000001",
    "name": "Societatea cu Răspundere Limitată \"EXEMPLU\"",
    "display": "EXEMPLU",
    "legal_form": "SRL",
    "active": true,
    "city": "Chișinău",
    "registered": "2004-03-12",
    "activity": {
      "text": "47.11 Comerț cu amănuntul",
      "division": {
        "key": "r2-47",
        "code": "47",
        "revision": "r2",
        "name": "Retail trade"
      },
      "class": {
        "code": "47.11",
        "name": "Retail sale in non-specialised stores with food, beverages or tobacco predominating"
      },
      "sector": {
        "key": "trade",
        "name": "Trade"
      }
    },
    "contracts_won": 12,
    "contracts_mdl": 845200.5,
    "court_cases": 3,
    "page": "https://satelit.md/en/legislation/companies/exemplu-1003600000001",
    "status": "Înregistrată",
    "register_date": "2025-08-04",
    "in_register": true,
    "address": "mun. Chișinău, str. Exemplu 1",
    "activities": [
      "47.11 Comerț cu amănuntul"
    ],
    "people": {
      "directors": [
        "Exemplu Ion"
      ],
      "founders": [
        "Exemplu Ion (100,00%)"
      ]
    },
    "history": {
      "fields": {
        "address": [
          {
            "day": "2024-01-29",
            "value": "mun. Chișinău, str. Veche 2"
          }
        ]
      },
      "today": "2025-08-04"
    },
    "group": {
      "founded_by": [],
      "founded": [],
      "founded_n": 0,
      "siblings": []
    },
    "scale": "sme",
    "contracts": {
      "count": 12,
      "mdl": 845200.5,
      "by_year": [
        {
          "year": 2026,
          "n": 4,
          "mdl": 310000
        }
      ],
      "buyers": [
        {
          "name": "Primăria Exemplu",
          "idno": "1007601000001",
          "n": 4,
          "mdl": 310000
        }
      ],
      "recent": [
        {
          "ocid": "ocds-b3wdp1-MD-1700000000001",
          "title": "Produse alimentare",
          "buyer": "Primăria Exemplu",
          "buyer_idno": "1007601000001",
          "amount": 120000,
          "currency": "MDL",
          "category": "goods",
          "cpv": "15800000-6",
          "status": "active",
          "at": "2026-11-02T13:05:00+02:00",
          "url": "https://public.mtender.gov.md/tenders/ocds-b3wdp1-MD-1700000000001"
        }
      ]
    },
    "subsidies": [],
    "statements": [],
    "figures": null,
    "site": {
      "website": "https://exemplu.md",
      "socials": [
        {
          "network": "facebook",
          "url": "https://www.facebook.com/exemplu",
          "found_on": "https://exemplu.md",
          "seen": "2026-11-02T13:05:00+02:00"
        }
      ],
      "brands": [
        {
          "host": "exemplu.md",
          "name": "Exemplu",
          "kind": "site",
          "evidence": "idno",
          "evidence_url": "https://exemplu.md/termeni",
          "checked": "2026-11-02T13:05:00+02:00"
        }
      ]
    },
    "courts": {
      "profile": {
        "kind": "company",
        "slug": "exemplu-srl",
        "name": "SRL „EXEMPLU”",
        "cases": 3,
        "url": "https://satelit.md/en/legislation/court-hearings/company/exemplu-srl",
        "api": "/v1/courts/names/company/exemplu-srl"
      },
      "cases": 3,
      "as_plaintiff": 2,
      "as_defendant": 1,
      "next": {
        "id": 1207,
        "date": "2026-11-18",
        "time": "09:30",
        "court": "Chișinău District Court",
        "seat": "Chișinău District Court, Buiucani seat",
        "room": "Sala 7",
        "judge": "Mihail Probescu",
        "kind": "civil",
        "outcome": null,
        "result": null,
        "pdf": null,
        "case": {
          "number": "2-26050585-12-2-23042026",
          "title": "SRL \"Alfa\" vs. Popescu Ion - Acțiuni privind încasarea datoriei",
          "kind": "civil",
          "kind_name": "Civil",
          "court": {
            "slug": "judecatoria-chisinau",
            "name": "Chișinău District Court",
            "kind": "district",
            "url": "https://satelit.md/en/legislation/court-hearings/judecatoria-chisinau"
          },
          "registered_on": "2026-04-23",
          "last_on": "2026-10-14",
          "next_on": "2026-11-18",
          "hearings": 2,
          "decisions": 1,
          "decided_on": "2026-11-05",
          "url": "https://satelit.md/en/legislation/court-hearings/judecatoria-chisinau/2-26050585-12-2-23042026"
        }
      },
      "recent": [
        {
          "number": "2-26050585-12-2-23042026",
          "title": "SRL \"Alfa\" vs. Popescu Ion - Acțiuni privind încasarea datoriei",
          "kind": "civil",
          "kind_name": "Civil",
          "court": {
            "slug": "judecatoria-chisinau",
            "name": "Chișinău District Court",
            "kind": "district",
            "url": "https://satelit.md/en/legislation/court-hearings/judecatoria-chisinau"
          },
          "registered_on": "2026-04-23",
          "last_on": "2026-10-14",
          "next_on": "2026-11-18",
          "hearings": 2,
          "decisions": 1,
          "decided_on": "2026-11-05",
          "url": "https://satelit.md/en/legislation/court-hearings/judecatoria-chisinau/2-26050585-12-2-23042026",
          "side": "a"
        }
      ]
    },
    "updated_at": "2026-11-02T13:05:00+02:00"
  },
  "meta": {
    "credits": 2,
    "updated_at": "2026-11-02T13:05:00+02:00",
    "sources": [
      {
        "name": "Agenția Servicii Publice (registrul de stat)",
        "url": "https://asp.gov.md/ro/date-deschise",
        "license": "Open data (Law 109/2025), source named"
      },
      {
        "name": "MTender",
        "url": "https://public.mtender.gov.md",
        "license": "Open data (OCDS), source named"
      },
      {
        "name": "Companies' own sites",
        "url": null,
        "license": "none: read from the source's public pages; no agreement with the source and no licence over its data is granted"
      },
      {
        "name": "instante.justice.md",
        "url": "https://instante.justice.md",
        "license": "none: read from the source's public pages; no agreement with the source and no licence over its data is granted"
      }
    ],
    "attribution": "Date: Satelit (satelit.md); Sursa: Agenția Servicii Publice, registrul de stat al persoanelor juridice (date.gov.md, asp.gov.md)"
  }
}

A company's contracts

GET/v1/companies/{idno}/contracts

The public contracts it won (MTender), newest first, 50 a page.

Credits
2 for every 50 rows
With a key

Parameters

  • idnostringrequired

    The 13-digit IDNO, or the page's slug that ends with it.

  • pageintegeroptionaldefault 1

    The page, starting at 1.

Possible errors

Try it

curl "https://api.satelit.md/v1/companies/1003600000001/contracts" \
  -H "Authorization: Bearer $SATELIT_KEY"
const res = await fetch("https://api.satelit.md/v1/companies/1003600000001/contracts", {
  headers: { Authorization: `Bearer ${process.env.SATELIT_KEY}` },
});
const { data, meta } = await res.json();
console.log(data, meta.credits);
import json, os, urllib.request

req = urllib.request.Request(
    "https://api.satelit.md/v1/companies/1003600000001/contracts",
    headers={"Authorization": f"Bearer {os.environ['SATELIT_KEY']}"},
)
with urllib.request.urlopen(req) as res:
    body = json.load(res)
print(body["data"], body["meta"]["credits"])
<?php
$ch = curl_init("https://api.satelit.md/v1/companies/1003600000001/contracts");
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => ["Authorization: Bearer " . getenv("SATELIT_KEY")],
]);
$body = json_decode(curl_exec($ch), true);
curl_close($ch);
print_r($body["data"]);
Response
{
  "data": [
    {
      "ocid": "ocds-b3wdp1-MD-1700000000001",
      "title": "Produse alimentare",
      "buyer": "Primăria Exemplu",
      "buyer_idno": "1007601000001",
      "amount": 120000,
      "currency": "MDL",
      "category": "goods",
      "cpv": "15800000-6",
      "status": "active",
      "at": "2026-11-02T13:05:00+02:00",
      "url": "https://public.mtender.gov.md/tenders/ocds-b3wdp1-MD-1700000000001"
    }
  ],
  "meta": {
    "credits": 2,
    "updated_at": "2026-11-02T13:05:00+02:00",
    "sources": [
      {
        "name": "MTender",
        "url": "https://public.mtender.gov.md",
        "license": "Open data (OCDS), source named"
      }
    ],
    "attribution": "Date: Satelit (satelit.md); Sursa: MTender (public.mtender.gov.md)",
    "page": {
      "page": 1,
      "per": 50,
      "total": 1,
      "pages": 1
    }
  }
}