Open Banking Dynamic Client Registration
- POST
/openbanking/{tenantId}/registerRegister a third-party client (RFC 7591) - DELETE
/openbanking/{tenantId}/register/{clientId}Delete a client registration (RFC 7592) - GET
/openbanking/{tenantId}/register/{clientId}Read a client registration (RFC 7592) - PUT
/openbanking/{tenantId}/register/{clientId}Update a client registration (RFC 7592)
POST Register a third-party client (RFC 7591)
POST /openbanking/{tenantId}/register
The body is application/jwt: a registration request signed PS256 or ES256 by a key published at the software statement's software_jwks_endpoint, issued by the software id, addressed to this issuer, with exp at most sixty minutes after iat. It carries software_statement, signed by the open banking registry, and the client metadata: redirect_uris (each listed in the software statement, exact https, no wildcard), token_endpoint_auth_method private_key_jwt, grant_types and scope within the software's roles. The registry must list the participant as ACTIVE and permitted PIFT; while the registry cannot be reached, registration is refused. The response carries the client_id and a registration_access_token, which is shown once.
Headers
| Name | Notes |
|---|---|
Authorization | Bearer token |
X-Tenant | Your tenant |
X-Environment | test or live |
Content-Type | application/json |
Path parameters
| Name |
|---|
tenantId |
Example
Request body: string · Response: ClientRegistrationResponse
curl -X POST "https://api.bridgemoni.com/openbanking/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/register" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" \
-H "Content-Type: application/json" \
-d '"string"' "string" {
"scope": "string",
"client_id": "string",
"client_id_issued_at": 0,
"client_name": "string",
"redirect_uris": [
"string"
],
"grant_types": [
"string"
],
"response_types": [
"string"
],
"token_endpoint_auth_method": "string",
"jwks_uri": "string",
"software_id": "string",
"software_statement": "string",
"registration_access_token": "string",
"registration_client_uri": "string"
} Responses
| Status | When |
|---|---|
201 | Registered |
400 | invalid_software_statement, unapproved_software_statement, invalid_redirect_uri or invalid_client_metadata |
503 | The registry cannot be reached |
DELETE Delete a client registration (RFC 7592)
DELETE /openbanking/{tenantId}/register/{clientId}
Authorised by the registration access token. Revokes the client and every token it holds; the client identifier is never reissued.
Headers
| Name | Notes |
|---|---|
Authorization | Bearer token |
X-Tenant | Your tenant |
X-Environment | test or live |
Path parameters
| Name |
|---|
tenantId |
clientId |
Example
curl -X DELETE "https://api.bridgemoni.com/openbanking/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/register/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Responses
| Status | When |
|---|---|
204 | Deleted |
401 | invalid_token |
GET Read a client registration (RFC 7592)
GET /openbanking/{tenantId}/register/{clientId}
Authorised by the registration access token, as a Bearer token.
Headers
| Name | Notes |
|---|---|
Authorization | Bearer token |
X-Tenant | Your tenant |
X-Environment | test or live |
Path parameters
| Name |
|---|
tenantId |
clientId |
Example
Response: ClientRegistrationResponse
curl -X GET "https://api.bridgemoni.com/openbanking/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/register/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" {
"scope": "string",
"client_id": "string",
"client_id_issued_at": 0,
"client_name": "string",
"redirect_uris": [
"string"
],
"grant_types": [
"string"
],
"response_types": [
"string"
],
"token_endpoint_auth_method": "string",
"jwks_uri": "string",
"software_id": "string",
"software_statement": "string",
"registration_access_token": "string",
"registration_client_uri": "string"
} Responses
| Status | When |
|---|---|
200 | The registration |
401 | invalid_token |
PUT Update a client registration (RFC 7592)
PUT /openbanking/{tenantId}/register/{clientId}
Authorised by the registration access token, as a Bearer token. The body is application/jwt, signed and checked exactly as at registration, and carries a current software statement for the same software id and participant. The registration is replaced, not merged: redirect_uris, grant_types and scope are what this request says. Tokens carrying a scope the update withdraws are revoked. The registration access token is not rotated and is not returned.
Headers
| Name | Notes |
|---|---|
Authorization | Bearer token |
X-Tenant | Your tenant |
X-Environment | test or live |
Content-Type | application/json |
Path parameters
| Name |
|---|
tenantId |
clientId |
Example
Request body: string · Response: ClientRegistrationResponse
curl -X PUT "https://api.bridgemoni.com/openbanking/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/register/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" \
-H "Content-Type: application/json" \
-d '"string"' "string" {
"scope": "string",
"client_id": "string",
"client_id_issued_at": 0,
"client_name": "string",
"redirect_uris": [
"string"
],
"grant_types": [
"string"
],
"response_types": [
"string"
],
"token_endpoint_auth_method": "string",
"jwks_uri": "string",
"software_id": "string",
"software_statement": "string",
"registration_access_token": "string",
"registration_client_uri": "string"
} Responses
| Status | When |
|---|---|
200 | The updated registration |
400 | invalid_software_statement, unapproved_software_statement, invalid_redirect_uri or invalid_client_metadata |
401 | invalid_token |
503 | The registry cannot be reached |
Generated from the OpenAPI document. Branch on the HTTP status: there is no machine-readable error code on the wire. Errors