Introduction

Welcome to the API Science Quickstart guide. This document walks you through the core API monitoring features of API Science and also help familiarize you to with some of the advanced features.

Signing-up

If you haven't already, sign up for your free API Science account. You don't need a credit card to get started.

Monitoring dashboard

Upon logging in with your new account, you'll see your API Monitoring Dashboard where you can create and view your monitors. This article on exploring your API Science trial will give you a good overview of your monitoring dashboard.

Creating Your First Monitor

At API Science we've focused on ease of use and making things like creating and configuring monitors as simple and clear as possible. Here's the essential things you need to know:

Adding a monitor

Creating a monitor on API Science often takes less than 60 seconds. Add your API endpoint, enter your API key or credentials, hit Save, and we'll start monitoring your API. This article on creating your first API monitor will help you get that first monitor setup in a jiffy.

Monitor settings

Once your monitor is created, you can configure its settings including which global location to monitor from, how often to monitor, and what validation rules you'd like to apply. For details check this article on working with API Science monitor settings.

Validations

Validations allow you to ascertain and confirm information about your HTTP requests. They serve as one of the primary components in determining the "health" of your monitor and can be utilized to trigger alerts. To add a validation, return to the edit screen for your monitor by clicking the "Edit" button in the top right corner of the monitor overview page then selecting the "Show settings" option. Currently there are five validations available. Multiple validations can be chained together for a single step.

Response Code Confirms that HTTP call response code matches the provided response code.
Regex Runs the provided regex on the response body of the HTTP call.
Validate JSON Confirms that the response body is a valid JSON document.
Max Response Time (ms) Confirms that the HTTP call was performed within a certain amount of milliseconds
JavaScript The most powerful validation, this option allows you to configure JavaScript assertions against the HTTP call.

Once validations are configured, "Test Now" can be utilized to confirm that your validations are working properly. After saving, the monitor will begin to run and check on those validations.

Alerts

Alerts allow you to be notified when a validation or other global event fails. Alerts are configured from the monitor overview page. To create an alert, first select which validation you want to be notified. In addition to each validation configured on the monitor, two global events will also be available: to be alerted if any validation fails and to be alerted if the monitor returns a 5xx or 0 status code.

After selecting an event, select the recipient you wish to be alerted. Current options for alerts include: email, PagerDuty, Slack and webhook URL endpoints.

Advanced Topics

Although it's easy to get started with API Science, we offer a range of advanced features from multi-step monitoring to dynamic variable scripting. These ensure that you have a powerful platform to cover all your API monitoring needs.

Multistep Monitors

Multistep monitors are a powerful feature that allow you to model an API workflow in your monitor by stringing a series of "steps" or HTTP calls together while allowing information to be passed between the steps. For example, API authentication schemes often require a developer to first aquire a dynamic security token at runtime and then use this token in subsequent API calls in a flow. Get all the details here in this guide to creating a multi-step monitor.

JavaScript Validations

JavaScript validations give you full flexibility in building custom validations for your HTTP response. By utilizing JavaScript assertions provided by the chai.js library, and call information stored in a "context" variable, one can build out custom tests as needed. Though multiple assertions can be utilized in each JavaScript validation block, validation execution will stop upon encountering the first failed assertion. If you need to see the results of the remaining assertion or be alerted on a specific assertion, it is suggested that you break up your assertions to be in multiple validation blocks.