Step-by-step Name the headers Decide what values you want to use for the Client ID and Client Secret header. Though these can be changed later it can break your existing consumers if you need to change. The example in this recipie uses myClientIDHeader and mySecretIDHeader. A sample curl command would look like below, where clientidval is the ClientID value and secretidval is the SecretID value. curl -v -H “myClientIDHeader:clientidval” -H “mySecretIDHeader:secretidval” https://Datapower:443/ GateWay Script Take the following GateWay Script code and replace myClientIDHeader and mySecretIDHeader with your desired values. Save this as an xslt file on your local system. It is recommended that you check this file into a source code management system. var hm = require('header-metadata');var clientId = hm.current.headers.myClientIDHeader;var clientSecret = hm.current.headers.mySecretIDHeader;if (clientId) { hm.current.set('x-ibm-client-id', clientId); if (clientSecret){ hm.current.set('x-ibm-client-secret', clientSecret); } } Log into a DataPower that contains an API Connect Domain Go to the API Connect Domain Go to the webapi Multi-Protocol Gateway Then click on webapi. Click on the pencil by the Multi-Protocol Gateway Policy Select the webapi-mpgw-request-fw and Drag a GatewayScript icon from the tool bar to the start of the flow. This should end up after the first matching policy as shown in the diagram. Double-click on the new transform Ensure Local:// is selected in the Transform File and click Upload Make sure the output is set to NULL not auto as in the diagram above Navigate to the xslt you saved in step 3. Press Done Press Apply Policy Press Close Window Time to Test Now we test the transform before we push this to all DataPowers. This can be tested with curl, please ensure you update the header name, and DataPower hostname. If you do not want to use valid client id and secrets you can look in the DataPower Log for the ClientID at the debug level. curl -v -H “myClientIDHeader:clientidval” -H “mySecretIDHeader:secretidval” https://Datapower:443/ Applying this to an entire DataPower Service Assuming the Test in 14. passed we now need to export these changes as a Gateway Extension. Though it might be tempting to not create a Gateway Extension but instead to just make the changes in each DataPower Domain I recommend against this. API Connect will redeploy the DataPower domain overwriting any configuration it is not aware of. In IBM DataPower go to Export Configuration Press Next Select Processing Request from the available objects and webapi-mpgw-request-fw. Click "Include data for all objects that the selected objects require" and "Export only file for selected objects." Click Download Go to the CMC Console http://APIManager/cmc Click on Services For each DataPower service you wish to apply this to click on the cog Click Choose File and browse to the file exported from data power. Each IBM DataPower Node in that service will now be refreshed and apply the gateway extension, this will take about ten minutes That's it!