Company Registry Lookup: LEI, Norway, Czechia, Finland avatar

Company Registry Lookup: LEI, Norway, Czechia, Finland

Pricing

from $2.10 / 1,000 company records

Go to Apify Store
Company Registry Lookup: LEI, Norway, Czechia, Finland

Company Registry Lookup: LEI, Norway, Czechia, Finland

Weekly lists of newly registered companies (UK Companies House with your API key, Norway, Finland, GLEIF). France has name and SIREN search and is not in the new-company list. Czechia and Poland lookup too. Company data only. Not affiliated with any registry.

Pricing

from $2.10 / 1,000 company records

Rating

0.0

(0)

Developer

Muhammet Mustafa Dincer

Muhammet Mustafa Dincer

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Security

Limited permissions

Share

Company Registry Lookup: weekly new-company lists from official registers, including UK Companies House with your own API key

What is Company Registry Lookup?

Company Registry Lookup builds a weekly list of newly registered companies from official registers, and it can also search by name or look a company up by its registration number. Every company comes back as one normalized company record, with the register's own id and the time the row was read.

The weekly list covers:

  • Norway: Enhetsregisteret, run by the Bronnoysund Register Centre (BRREG);
  • Finland: the open data of the Patent and Registration Office (PRH, the YTJ business information system);
  • GLEIF: the Global LEI Index, worldwide, companies that received a Legal Entity Identifier in the window;
  • United Kingdom: Companies House, when you paste your own free API key. The Actor reads company profiles only.

Name search and number lookup also cover France (Annuaire des Entreprises), Czechia (ARES) and Poland (KRS, by number only). France has name and SIREN search, and is not in the new-company list (the open search has no incorporation-date filter).

Each row has the same fields: registryId, registered name, legal form, normalized status, address, founding and registration dates, industry codes, identifiers, licence, attribution, a link to the record at the register, and fetchedAt.

Company-level data only. The Actor never reads officers, directors, partners, shareholders, beneficial owners or filings, and it leaves out sole traders and other legal forms that identify a natural person.

A lookup of four companies in four registers, with their LEIs added, took 8 seconds on the platform.

Real run: four registers, one schema

Quick answer: when should you (or an AI agent) pick this Actor?

Pick this Actor when you want a weekly lead list of newly registered companies in Norway, Finland and GLEIF, and in the UK once you add your free Companies House key. The same Actor does KYB pre-checks ("does this company exist, is it active, what is its legal form") and CRM enrichment for France, Czechia, Poland and the others. Every row carries the register's own id (registryId), the time it was read (fetchedAt), the licence and a link to the register record.

Pick something else when you need officers, owners, financial statements, credit scores or filings: this Actor does not return people and does not read filings. Brazil is not included, and neither is any country not listed here (see "Which registers are covered?"). Poland's open API has no name search, so Polish companies are found by KRS number only. France is name and SIREN lookup, not a new-company feed.

Defaults that work: schedule {"mode": "new", "sinceDays": 7, "onlyNew": true, "registries": ["brreg", "prh"]} for the weekly list. Add "companies-house" and your companiesHouseApiKey to include the UK. To verify known numbers, send {"mode": "lookup", "identifiers": ["NO:923609016", "GB:00445790", "FR:552032534"], "linkLei": true}. To search by name, send {"mode": "search", "queries": ["Equinor"]}.

At a glance

DoesWeekly lists of newly registered companies (Norway, Finland, GLEIF, and the UK with your key); name search and number lookup, including France (name and SIREN only, not a new-company list); normalized status, legal form, address, industry and identifiers; optional LEI on national records; skips companies an earlier run already delivered
Inputmode (new, search, lookup), queries (up to 100 names), identifiers (up to 500 numbers). Optional: registries, companiesHouseApiKey, maxResultsPerQuery, onlyActive, includeFunds, gleifCountries, linkLei, sinceDays, onlyNew, stateName
OutputrecordType: "company" and "source" rows in one dataset, plus RUN_SUMMARY in the key-value store. Every company row has registryId and fetchedAt
NeedsNothing for France, GLEIF, Norway, Czechia, Finland and Poland. The UK needs your own free Companies House API key. No proxy
RegistersUK Companies House (your key), France, GLEIF (worldwide), Norway, Czechia, Finland, Poland
SpeedMeasured on the platform for the keyless registers: 421 companies from 20 name searches in 30 s; 300 new companies in 16 s. UK calls stay under Companies House's 600 requests per 5 minutes
PricingPay per event: $0.003 per delivered company, $0.001 per LEI added (only when you turn it on and one exists), $0.0005 per run, on the Free plan. Same price for the UK and France
Does notReturn officers, owners or other people, read filings or accounts, search Polish names, list new French companies, cover Brazil or any country not listed

Key terms used in this README

  • Register (registry): the official source of company records: Companies House (UK), Annuaire des Entreprises (France), GLEIF, BRREG (Norway), ARES (Czechia), PRH (Finland) and KRS (Poland).
  • Company row: a dataset row with recordType: "company": one company with the same fields in every register.
  • Source row: a dataset row with recordType: "source": one per company name, registration number or register that was read, with what was found, delivered and left out, and why anything failed. Never charged.
  • LEI: Legal Entity Identifier, a 20-character global company ID kept by GLEIF. Many large companies have one; most small ones do not.
  • Registration number: the ID the national register uses: company number (UK, GB:00445790 or SC123456), SIREN (France, 9 digits, prefix FR:), organisation number (Norway, 9 digits), IČO (Czechia, 8 digits), business ID or Y-tunnus (Finland, 0112038-9), KRS number (Poland, 10 digits). An 8-digit number without a prefix is a Czech IČO. A 9-digit number without a prefix is Norwegian.
  • Normalized status: active, in_liquidation, in_restructuring, insolvency, dissolved, inactive or unknown, mapped from each register's own wording; the original wording stays in statusDetail.
  • Private person (left out): a sole trader, private individual, estate or foreign unit whose register entry identifies a natural person. These are never requested and never delivered.
  • Add the LEI (linkLei): for records from the national registers, including the UK and France, the Actor asks GLEIF for the LEI registered under the same national number and adds it.
  • Saved state (onlyNew): the run remembers the companies it delivered in a named key-value store and skips them next time.

What can you use it for?

KYB pre-checks and onboarding

Look up the registration number a customer or supplier gave you. The row tells you whether the company exists, its registered name and address, legal form, status and ceasedAt, with a sourceUrl you can open to confirm at the register. This is a data lookup, not a compliance decision: see the legal section.

CRM and supplier-list enrichment

Send names with mode: "search", or numbers with mode: "lookup", and join the result on registry plus registryId. Turn on linkLei to get the LEI where one exists, so records line up with other datasets that use LEIs.

Weekly lists of new companies

This is the run to schedule. mode: "new" lists companies registered in the last 1 to 90 days in GLEIF, Norway and Finland, and in Companies House when your API key is set. With onlyNew: true and a stateName, the run delivers only companies you have not received before: a lead list, not a repeat of last week's search.

Cross-border analysis

Industry codes (SIC, NAF, NACE, TOL, PKD), legal forms, dates and capital use the same field names in every register, so a table of UK, French, Norwegian, Czech, Finnish and Polish companies needs one parser.

Feeding an AI agent

Rows are flat, typed and carry their own licence and attribution. An agent can look up a company by number and cite sourceUrl.

How does it work?

  1. You choose a mode and give company names or registration numbers.
  2. The Actor sends each request to the register's official API, one request at a time per register and at a measured pace (GLEIF about 1 per second, the national registers 1 to 3 per second, Companies House under 600 requests per 5 minutes). The UK call sends your API key as HTTP Basic authentication and only to Companies House. France is asked for the company and its registered office, not for officers. The user agent names this Actor.
  3. Each answer is normalized to the same fields. Legal forms that identify a natural person are left out before anything is stored. Officer and beneficial-owner payloads are never requested.
  4. Duplicates inside the run, and companies delivered in an earlier run when onlyNew is on, are removed.
  5. If linkLei is on, the national numbers of the delivered companies are sent to GLEIF in batches to find their LEIs.
  6. Company rows are written (and charged), one source row per job is written (free), and a run summary is saved.

If a register answers 403 or 429, the Actor waits where the register asks and tries again at most twice. If that fails, it stops using that register for the rest of the run, marks the remaining jobs not_fetched and keeps what it already delivered. It never rotates IP addresses or tries another route.

How to look up a company by registration number (step by step)

  1. Open the Actor and choose Look up by registration number.
  2. Paste numbers, one per line: GB:00445790, SC123456, FR:552032534, NO:923609016, CZ:00177041, FI:0112038-9, PL:0000019193 or a 20-character LEI. The prefix is optional when the shape is unambiguous. An 8-digit UK number and a 9-digit SIREN need GB: and FR:. A UK number also needs UK Companies House API key.
  3. Keep Add the LEI on if you want the LEI of the national records.
  4. Click Start. The default dataset has one company row per number and one source row per number.
  5. Open the Companies view for the table, or the Status and dates view for status, dates, employees and capital.

Input

FieldTypeDefaultWhat it does
modesearch, lookup, newsearchSearch by name, look up by registration number, or list new companies. Schedule new for the weekly lead list
querieslist of textnoneCompany names for search. Up to 100
identifierslist of textnoneRegistration numbers for lookup, with an optional prefix. Up to 500
registrieslist of gleif, brreg, ares, prh, krs, france, companies-houseevery keyless register that supports the modeWhich registers to use. The UK is added to that default only when companiesHouseApiKey is set. An explicitly chosen register that cannot do the mode gets a not_supported source row
companiesHouseApiKeytext, secretemptyYour free Companies House API key. Required for the UK. Sent only to Companies House, not stored in the dataset, not written to the log. Leave empty to skip the UK
maxResultsPerQueryinteger, 1 to 200025Most companies delivered per name and register (per register in new mode)
onlyActivebooleanfalseSkip companies that are dissolved, in liquidation or bankrupt (search and new)
includeFundsbooleanfalseInclude investment funds from GLEIF
gleifCountrieslist of two-letter codesworldwideLimit GLEIF to the legal address country
linkLeibooleanfalseAdd the LEI to records from the national registers
sinceDaysinteger, 1 to 907new mode: registered in the last this-many days
onlyNewbooleanfalseSkip companies that an earlier run with the same stateName delivered
stateNametextcompany-registry-lookup-stateName of the key-value store that holds the saved state

Prefilled input: lookup of four registration numbers with Add the LEI on.

Output

One dataset holds two kinds of rows, told apart by recordType. Every company row has the same keys, so a table never has holes.

Company rows

FieldMeaning
registry, countryRegister that delivered the row (Companies House, France, GLEIF, BRREG, ARES, PRH, KRS) and the country of the legal address
registryIdThe register's own identifier. With registry it is a stable key. On every company row
leiThe LEI, always for GLEIF rows, and for other rows when linkLei found one
name, previousNames, otherNamesRegistered legal name and the other names the register reports
legalForm{code, name} in the register's own wording
entityCategoryGLEIF category (GENERAL, BRANCH, FUND, RESIDENT_GOVERNMENT_ENTITY, INTERNATIONAL_ORGANIZATION), otherwise null
status, statusDetailNormalized status and the register's own wording
foundedAt, registeredAt, ceasedAtYYYY-MM-DD, or null when the register does not say
address{street, postalCode, city, region, country, formatted}
industry[{code, description, scheme}] with SIC 2007 (UK lookup and UK new-company lists), NAF Rev. 2 (France), NACE (Norway, Czechia), TOL 2008 (Finland) or PKD 2007 (Poland). A UK name search does not include SIC codes; look the company number up for those
employees, capital, websiteWhen the register states them (employees: Norway; capital: Norway and Poland; website: Norway, Finland, Poland)
identifiers[{type, value}]: national number, VAT, EUID, NIP, REGON, LEI
lastUpdatedAtWhen the register last changed the entry, if it says
sourceUrlThe record in the register's open API
license, attributionThe licence and the attribution line to keep when you republish
fetchedAtWhen the run read the record. On every company row, next to registryId, so the row can be cited

Source rows

One per company name, registration number or register: registry, mode, input, outcome (ok, empty, failed, not_supported, not_fetched), failureReason, message, httpStatus, found, totalInRegistry, delivered, duplicates, alreadySeen, excluded (private persons left out), leiLinked, truncated and durationMs.

truncated: true means the register holds more matches than were delivered: the per-name limit, the register's own cap or your spending limit stopped the job.

Run summary

RUN_SUMMARY in the key-value store: jobs run, failed and not fetched, companies delivered per register, LEIs added, duplicates removed, companies skipped as already seen, private persons left out, registers stopped after a refusal, requests made per register and the first failures.

Which registers are covered?

RegisterName searchLookup by numberNew companiesLicenceWhat to know
GLEIF (worldwide)YesLEIYes (by LEI registration date)CC0 1.0Only companies with a LEI. About 60 requests per minute are allowed per user; the Actor stays below that
Norway (BRREG)Yes9-digit organisation numberYesNLOD 2.0Sole proprietorships, private estates and foreign units registered for VAT are left out. Paging stops at 10,000 hits
Czechia (ARES)YesIČONoARES operating conditionsOne search returns at most 1,000 matches: use a longer name. Natural-person legal forms are left out. ARES asks for no concurrent automated queries and no random enumeration; the Actor sends one query at a time and only the names you give it
Finland (PRH)YesBusiness IDYesCC BY 4.0No sole traders in the open data. Name search ranks the best name matches among the first 500 hits
Poland (KRS)NoKRS numberNoPolish public sector information (open data act)Only the company-level sections of the extract are read; the sections that name people are never read
United Kingdom (Companies House)YesCompany number (GB:00445790, SC123456)Yes, by incorporation dateOpen Government Licence v3.0Your own free API key. Company profile, company search and advanced company search only. Officers, people with significant control and filings are never requested. Paced under 600 requests per 5 minutes
France (Annuaire des Entreprises)YesSIREN (FR:, 9 digits; a 14-digit SIRET is reduced to its SIREN)NoLicence Ouverte 2.0The open search answered again on 2026-11-04. Requests ask for the company and its registered office (minimal=true), never officers. Sole traders (entrepreneur individuel) and other natural-person forms are left out. There is no incorporation-date filter, so France is not in the new-company list

Why not Brazil? BrasilAPI publishes a robots.txt that disallows /api/* for automated clients and carries partner data, so this Actor does not use it. Other countries are simply not covered yet. Coverage stays on registers whose terms we checked and whose APIs answer with company-level data.

How much does it cost?

The Actor uses pay-per-event pricing. On the Free plan:

EventPriceWhen it is charged
Actor Start$0.0005Once per run (per GB of memory)
Company record$0.003Per company row delivered
LEI added$0.001Per LEI actually added when linkLei is on and GLEIF has one

Source rows, the run summary and everything that does not deliver a company are free: failed or empty lookups, registers that refused the request, duplicates, companies already delivered in an earlier run (onlyNew), private persons left out. Paid plans get lower prices per company.

Measured examples on the platform (2026-11-04), at Free-plan prices:

RunCompaniesRun timeYou pay
4 registration numbers in 4 registers with Add the LEI (the prefill): 4 LEIs found48 s$0.0165
5 company names (Equinor, Skoda, Nokia, Telenor, Orlen) in 4 registers, up to 50 each42130 s$1.2635
New companies of the last 2 days in GLEIF, Norway and Finland, 100 each, onlyNew30016 s$0.9005

UK and French companies use the same company record event at the same prices. The event description in the pricing file still names the original five sources; the price figures were not changed.

To cap spending, lower maxResultsPerQuery or set a maximum cost per run in the Apify run options. The Actor works out how many companies the limit still pays for and stops cleanly; remaining jobs are marked not_fetched with limit_reached.

How does it compare with other company-registry Actors?

Checked on the Apify Store on 2026-11-04. Several Actors cover parts of this ground, and for one country or one register a specialised Actor may suit you better.

This Actoractor-forge/company-registry-lookuppostatelier/eu-company-registryoffgrid-labs/company-registry-lookup
Registers (Store listing)UK (your API key), France, GLEIF, Norway, Czechia, Finland, PolandFrance, Norway, Finland, Czechia, Poland, Brazil, GLEIFFrance, Norway, Finland, Czechia, Poland, LEI, EU VAT checkUK, France, Norway, Finland
Name search and number lookupYes, both (Poland by number only)Yes (listing)Yes (listing)Yes (listing)
New companies modeYes (GLEIF, Norway, Finland, UK with your key)Not documentedNot documentedNot documented
Only new since the last runYes (onlyNew)Not documentedNot documentedNot documented
LEI linking for national recordsYes (linkLei)Not documentedNot documentedNot documented
OfficersNeverNot documentedNot documentedOptional
Per-row licence and attributionYesNot documented"Open licences" (listing)Not documented
Price per company (Free plan)$0.003$0.001$0.004$0.003

In short: for Brazil, or for the lowest price per record, use one of the other Actors. This Actor stays at $0.003 per company. If you need a weekly list of new companies, company-level data only, the register's own id and the fetch time on every row, and LEI linking, including the UK with your own key and France for name and SIREN lookup, this Actor is built for that. "Not documented" means the other Actor's listing does not mention the feature; it may still do it.

The Actor reads open data that official registers publish through their own public APIs for reuse. Please read this section before you use the output for anything beyond research.

  • It uses only the documented APIs of Companies House, the Annuaire des Entreprises, GLEIF, the Bronnoysund Register Centre, the Czech Ministry of Finance (ARES), the Finnish Patent and Registration Office (PRH) and the Polish Ministry of Justice (KRS). It does not scrape websites, log in, solve challenges or use proxies. The Companies House key is yours; the Actor does not supply one.
  • It is polite: one request at a time per register, paced below each register's published or implied limit. On 403 it stops; on 429 it waits where the register asks and gives up after two waits.
  • Licences travel with the data. Companies House data is Crown copyright under the Open Government Licence v3.0. French data is under the Licence Ouverte 2.0. GLEIF data is CC0 1.0. Norwegian data is under the Norwegian Licence for Open Government Data (NLOD 2.0) and Finnish data under CC BY 4.0: keep the attribution field when you republish. Czech data is used under the ARES operating conditions and Polish data as public sector information. Each row states its licence.
  • Company data only. The Actor never reads officers, directors, partners, shareholders, beneficial owners or filings, and leaves out sole traders and other entries that identify a natural person. For Companies House that means the company profile, the company search and the advanced company search; /officers and /persons-with-significant-control are never called. For France the request is minimal=true with the company and its registered office only, and entrepreneur individuel entries are dropped. Care-of address lines (c/o, v/, and the Companies House care_of field) are removed because they often carry a person's name. Some French companies are marked as opposed to commercial prospecting; the open API still returns them, including large companies, and you are responsible for not using an opted-out company as a sales lead. A company's registered legal name is delivered as published, and some legal names contain a person's name (for example a partnership named after its partners). If you process such names, data-protection law (GDPR) may apply to you: you are responsible for your use and for complying with each register's terms and the law that applies to you.
  • Registers can be wrong, late or incomplete, and the Actor maps statuses by rule. Do not treat a row as a compliance, credit or legal decision. Check the record at sourceUrl before you act on it.
  • Takedown: if a register operator or a rights holder asks for something to be changed, removed or for access to stop, we will honour the request. Use the Issues tab of this Actor.

Not affiliated with, endorsed by or sponsored by Companies House, the Direction interministerielle du numerique, GLEIF, the Bronnoysund Register Centre, the Czech Ministry of Finance, the Finnish Patent and Registration Office or the Polish Ministry of Justice. No register logos are used.

Using the API

MCP (AI agents)

Apify MCP server (ChatGPT, Claude, Cursor and other MCP clients). Connect https://mcp.apify.com, then:

  1. search-actors with a query such as new companies UK Companies House Norway Finland.
  2. fetch-actor-details for mmdincer/company-registry-lookup to read the input schema.
  3. call-actor with, for example, {"mode": "lookup", "identifiers": ["NO:923609016"], "linkLei": true}.
  4. get-dataset-items with the returned dataset id; keep the rows with recordType: "company".

JavaScript

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('mmdincer/company-registry-lookup').call({
mode: 'lookup',
identifiers: ['NO:923609016', 'CZ:00177041', 'FI:0112038-9'],
linkLei: true,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
const companies = items.filter((item) => item.recordType === 'company');
console.log(companies[0].name, companies[0].status, companies[0].lei);

Python

from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("mmdincer/company-registry-lookup").call(run_input={
"mode": "search",
"queries": ["Equinor"],
"registries": ["brreg", "gleif"],
"onlyActive": True,
})
items = client.dataset(run["defaultDatasetId"]).list_items().items
companies = [item for item in items if item["recordType"] == "company"]
print(companies[0]["name"], companies[0]["legalForm"]["name"], companies[0]["status"])

curl

curl -s -X POST "https://api.apify.com/v2/acts/mmdincer~company-registry-lookup/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"mode": "lookup", "identifiers": ["FI:0112038-9"], "linkLei": true}'

Monitoring: only new companies

Run once to record what exists, then schedule the same input with onlyNew: true:

{
"mode": "new",
"sinceDays": 7,
"registries": ["brreg", "prh"],
"maxResultsPerQuery": 500,
"onlyActive": true,
"onlyNew": true,
"stateName": "weekly-new-companies"
}

To include Companies House, add the register and your own key. The key is not written to the dataset:

{
"mode": "new",
"sinceDays": 7,
"registries": ["companies-house", "brreg", "prh"],
"companiesHouseApiKey": "YOUR_COMPANIES_HOUSE_API_KEY",
"maxResultsPerQuery": 100,
"onlyActive": true,
"onlyNew": true,
"stateName": "weekly-new-companies"
}

The Actor reads deeper than it delivers when onlyNew is on, so a run does not miss companies when a register orders equal dates differently from one run to the next. Companies it could not deliver because of maxResultsPerQuery are not recorded and arrive in the next run. UK rows from this mode include the SIC code. A UK name search returns the search record (name, number, status, type, dates, address); look the company number up when you also need SIC codes and previous names.

FAQ

Do I need an account, an API key or a proxy?

Not for France, GLEIF, Norway, Czechia, Finland or Poland, and the Actor does not use a proxy. The UK register needs your own free Companies House API key from developer.company-information.service.gov.uk. Leave the key empty and the UK is skipped; the other registers still run.

Why is Poland lookup-only?

The KRS open API returns an extract by KRS number only; it has no name search and no list of new entries. The Actor reads only the company-level sections of the extract. Use PL:0000019193 style numbers.

Why is France not in the new-company list?

The Annuaire des Entreprises open search has no incorporation-date filter. On 2026-11-04 a date parameter was ignored and the API returned older companies, so a "new this week" query would be wrong. Name search and SIREN lookup do work, and they do not request officers. A keyed INSEE Sirene API could add the date filter later; it is not wired in this version.

Why are there no Brazilian companies?

See "Which registers are covered?". Brazil's open API is excluded because of its robots rules. Other countries are not covered yet.

Why did a name search return fewer companies than I expected?

Check the source row: totalInRegistry is how many matches the register says exist, and truncated: true means more were available than delivered (raise maxResultsPerQuery). Czechia refuses searches with more than 1,000 matches (too_many_results): use a longer name. Sole traders and other person entries are counted in excluded and not delivered.

What do the status values mean?

active is the default for a live entry. dissolved means the register shows the company as deleted or ceased. in_liquidation, in_restructuring and insolvency come from the register's liquidation, reorganisation and bankruptcy markers. inactive means the register marks the entry as not operating, for example a lapsed LEI or an invalidated business ID. The original wording is in statusDetail. Registers differ in how fast they record changes.

Why does a record have no foundedAt or employees?

Registers publish different fields. Norway states establishment date, employees and capital; Czechia the establishment date; Finland the registration date; Poland the registration date and capital; GLEIF the creation date; Companies House the incorporation date and, on a lookup or a new-company list, SIC codes; France the creation date and NAF code. Fields a register does not publish are null. registryId and fetchedAt are set on every company row.

How does "Skip companies seen before" work?

The run saves the keys of delivered companies in a named key-value store (stateName, up to 20,000 keys) and skips them next time. The first run returns everything and records it. Use a different stateName for each monitor you schedule.

What happens if a register blocks or limits the Actor?

On 429 the Actor waits (up to 90 seconds) and tries twice more. On 403, or if that fails, it stops using that register for the run, marks the remaining jobs not_fetched, and keeps what it already delivered. Failed jobs are never charged.

Is the output deterministic?

For lookups, yes, as long as the register does not change the entry. Searches return what the register ranks first at that moment; Finnish name search additionally ranks the best name matches first.

Where can I report a problem or request a feature?

Use the Issues tab of this Actor. Please include the run ID and the source row of the job that went wrong.