
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
@datafordeler/ebr
Advanced tools
Datafordeler SDK for Javascript Ebr Client (Ejendomsbeliggenhedsregistret) for Node.js
This is an unofficial SDK for interacting with the Ejendomsbeliggenhed service provided by Datafordeler, a Danish public data distribution platform. The Ejendomsbeliggenhed service contains detailed data about property location and maps bfe numbers to adresses and housenumbers.
This SDK is designed to be type-safe, providing well-defined input and output types for all interactions, ensuring a smooth and predictable developer experience.
To install this package, use one of the following commands depending on your package manager:
npm install @datafordeler/ebryarn add @datafordeler/ebrpnpm add @datafordeler/ebrThe client exposes a set of methods designed to be type-safe, ensuring that you can work with strongly typed data throughout your application.
Here's a basic example of how to use the client:
import { EBR } from '@datafordeler/ebr';
const authConfig = {}; // See below for authentication
const client = new EBR(authConfig);
const result = await client.BFEnrAdresse({
HusnummerId: '12345678',
Status: 'Gældende',
});
console.log(result.features[0]?.properties); // { id_lokalId: ... }
The client requres authentication, either using credentials or a certificate. The authentication method is specified when creating the client.
If the client is configured with both credentials and a certificate, the client will use the certificate for authentication.
The certificate should be in PFX / P12 format and can be provided using one of the following methods:
import { Agent } from "undici";
import { EBR } from '@datafordeler/ebr';
const connect = {
keepAlive: true,
rejectUnauthorized: false;
passphrase: "my-passphrase",
pfx: fs.readFileSync("path/to/cert.pfx"),
// ... other settings
}
const agent = new Agent({ connect });
const client = new EBR({ agent });
// call servuces
Here's an example of how to provide a certificate using a path:
import { EBR } from '@datafordeler/ebr';
const agentConfig = {
certPath: 'path/to/cert.pem',
passphrase: 'my-passphrase',
};
const client = new EBR({ agentConfig });
// call services
Configuring the client with credentials:
import { EBR } from '@datafordeler/ebr';
const client = new EBR({ credentials: { username: <USERNAME>, password: <PASSWORD> }, });
// call services
The client exposes a set of methods for interacting with the EBR service. Each method corresponds to an endpoint in the service and is designed to be type-safe, ensuring that you can work with strongly typed data throughout your application.
Get the bfenumber of a property based on the housenumberId
import { EBR } from '@datafordeler/ebr';
const client = new EBR({...});
const result = await client.BFEnrAdresse({
HusnummerId: '12345678',
Status: 'Gældende',
});
Get the location (ejendomsbeliggenhed) of a property based on the bfe number
import { EBR } from '@datafordeler/ebr';
const client = new EBR({...});
const result = await client.Ejendomsbeliggenhed({
BFEnr: 12345678,
Status: 'Gældende',
});
Get the a simplified location (ejendomsbeliggenhedSimpel) of a property based on the bfe number
import { EBR } from '@datafordeler/ebr';
const client = new EBR({...});
const result = await client.EjendomsbeliggenhedSimpel({
BFEnr: 12345678,
Status: 'Gældende',
});
We strive to keep all our SDK clients, including @datafordeler/ebr, up to date with the latest changes and improvements in the corresponding Datafordeler services. Our goal is to ensure compatibility and provide a seamless experience for developers.
However, please note that we cannot guarantee that all services will be updated immediately in response to changes in the Datafordeler platform. There may be instances where updates are delayed due to unforeseen circumstances or dependencies on external factors.
We encourage users to report any issues or discrepancies they encounter, and we will do our best to address them in a timely manner.
Contributions are welcome! If you'd like to contribute to this project, please follow the standard GitHub flow:
Fork the repository Create a new branch Make your changes Submit a pull request Please ensure all new code is properly tested and follows the existing code style.
This project is licensed under the MIT License. See the LICENSE file for details.
This SDK is developed and maintained by Simon Saxtorph @HelloAgent and @EstateHub. Special thanks to the Datafordeler team for providing the APIs.
FAQs
Datafordeler SDK for Javascript Ebr Client (Ejendomsbeliggenhedsregistret) for Node.js
We found that @datafordeler/ebr demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.