Today we're making available the Runscope API, giving you access to the data within your Runscope account via a simple JSON-over-HTTP interface. That's right, it's an API for your API calls. The API gives you access to buckets and message data across all the teams the authorized user belongs to.
Here are a couple ways we envision the API being used:
- Collecting traffic data from additional clients/agents without using Runscope URLs.
- Displaying debugging logs for API calls within another app.
- Pulling your API usage data into other dashboards.
- Importing/exporting request and response data.
Runscope URLs are great because they work everywhere. However, in some scenarios it's preferable to not require the additional network hop they introduce. The Messages resource of the Runscope API allows you to put request and response data into your buckets directly from an app without modifying the URL.
We're working on ways to make this type of data collection possible for popular languages and frameworks in the future, but with the API you don't have to wait for us.
You can also make requests the 'traditional' way with Runscope URLs using bucket keys extracted from the Buckets resource. Authenticated buckets are excluded by default, but you can access them by requesting the bucket:auth_token scope when generating an access token.
Speaking of scopes and access tokens...
The Runscope API uses OAuth 2 for authentication and authorization. This makes it easy to securely bring in a user's Runscope data into your app without requiring you to know or store their password. It also gives you granular control over requesting just the types of data you need using scopes.
Since we know what a pain it is to test APIs that use OAuth 2 (ahem) we automatically generate an access token for your account when you create an application. With that token, you'll be testing API calls in no time.
The API In Action
We've already started building some of our own apps on top of the API. Our most recent community project API Changelog uses Runscope as an authentication provider using OAuth 2. And the Runscope Agent command line tool uses the API for the tail and buckets commands.
How will you use it?
One of the best things about providing an API is that you never know how others will use it. We've got some creative customers and we're excited to see how you all put the Runscope API to use. Drop us a line to let us know about anything you build, or if you need help along the way.