registercheckby openlaw group
API referencePersons

List the roles a person holds

GET
/persons/{person_id}/roles

The offices a person holds or held, each with the company it is at: managing director, board member, general partner, liquidator, authorised signatory (Prokurist). The same role object GET /companies/{company_id}/roles lists for that company, under the same id, with match_confidence saying how sure we are that the register entry names this person. Current roles come first, then the most confident matches.

The interests a person holds in companies are shareholdings: GET /persons/{person_id}/holdings.

Costs 10 credits. The first page is free with GET /persons/{person_id}?expand=roles.

Authorization

bearerAuth
AuthorizationBearer <token>

Your API key, sent as Authorization: Bearer rc_live_….

In: header

Path Parameters

person_id*string

The person's id (per_…). The raw UUID /v1 published before is still read until 2026-12-31, and such a request is answered with Deprecation and Sunset. An id of another kind, or anything else, answers 400 validation_failed naming person_id.

Match^per_[0-7][0-9a-hjkmnp-tv-z]{25}$

Query Parameters

role_type?array<>

Only roles of one of these types (role.type). Repeat the parameter for several.

limit?integer

Page size, 1 to 100.

Range1 <= value <= 100
Default20
cursor?string

The next_cursor of the previous page; leave it out for the first page. Opaque: pass it back as it came. A cursor from another list, or from the same list with other filters, answers 400 validation_failed naming cursor.

Length1 <= length <= 2000

Response Body

application/json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

curl -X GET "https://api.registercheck.de/v1/persons/per_2tddy8v7gf98drrb9y9xd6pz4d/roles" \  -H "Authorization: Bearer $REGISTERCHECK_API_KEY"
{  "object": "page",  "next_cursor": "string",  "data": [    {      "id": "rol_0w5mz4ypkb9hyrx7ra3cp3tkjz",      "object": "role",      "type": "managing_director",      "type_as_registered": "string",      "status": "current",      "appointed_date": "2019-08-24",      "ended_date": "2019-08-24",      "company": {        "object": "company",        "id": "cmp_1z3gn9wpvx9j59w8bd9w5rm72n",        "name": "string"      },      "holder": {        "object": "company",        "id": "cmp_1z3gn9wpvx9j59w8bd9w5rm72n",        "name": "string"      },      "signing_authority": {        "type": "sole",        "self_dealing_exempt": true,        "real_estate_power": true,        "limited_to_branch": true,        "text": "string"      },      "match_confidence": 0    }  ]}