June 9, 2020 By Kazuki Nobutani 3 min read

IBM API Connect offers a series of APIs that allow users to have better control over the API Connect instances on IBM Cloud.

These APIs must be accessed using a token-based authentication called JSON Web Token (JWT) for improved security. 

Prerequisites

Goal

In this post, I am going to show you how to obtain the JWT token using a curl command, and then I’ll call an API to get a list of products in a catalog from the developer portal as a demo. 

On top of the JWT token, this particular API requires the following header and a parameter when you call it via CURL. Steps 2 and 3 will cover how to obtain necessary elements:

  • Header: X-IBM-APIManagement-Context:<providerOrg>.<Catalog> 
  • Parameter: originURL, which is the URL of your API Connect developer portal

Please note that required headers and parameters vary depending on the API. 

Step 1. Obtain the JWT token

Run the following command to obtain the JWT token:

curl -k -i -X POST \
--header "Content-Type: application/x-www-form-urlencoded" \
--header "Accept: application/json" \
https://login.service.<REGION>.apiconnect.ibmcloud.com/apikey?apikey=<APIKEY>

Replace <APIKEY> with the API key you have and change <REGION> to the region where your instance is deployed:

  • Sydney = au
  • Dallas = us
  • Washington = us-east
  • London = eu
  • Frankfurt = eu-de 

CURL command example:

curl -k -i -X POST \
--header "Content-Type: application/x-www-form-urlencoded" \
--header "Accept: application/json" \
https://login.service.us.apiconnect.ibmcloud.com/apikey?apikey=0123456789F1C4dbHedPjBEsOiKnOovbbZabcdefg

Response example: 

The response contains the JWT token. You need this token when you call APIs, so copy and paste it somewhere secure:

{"jwt":"eyJhbGciOiJFUzM4NCIsInR5cC.....4Tcsbokc4"}

Step 2. Find the catalog name

Each catalog in your API Connect has its display name and a short name. We are going to use the short name when we call APIs, and here is how to find it:

  1. Open API Connect from the IBM Cloud Dashboard:
  2. Open a catalog published to the developer portal.
  3. Go to the Settings > Overview tab and look for the Name:

Step 3. Find the provider organization

Provider organization is a name assigned to your API Connect instance. When you call APIs, you can use either the provider organization name or ID. We used the following API to look up the configuration details of a portal based on its originURL:

curl -k -i -X GET https://apimanager.<REGION>.apiconnect.cloud.ibm.com/v1/portal/config?originURL=<DEV PORTAL>

Replace <REGION> with the region where your instance is deployed and change <DEV PORTAL> to your developer portal home URL:

  • Sydney = au-syd
  • Dallas = us-south
  • Washington = us-east
  • London = eu-gb
  • Frankfurt = eu-de

CURL command example:

curl -k -i -X GET https://apimanager.us-south.apiconnect.cloud.ibm.com/v1/portal/config?originURL=https://sandbox-ORG-SPACE.developer.us.apiconnect.ibmcloud.com/

Response example:

{"expired":false,"applicationLifecycleEnabled":false,"orgID":"PROVIDER ORG ID","orgName":"PROVIDER ORG NAME" ... "apim","realm":null,"writable":true,"isCaseSensitive":false},"paymentGateways":[]}

Step 4. Invoke Manager API

It’s time to get the product list. As per the document, we are calling this API endpoint using CURL:

curl -k -i -H "X-IBM-APIManagement-Context: <providerOrgNAME/ID>.<Catalog>" \
-X GET https://apimanager.us-south.apiconnect.cloud.ibm.com/v1/portal/products \
-H 'Authorization: Bearer <JWT token>'

Replace <JWT token> with the JWT token obtained in Step 1. Change <providerOrgNAME/ID> and <Catalog> to the provider organization name or ID and the catalog short name obtained in Steps 2 and 3. Then, replace <REGION> with the region where your instance is deployed.

  • Sydney = au-syd
  • Dallas = us-south
  • Washington = us-east
  • London = eu-gb
  • Frankfurt = eu-de

CURL command example:

curl -k -i -H "X-IBM-APIManagement-Context: 123459970cf25013613be87e.sandbox" \
-X GET https://apimanager.us-south.apiconnect.cloud.ibm.com/v1/portal/products \
-H 'Authorization: Bearer eyJhbG...csbokc4'

Response example:

[{"id":"PRODUCT ID 1","info":{"name":"PRODUCT NAME 1","title":"PRODUCT TITLE 1","version":"1.0.0"},"url":"https://apimanager.us-south.apiconnect.cloud.ibm.com/v1/portal/products/PRODUCT ID 1","status":"published"},

{"id":"PRODUCT ID 2","info":{"name":"PRODUCT NAME 2","title":"PRODUCT TITLE 2","version":"1.0.0"},"url":"https://apimanager.us-south.apiconnect.cloud.ibm.com/v1/portal/products/PRODUCT ID 2","status":"published"},

{"id":"PRODUCT ID 3","info":{"name":"PRODUCT NAME 3","title":"PRODUCT TITLE 3","version":"1.0.0"},"url":"https://apimanager.us-south.apiconnect.cloud.ibm.com/v1/portal/products/PRODUCT ID 3","status":"published"},]

What’s next?

IBM API Connect offers a number of different APIs and now you are ready to explore the options. Please refer to the IBM Knowledge Center for IBM API Connect for the available API list.

For any questions or concerns, please contact IBM Cloud Support.

Was this article helpful?
YesNo

More from Cloud

Attention new clients: exciting financial incentives for VMware Cloud Foundation on IBM Cloud

4 min read - New client specials: Get up to 50% off when you commit to a 1- or 3-year term contract on new VCF-as-a-Service offerings, plus an additional value of up to USD 200K in credits through 30 June 2025 when you migrate your VMware workloads to IBM Cloud®.1 Low starting prices: On-demand VCF-as-a-Service deployments begin under USD 200 per month.2 The IBM Cloud benefit: See the potential for a 201%3 return on investment (ROI) over 3 years with reduced downtime, cost and…

24 IBM offerings winning TrustRadius 2024 Top Rated Awards

2 min read - TrustRadius is a buyer intelligence platform for business technology. Comprehensive product information, in-depth customer insights and peer conversations enable buyers to make confident decisions. “Earning a Top Rated Award means the vendor has excellent customer satisfaction and proven credibility. It’s based entirely on reviews and customer sentiment,” said Becky Susko, TrustRadius, Marketing Program Manager of Awards. Top Rated Awards have to be earned: Gain 10+ new reviews in the past 12 months Earn a trScore of 7.5 or higher from…

IBM Tech Now: April 8, 2024

< 1 min read - ​Welcome IBM Tech Now, our video web series featuring the latest and greatest news and announcements in the world of technology. Make sure you subscribe to our YouTube channel to be notified every time a new IBM Tech Now video is published. IBM Tech Now: Episode 96 On this episode, we're covering the following topics: IBM Cloud Logs A collaboration with IBM watsonx.ai and Anaconda IBM offerings in the G2 Spring Reports Stay plugged in You can check out the…

IBM Newsletters

Get our newsletters and topic updates that deliver the latest thought leadership and insights on emerging trends.
Subscribe now More newsletters