This documentation is for WSO2 Open Banking version 1.5.0. View documentation for the latest release.

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Multiexcerpt
MultiExcerptNameFrequency_per_day_throttling

Configure the FrequenyPerDay throttling policy

FrequencyPerDay is a header parameter sent in API invocation request to indicate the requested maximum frequency for access without PSU involvement per day. According to the NextGenPSD2 XS2A framework, the FrequencyPerDay value needs to be checked when the PSU's IP address is not sent in an API invocation request.

Note

For one-off access, this attribute has to be set to '1'. The frequency has to be greater than or equal to 1.

Use the below instructions to configure the FrequencyPerDay throttling policy:

  1. Open <WSO2_OB_APIM_HOME>/repository/conf/api-manager.xml.

    1. Make sure that the throttling is enabled for Data Publisher under the <DataPublisher> attribute of <ThrottlingConfigurations>:

      Code Block
      languagexml
      <ThrottlingConfigurations>
      <DataPublisher>
      <Enabled>true</Enabled>
    2. Change the value of the <Username> attribute under <TrafficManager> according. By default, it looks as follows: 

      Code Block
      languagexml
      <!--Required in OB-->
      <Username>admin@wso2.com@carbon.super</Username>
    3. Change the value of te <connectionfactory.TopicConnectionFactory> attribute under <JMSConnectionParameters> according. By default, it looks as follows: 

      Code Block
      languagexml
      <JMSConnectionParameters>
      <!--Required in OB-->
      <connectionfactory.TopicConnectionFactory>amqp://admin!wso2.com!carbon.super:${admin.password}@clientid/carbon?brokerlist='tcp://${carbon.local.ip}:${jms.port}'</connectionfactory.TopicConnectionFactory>
  2. Make sure that the FrequencyPerDay property is enabled in <WSO2_OB_APIM_HOME>/repository/conf/finance/open-banking.xml as follows:

    Code Block
    languagexml
    <EnableFrequencyPerDay>true</EnableFrequencyPerDay>
  3. Open the <WSO2_OB_APIM_HOME>/repository/deployment/server/synapse-configs/default/api/<publisher-name>--NextGenPSD2XS2AFramework_v1.xml file and place CustomThrottlingPolicyHandler before ThrottleHandler as follows:

    Code Block
    languagexml
    <handler class="com.wso2.finance.open.banking.custom.throttling.CustomThrottlingPolicyHandler"/>
    <handler class="org.wso2.carbon.apimgt.gateway.handlers.throttling.ThrottleHandler"/>
  4. Deploy the throttling policy located in <WSO2_OB_APIM_HOME>/repository/resources/finance/scripts/wso2-obam-conf/FrequencyPerDayPolicy as
    a custom throttling policy in the admin portal of WSO2 Open Banking API Manager:

    1. Sign in to the Admin Portal using the URL (https://<WSO2_OB_APIM_HOST>:9443/admin) and your admin credentials.
    2. ClickThrottling Policies tab and click Custom Policies tab.

    3. Enter the information for the custom policy accordingly.

      Tip
      • Name the custom policy as "FrequencyPerDayPolicy".
      • For Key Template, use the following format: $customProperty.accountId:$userId:$appId.
      • Copy the content from the policy in <WSO2_OB_APIM_HOME>/repository/resources/finance/scripts/wso2-obam-conf/FrequencyPerDayPolicy and paste it under Siddhi Query.

...