Getting Started

  1. OpsRamp APIs
  2. Gateway APIs

OpsRamp APIs

Follow these steps to configure your OpsRamp account to call OpsRamp APIs.

Step 1: Install an integration

  1. In the UI, go to: Setup > Integrations > Integrations.
  2. Select Available Integrations > Other > Custom Integration.
  3. Select Install.
  4. Note down the Key, Secret, API Endpoint from your integration (see examples). You will use these to call APIs:
    • Key: x2AqYp2Ym4Wm2EgjWb2X28Estwn2hE58
    • Secret: aw6Prm4mk5K5AFmuWfqbyqxcnRMmBnaDV74PvT4sDanb8h3yq9fgEXcGjzbKFrzv
    • API Endpoint: https://api.opsramp.com
  5. Select Save

Step 2: Get an OAuth 2.0 access token

Call the authentication API, using your Key, Secret, and API Endpoint, to get your access token (see example below). Note:

  • Use your Key as the OAuth client_id and Secret as the client_secret.
  • Use your the OAuth client_credentials grant type.
curl https://api.opsramp.com/tenancy/auth/oauth/token \
  -X POST \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -H "Accept: application/json" \
  -d "grant_type=client_credentials&client_id=M7X9sn7xBpCUsdNAFG7P5UxUjvhJm7Xv&client_secret=UPZPQJVhez6H8cC6kMPzKEmHR7k2ppGPRD8F7d42nvbVYCg9CFqtDGXMUtTUwC7y"

If your API call is successful, you should see a response like the example below:

{
   "access_token":"7ae76891-afa1-4d11-aa49-33367238e731",
   "token_type":"bearer",
   "expires_in":7199,
   "scope":"global:manage"
}

Note down the access token (access_token). You will use this call APIs.

Step 3: Note down your Tenant ID

In the UI, go to Setup > Accounts and note down your Tenant ID. Your Tenant ID is a unique identifier of your OpsRamp account and has one of these formats:

  • 5878ee58-8c5b-46a8-b975-3754c3c67977
  • msp_1234.

Step 4: Call an API

Call an API, using your Access Token and Tenant ID to validate that they work (see example):

curl https://api.opsramp.com/api/v2/tenants/{clientId}/resources \
-X POST \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer 7ae76891-afa1-4d11-aa49-33367238e731" \
-d '{
  "resourceName": "minimalistic-Generic-Device",
  "resourceType": "Linux",
  "managementProfile": "TestPro"
}'

Tenancy identifier in path parameter.

The APIs carry a path parameter to authorize the tenancy scope of the endpoint. Following he name of the parameter indicates which tenant scope that the API supports.

  • {tenantId} : Supports both partner and client scope.
  • {clientId} : Supports only client scope.
  • {partnerId} : Supports only partner scope.

Gateway API's

Follow these steps to obtain the access token to call Gateway APIs.

Step 1: Get the username and password for the Gateway

To use the default username and password

  1. Login to OpsRamp platform using your credentials.
  2. In the UI, go to: Setup > Downloads > Gateway.
  3. On the top of the page find the default username and password for Gateway administrator account.
  4. Note down admin as username and copy password. You will use this information to call authentication API endpoint.

Step 2: Get an access token

Call the authentication endpoint POST https://<GatewayIPAddress>:5480/v2/auth/token to get your access token (see example request payload below).

Note:

  • Use admin as username and password as copied in the request payload.
{
   "username":"admin",
   "password":"******",
}

For curl based, the example below.

curl https://<GatewayIPAddress>:5480/v2/auth/token \
  -X POST \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{"username":"admin","password":"Pass@12345"}'

If your API endpoint call is successful, you should see a response as example below:

{
   "token":"7ae76891-afa1-4d11-aa49-33367238e731",
   "expires_in":7199
}

Note down the token value (token). You will use this only for calling Gateway APIs.

Step 3: Call the Gateway API

Call a Gateway API, using your token value as token <token_value> in Authorization header as below to validate that they work (see example):

curl https://<GatewayIPAddress>:5480/v2/gateway/actions/{actionName} \
-X POST \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: token 7ae76891-afa1-4d11-aa49-33367238e731" \
-d '{
  "monitService": {
    "service": "nginx",
    "action": "status"
  }
}  
2021-010-14T05:35:07.322Z