Publisher APIs
The following Publisher APIs are deprecated and will be unsupported in a future release. They are provided below for reference by existing users. For a complete list of the currently supported Publisher APIs, go to https://docs.wso2.com/display/AM210/apidocs/publisher/.
- 1 Login
- 2 Logout
- 3 Add API
- 4 Add API with Path Parameter
- 5 Update API
- 6 Publishing an API to external Store
- 7 Get All APIs
- 8 Get an API
- 9 Remove an API
- 10 Copy an API
- 11 Check Older Version
- 12 Change API Status
- 13 Add/Update an API Document
- 14 Remove an API Document
- 15 Get all Throttling Tiers
- 16 Check if API Exists
- 17 Validate Roles
- 18 Analytics related APIs
Note: When you access any API other than the login and logout APIs through an external REST client such as cURL, first invoke the login API to ensure that user is authenticated. When the login API is invoked, the system stores the generated session cookie in a file, which we use in the next API invocations. The response is a JSON message.
Login
Description | Log in to API Publisher web application. |
|---|---|
URI | http://localhost:9763/publisher/site/blocks/user/login/ajax/login .jag |
URI Parameters | action=login&username=xxx&password=xxx |
HTTP Methods | POST |
Example | curl -X POST -c cookies http://localhost:9763/publisher/site/blocks/user/login/ajax/login.jag -d 'action=login&username=admin&password=admin' |
Logout
Description | Log out from API Publisher web application. |
|---|---|
URI | http://localhost:9763/publisher/site/blocks/user/login/ajax/login .jag |
URI Parameters | ?action=logout |
HTTP Methods | GET |
Example | curl -b cookies http://localhost:9763/publisher/site/blocks/user/login/ajax/login.jag?action=logout |
Add API
Description | Add a new API. | ||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
URI | http://localhost:9763/publisher/site/blocks/item-add/ajax/add.jag | ||||||||||||||||||||||||||||||||||||||||
URI Parameters | Given below are the parameters that you can pass with an Add-API call. Mandatory ones are marked with a *.
| ||||||||||||||||||||||||||||||||||||||||
HTTP Methods | POST | ||||||||||||||||||||||||||||||||||||||||
Example | curl -X POST -b cookies http://localhost:9763/publisher/site/blocks/item-add/ajax/add.jag -d "action=addAPI&name=PhoneVerification&context=/phoneverify&version=1.0.0&visibility=public&thumbUrl=&description=Verify a phone number&tags=phone,mobile,multimedia&endpointType=nonsecured&tiersCollection=Gold,Bronze&http_checked=http&https_checked=https&resourceCount=0&resourceMethod-0=GET&resourceMethodAuthType-0=Application&resourceMethodThrottlingTier-0=Unlimited&uriTemplate-0=/*&default_version_checked=default_version&bizOwner=xx&bizOwnerMail=xx@ee.com&techOwner=xx&techOwnerMail=ggg@ww.com" -d 'endpoint_config={"production_endpoints":{"url":" http://ws.cdyne.com/phoneverify/phoneverify.asmx","config":null},"endpoint_type":"http "}' |
Add API with Path Parameter
Description | Add a new API with path parameter |
|---|---|
URI | http://localhost:9763/publisher/site/blocks/item-add/ajax/add.jag |
URI Parameters | action=addAPI&name=xxx&context=/xxx&version=1.0.0&visibility=xxx&thumbUrl=&description=xxx&tags=xxx&endpointType=xxx&tiersCollection=xxx&http_checked=http&https_checked=https" -d 'swagger=xxx |
HTTP Methods | POST |
Example | curl -X POST -b cookies http://localhost:9763/publisher/site/blocks/item-add/ajax/add.jag -d "action=addAPI&name=SampleApi&context=/sample&version=1.0.0&visibility=public&thumbUrl=&description=Verify a phone number&tags=phone,mobile,multimedia&endpointType=nonsecured&tiersCollection=Gold,Bronze&http_checked=http&https_checked=https" -d 'swagger={"paths" : {"/estimate/" : {"get" : {"x-auth-type" : "Application%20%26%20Application%20User", "x-throttling-tier" : "Unlimited", "responses" : {"200" : {}}, "parameters" : [{"name" : "id", "paramType" : "path", "required" : false, "type" : "string", "description" : "Phone Number", "in" : "path"}]}}}, "swagger" : "2.0", "x-wso2-security" : {"apim" : {"x-wso2-scopes" : [{"description" : "", "name" : "read_number", "roles" : "admin", "key" : "read_number"}]}}, "info" : {"title" : "SampleApi", "version" : "1.0.0"}}' -d 'endpoint_config={"production_endpoints":{"url":"http://ws.cdyne.com/phoneverify/phoneverify.asmx","config":null},"endpoint_type":"http"}' |
Update API
Description | Update an existing API |
|---|---|
URI | http://localhost:9763/publisher/site/blocks/item-add/ajax/add.jag |
URI Parameters | Parameters are same as in Add API except that action = updateAPI and you can only update the following parameters: visibility, t humbUrl, description, tags, endpointType, endpoint_config (can change the endpoint URL etc,) http_checked, https_checked, tiersCollection, swagger and can also add new resources. See example below. |
HTTP Methods | POST |
Example | Update API : curl -X POST -b cookies http://localhost:9763/publisher/site/blocks/item-add/ajax/add.jag -d "action=updateAPI&name=PhoneVerification&provider=admin&version=1.0.0&visibility=public&description=Youtube Live Feeds&endpointType=nonsecured&http_checked=http&https_checked=https&tags=youtube,gdata,multimedia&tier=Silver&thumbUrl=http://www.10bigideas.com.au/www/573/files/pf-thumbnail-youtube_logo.jpg&context=/youtube&tiersCollection=Gold,Silver&resourceCount=0&resourceMethod-0=GET&resourceMethodAuthType-0=Application&resourceMethodThrottlingTier-0=Unlimited&uriTemplate-0=/*" -d 'endpoint_config={"production_endpoints":{"url":"http://gdata.youtube.com/feeds/api/standardfeeds","config":null},"endpoint_type":"http"}' |
Publishing an API to external Store
Description | Publish an API to external store |
|---|---|
URI | http://localhost:9763/publisher/site/blocks/item-external/ajax/external.jag |
URI Parameters | action=updateExternal&name=xxx&version=xxx&provider=xxx&externalAPIStores=<external-store-1>::<external-store-2>::<external-store-3> :: sign is used to seperate the list of API stores |
HTTP Methods | POST |
Example | updateExternal : curl -X POST -b cookies http://localhost:9763/publisher/site/blocks/item-external/ajax/external.jag -d "action=updateExternal&name=PhoneVerification&version=1.0.0&provider=admin&externalAPIStores=exstore2::exstore3 This API can be used to unpublish an API from a given API store as well. If we remove the particular store ID and call the API once again, that API will get unpublished from the external stores which are not mentioned in the request.
If you want to remove the API from all the stores, provide '::' as the externalAPIStores parameter value. |
Get All APIs
Description | Lists all the created APIs. |
|---|---|
URI | http://localhost:9763/publisher/site/blocks/listing/ajax/item-list.jag |
URI Parameters | ?action=getAllAPIs |
HTTP Methods | GET |
Example | curl -b cookies http://localhost:9763/publisher/site/blocks/listing/ajax/item-list .jag ?action=getAllAPIs |
Get an API
Description | Get details of a specific API. |
|---|---|
URI | http://localhost:9763/publisher/site/blocks/listing/ajax/item-list.jag |
URI Parameters | action=getAPI&name=xxx&version=xxx&provider=xxx |
HTTP Methods | POST |
Example | curl -X POST -b cookies http://localhost:9763/publisher/site/blocks/listing/ajax/item-list.jag -d "action=getAPI&name=PhoneVerification&version=1.0.0&provider=admin" |
Remove an API
Description | Remove an API. |
|---|---|
URI | http://localhost:9763/publisher/site/blocks/item-add/ajax/remove.jag |
URI Parameters | action=removeAPI&name=xxx&version=xxx&provider=xxx |
HTTP Methods | POST |
Example | curl -X POST -b cookies http://localhost:9763/publisher/site/blocks/item-add/ajax/remove.jag -d "action=removeAPI&name=PhoneVerification&version=1.0.0&provider=admin" |
Copy an API
Description | Copy an API to a newer version. |
|---|---|
URI | http://localhost:9763/publisher/site/blocks/overview/ajax/overvi ew.jag |
URI Parameters | action=createNewAPI&provider=xxx&apiName=xxx&version=xxx&newVersion=xxx |
HTTP Methods | POST |
Example | curl -X POST -b cookies http://localhost:9763/publisher/site/blocks/overview/ajax/overview.jag -d "action=createNewAPI&provider=admin&apiName=PhoneVerification&version=1.0.0&newVersion=2.0.0&isDefaultVersion=default_version" |