APImetrics Integration

APImetrics gives insight into how critical APIs, microservices, web services, and other systems work and interoperate. It is a real-time API & Cloud Service monitoring system. Forward APImetrics error notifications to Opsgenie to notify users via iPhone and Android push notifications, email, SMS, and phone calls to track the alert lifecycle, escalate alerts, etc.

73

What does Opsgenie offer APImetrics users?

Use Opsgenie’s APImetrics Integration to forward APImetrics notifications to Opsgenie. Opsgenie determines the right people to notify based on on-call schedules– notifies via email, text messages (SMS), phone calls, iOS & Android push notifications, and escalates alerts until the alert is acknowledged or closed.

Functionality of the integration

When an API call error or warning is captured in APImetrics, it creates an alert in Opsgenie.

Add APImetrics Integration in Opsgenie

  1. Please create an Opsgenie account if you haven't done so already.
  2. Go to Opsgenie's APImetrics Integration page.

🚧

For Free and Essentials plans, you can only add the integrations from the Team Dashboards, please use the alternative instructions given below to add this integration.

  1. Specify who is notified of APImetrics notifications using the Teams field. Autocomplete suggestions are provided as you type.

📘

An alternative for Step 2) and Step 3) is to add the integration from the Team Dashboard of the team which will own the integration. To add an integration directly to a team, navigate to the Team Dashboard and open Integrations tab. Click Add Integration and select the integration that you would like to add.

  1. Copy the integration URL which includes Opsgenie's endpoint as well as the API key.
  2. Click Save Integration
2048

Configuration in APImetrics

  1. In APImetrics, navigate to "Alerts & Webhooks" page.
  2. Select Generic.
  3. Be sure that Enabled is checked.
  4. "Trigger alerts" is selected as All selected.
  5. ​Click Save.

Sample Webhook Message from Opsgenie APImetrics

{
  "response_size": 0,
  "location_id": "public_googleuscentral1",
  "result_class": "WARNING",
  "call_id": "agpzfnZpYXRlc3RzchcLEgpUZXN0U2V0dXAyGICAsJ7Bl7UKDA",
  "result_url": "http://client.apimetrics.io/tests/result/agpzfnZpYXRlc3RzchgLEgtUZXN0UmVzdWx0MxiAgLCe1LCjCQw/",
  "result": "DOWNLOAD_ERROR",
  "context": {
    "_result_category": "WARNING",
    "_result_streak": 1,
    "_notification": {
      "category": "WARNING",
      "owners": [
        "agpzfnZpYXRlc3RzchELEgRVc2VyGICAsO6ThqAKDA"
      ],
      "viewed_by": [],
      "title": "[WARNING]: APImetrics: All Failures: Test 2018-05-11 13:46:46.075200",
      "created": "2018-05-11T13:47:06.393630Z",
      "last_update": "2018-05-11T13:47:06.484100Z",
      "references": [
        "agpzfnZpYXRlc3RzchcLEgpUZXN0U2V0dXAyGICAsJ7Bl7UKDA",
        "agpzfnZpYXRlc3RzchgLEgtUZXN0UmVzdWx0MxiAgLCe1LCjCQw"
      ],
      "description": "\n<p>\nAPI Call <a href=\"http://client.apimetrics.io/tests/test/agpzfnZpYXRlc3RzchcLEgpUZXN0U2V0dXAyGICAsJ7Bl7UKDA/\">\"Test 2018-05-11 13:46:46.075200\"</a> has failed :\n<ul>\n<li><b>We could not connect to the API.</b></li>\n\n<li>Calling GET https://fhjpvdm2yutb.runscope.net%09</li>\n<li>Checking for connection issue...</li>\n<li>... no problem found.</li>\n<li>Couldn&#39;t resolve host. The given remote host was not resolved.</li>\n<li>We could not connect to the API.</li>\n<li>Couldn&#39;t resolve host &#39;fhjpvdm2yutb.runscope.net%09&#39;</li>\n\n</ul>\n</p>\n\n\n</p>\n\n<p>\nView details here:\n<a href=\"http://client.apimetrics.io/tests/result/agpzfnZpYXRlc3RzchgLEgtUZXN0UmVzdWx0MxiAgLCe1LCjCQw/\">http://client.apimetrics.io/tests/result/agpzfnZpYXRlc3RzchgLEgtUZXN0UmVzdWx0MxiAgLCe1LCjCQw/</a>\n</p>\n\n<p>Sincerely,<br>\nAPImetrics Team\n</p>\n"
    }
  },
  "result_id": "agpzfnZpYXRlc3RzchgLEgtUZXN0UmVzdWx0MxiAgLCe1LCjCQw",
  "call_url": "http://client.apimetrics.io/tests/test/agpzfnZpYXRlc3RzchcLEgpUZXN0U2V0dXAyGICAsJ7Bl7UKDA/",
  "response_time": 0
}

Sample alert

2235