Swagger reference

Specific links to Agile Service Manager Swagger documentation are included in many of the topics, as and when useful. This topic summarizes some of that information in a single location, for example by listing the default ports and Swagger URLs for each Agile Service Manager service.

Swagger overview

Swagger is an open source software framework, which includes support for automated documentation and code generation. You can find more information on the Swagger website: https://swagger.io/docs/

Swagger
Agile Service Manager uses Swagger for automated documentation generation and utilizes a Swagger server for each micro-service.
You can access and explore the REST APIs of the topology service and observers using Swagger via the proxy service.
For example
  • To access the Topology service via Swagger, use the following URL: https://<your host>/1.0/topology/swagger
  • To access the AWS Observer service via Swagger, use the following URL: https://<your host>/1.0/aws-observer/swagger
Important:
On-prem

For the on-prem version of Agile Service Manager, you access the micro-services through the proxy service (nasm-nginx), which requires a proxy user and password to be configured for Nginx.

The default values for the user name and password are:
username
asm
password
asm
On OCP
When installed on OCP as part of NOI, the Agile Service Manager release name becomes {noiReleaseName}-topology}.
The name of the Agile Service Manager secret is therefore {noiReleaseName-topology}-asm-credentials.
To obtain credentials on OCP, use the following example command, which prints out a secret in plain text (for the credentials, it will print the username and password in plain text):
kubectl get secret <noiReleaseName-topology>-asm-credentials -o go-template='{{range $k,$v := .data}}{{printf "%s: " $k}}{{if not $v}}{{$v}}{{else}}{{$v | base64decode}}{{end}}{{"\n"}}{{end}}'
Example:
kubectl get secret noi1-topology-asm-credentials -o go-template='{{range $k,$v := .data}}{{printf "%s: " $k}}{{if not $v}}{{$v}}{{else}}{{$v | base64decode}}{{end}}{{"\n"}}{{end}}'
password: xxxxxxxxxxxxxxx
username: xxx
Where {noi1} is the NOI release name, and {noi1-topology} is the Agile Service Manager release name.

Default Swagger URLs

The following tables show the default Swagger URLs for Agile Service Manager services and observers.
OCP Note: On OCP the value of <your host> is:
<release-name>-topology.<namespace>.apps.<my host>
Therefore the Swagger URL for the ALM Observer is:
https://<release-name>-topology.<namespace>.apps.<my host>/1.0/alm-observer/swagger
Example:
https://noi1-topology.master204.apps.noi161-ocp449.cp.fyre.acme.com/1.0/alm-observer/swagger
Table 1. Default Swagger URLs for Agile Service Manager services
Service Swagger URL
layout https://<your host>/1.0/layout/swagger
merge https://<your host>/1.0/merge/swagger
search https://<your host>/1.0/search/swagger
topology https://<your host>/1.0/topology/swagger
Observer Service https://<your host>1.0/observer/swagger
Application Discovery service
On prem: https://<your host>-app-disco/rest/discover/swagger
On OCP: The value of <your host> for application discovery is:
  • https://<release-name>-topology-<namespace>-app-disco.apps.<my host>
The Swagger reference is:
  • https://<your host>/rest/discover/swagger
Network Discovery service
On prem: https://<your host>:9443/docs/swaggerui
On OCP: The value of <your host> for network discovery is:
  • https://<release-name>-topology-net-disco.<namespace>.<my host>
The Swagger reference is:
  • https://<your host>/docs/swaggerui
Status service https://<your host>1.0/status/swagger
Table 2. Default Swagger URLs for Agile Service Manager observers
Observer Swagger URL
alm-observer https://<your host>/1.0/alm-observer/swagger
ansibleawx-observer https://<your host>/1.0/ansibleawx-observer/swagger
aws-observer https://<your host>/1.0/aws-observer/swagger
appdisco-observer https://<your host>/1.0/appdisco-observer/swagger
appdynamics-observer https://<your host>/1.0/appdynamics-observer/swagger
azure-observer https://<your host>/1.0/azure-observer/swagger
bigfixinventory-observer https://<your host>/1.0/bigfixinventory-observer/swagger
cienablueplanet-observer https://<your host>/1.0/cienablueplanet-observer/swagger
ciscoaci-observer https://<your host>/1.0/ciscoaci-observer/swagger
contrail-observer https://<your host>/1.0/contrail-observer/swagger
dns-observer https://<your host>/1.0/dns-observer/swagger
docker-observer https://<your host>/1.0/docker-observer/swagger
dynatrace-observer https://<your host>/1.0/dynatrace-observer/swagger
file-observer https://<your host>/1.0/file-observer/swagger
googlecloud-observer https://<your host>/1.0/googlecloud-observer/swagger
ibmcloud-observer https://<your host>/1.0/ibmcloud-observer/swagger
itnm-observer https://<your host>/1.0/itnm-observer/swagger
jenkins-observer https://<your host>/1.0/jenkins-observer/swagger
juniopercso-observer https://<your host>/1.0/junipercso-observer/swagger
kubernetes-observer https://<your host>/1.0/kubernetes-observer/swagger
netdisco-observer https://<your host>/1.0/netdisco-observer/swagger
newrelic-observer https://<your host>/1.0/newrelic-observer/swagger
openstack-observer https://<your host>/1.0/openstack-observer/swagger
rancher-observer https://<your host>/1.0/rancher-observer/swagger
rest-observer https://<your host>/1.0/rest-observer/swagger
servicenow-observer https://<your host>/1.0/servicenow-observer/swagger
taddm-observer https://<your host>/1.0/taddm-observer/swagger
vmvcenter-observer https://<your host>/1.0/vmvcenter-observer/swagger
vmwarensx-observer https://<your host>/1.0/vmwarensx-observer/swagger
zabbix-observer https://<your host>/1.0/zabbix-observer/swagger
Important: Ensure that the body is structured correctly. When posting the body, information included in the body after the closing } that matches an opening { is ignored, and no error is recorded.