Looking up an Irish company programmatically usually means scraping the CRO website or buying a heavyweight KYB platform. There is a simpler path: the Prometiam API serves the Companies Registration Office register as JSON over one REST endpoint, sourced from the CRO Open Data Portal. This post shows a runnable curl, the exact response as returned today, a Node snippet, and an honest account of what the data does and does not include.
By Matías Maquieira, Founder of Prometiam.
What is the CRO?
The Companies Registration Office (CRO) is the statutory body that registers companies and business names in Ireland. Every Irish limited company, DAC, PLC and registered branch has a CRO number, a status (active, dissolved, struck off, in liquidation, in examinership), and a registered office address. The CRO publishes a bulk snapshot on the CRO Open Data Portal, licensed CC BY 4.0, which is the source behind the calls below.
Query it in one call
The endpoint is GET /companies/search?country=IE. Authentication is a Bearer key; the free plan is a 14-day trial with 1,000 calls and no card, and a key takes about a minute at prometiam.com/signup.
curl -s "https://api.prometiam.com/functions/v1/risk-api/companies/search?country=IE&name=ryanair" \
-H "Authorization: Bearer $PROMETIAM_API_KEY"
The first of nine matches, as returned on 25 September 2026, happens to show why status matters:
{
"data": [
{
"id": 246488,
"match_score": 67,
"company_number": "246488",
"company_name": "RYANAIR.COM LIMITED",
"legal_form": "LTD - Private Company Limited by Shares",
"province": "DUBLIN",
"address": "IRISH LIQUIDATIONS, 7 FITZWILLIAM STREET LOWER, DUBLIN 2",
"postal_code": "D02 DT85",
"status": "dissolved",
"founding_date": "1996-03-21",
"dissolution_date": "2026-08-22",
"country": "IE"
}
],
"pagination": { "count": 9, "has_more": false, "next_cursor": null }
}
A company that was dissolved a month ago, with the liquidator's address as its registered office. A name match is not a verification; the status and dissolution_date fields are.
If you already hold the CRO number, look it up exactly:
curl -s "https://api.prometiam.com/functions/v1/risk-api/companies/search?country=IE&company_number=104547" \
-H "Authorization: Bearer $PROMETIAM_API_KEY"
which returns RYANAIR DESIGNATED ACTIVITY COMPANY, legal form DAC, active, incorporated 1984-11-28. Fetch the full record with GET /companies/{id}?country=IE; it adds status_date, the last annual return date (last_ar_date) and next_accounts_due. The same pattern from Node, with the built-in fetch:
const BASE = "https://api.prometiam.com/functions/v1/risk-api";
const KEY = process.env.PROMETIAM_API_KEY;
async function searchIE(name) {
const url = `${BASE}/companies/search?country=IE&name=${encodeURIComponent(name)}`;
const res = await fetch(url, { headers: { Authorization: `Bearer ${KEY}` } });
if (!res.ok) throw new Error(`HTTP ${res.status}`);
const { data } = await res.json();
return data;
}
const matches = await searchIE("ryanair");
console.log(matches.map((c) => `${c.company_number} — ${c.company_name} (${c.status})`));
What you get back
Each Irish record is company-level: legal name, CRO number, legal form, status and status date, registered address and Eircode, incorporation and dissolution dates, last annual return and next accounts due. That is enough to verify a company exists, confirm it is still active, and resolve its registered address.
One honest limitation: directors, officers and beneficial ownership are not included. Public access to Ireland's Register of Beneficial Ownership is legally restricted across the EU since the Court of Justice ruling of November 2022, and the CRO open data does not carry officers. You get reliable existence, status and address data; if your use case needs the directors of an Irish company, you need a different, gated source. Better to know that before you integrate than after.
Monitoring
Ireland is one of the three countries with monitoring. POST /monitor with the company's id subscribes it, and a signed webhook reaches you when the status changes, which is exactly the dissolution above, without a daily poll.
UK + Ireland on one key
The same key and the same endpoints serve the UK (Companies House) via ?country=GB:
curl -s "https://api.prometiam.com/functions/v1/risk-api/companies/search?country=GB&name=ryanair" \
-H "Authorization: Bearer $PROMETIAM_API_KEY"
This matters after Brexit. Many UK groups hold a Dublin-incorporated subsidiary to keep an EU footprint, so verifying a counterparty often spans both registries. With one schema and one key you flip country=GB to country=IE and back. Where Ireland is company-level only, the UK record carries current and past officer appointments, and persons with significant control are available on the UK side.
FAQ
Is CRO data free or licensed?
The underlying data comes from the CRO Open Data Portal under CC BY 4.0, open data with an attribution requirement. If you republish it, include "Contains Irish Public Sector Data licensed under CC BY 4.0". The API is a paid service with a free 14-day trial; it adds normalisation, search, the UK registry, monitoring and EU-hosted infrastructure.
Does it include directors or UBO?
No. Irish coverage is company-level: name, legal form, status, address, Eircode, dates. UK officers and persons with significant control are available via ?country=GB.
How is this different from the official CRO search?
The official site is built for one-off human lookups, not programmatic access. This API returns normalised JSON, supports name search and exact-number lookup, applies the same schema across six countries (Ireland, the UK, Spain, France, Poland, Norway), and is hosted in the EU.
How much does it cost?
A free 14-day trial with 1,000 calls and no card. Paid plans are Starter at €9.99 (10,000 calls), Professional at €29.99 (100,000, adds full sanctions screening), Scale at €99.99 (1,000,000) and Enterprise.
For the cross-border verification pattern in full, see the guide at prometiam.com/guides/uk-ireland-british-isles-kyb. To try it on a free 14-day trial key, sign up.
Contains Irish Public Sector Data licensed under CC BY 4.0.
Top comments (0)