Securely call RESTful DNB APIs as a partner with DNB's own identity federation mechanisms, tailored to machine to machine API communications.
For partners running on Entra ID (Workforce tenant type), please refer to DNB API Entra ID Federation. For all other partners, please refer to DNB API Identity Federation. For both mechanisms, you provide a credential from your own identity provider to DNB, which returns a short-lived access token in exchange. This token grants you role-based access to one or more DNB APIs.
DNB API Entra ID Federation configures your (multi-tenant) Application Registration as a nonconsensual (no tenant-wide admin consent) representation in our tenant. Please see the configuration documentation for DNB API Entra ID Federation to configure this as a partner.
DNB API Identity Federation follows the OAuth 2.0 Token Exchange specification (RFC 8693). Please see the configuration documentation for DNB API Identity Federation to configure this as a partner.
We welcome pull requests! Contributions that add sample configurations in additional programming languages or for new identity providers are especially appreciated.
To maintain consistency, new samples should follow the same structure and conventions as the existing .NET and Java samples:
- Declare all variables and comments in the same order as in the .NET and Java samples.
- Avoid introducing abstractions beyond those already present in the .NET and Java samples.
- For new samples written in Java, use Gradle as the build tool.
- For new samples written in .NET, integrate with the existing setup by adding your project to the existing solution file.
- To help us validate your sample, please include an expired access token or temporary credentials in the PR description to prove that the configuration works end-to-end.
This work is licensed under the MIT license.
