• English日本語한국어
  • Log inStart now

Insights query API

The New Relic Insights query API is a REST API for making NRQL queries.

Tip

This API is no longer the preferred way to query New Relic data. Please use NerdGraph to do that.

Requirements and recommendations

This API is no longer the preferred way to query New Relic data. For best results, you should use NerdGraph to query data.

Use of this API may be restricted by role-related user permissions.

To add custom data to New Relic, see Report custom data.

If your organization hosts data in the EU data center, ensure you're using the proper EU region endpoints.

1. Register an API key

To use the Insights query API, you need a query key. You can have multiple query keys, and any query key can be used to initiate any Insights API query. If you have multiple systems querying Insights or different data destinations, New Relic recommends you use multiple query keys to enhance data security.

For security reasons, query keys cannot be altered or read using the API. To change or read a query key, use the New Relic UI.

Tip

This API is no longer the preferred way to query New Relic data. Please use NerdGraph to do that.

To create a new query key:

  1. Go to one.newrelic.com/api-keys. If you are using the EU datacenter, go to one.eu.newrelic.com/api-keys instead.

  2. Click Create a key button located in the top-right corner of the API keys page.

  3. Configure the new key:

  • Enter a name for the new key in the provided field.
  • Add a description (such as "Query key").
  1. Click Save to generate the new key.

2. Create the API query request

When you create or edit a query key, you will see an example curl query that you can use as a template. The example query won't work unless you follow these query rules:

  • The NRQL query string must be URL-encoded.
  • The query string must be less than 4000 bytes.
  • The URL must contain a valid account ID.
  • The X-Query-Key must contain a valid query key.
  • The Content-Type must be application/json.

Linux

Here is a curl example:

curl -H "Accept: application/json" -H "X-Query-Key: YOUR_QUERY_KEY" "https://insights-api.newrelic.com/v1/accounts/YOUR_ACCOUNT_ID/query?nrql=YOUR_URL_ENCODED_QUERY"

Microsoft Windows

You can use Powershell to query events via API:

Invoke-WebRequest -Uri https://insights-api.newrelic.com/v1/accounts/YOUR_ACCOUNT_ID/query?nrql=YOUR_URL_ENCODED_QUERY -Headers @{"X-Query-Key"="YOUR_QUERY_KEY"} -ContentType "application/json" -Method GET

3. Process the returned JSON

The query API returns results in JSON format. There is a limit of 5,000 results per request.

The structure of the JSON data depends on the NRQL that you used in the request: Different combinations of SELECT statements, clauses, and functions each return an appropriate response. When writing your code to process the JSON, you should do a test run of your query and examine the resulting JSON.

Example

The Insights query API returns JSON data. Here's an example of a query, its query request format, and its returned data:

Rate limiting guidelines

We have query rate limits. You likely won't encounter these limits, especially if you follow these general guidelines:

  • Limit the amount of requests with complex queries (for example, queries with FACET or TIMESERIES clauses, or queries of over a million events) run at the same time.
  • Limit the amount of requests run concurrently over extended periods of time to a maximum of 5, especially if they include complex queries.

If New Relic applies rate limits on your account for the number of queries per minute, the query API returns a 429 error. If New Relic applies rate limits on your account for records inspected, the query API returns a 503 error and your charts may display timeout error messages.

Copyright © 2024 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.