appId argument that scopes the change
to a single app. You can find your app ID in your app’s settings
screen. Some mutations
are organization-scoped and take an organizationSlug argument instead, such as
createApp and createStatusPage.
This page covers the most common mutations. For the complete, auto-generated list
of every mutation and its arguments, see the GraphQL schema
reference.
Mutations change data in your account. Test against a non-production app before
you automate a mutation against production data.
Incidents
Update an incident
Change an incident’s state, severity, assignees, or notification settings. Thenumber is the incident number shown in AppSignal.
state accepts OPEN, WIP, or CLOSED. severity accepts UNTRIAGED,
CRITICAL, HIGH, LOW, NONE, or INFORMATIONAL.
Bulk update incidents
Update several incidents in one request. UnlikeupdateIncident, this mutation
takes incident IDs rather than incident numbers.
Create a note on an incident
Add a note to an incident’s logbook. The same fields are available on performance, anomaly, and log incidents.Create an issue from an incident
Create a linked issue in a connected integration. This example uses GitHub; equivalent mutations exist for other integrations:createGitlabIssue,
createJiraIssue, createLinearIssue, createShortcutStory, createAsanaTask,
and createTrelloCard.
Remove an integration from an incident
Remove a previously linked integration issue from an incident.Markers
Create or update a custom marker
Create a custom marker to annotate a point in time, such as a configuration change or a manual action. Pass anid to update an existing marker. Omit id
to create a new marker.
Delete a custom marker
Delete a custom marker by ID.Alerts and triggers
Create a trigger
Create a metric-based alert trigger.field accepts a value from
MetricFieldEnum (such as MEAN, P90, P95, COUNT, GAUGE, or
COUNTER). kind is a string describing the trigger type. The GraphQL source
docs name ExceptionRate and Throughput as examples. The condition sets the
threshold to compare against. To replace an existing trigger, pass its ID as
previousTriggerId.
comparisonOperator accepts LESS_THAN, GREATER_THAN, LESS_THAN_OR_EQUAL,
GREATER_THAN_OR_EQUAL, EQUAL, or NOT_EQUAL.
Archive a trigger
Archive a trigger so it no longer evaluates metrics or sends alerts.Archive an alert
Archive a single triggered alert. This mutation returnstrue on success.
Close the last alert for an anomaly incident
Close the most recent open alert for an anomaly incident, identified by its incident number.Uptime monitors
Create an uptime monitor
Create an uptime monitor from aUptimeMonitorInput. regions accepts one or
more of EUROPE, NORTH_AMERICA, ASIA_PACIFIC, or SOUTH_AMERICA.
Update an uptime monitor
Update an existing monitor. TheuptimeMonitor input takes the same shape as it
does when creating one.
Delete an uptime monitor
Delete a monitor by ID. This mutation returns the deleted monitor.Check-ins
Create a check-in trigger
Create a cron or heartbeat check-in trigger.kind accepts CRON or
HEARTBEAT. For a cron trigger, set syntax to the cron expression. Use UTC
for timezone where possible.
Update a check-in trigger
Update an existing check-in trigger. Only the fields you pass are changed.Delete a check-in trigger
Delete a check-in trigger by ID.Dashboards
Create a dashboard
Create an empty dashboard. Add visuals to it with thecreateVisualTimeseries
and createVisualNumber mutations, or import a complete dashboard with
importDashboard.
Dashboard visuals are also managed through createVisualTimeseries,
createVisualNumber, updateVisualTimeseries, updateVisualNumber,
updateVisualLayouts, and deleteVisual. To create a standalone saved visual
for later retrieval through the saved visuals REST endpoints,
use createSavedVisual.
Update a dashboard
Update a dashboard’s title or description. Thetitle is required.
Delete a dashboard
Delete a dashboard by ID.Import a dashboard
Import a dashboard from a JSON definition. Thejson argument is a
JSON-encoded string, so escape it when sending it as a variable.
Logs
Create a log trigger
Create a trigger that opens an incident when log lines match a query.severities
accepts log severity names such as error, warn, or info.
createLogSource,
updateLogSource, and deleteLogSource for sources; createLogView,
updateLogView, and deleteLogView for saved views; createLogLineAction,
updateLogLineAction, deleteLogLineAction, and reorderLogLineActions for
ingestion rules; updateLogTrigger and deleteLogTrigger for log triggers; and
createLogExport, updateLogExport, and deleteLogExport for S3 exports.
Organization-scoped mutations
Some mutations act on an organization rather than a single app, so they take anorganizationSlug argument instead of appId. You can find the slug in the URL
of your organization in AppSignal.
Create an app
Create a new app within an organization.Create a status page
Create a public status page from aCreateStatusPageInput. title and
hostname are required.
createStatusPageUpdate, updateStatusPage,
updateStatusPageUpdate, deleteStatusPage, and deleteStatusPageUpdate. For
CSV exports, use createCsvExport to start an export and createCsvExportUrl
to generate a download URL for a completed export.