🏛️ NL Organisations

🇳🇱 NL Organizations API

💻 Purpose of the API

The NL Organizations API provides a unified way to search, discover, and retrieve detailed profiles for Dutch organizations.

It aggregates information from authoritative sources (such as Trade Register, tax and financial datasets) and exposes them using consistent JSON:API standards.
You can use this API to:

  • Search across millions of Dutch organizations and branches
  • Filter, sort, and aggregate results by attributes such as location, activities (SBI codes), financial fields, lifecycle events, and more
  • Retrieve complete organization profiles with extended information (e.g., ownership structure, financial figures, management)
  • Retrieve branch-level data for more granular use cases

The API is ideal for compliance screening, B2B onboarding, KYC/KYB processes, market research, sales enrichment, and internal data standardization.


🤔 How to use?

📌 Overview of the Flow

  1. Search Entities
    Start by calling
    GET /nl/organizations/profiles/v1/entities
    to find organizations or branches using:

    • Full-text search (query)
    • Structured filtering (filter)
    • Structured matching (match)
    • Sorting (sort)
    • Aggregations (aggregate)
    • Pagination (page[number], page[size])
  2. Retrieve Organization Profile
    Once you have an organization_id, call:
    GET /nl/organizations/profiles/v1/organizations/{organization_id}
    This returns a rich profile with identifiers, contact data, financial info, lifecycle, ownership, etc.
    Optional: add extensions to retrieve additional blocks of data.

  3. Retrieve Organization Branches
    To fetch all branches for the organization, call:
    GET /nl/organizations/profiles/v1/organizations/{organization_id}/branches

  4. Retrieve a Single Branch
    To retrieve full details for a specific branch:
    GET /nl/organizations/profiles/v1/organizations/{organization_id}/branches/{branch_id}

🌀 Flow Behavior

  • If your search query does not match anything, the API returns an empty data: [] array --- this is normal and not an error.
  • Pagination allows you to iterate through all results efficiently.
  • Some endpoints support include to return related resources.
  • Profile endpoints support extensions to fetch optional, additional data blocks.
  • All responses follow JSON:API conventions for consistency.

🔢 Versioning

Current version prefix:
/nl/organizations/profiles/v1/

Future versions will follow /v2/, /v3/, etc.


🌐 Base URL

https://api.company.info


📚 All Endpoints

❗ These endpoints incur usage-based charges.

1. Entity Search Endpoint

GET /nl/organizations/profiles/v1/entities

Search across all entity types (organisations, branches, legal entities, ...).This is the central search endpoint of the NL Organizations API. Use it when you need to: search by name, find companies by address, match trade register IDs (KvK), filter using rich metadata (legalForm, SBI, registration date, etc.), get aggregations, get a mixed list of organizations and branches in one request

Supported parameters:

  • query (Full-text search) Searches the query across multiple fields. The default type is best_field, which finds documents matching any field but scores based on the best match. Minimum length is 2 characters.
  • match (Prefix search) Supports partial or prefix-based text matching across key entity attributes. It is applied to fields like city, tradeRegisterID, and branchNumber, while general matching is used for postalCode, street, organizationName, name, and tradeNames.
  • filter(Deep filtering) Enables filtering of entities based on exact values and range conditions. Supports structured fields such as address, financials, and metadata.
  • sort Comma-separated list of fields used to sort the results, following JSON:API sorting conventions. Prefix a field with - to sort in descending order (default is ascending).
  • aggregate Defines the data aggregation to be performed on the search results. It allows you to specify a comma-separated list of fields to group by and to define the size of each aggregation bucket.
  • page Controls pagination for a collection of resources, allowing clients to request a specific page and specify the number of resources per page.
  • Fuzzy search (external JSON:API parameter) It is based on Levenshtein Edit Distance — the number of one-character changes needed to match another string.
📘

All available parameters can also be found in our API Reference.

Example request

GET /nl/organizations/profiles/v1/entities?query=company.info&filter[contact.address.city]=Amsterdam&sort=-registrationDate&include=organizations 

Example Response

{
  "data": [
    {
      "type": "branches",
      "id": "string",
      "attributes": {
        "branch": {
          "name": "company.info",
          "isMain": true
        },
        "identifiers": {
          "organization": {
            "tradeRegister": {
              "system": "tradeRegister",
              "value": "12345678"
            }
          },
          "branch": {
            "tradeRegister": {
              "system": "tradeRegister",
              "value": "00001111"
            }
          }
        },
        "contact": {
          "address": {
            "city": "Harlingen",
            "street": "Voorstraat"
          }
        }
      },
      "links": {
        "self": "string"
      },
      "relationships": {
        "organization": {
          "data": {
            "type": "string",
            "id": "string"
          }
        }
      }
    }
  ],
  "included": [
    {
      "type": "organizations",
      "id": "string",
      "attributes": {
        "tradeRegisterID": "12345678",
        "name": "Company.info"
      },
      "links": {
        "self": "string"
      }
    }
  ],
  "meta": {
    "totalResults": 500,
    "totalPages": 0,
    "aggregations": {
      "contact.address.city": [
        {
          "value": "Amsterdam",
          "count": 125
        }
      ],
      "legalForm": [
        {
          "value": "Amsterdam",
          "count": 125
        }
      ],
      "financials.bankGroup": [
        {
          "value": "Amsterdam",
          "count": 125
        }
      ]
    }
  },
  "links": {
    "self": "string",
    "first": "string",
    "last": "string",
    "prev": "string",
    "next": "string"
  }
}

2. Organization Profile Endpoint

GET /nl/organizations/profiles/v1/organizations/{organization_id}

Get a complete organization profile just by ID. This endpoint returns everything we know about an organization, optionally enhanced by "extensions".

Supported Parameters:

  • organization_id Specifies Organization id

  • extensionsObtain a profile featuring specified blocks, delineated by commas.

    Available values : sizeIndicators, activities, financials, ownershipStructures, management, contactPersons

Optional: Extensions

Add extra data blocks:

extensions=sizeIndicators,financials,activities,management,ownershipStructures

Example request

GET /nl/organizations/profiles/v1/organizations/12345678?extensions=financials
Accept-Language: nl

Example Response

{
  "data": {
    "type": "organizations",
    "id": "string",
    "attributes": {
      "identifiers": {
        "tradeRegister": {
          "system": "tradeRegister",
          "value": "12345678"
        },
        "rsin": {
          "system": "taxOffice",
          "value": "110011000"
        }
      },
      "name": "Company A",
      "statutorySeat": "Amsterdam",
      "logoURL": "https://company.info/1.png",
      "legalForm": {
        "code": "private-limited-company",
        "description": "Besloten Vennootschap (blijkens statuten structuurvennootschap)",
        "shortDescription": "Besloten Vennootschap"
      },
      "contact": {
        "excludeFromMailing": false,
        "excludeFromMarketing": false,
        "address": {
          "formatted": "Postbus 123456 1111AB Amsterdam",
          "street": "Postbus 123456",
          "houseNumber": "12",
          "houseNumberAddition": null,
          "houseLetter": null,
          "postalCode": "1111AB",
          "city": "Amsterdam",
          "country": "NLD",
          "coordinates": {
            "latitude": 123.456,
            "longitude": 456.123
          },
          "countrySpecific": {
            "identifiers": {
              "bag": {
                "system": "BAG",
                "value": {
                  "addressableObjectID": 123,
                  "numberIndicationID": 456
                }
              }
            }
          },
          "registrationDate": "1979-01-01"
        },
        "correspondenceAddress": {
          "formatted": "Postbus 123456 1111AB Amsterdam",
          "street": "Postbus 123456",
          "houseNumber": "12",
          "houseNumberAddition": null,
          "houseLetter": null,
          "postalCode": "1111AB",
          "city": "Amsterdam",
          "country": "NLD",
          "coordinates": {
            "latitude": 123.456,
            "longitude": 456.123
          },
          "countrySpecific": {
            "identifiers": {
              "bag": {
                "system": "BAG",
                "value": {
                  "addressableObjectID": 123,
                  "numberIndicationID": 456
                }
              }
            }
          },
          "registrationDate": "1979-01-01"
        },
        "phoneNumbers": [
          {
            "source": "string",
            "number": "string"
          }
        ],
        "websites": [
          {
            "source": "string",
            "value": "string"
          }
        ],
        "emails": [
          {
            "source": "string",
            "value": "string"
          }
        ]
      },
      "activities": {
        "sbi": [
          {
            "isMain": false,
            "source": "tradeRegister",
            "system": "SBI",
            "code": "1071",
            "description": "Manufacture of bread and fresh pastry"
          }
        ]
      },
      "lifecycle": {
        "registration": {
          "isActive": true,
          "type": "registration",
          "startDate": "1234-05-06",
          "endDate": "1234-05-06"
        },
        "liquidation": {
          "isActive": true,
          "type": "registration",
          "startDate": "1234-05-06",
          "endDate": "1234-05-06"
        },
        "dissolution": {
          "isActive": true,
          "type": "registration",
          "startDate": "1234-05-06",
          "endDate": "1234-05-06",
          "description": "string"
        },
        "events": {
          "firstRegistration": {
            "date": "1234-05-06",
            "type": "registration"
          },
          "deedOfIncorporation": {
            "date": "1234-05-06",
            "type": "registration"
          }
        },
        "insolvency": {
          "isActive": true,
          "debtRestructuring": {
            "isActive": true,
            "type": "registration",
            "startDate": "1234-05-06",
            "endDate": "1234-05-06"
          },
          "suspensionOfPayments": {
            "isActive": true,
            "type": "registration",
            "startDate": "1234-05-06",
            "endDate": "1234-05-06"
          },
          "bankrupt": {
            "isActive": true,
            "type": "registration",
            "startDate": "1234-05-06",
            "endDate": "1234-05-06"
          },
          "publications": [
            {
              "identifier": {
                "system": "string",
                "value": "string"
              },
              "court": {
                "name": "Rechtbank Noord-Nederland",
                "code": 43
              },
              "description": "string",
              "AvailableUntil": "string"
            }
          ]
        }
      },
      "capital": {
        "issued": {
          "amount": "string",
          "currency": "string"
        },
        "authorized": {
          "amount": "string",
          "currency": "string"
        },
        "contributed": {
          "amount": "string",
          "currency": "string"
        }
      },
      "branch": {
        "id": "123456780000",
        "isMain": true,
        "names": {
          "main": "Test B.V.",
          "tradeNames": [
            {
              "isActive": false,
              "isMain": false,
              "name": "Test B.V."
            }
          ]
        },
        "lifecycle": {
          "registration": {
            "isActive": true,
            "type": "registration",
            "startDate": "1234-05-06",
            "endDate": "1234-05-06"
          },
          "events": {
            "continuation": {
              "date": "1234-05-06",
              "type": "continuation"
            }
          }
        },
        "personnel": {
          "fullTime": {
            "value": 23,
            "class": {
              "code": "6",
              "description": "string"
            }
          },
          "partTime": {
            "value": 23,
            "class": {
              "code": "6",
              "description": "string"
            }
          },
          "total": {
            "value": 23,
            "class": {
              "code": "6",
              "description": "string"
            }
          },
          "source": "tradeRegister"
        },
        "contact": {
          "excludeFromMailing": false,
          "excludeFromMarketing": false,
          "address": {
            "formatted": "Postbus 123456 1111AB Amsterdam",
            "street": "Postbus 123456",
            "houseNumber": "12",
            "houseNumberAddition": null,
            "houseLetter": null,
            "postalCode": "1111AB",
            "city": "Amsterdam",
            "country": "NLD",
            "coordinates": {
              "latitude": 123.456,
              "longitude": 456.123
            },
            "countrySpecific": {
              "identifiers": {
                "bag": {
                  "system": "BAG",
                  "value": {
                    "addressableObjectID": 123,
                    "numberIndicationID": 456
                  }
                }
              }
            },
            "registrationDate": "1979-01-01"
          },
          "correspondenceAddress": {
            "formatted": "Postbus 123456 1111AB Amsterdam",
            "street": "Postbus 123456",
            "houseNumber": "12",
            "houseNumberAddition": null,
            "houseLetter": null,
            "postalCode": "1111AB",
            "city": "Amsterdam",
            "country": "NLD",
            "coordinates": {
              "latitude": 123.456,
              "longitude": 456.123
            },
            "countrySpecific": {
              "identifiers": {
                "bag": {
                  "system": "BAG",
                  "value": {
                    "addressableObjectID": 123,
                    "numberIndicationID": 456
                  }
                }
              }
            },
            "registrationDate": "1979-01-01"
          },
          "phoneNumbers": [
            {
              "source": "string",
              "number": "string"
            }
          ],
          "websites": [
            {
              "source": "string",
              "value": "string"
            }
          ],
          "emails": [
            {
              "source": "string",
              "value": "string"
            }
          ]
        },
        "activities": {
          "sbi": [
            {
              "isMain": false,
              "source": "tradeRegister",
              "system": "SBI",
              "code": "1071",
              "description": "Manufacture of bread and fresh pastry"
            }
          ]
        }
      },
      "extensions": {
        "activities": {
          "summary": "string",
          "sbi": [
            {
              "code": "string",
              "isMain": true,
              "system": "string",
              "source": "string",
              "description": "string"
            }
          ],
          "nace": [
            {
              "code": "string",
              "isMain": true,
              "system": "string",
              "source": "string",
              "description": "string"
            }
          ]
        }
      }
    },
    "links": {
      "self": "string"
    }
  }
}

3. Organization's Branches Endpoint

GET /nl/organizations/profiles/v1/organizations/{organization_id}/branches

List all branches of a given organization. Use this to get a flat list of branches, with optional include=organizations.

Supported parameters

  • organization_id Specifies Organization id
  • IncludeA comma-separated list of relationship paths to be included as a compound document. This allows you to request that related resources be returned with the primary data in the included array.

Example Request

GET /nl/organizations/profiles/v1/organizations/32050334/branches

Example Response

{
  "data": [
    {
      "type": "branches",
      "id": "string",
      "attributes": {
        "isMain": true,
        "names": {
          "name": "string"
        },
        "lifecycle": {
          "registration": {
            "isActive": true,
            "startDate": "string",
            "type": "string"
          }
        },
        "contact": {
          "address": {
            "street": "string",
            "houseNumber": 0,
            "houseNumberAddition": "string",
            "houseLetter": "string",
            "postalCode": "string",
            "city": "string",
            "country": "string"
          }
        }
      },
      "links": {
        "self": "string"
      },
      "relationships": {
        "organization": {
          "data": {
            "type": "string",
            "id": "string"
          }
        }
      }
    }
  ],
  "included": [
    {
      "type": "organizations",
      "id": "string",
      "attributes": {
        "tradeRegisterID": "32050334",
        "name": "Company A",
        "tradeRegisterExcludeFromMailing": true
      },
      "links": {
        "self": "string"
      }
    }
  ],
  "links": {
    "self": "string"
  }
}

4. Organization's Branch Profile

Get /nl/organizations/profiles/v1/organizations/{organization_id}/branches/{branch_id}

Retrieve a single branch’s detailed profile More detailed than the list endpoint.

Supported parameters

  • organization_id Specifies Organization id
  • branch_id Specifies Branch id
  • IncludeA comma-separated list of relationship paths to be included as a compound document. This allows you to request that related resources be returned with the primary data in the included array.

Example Request

GET /nl/organizations/profiles/v1/organizations/32050334/branches/320503340001

Example Response

{
  "data": {
    "type": "branches",
    "id": "string",
    "attributes": {
      "identifiers": {
        "tradeRegister": {
          "system": "tradeRegister",
          "value": "123456780000"
        }
      },
      "isMain": true,
      "names": {
        "main": "Test B.V.",
        "tradeNames": [
          {
            "isActive": false,
            "isMain": false,
            "name": "Test B.V."
          }
        ]
      },
      "lifecycle": {
        "registration": {
          "isActive": true,
          "type": "registration",
          "startDate": "1234-05-06",
          "endDate": "1234-05-06"
        },
        "events": {
          "continuation": {
            "date": "1234-05-06",
            "type": "continuation"
          }
        }
      },
      "personnel": {
        "fullTime": {
          "value": 23,
          "class": {
            "code": "6",
            "description": "string"
          }
        },
        "partTime": {
          "value": 23,
          "class": {
            "code": "6",
            "description": "string"
          }
        },
        "total": {
          "value": 23,
          "class": {
            "code": "6",
            "description": "string"
          }
        },
        "source": "tradeRegister"
      },
      "contact": {
        "excludeFromMailing": false,
        "excludeFromMarketing": false,
        "address": {
          "formatted": "Postbus 123456 1111AB Amsterdam",
          "street": "Postbus 123456",
          "houseNumber": "12",
          "houseNumberAddition": null,
          "houseLetter": null,
          "postalCode": "1111AB",
          "city": "Amsterdam",
          "country": "NLD",
          "coordinates": {
            "latitude": 123.456,
            "longitude": 456.123
          },
          "countrySpecific": {
            "identifiers": {
              "bag": {
                "system": "BAG",
                "value": {
                  "addressableObjectID": 123,
                  "numberIndicationID": 456
                }
              }
            }
          },
          "registrationDate": "1979-01-01"
        },
        "correspondenceAddress": {
          "formatted": "Postbus 123456 1111AB Amsterdam",
          "street": "Postbus 123456",
          "houseNumber": "12",
          "houseNumberAddition": null,
          "houseLetter": null,
          "postalCode": "1111AB",
          "city": "Amsterdam",
          "country": "NLD",
          "coordinates": {
            "latitude": 123.456,
            "longitude": 456.123
          },
          "countrySpecific": {
            "identifiers": {
              "bag": {
                "system": "BAG",
                "value": {
                  "addressableObjectID": 123,
                  "numberIndicationID": 456
                }
              }
            }
          },
          "registrationDate": "1979-01-01"
        },
        "phoneNumbers": [
          {
            "source": "string",
            "number": "string"
          }
        ],
        "websites": [
          {
            "source": "string",
            "value": "string"
          }
        ],
        "emails": [
          {
            "source": "string",
            "value": "string"
          }
        ]
      },
      "activities": {
        "sbi": [
          {
            "isMain": false,
            "source": "tradeRegister",
            "system": "SBI",
            "code": "1071",
            "description": "Manufacture of bread and fresh pastry"
          }
        ]
      },
      "extensions": {
        "transfers": [
          {
            "identifiers": {
              "fromTradeRegister": {
                "system": "tradeRegister",
                "value": "12345678"
              },
              "toTradeRegister": {
                "system": "tradeRegister",
                "value": "12345679"
              }
            },
            "date": "1979-01-01"
          }
        ]
      }
    },
    "relationships": {
      "organization": {
        "data": {
          "type": "string",
          "id": "string"
        }
      }
    },
    "links": {
      "self": "string"
    }
  },
  "included": [
    {
      "type": "organizations",
      "id": "string",
      "attributes": {
        "name": "string",
        "tradeRegisterID": "string",
        "tradeRegisterExcludeFromMailing": true
      },
      "links": {
        "self": "string"
      }
    }
  ]
}