Everything an AI agent can do with the New Relic API.

A reference guide for building AI agents: every method, how to authenticate, and the permissions each one needs.

Endpoints29
API versionNerdGraph (GraphQL)
Last updated23 June 2026
Orientation

How the New Relic API works.

The New Relic API is how an app or AI agent works with a New Relic account: running NRQL queries over telemetry, searching monitored entities, creating alert policies and dashboards, and sending in metrics, events, and logs. Access is granted through an API key, where a user key drives querying and configuration and a license key authenticates data sent in, and an agent is limited to the accounts and role-based access that key carries. There are no per-operation scopes, and New Relic can push alert issue changes to a webhook.

29Endpoints
8Capability groups
4Read
25Write
2Permissions
Authentication
New Relic uses API keys, not OAuth scopes, and which key a call needs depends on what it does. Querying and configuration through NerdGraph, the GraphQL API, need a user key, sent in the 'API-Key' header. Sending data in through the Metric, Event, Log, and Trace endpoints needs a license key, sent in the 'Api-Key' header. Browser and mobile data use their own keys. A user key is tied to a person, and what it can reach is set by that person's role-based access.
Permissions
There are no granular per-operation scopes. With NerdGraph, a single user key can call any operation; what it can actually read or change is governed by the user's account access and assigned role, so a read-only user cannot make configuration changes. With the ingest endpoints, a license key only sends data into the one account it belongs to and cannot read or configure anything. The boundary is the account plus the role, not a per-call permission.
Versioning
NerdGraph is a single, continuously updated GraphQL API with no dated version and no version header to pin. The schema evolves additively, new fields and operations are added without breaking existing queries, and fields are marked deprecated with notice before removal. The older REST API v2 is being replaced by NerdGraph, and as of 1 March 2025 REST API v2 no longer accepts the old REST API keys.
Data model
Querying and configuration run through one GraphQL endpoint, at api.newrelic.com/graphql for the US region and api.eu.newrelic.com/graphql for the EU region. A query starts from an 'actor' root and reaches into a specific 'account' by id, then into NRQL, entities, or alerts; configuration is done through named mutations such as dashboardCreate or alertsPolicyCreate. Telemetry is sent in separately, each data type to its own ingest host, such as metric-api.newrelic.com for metrics and log-api.newrelic.com for logs.
Connect & authenticate

Connection & authentication methods.

How an app or AI agent connects to New Relic determines what it can reach. Querying and configuration go through one GraphQL API, and sending data in goes through a set of separate ingest endpoints, each governed by the key behind it.

Ways to connect

NerdGraph (GraphQL API)

NerdGraph is the single GraphQL API for querying data and changing configuration. It answers at api.newrelic.com/graphql for US accounts and api.eu.newrelic.com/graphql for EU accounts, with a typed schema reached from an actor root.

Best forConnecting an app or AI agent to New Relic.
Governed byThe user key and the user's role-based access.
Docs ↗

MCP server (Model Context Protocol)

The New Relic AI MCP server lets an agent reach New Relic in natural language through the Model Context Protocol, such as turning a question into NRQL and retrieving metrics, logs, and alert status. It is in public preview, answering at mcp.newrelic.com for US accounts and mcp.eu.newrelic.com for EU accounts, and authenticates with a user API key or OAuth.

Best forConnecting an app or AI agent to New Relic.
Governed byThe user key or OAuth, and the user's organization role.
Docs ↗

Ingest endpoints (Metric, Event, Log, Trace)

Telemetry is sent in through separate regional HTTPS endpoints, one per data type, such as metric-api.newrelic.com for metrics and log-api.newrelic.com for logs. Each accepts a JSON POST authenticated with a license key and only writes into that key's account.

Best forSending data from an app or AI agent into New Relic.
Governed byThe license key, which writes into a single account.
Docs ↗

Notifications (webhooks)

Workflows match alert issues and send notifications to destinations, and a webhook is one destination type, so New Relic posts a JSON payload to a registered URL when an issue is activated, acknowledged, or closed. Destinations, channels, and workflows are managed through NerdGraph.

Best forPushing alert issue changes to an app or AI agent.
Governed byThe user key and the user's role-based access.
Docs ↗
Authentication

User API key

A user key authenticates querying and configuration through NerdGraph, sent in the 'API-Key' header. It is tied to a person, and what it can reach is set by that person's account access and assigned role, so a read-only user cannot make configuration changes.

TokenUser key (NRAK-...)
Best forQuerying data and changing configuration
Docs ↗

License key (ingest)

A license key authenticates data sent into an account through the Metric, Event, Log, and Trace endpoints, sent in the 'Api-Key' header. It only writes into its own account and cannot read or configure anything.

TokenLicense key
Best forSending telemetry into an account
Docs ↗

Browser & mobile keys

Browser and mobile monitoring data use their own dedicated keys, separate from the license key, each tied to a specific account. They authenticate only the browser or mobile agent that reports that data.

TokenBrowser key / Mobile app token
Best forReporting browser and mobile monitoring data
Docs ↗
Capability map

What an AI agent can do in New Relic.

The New Relic API is split into areas an agent can act on, such as running NRQL queries, finding entities, managing alert policies and conditions, building dashboards, and sending in metrics, events, and logs. Each area has its own operations, and configuration changes affect what a whole team sees.

NRQL & queries

1 endpoint

Run NRQL queries over an account's telemetry through NerdGraph and read back the results.

Reads here can return any data the account holds, including custom event attributes.
View endpoints

Entities

4 endpoints

Search for monitored entities, read one by GUID, and add or replace the tags on an entity.

Writes here change tags that drive search, workloads, and access scoping.
View endpoints

Alerts

7 endpoints

Search, create, update, and delete alert policies and their NRQL conditions.

Writes here change what gets alerted on and who gets paged.
View endpoints

Dashboards

3 endpoints

Read a dashboard by GUID, and create, update, or delete dashboards and their pages and widgets.

Writes here change dashboards a whole team sees.
View endpoints

Workloads

3 endpoints

Create, update, and delete workloads, which group entities for a combined health view.

Deleting a workload also removes its history and metadata.
View endpoints

Synthetics

4 endpoints

Create, update, and delete synthetic monitors that check sites and APIs from chosen locations.

Monitors make real outbound checks on a schedule against the targets they name.
View endpoints

Notifications & workflows

3 endpoints

Create the destinations, channels, and workflows that send alert notifications, including webhooks.

Writes here decide where alert notifications are delivered.
View endpoints

Data ingest

4 endpoints

Send metrics, events, logs, and traces into an account through the regional ingest endpoints.

Writes here add data to an account and count against ingest limits and cost.
View endpoints
Endpoint reference

Every New Relic API operation.

Filter by method, access, or permission, or search any path. Select a row for version detail, rate limits, the related webhook event, and the source.

MethodEndpointWhat it doesAccessPermissionVersion

NRQL & queries

Run NRQL queries over an account's telemetry through NerdGraph and read back the results.1

NerdGraph has no per-operation scopes; a user key reaches whatever the user's role and account access allow. The default query timeout is 5 seconds.

Acts ontelemetry
Permission (capability)User key
VersionAvailable since the API’s base version
Webhook eventNone
Rate limit3,000 NRQL queries per account per minute

Entities

Search for monitored entities, read one by GUID, and add or replace the tags on an entity.4

Results are paginated with a nextCursor. Reading tags is done here rather than through a dedicated tagging query.

Acts onentity
Permission (capability)User key
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Reading a dashboard's full layout uses this field with the DashboardEntity type.

Acts onentity
Permission (capability)User key
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Tags drive entity search, workload membership, and scoping, so changes here ripple beyond the single entity.

Acts onentity tag
Permission (capability)User key
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

This removes any existing tags not in the supplied set. taggingDeleteTagFromEntity removes specific tags instead.

Acts onentity tag
Permission (capability)User key
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Alerts

Search, create, update, and delete alert policies and their NRQL conditions.7

Results are paginated with a cursor.

Acts onalert policy
Permission (capability)User key
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

A user without an alerts-management role is blocked even though the mutation exists.

Acts onalert policy
Permission (capability)User key
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

A partial update; only the supplied fields change.

Acts onalert policy
Permission (capability)User key
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Deleting a policy removes the conditions inside it.

Acts onalert policy
Permission (capability)User key
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

A baseline variant, alertsNrqlConditionBaselineCreate, exists for dynamic thresholds.

Acts onalert condition
Permission (capability)User key
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Conditions can be read first with the nrqlConditionsSearch query.

Acts onalert condition
Permission (capability)User key
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

The same mutation deletes static, baseline, and other condition types.

Acts onalert condition
Permission (capability)User key
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Dashboards

Read a dashboard by GUID, and create, update, or delete dashboards and their pages and widgets.3

Widgets are defined with NRQL, so a dashboard can surface any data the account holds.

Acts ondashboard
Permission (capability)User key
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Any page or widget left out of the input is removed, so an update must send the full intended layout.

Acts ondashboard
Permission (capability)User key
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

This is a recoverable delete; dashboardUndelete restores it by GUID.

Acts ondashboard
Permission (capability)User key
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Workloads

Create, update, and delete workloads, which group entities for a combined health view.3

Membership can be set by explicit GUIDs or by entity search queries.

Acts onworkload
Permission (capability)User key
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

An update must send the complete new status configuration, not a partial one.

Acts onworkload
Permission (capability)User key
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Deleting a workload also removes its history and metadata.

Acts onworkload
Permission (capability)User key
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Synthetics

Create, update, and delete synthetic monitors that check sites and APIs from chosen locations.4

The monitor makes real outbound checks on a schedule against the URI it names.

Acts onsynthetic monitor
Permission (capability)User key
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

The script runs on a chosen runtime; older Node.js runtimes face a forced upgrade by 18 November 2026.

Acts onsynthetic monitor
Permission (capability)User key
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Most fields are optional on update; only the supplied ones change.

Acts onsynthetic monitor
Permission (capability)User key
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

The same mutation deletes simple, scripted, and other monitor types.

Acts onsynthetic monitor
Permission (capability)User key
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Notifications & workflows

Create the destinations, channels, and workflows that send alert notifications, including webhooks.3

Destination type can be WEBHOOK, EMAIL, JIRA, SERVICE_NOW, MICROSOFT_TEAMS, and others; Slack is connected through the UI rather than this mutation.

Acts ondestination
Permission (capability)User key
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

A channel references a destination by id and sets the message template for a product such as ALERTS.

Acts onchannel
Permission (capability)User key
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Each destination configuration lists the issue triggers, such as ACTIVATED, ACKNOWLEDGED, and CLOSED, that cause a notification to be sent.

Acts onworkflow
Permission (capability)User key
VersionAvailable since the API’s base version
Webhook eventissue-activated
Rate limitStandard limits apply

Data ingest

Send metrics, events, logs, and traces into an account through the regional ingest endpoints.4

License key in the 'Api-Key' header. EU host: metric-api.eu.newrelic.com. Validation is asynchronous, so a 202 means accepted, not fully ingested.

Acts onmetric
Permission (capability)License key
VersionAvailable since the API’s base version
Webhook eventNone
Rate limit100,000 requests per minute per account; 1 MB max per POST

License key in the 'Api-Key' header; Browser, Mobile, and User keys will not work. EU host: insights-collector.eu01.nr-data.net. A successful POST returns 200.

Acts onevent
Permission (capability)License key
VersionAvailable since the API’s base version
Webhook eventNone
Rate limit100,000 requests per minute per account; 1 MB max per POST

License key in the 'Api-Key' header. EU host: log-api.eu.newrelic.com. Timestamps older than 48 hours may be dropped.

Acts onlog
Permission (capability)License key
VersionAvailable since the API’s base version
Webhook eventNone
Rate limit300,000 requests per minute; 10 GB uncompressed JSON per minute; 1 MB max per POST

License key in the 'Api-Key' header. EU host: trace-api.eu.newrelic.com. The same path accepts both the newrelic and zipkin JSON formats.

Acts ontrace
Permission (capability)License key
VersionAvailable since the API’s base version
Webhook eventNone
Rate limit1 MB max per POST
No endpoints match those filters.
Webhooks

Webhook events.

New Relic can notify an app or AI agent when an alert issue changes, instead of the app repeatedly asking. Notifications run through workflows that match issues and send to destinations, and a webhook is one destination type.

EventWhat it signalsTriggered by
Issue activatedFires when an alert issue moves to the activated state, meaning a condition has been breached. This trigger must be enabled for a workflow to send any notification.mutation aiWorkflowsCreateWorkflow(accountId, createWorkflowData)
Issue acknowledgedFires when an alert issue is acknowledged by a user, from a notification, the issue page, or a third-party integration.In-app only
Issue closedFires when an alert issue is closed, whether because all its events closed, a time-to-live expired, or it went inactive.In-app only
Issue priority changedFires when an alert issue's priority is raised, such as from high to critical.In-app only
No events match that search.
Rate limits & pagination

Rate limits, pagination & request size.

New Relic limits how fast and how much an app or AI agent can call, through a concurrency cap on the GraphQL API, a per-account ceiling on NRQL queries, and per-minute and per-payload limits on each ingest endpoint.

Request rate

NerdGraph limits concurrency rather than the rate of requests: it guarantees 25 in-flight requests per user, tracked per user and not per key, so multiple keys for the same person share that ceiling, and excess concurrent requests are rejected with HTTP 429. Running NRQL queries through any API has a separate ceiling of 3,000 queries per account per minute, and the default NerdGraph query timeout is 5 seconds. The ingest endpoints have their own per-minute caps: the Metric and Event endpoints each accept up to 100,000 requests per minute per account, and the Log endpoint accepts up to 300,000 requests per minute and 10 GB of uncompressed JSON per minute, each returning HTTP 429 with a Retry-After header when exceeded.

Pagination

GraphQL list fields that can return many results, such as entitySearch and the alerts policiesSearch and nrqlConditionsSearch fields, use cursor-based pagination: each response includes a nextCursor, which is passed back to fetch the following page until it comes back empty. NRQL queries return up to a LIMIT set in the query, where LIMIT MAX returns the maximum the platform allows for that query.

Request size

GraphQL requests and responses are JSON. Each ingest POST must be under 1 MB (10^6 bytes) or it is rejected with HTTP 413, and payloads can be sent gzip-compressed to fit more data under that ceiling. A metric may carry up to 150 attributes and an event up to 255, with attribute names up to 255 characters and values up to 4,096 characters.

Errors

Status codes & error handling.

The status codes an agent should handle, and what to do about each.

StatusCodeMeaningWhat to do
200GraphQL errors arrayNerdGraph returns HTTP 200 even when a query partially fails, putting problems in an 'errors' array in the response body alongside any data. The Event endpoint also returns 200 on a successful submission regardless of data-level errors inside the payload.Inspect the 'errors' array in the body rather than relying on the HTTP status; for ingest, query the returned NrIntegrationError events to find data-level problems.
202AcceptedThe Metric endpoint returns 202 to confirm the payload was received and passed basic validation, returning a request identifier. Because validation is asynchronous, this does not guarantee every data point was ingested.Treat 202 as accepted, then query NrIntegrationError events by the returned request identifier to confirm there were no data-level problems.
403Authentication failureThe key is missing or invalid, or it is the wrong type or region for the endpoint, such as sending a User key to an ingest endpoint that needs a License key.Send the correct key type for the endpoint and region, in the right header.
413Payload too largeThe ingest POST is over the 1 MB (10^6 bytes) limit.Split the payload into smaller batches, or send it gzip-compressed to fit more data under the limit.
429Too many requestsA rate or concurrency limit was exceeded. NerdGraph returns 429 when a user is over 25 in-flight requests, and the ingest endpoints return 429 when over their per-minute caps.Honor the Retry-After header where present, and reduce concurrency or request rate before retrying.
Versioning & freshness

Version history.

NerdGraph is a single, continuously updated GraphQL API with no dated version to pin. New Relic ships changes through its release notes, and the dated timeline below records notable ones.

Version history

What changed, and when

Latest versionNerdGraph (GraphQL)
NerdGraph (GraphQL)Current version
Single continuously updated GraphQL API

NerdGraph is one GraphQL API with no dated version and no version header. The schema evolves additively, so new fields and operations are added without breaking existing queries, and fields are marked deprecated with notice before they are removed. New Relic ships changes through its release notes rather than minting version numbers.

What changed
  • Querying and configuration both run through one GraphQL endpoint, per region
  • No version header to pin; the schema grows additively
  • Deprecated fields are flagged in the schema before removal
2026-06-12Feature update
Synthetics NerdGraph reference refreshed

New Relic updated the Synthetics NerdGraph API reference pages for all monitor types, covering the create, update, and delete mutations for simple, scripted, and other monitors. It was published the week of 8 to 12 June 2026.

What changed
  • Refreshed the Synthetics NerdGraph examples for every monitor type
2026-05-15Feature update
Synthetics runtime upgrade flagged

The Synthetics NerdGraph examples were updated to recommend a newer scripting runtime, flagging an 18 November 2026 forced upgrade for older Node.js runtimes so that scripted monitors keep running. It was published the week of 11 to 15 May 2026.

What changed
  • Recommended a newer runtimeTypeVersion for scripted monitors
  • Flagged the 18 November 2026 forced upgrade for older Node.js runtimes
2025-03-01Requires migration
REST API v2 stops accepting old REST API keys

As of 1 March 2025, the older REST API v2 no longer accepts the legacy REST API keys, which had to be replaced with User API keys. NerdGraph is the recommended API and is in the process of replacing REST v2.

What changed
  • REST API v2 stopped accepting legacy REST API keys
  • User API keys became required for the remaining REST v2 use

There is no version header to set; the GraphQL schema evolves additively, and fields are deprecated with notice before removal.

New Relic docs release notes ↗
Questions

New Relic API, answered.

Which key do I need, a user key or a license key?+
It depends on the direction. To query data or change configuration through NerdGraph, the GraphQL API, an agent needs a user key, sent in the 'API-Key' header; a user key is tied to a person and reaches only what that person's role allows. To send telemetry in through the Metric, Event, Log, or Trace endpoints, an agent needs a license key, sent in the 'Api-Key' header; a license key only writes data into its own account and cannot query or configure anything. Browser and mobile monitoring data use their own separate keys.
Does New Relic have per-operation scopes like OAuth?+
No. NerdGraph has no granular per-operation scopes. A single user key can call any operation, and what it can actually read or change is decided by the user's account access and assigned role, so a read-only user is blocked from making configuration changes even though the operation exists. This means access control sits at the level of the key and the role, not the individual call, which is part of why a governing layer that scopes each agent's calls is useful.
What are the rate limits?+
NerdGraph caps concurrency, not request rate: 25 in-flight requests per user are guaranteed, tracked per user rather than per key, and going over returns HTTP 429. Running NRQL through any API is separately capped at 3,000 queries per account per minute. The ingest endpoints have their own per-minute caps, with the Metric and Event endpoints at 100,000 requests per minute per account and the Log endpoint at 300,000 requests per minute and 10 GB of uncompressed JSON per minute.
US or EU endpoint, which do I call?+
It depends on where the account's data is stored. NerdGraph answers at api.newrelic.com/graphql for US accounts and api.eu.newrelic.com/graphql for EU accounts. The ingest endpoints have matching regional hosts, such as metric-api.newrelic.com versus metric-api.eu.newrelic.com. A key only works against its own region, so calling the wrong region returns an authentication failure.
How does an ingest endpoint report errors?+
The ingest endpoints validate asynchronously, so a success code means the payload was received and passed basic checks, not that every data point was accepted. The Metric endpoint returns 202 and the Event endpoint returns 200 on success, each with a request identifier. Data-level problems found after the response surface as NrIntegrationError events inside the account, which can be queried with NRQL by that request identifier. Up-front failures return standard codes, such as 403 for a bad key and 413 for a payload over 1 MB.
How do I receive alerts instead of polling?+
New Relic pushes notifications through workflows. A workflow filters which alert issues to act on and sends to one or more destinations, and a webhook is one destination type, so New Relic posts a JSON payload to a registered URL when an issue is activated, acknowledged, or closed. Destinations, channels, and workflows can all be created through NerdGraph mutations such as aiNotificationsCreateDestination and aiWorkflowsCreateWorkflow, so an agent can set up its own push delivery rather than repeatedly querying for changes.
Does New Relic have an official MCP server?+
Yes. The New Relic AI Model Context Protocol server is a first-party server, in public preview, that lets an MCP-compatible agent reach New Relic in natural language, such as turning a question into a NRQL query, retrieving metrics and logs, and checking alert status. It answers at mcp.newrelic.com for US accounts and mcp.eu.newrelic.com for EU accounts, and authenticates with a user API key or OAuth, governed by the calling user's organization role.
Related

More developer API guides for agents

What is Bollard AI?

Control what every AI agent can do in New Relic.

Bollard AI sits between a team's AI agents and New Relic. Grant each agent exactly the access it needs, read or write, area by area, and every call is checked and logged.

  • Set read, write, or full access per agent, never a shared New Relic key.
  • Denied by default, so an agent reaches only what has been explicitly allowed.
  • Every call recorded in plain English: who, what, where, and the decision.
New Relic
Observability Agent
Run NRQL queries ActionOffReadFull use
Create dashboards ResourceOffReadFull use
Manage alert policies ResourceOffReadFull use
Per-agent access, set in Bollard AI, not in New Relic