Page History
...
Sign in to the WSO2 API Store (
https://<hostname>:9443/store
) and click on an API (e.g.,PhoneVerification 1.0.0
) to open it.Tip In a multi-tenanted WSO2 API Manager setup, you can access any tenant's store using the URL
http://<hostname>:<port>/store?tenant=<tenant_name>
.Note the subscription options for the REST API.
Click the Applications menu and click Add Application to create a new application.
Info Alternatively, you can add an application by selecting "New Application" from the Application dropdown, from on the API info viewdetail page. This will take you to step 5.
- Enter the name as TestApp and select the per token quota as 50PerMin for the application and click Add.
- Click APIs and click on the PhoneVerification API to view the API's subscription options.
- Select the application that you just created, a tier, and click Subscribe.
Click the View Subscriptions button when prompted.
The Subscriptions tab opens.Click the Production Keys tab.
Note If you have a supported callback URLwhich sends a callback to a specific server or a program soon after your application request is sent, you can specify it under Callback URL field under Production Keys.
Anchor GenerateKey GenerateKey Click Generate Keys to create an application access token. You can use this token to invoke all APIs that you subscribe to using the same application.
Tip You can set a token validity period in the Access token validity period text box. By default, it is set to one hour. If you set a minus value (e.g., -1), the token never expires.
Info By default the Client Credentials grant type will be used to generate access token. Make sure the Client Credentials grant type is selected when generating keys from the UI. Refer Token API for more information on how to generate supported grant types of WSO2 API Manager.
Tip title Access Tokens with specific Scopes Access tokens can be generated for specific scopes. A scope acts as a limiting factor on what API resources can be accessed using a token.
To generate an access token corresponding to a scope, use the drop down menu under Scopes and select the required scope parameter.
Note If you are using the WSO2 Identity Server 5.3.0 as the Key Manager for your API Manager deployment, generating keys will result in creation of a Service Provider on the Identity Server.
Install cURL if it is not there in your environment.
Info cURL comes by default in some operating systems. You can also use a REST client instead.
Open the command line and execute the following cURL command:
Localtab Group Localtab active true title Format Code Block curl -k -H "Authorization: Bearer <access_token>" -v '<api_url><payload>'
Be sure to replace the placeholders as follows:
<access token>: Give the test token generated in step 8. Click Applications, click on the respective application, which in this case is TestApp, click Production Key, and click copy button to copy the access token.
Warning Make sure you have updated flash plugin in your web browser in order to get the copy button working.
<API URL>: Click on the respective API, which in this case is "PhoneVerification - 1.0.0". When the API's Overview tab appears in the API Store copy the production URL and append the payload to it.
For example,https://localhost:8243/phoneverify/1.0.0/CheckPhoneNumber?PhoneNumber=18006785432&LicenseKey=0
Localtab title Example Code Block curl -k -H "Authorization :Bearer 3dfafa3a-b1e3-3550-8a25-88e4b4fe2fb3" 'https://localhost:8243/phoneverify/1.0.0/CheckPhoneNumber?PhoneNumber=18006785432&LicenseKey=0'
Localtab title Output Note the result
<Valid>true</Valid>
that appears in the command line.Code Block <?xml version="1.0" encoding="utf-8"?> <PhoneReturn xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://ws.cdyne.com/PhoneVerify/query"> <Company>Toll Free</Company> <Valid>true</Valid> <Use>Assigned to a code holder for normal use.</Use> <State>TF</State> <RC /> <OCN /> <OriginalNumber>18006785432</OriginalNumber> <CleanNumber>8006785432</CleanNumber> <SwitchName /> <SwitchType /> <Country>United States</Country> <CLLI /> <PrefixType>Landline</PrefixType> <LATA /> <sms>Landline</sms> <Email /> <AssignDate /> <TelecomCity /> <TelecomCounty /> <TelecomState>TF</TelecomState> <TelecomZip /> <TimeZone /> <Lat /> <Long /> <Wireless>false</Wireless> </PhoneReturn>
Info title Troubleshooting If you get an error that states "Invalid Credentials", carryout the following steps to overcome the error. This error is a result of the access token getting expired. The default validity period of the access token is 1 hour.
Optionally, you can update the token validity period in the Access token validity period text box so that the access token will be valid for a longer period, or you can even set a minus value (e.g., -1) so that the token never expires.
Re-generate the access token.
Click Applications, click on the respective application (i.e., TestApp), click Production Key, and click Re-generate. Thereafter, use the new access token when running the cURL commands.
Similarly, invoke the POST method using the following cURL command:
Localtab Group Localtab active true title Format Code Block curl -k -H "Authorization :Bearer <access token>" --data "PhoneNumber=<phone_number>&LicenseKey=<license_key>" <api_url>
Localtab title Example Code Block curl -k -H "Authorization :Bearer 3dfafa3a-b1e3-3550-8a25-88e4b4fe2fb3" --data "PhoneNumber=18006785432&LicenseKey=0" https://localhost:8243/phoneverify/1.0.0/CheckPhoneNumber
Localtab title Output Code Block <?xml version="1.0" encoding="utf-8"?> <PhoneReturn xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://ws.cdyne.com/PhoneVerify/query"> <Company>Toll Free</Company> <Valid>true</Valid> <Use>Assigned to a code holder for normal use.</Use> <State>TF</State> <RC /> <OCN /> <OriginalNumber>18006785432</OriginalNumber> <CleanNumber>8006785432</CleanNumber> <SwitchName /> <SwitchType /> <Country>United States</Country> <CLLI /> <PrefixType>Landline</PrefixType> <LATA /> <sms>Landline</sms> <Email /> <AssignDate /> <TelecomCity /> <TelecomCounty /> <TelecomState>TF</TelecomState> <TelecomZip /> <TimeZone /> <Lat /> <Long /> <Wireless>false</Wireless> </PhoneReturn>
...