Ownership by title
GET /v1/ownership/title/{title_number}The registered proprietor of an HM Land Registry title number, from the bulk corporate and overseas ownership registers; companies, public bodies and overseas entities, not individuals.
Same call over MCP
Registered proprietors of a titleownership_by_titleAuthenticate with an API key from the API & MCP Hub. The same call is available as an MCP tool at the same price.
Reference
What GET /v1/ownership/title/{title_number} returns
Who owns a title, when the owner is not a private individual. The response names the registered proprietor from HM Land Registry's Commercial and Corporate Ownership Data (UK companies and public bodies) and Overseas Companies Ownership Data (overseas entities), with the company number where the register records one, so the owner can be joined to Companies House with owner_profile. It costs 3 credits because the response carries licensed register data.
Individually owned titles are not in the bulk registers and come back unresolved. That is a gap in the free data, not a failed lookup; naming an individual requires a per-title purchase from HM Land Registry, which this platform does not make.
Reference
When to use it, and when not to
Use it when you have a title number and want the owner: from the ownership tier of property_lookup, from a site dossier, from a sourcing result. Reverse the question with ownership_by_company (every title a company holds) and go deeper with owner_profile (status, directors, persons with significant control, other holdings). For parcels from a sourcing search, sourcing_owners resolves a batch.
Inputs
Before you call it
A title number in HM Land Registry's format (a prefix for the office and a number, such as TGL123456). Where you start from an address, property_lookup (5 credits) carries the title in its ownership tier when the register is matched.
- title_number
- A title number is HM Land Registry's identifier for a registered title. ownership_by_company lists the titles a company holds, and the ownership tier of property_lookup carries the title where the register is matched to the address.
Request
Calling GET /v1/ownership/title/{title_number}
curl "https://api.marketcode.ai/v1/ownership/title/WK306168" \
-H "Authorization: Bearer $MARKETCODE_API_KEY"Send your API key as a Bearer token. Every response carries credits_charged and credits_remaining.
Inputs
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| title_number | Path | string | Yes |
Response
What GET /v1/ownership/title/{title_number} returns for a real request
curl "https://api.marketcode.ai/v1/ownership/title/WK306168" \
-H "Authorization: Bearer $MARKETCODE_API_KEY"{
"title_number": "<string>",
"country": "<string>",
"data": {
"data": {
"title_number": "<string>",
"records": [
{
"title_number": "<string>",
"owner_text": "<string>",
"owner_type": "<string>",
"company_number": "<string>",
"country_of_incorporation": null,
"property_address": "<string>",
"valid_from": "<string>",
"source": "<string>"
}
],
"total": 0,
"execution_time_ms": 0
}
},
"credits_charged": 0
}Shape only. This call returns licensed records, so the keys are real and every value is a placeholder of its type.
Response
Response fields
| Field | Type |
|---|---|
| title_number | string |
| country | string |
| data | object |
| data.data | object |
| data.data.title_number | string |
| data.data.records | array |
| data.data.records[].title_number | string |
| data.data.records[].owner_text | string |
| data.data.records[].owner_type | string |
| data.data.records[].company_number | string |
| data.data.records[].country_of_incorporation | null |
| data.data.records[].property_address | string |
| data.data.records[].valid_from | string |
| data.data.records[].source | string |
| data.data.total | integer |
| data.data.execution_time_ms | number |
| credits_charged | integer |
Fields observed in the example response above; a field the example did not exercise is not listed.
Reference
Things that catch people out
- Unresolved means individual or unmatched, not unregistered. The bulk registers cover non-individual owners only. An empty response for a title that plainly exists means it is held by a person, or the polygon-to-title join has not reached it.
- One property can have several titles. A freehold and its leaseholds are separate titles with separate proprietors; a block's freehold owner is not the flat's owner.
- A company name is not an identity. Names repeat across unrelated entities. Join on the company number, and treat a name-only proprietor as a candidate.
Price and licence
What it costs, and where the data comes from
Ownership by title costs 3 credits per successful call over MCP and over REST, and the two surfaces share one credit balance.
The price covers licensed records in the response, from HM Land Registry. A call that fails is not charged.
Credits are granted on sign-up and bought in packs; the pricing page lists every call.
Sources
- HM Land Registry
Commercial and Corporate Ownership (CCOD) and Overseas Companies Ownership (OCOD)
HM Land Registry's dataset licence for CCOD and OCOD: free of charge, with conditions on onward use · England and Wales
Related
Endpoints used with Ownership by title
- Titles held by a company3 credits
ownership_by_companyTitles held by a company, by Companies House number. Useful for mapping aPairs with this - Proprietor profile5 credits
owner_profileWhat the Land Registry shows for one proprietor: titles held, company status, country of incorporation, directors and PSCs where known.Pairs with this - Full property record5 credits
property_lookupFull property record for a UPRN, grouped into tiers: identity, property,Pairs with this - Owners of sourced parcels5 credits
sourcing_ownersResolve registered owners for parcels returned by `sourcing_search`.Pairs with this
Glossary
Terms used here
- Title number: HM Land Registry's identifier for a registered title: a prefix for the office and a number, such as TGL123456; the key ownership records are held against.
- Registered proprietor: The person or entity HM Land Registry records as owning a title; for companies, public bodies and overseas entities MarketCode reads it from the bulk ownership registers.
FAQ
Questions about Ownership by title
How much does `ownership_by_title` cost?
+
Ownership by title costs 3 credits per successful call over MCP and over REST, and the two surfaces share one credit balance. The price covers licensed records in the response, from HM Land Registry. A call that fails is not charged.
How do I authenticate?
+
Send your API key as a Bearer token in the Authorization header. Keys are created in the API & MCP Hub, shown once and revocable. Every response carries the credits charged and your remaining balance.
Is there an MCP version?
+
Yes. The ownership_by_title tool on the MarketCode MCP server is the same call at the same price, signed in with OAuth rather than a key, so Claude, ChatGPT, Codex and Cursor can run it in a conversation.
Where does the data come from?
+
Read from HM Land Registry ownership registers. Coverage is England and Wales.
Can I store or republish the results?
+
The response includes records we license from HM Land Registry. Use them in your own analysis, reports and products; bulk redistribution of the raw records or building a competing dataset from them is not covered. Ask us if you need a redistribution licence.
Does `ownership_by_title` change anything?
+
No. The tool is annotated read-only on the server, so it never writes to your data or ours and an assistant can call it without a confirmation step.
Can I find out who owns my neighbour's house?
+
Not through this platform if it is owned by a person. The bulk registers name companies, public bodies and overseas entities. HM Land Registry sells individual title registers for £7 each on its own service; MarketCode does not resell them.
How current is the ownership?
+
The registers are published monthly with a change file, and the platform loads both the full and change files, so a transfer registered last month appears at the next load.
What is the difference between CCOD and OCOD?
+
CCOD lists titles held by UK-registered companies and public bodies; OCOD lists titles held by overseas companies. Both are HM Land Registry datasets, free of charge under its dataset licence, and both are loaded.
Try Ownership by title on a real address.
30-minute call. We'll provision a key and walk through the endpoint on your use case.