Research Organization Data — ROR Registry (Global Institutions) avatar

Research Organization Data — ROR Registry (Global Institutions)

Pricing

$3.00 / 1,000 company records

Go to Apify Store
Research Organization Data — ROR Registry (Global Institutions)

Research Organization Data — ROR Registry (Global Institutions)

Look up research organizations worldwide in the ROR registry by name, ROR ID, domain or country. Returns ROR ID, official and alternative names, organization type, country, city, website, Wikipedia page and cross-references to GRID, ISNI, Crossref Funder ID and Wikidata.

Pricing

$3.00 / 1,000 company records

Rating

0.0

(0)

Developer

Berkan Kaplan

Berkan Kaplan

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Research Organization Data — ROR Registry (Global Institutions) 🌍

foXLabs research-funding series: NSF awards · NIH grants · Clinical trial sponsors · US nonprofits · Wikipedia company data

🎉 Resolve any research organization in the world — universities, institutes, hospitals, companies and funders — to a stable ROR ID with location, website, founding year and parent/child structure. No key, no login. Built for anyone who has to match messy institution names to one canonical record.

🔍 What is this Actor — and when should you use it?

The Research Organization Registry (ROR) is the community-run, open registry of research organizations. This Actor searches it four ways — by name, by ROR ID, by website domain, or filtered by organization type — and returns one clean row per organization: canonical name, ROR ID, country and city, coordinates, website, Wikipedia page, founding year, and the organization's place in a parent/child hierarchy.

Use it when you need: to deduplicate institution names across datasets; a canonical ID to join grant, publication or trial records on; the parent university behind a research institute; or a clean list of organizations of one type in one country.

Use something else when: you need funding amounts rather than organization identity — use NSF or NIH. For company registry filings, use the country registry Actors in the foXLabs suite.

🤖 Use with AI agents

Already on the Apify MCP server? Ask for this Actor by name: foxlabs/ror-research-organization-data.

Your agent can pay for its own runs. This Actor is pay-per-event with agentic payments, so an agent can discover it, run it and settle the bill over x402 (USDC on Base) or Skyfire — no Apify account or API token of its own. Billing is the same either way: per delivered organization row.

Otherwise paste this into Claude, ChatGPT, Cursor or any MCP-enabled assistant:

Run the Apify actor foxlabs/ror-research-organization-data with
{"queries":["Max Planck Society","novartis.com"],"maxResultsPerQuery":10}
and give me the ROR IDs, countries and websites.

📋 Overview

SourceResearch Organization Registry (ROR)
CoverageGlobal — research organizations of every type, in every country
Auth neededNone. No API key, no login, no proxy required
RowOne research organization
Measured run31 rows in 5.0 s for 4 queries (2026-09-20, build 0.1.8)
Pricing$0.003 per delivered row — $3 per 1,000

✨ Features

  • 🔑 Four ways in — organization name, ROR ID, website domain, or a type filter
  • 🆔 Stable ROR ID on every row — the join key for research data
  • 📍 Coordinates (latitude/longitude) and city on every row
  • 🔗 Website and Wikipedia page on every row
  • 🏛️ Hierarchy — parent, child and related organizations
  • 🏷️ Multilingual labels — the organization's name in other languages
  • 🎯 Type filter — company, education, healthcare, government, facility, nonprofit, funder, archive, other
  • Key-free and fast — 31 rows in 5 seconds, no proxy

🎬 Quick Start

curl -X POST "https://api.apify.com/v2/acts/foxlabs~ror-research-organization-data/run-sync-get-dataset-items?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"queries":["Siemens","Max Planck Society","059mq0909","novartis.com"],"maxResultsPerQuery":10}'

🚀 Getting Started (3 steps)

  1. Put anything you have into queries — a name, a ROR ID, or a domain. The default run shows all three forms at once.
  2. Narrow by type if you want. organizationType restricts results to e.g. education or healthcare.
  3. Run it. Rows arrive in the dataset; export to CSV/JSON/Excel or read them over the API.

📥 Input

FieldTypeDefaultDescription
queriesarray["Siemens","Max Planck Society","059mq0909","novartis.com"]Organization names, ROR IDs or website domains
organizationTypestring"" (all)company, education, healthcare, government, facility, nonprofit, funder, archive, other
maxResultsPerQueryinteger10Cap on organizations returned per query
maxConcurrencyinteger5Parallel requests against ROR
requestDelayMsinteger0Optional pause between requests
includeRawbooleanfalseAttach the untouched ROR record to each row
proxyConfigurationobjectproxy offROR answers direct requests; enable only if you need it

Example — resolve a list of messy names:

{ "queries": ["MIT", "ETH Zurich", "Karolinska"], "maxResultsPerQuery": 3 }

Example — hospitals only:

{ "queries": ["cancer center"], "organizationType": "healthcare", "maxResultsPerQuery": 50 }

📤 Output

One row per organization. Fill rates below are from the measured run (31 rows, 4 queries, 2026-09-20):

FieldTypeFillDescription
companyNamestring100%Canonical organization name
registrationNumberstring100%Full ROR ID URL — the stable identifier
status / statusRawstring100%Active/inactive state in ROR
legalFormstring100%ROR organization types, comma-joined (e.g. company, funder)
incorporatedOnstring100%Founding date derived from the established year
establishedYearnumber100%Year the organization was established
citystring100%City
countryName / countryCodestring100%Country and ISO code
latitude / longitudenumber100%Coordinates
websitestring100%Organization website
wikipediaUrlstring100%Wikipedia page
labelsarray100%Names in other languages
externalIdsobject100%Cross-registry ids (GRID, ISNI, Wikidata, Fundref …)
parentOrganizationsarray87%Parent organizations in ROR's hierarchy
childOrganizationsarray29%Child organizations, where the record has them
aliasesarray26%Alternative names, where published
relatedOrganizationsarray16%Related organizations, where published
domainsarray13%Web domains — ROR fills this for a minority of records
sourceUrlstring100%ROR page for the organization
country / registry / query / scrapedAtstring100%Provenance fields

The hierarchy, alias and domain fields are sparse by nature — ROR records vary in depth — and the percentages above say exactly how sparse. Columns ROR does not publish at all (tax number, street address, industry code, headcount, capital, contact details) were removed rather than shipped permanently empty.

A real row from the default run:

{
"companyName": "Siemens (Germany)",
"registrationNumber": "https://ror.org/059mq0909",
"status": "active",
"legalForm": "company, funder",
"establishedYear": 1847,
"city": "Munich",
"countryName": "Germany",
"countryCode": "DE",
"latitude": 48.13743,
"longitude": 11.57549,
"website": "http://www.siemens.com/entry/cc/en/",
"wikipediaUrl": "https://en.wikipedia.org/wiki/Siemens"
}

💼 Use cases

  • Entity resolution — turn a column of messy institution names into canonical ROR IDs
  • Data joining — ROR IDs are the standard key across grant, publication and trial datasets
  • Hierarchy mapping — find the parent university behind an institute, or all children of a system
  • Geographic analysis — coordinates on every row, so organizations plot straight onto a map
  • Cross-registry linkingexternalIds carries GRID, ISNI, Wikidata and Fundref identifiers

🔗 Integration

JavaScript

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_TOKEN' });
const run = await client.actor('foxlabs/ror-research-organization-data').call({
queries: ['Max Planck Society'], maxResultsPerQuery: 10,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();

Python

from apify_client import ApifyClient
client = ApifyClient("YOUR_TOKEN")
run = client.actor("foxlabs/ror-research-organization-data").call(
run_input={"queries": ["Max Planck Society"], "maxResultsPerQuery": 10}
)
items = client.dataset(run["defaultDatasetId"]).list_items().items

No-code: Make, n8n and Zapier reach this Actor through the Apify app — schedule it and push resolved organizations into a sheet or a database.

📊 Pricing

Pay-per-event: company-record — $0.003 per delivered row ($3 per 1,000). Compute and traffic are included; you pay for rows, not run time. Rows without an organization name are not charged.

View current pricing.

❓ FAQ

Do I need a ROR API key? No. ROR is open infrastructure and this Actor needs no key, login or proxy.

Can I look up by domain? Yes — put the domain in queries (e.g. novartis.com). Names and ROR IDs work in the same field.

Why is domains empty on most rows? ROR populates that field for a minority of records; it came back on 13% of rows in the measured run. website is filled on every row and is the reliable one.

Is the ROR data free to reuse? ROR IDs and metadata are released under CC0. This Actor charges for running the extraction and delivering clean rows, not for the data itself.

Does it include companies? Yes — ROR covers companies and funders alongside universities and hospitals. The default run resolves Siemens and Novartis.

How do I get everything of one type in a country? Search a broad term with organizationType set, then filter the output by countryCode.

🐛 Troubleshooting

A name returns several organizations. Large institutions have national branches in ROR (Siemens (Germany)). Pick by countryCode, or search the ROR ID directly.

A ROR ID returns nothing. Pass the bare id (059mq0909) or the full URL — both work, but check for typos; ROR IDs are checksummed.

Fewer rows than maxResultsPerQuery. The cap is per query; a precise query (an ID or a domain) resolves to one organization by design.

⚠️ Trademark

ROR is a community-led registry operated by its member organizations. This Actor is an independent tool and is not affiliated with or endorsed by ROR. Organization names and logos belong to their respective owners.

ROR publishes its IDs and metadata under a CC0 public-domain dedication, explicitly for reuse, and states there are no restrictions on access to or use of ROR IDs and metadata. The rows this Actor returns are institutional records — not personal data. You remain responsible for how you use the output.

🤝 Support & contact

Questions, a field you need, or a bug: info@foxlabs.com.tr — or open an issue on the Actor's Apify page.

Changelog

0.1.8

  • Removed permanently-empty columns (tax number, dissolution date, street address, postal code, industry, industry code, headcount, capital, e-mail, phone, officers) — ROR does not publish them. Row went from 37 columns to 26, with zero permanently-empty columns left.

0.1

  • ROR search by organization name, ROR ID or website domain, with an organization-type filter.
  • Pay-per-event billing on delivered rows (company-record).