This feature is available as a product update from July 2, 2019 (07-02-2019) onwards.
This document explains how to publish the Dynamic Client Registration API v3.2 in WSO2 Open Banking.
Prerequisite
Open the
<WSO2_OB_APIM_HOME>/repository/resources/api_templates/velocity_template.xml
file and add the following handlers after theUK specific handlers
as follows:## end of UK-specific handlers #end #if($apiObj.additionalProperties.get("ob-api-type") == "dcr" || $!apiName == "DynamicClientRegistrationAPI") <handler class="com.wso2.finance.open.banking.mtls.validator.handler.MTLSValidationHandler"/> <handler class="com.wso2.finance.open.banking.mtls.validator.handler.GatewayClientAuthenticationHandler"/> <handler class="org.wso2.carbon.apimgt.gateway.handlers.ext.APIManagerCacheExtensionHandler"/> #end
Open the
<WSO2_OB_APIM_HOME>/repository/conf/axis2/axis2.xml
file, do the following configurations and restart the API Manager server.Add the following under the
<messageFormatters>
tag:<messageFormatters> <messageFormatter contentType="application/jose" class="org.apache.axis2.format.PlainTextFormatter"/>
Add the following under the
<messageBuilders>
tag:<messageBuilders> <messageBuilder contentType="application/jose" class="org.apache.axis2.format.PlainTextBuilder"/>
- Sign in to the /wiki/spaces/OB130/pages/49053830 (
https://<WSO2_OB_APIM_HOST>:9443/publisher
) withcreator/publisher
privileges. - Click ADD NEW API .
- Select I Have an Existing API option.
- Select the Swagger File option and browse for the Swagger definition by clicking the Browse button.
Use the<WSO2_OB_AM_HOME>/repository/resources/finance/apis/openbanking.org.uk/DynamicClientRegistration/3.2/dynamic-client-registration-swagger.yaml
file to configure the properties according to the open-banking specification. - You are directed to the Design API stage. Design General Details are loaded for you in the Design tab.
- Click Next: Implement to navigate to the next level.
- Expand Managed API and set Endpoint Type by selecting Dynamic Endpoint from the drop-down list.
- Under Message Mediation Policies, check Select a message mediation policy to be executed in the message flow.
Uploading the In flow:
Make the following changes:
Open the
<WSO2_OB_APIM_HOME>/repository/resources/finance/apis/openbanking.org.uk/DynamicClientRegistration/3.2/dcr-dynamic-endpoint-insequence-3.2.xml In sequence
file using a text editor.Add the
ContentType
property below the<sequence>
tag:<property name="ContentType" value="application/jwt" scope="axis2"/>
Replace
<WSO2_OB_APIM_HOSTNAME>
with the hostname of your WSO2 Open Banking API Manager server and save the changes.<header name="To" value="https://<WSO2_OB_APIM_HOSTNAME>:9443/ob-dynamic-client-registration" />
Click Upload In Flow and upload the modified
dcr-dynamic-endpoint-insequence-3.2.xml In sequence
file.- Click Next: Manage to navigate to the next level.
- Under Subscription Tiers, check the option Unlimited : Allows unlimited requests unless you want to limit the requests.
Expand API Properties and add the following as Additional properties and click the + button to proceed.
Property Name ob-api-type Property Value dcr Click Save & Publish.
The published DCR v3.2 API is available in the /wiki/spaces/OB130/pages/49053830.
You can find the REST API documentation for Dynamic Client Registration v3.2 here.