---
api: 'Open Banking API'
---

# Register an application

Register an application via DCR.
This endpoint accepts only JWT, which needs to be precalculated.

For more information, see [Register your application using DCR: Create a JWT](/docs/guides/build-banking-apps/register-your-application-using-dcr/create-a-jwt).

## Endpoint

POST `/register`

## Request body

Provide a JWT signed with a valid signing key

### Attributes

## Returns

### 200

Successfully created application

#### Response attributes

- `iss` (string, optional)
    The principal that issued the JWT.
- `iat` (integer, optional)
    The time the JWT was issued, which is used to determine the age of the JWT.
    Provided in seconds in Unix timestamp format.
- `exp` (integer, optional)
    The expiration time starting from which the JWT must not be accepted for processing.
    Provided in seconds in Unix timestamp format.
- `application_type` (enum, optional)
    The type of application. Either `web` or `mobile`.
    Possible enum values:

    - `web`
    - `mobile`
- `client_id` (string, optional)
    The Client ID used to identify the application.
- `token_endpoint_auth_method` (enum, optional)
    Specifies the authentication method for the `/token` endpoint.
    Currently, only `tls_client_auth` is supported.
    Possible enum values:

    - `tls_client_auth`
- `tls_client_auth_dn` (string, optional)
    Distinguished name of the transport certificate used by the [TPP](/docs/guides/build-banking-apps/glossary).
- `software_statement` (string, optional)
    Software statement assertion issued by the issuer.
    
    The data model for the software statements issued by the Open Banking directory are documented as part of the Directory Specification.
- `id_token_signed_response_alg` (enum, optional)
    The signing algorithm used to sign the `id_token` JWTs. Currently, only `PS256` is supported.
    Possible enum values:

    - `PS256`
- `request_object_signing_alg` (enum, optional)
    The signing algorithm used to sign request objects. Currently, only `PS256` is supported.
    Possible enum values:

    - `PS256`
- `redirect_uris` (array of string, optional)
    List of registered URIs that the [TPP](/docs/guides/build-banking-apps/glossary) will use to interact with the [ASPSP](/docs/guides/build-banking-apps/glossary).
- `org_jwks_endpoint` (string, optional)
    Public URI endpoint where the [TPP](/docs/guides/build-banking-apps/glossary) has uploaded their JWKS in JSON format.
- `grant_types` (array of string, optional)
    Accepted grant types.
    A JSON array specifying what the [TPP](/docs/guides/build-banking-apps/glossary) can request to be supplied to the `/token` endpoint in exchange for an access token.
- `scope` (string, optional)
    List of scopes that the [TPP](/docs/guides/build-banking-apps/glossary) has access to, separated by spaces.

## Error responses

| HTTP status code | Description |
| --- | --- |
| 400 | Unreachable JWKS |
