Skip to content

A status page connection lets Firefight read what your public status pages tell customers and, when you allow it, change them. You can connect Atlassian Statuspage and Instatus, and both sit under Status pages in Configure → Integrations.

Everything that changes a page is seen by your customers, so each of those tools needs a grant, follows your approval rules and asks before it runs in a chat. Halon never changes a status page while it investigates.

  1. In Statuspage, click your avatar, choose API info and create a key. Copy it straight away, since Statuspage shows it only once.
  2. In Firefight, open Configure → Integrations, click Connect on Statuspage and paste the key under API key.
  3. Click Connect. A wrong or expired key is refused on the form.

A Statuspage key belongs to your organization rather than a person, so the connection keeps working when someone leaves. It reaches every page in the organization. Statuspage has no read-only key, so every key can change your pages, and what Firefight may do with it is decided by the tools you switch on and the grants you give.

  1. In Instatus, open User settings → Developer settings and copy your API key.
  2. In Firefight, open Configure → Integrations, click Connect on Instatus and paste the key under API key.
  3. Click Connect. A wrong key is refused on the form.

An Instatus key belongs to the person who made it and reaches every page they can. Make it as a dedicated Instatus user, such as Firefight, so changes do not show as a teammate and the connection keeps working when someone leaves.

Name a page by its id or its name, and on Instatus by its subdomain too. When the key reaches only one page you never need to name it. Components are named the same way, by id or by name, so you can ask Halon to set “Checkout” to a major outage without looking up its id.

Every answer links to the page as your customers see it, at your own domain or the provider’s subdomain, and an incident or maintenance to its own page there.

StatuspageInstatus
list_pageslist_status_pages
list_components, with their groupslist_components, get_component
get_component_uptime
list_incidents (unresolved, maintenance under way, upcoming, scheduled or a search of all)list_incidents (open, resolved or all)
get_incident, with every updateget_incident, with every update
get_postmortem
list_maintenances, get_maintenance
list_incident_templateslist_templates
list_subscribers, count_subscribers, subscriber_histogram, list_unsubscribed, list_incident_subscriberslist_subscribers
list_metrics_providers, list_metricslist_metrics, get_metric
list_page_access_users, list_page_access_groups
get_status_embed
list_notices, list_outages, list_teammates
list_monitors, get_monitor_logs, list_monitor_alerts, list_cron_monitors, get_cron_monitor
list_workspaces, list_audience_groups
list_routing_rules, list_escalation_policies, who_is_on_call
ChangeStatuspageInstatus
Open an incidentcreate_incidentcreate_incident, create_incident_from_template
Post an update, such as monitoring or resolvedpost_incident_updatepost_incident_update
Rename an incident or change what it affectsupdate_incidentupdate_incident
Edit or delete an updateedit_incident_updateedit_incident_update, delete_incident_update
Delete an incidentdelete_incidentdelete_incident
Schedule maintenanceschedule_maintenanceschedule_maintenance
Move maintenance or post an update to itupdate_maintenance, post_incident_updateupdate_maintenance, post_maintenance_update
Edit or delete maintenanceedit_incident_update, delete_incidentedit_maintenance_update, delete_maintenance_update, delete_maintenance
Set a component’s status, or rename itupdate_componentupdate_component
Add or remove a componentcreate_component, delete_componentcreate_component, delete_component
Group componentscreate_component_group, update_component_group, delete_component_groupcreate_component and update_component with a group
Write and publish a postmortemdraft_postmortem, publish_postmortem, revert_postmortem, delete_postmortem
Save an incident templatecreate_incident_template
Manage subscribersadd_subscriber, update_subscriber, unsubscribe, resend_subscriber_confirmation, add_incident_subscriber, remove_incident_subscriberadd_subscriber, remove_subscriber
Manage many subscribers at once, up to 100 or allunsubscribe_subscribers, resend_confirmations, reactivate_subscribers
Change a page’s settings and how it looksupdate_page, with its template and colours, update_status_embedcreate_status_page, update_status_page, with its logo, colours, HTML and CSS, delete_status_page
Chart metrics on the pagecreate_metrics_provider, update_metrics_provider, delete_metrics_provider, create_metric, update_metric, delete_metric, add_metric_data, reset_metric_datacreate_metric, update_metric, delete_metric, add_metric_data, delete_metric_data
Decide who sees an audience-specific pagecreate_page_access_user, update_page_access_user, delete_page_access_user, change_page_access_user_access, create_page_access_group, update_page_access_group, change_page_access_group_components, delete_page_access_group
Show a general noticecreate_notice, update_notice, delete_notice
Record an outage on a component’s uptimecreate_outage, update_outage, delete_outage
Manage who runs the pageadd_teammate, remove_teammate
Run workspacescreate_workspace, delete_workspace
Decide who sees a private pagecreate_audience_group, update_audience_group, delete_audience_group
Connect a monitoring tool such as Pingdomcreate_monitoring_integration, update_monitoring_integration, delete_monitoring_integration
Route and escalate incidents to peoplecreate_routing_rule, update_routing_rule, delete_routing_rule, create_escalation_policy, update_escalation_policy, delete_escalation_policy
Plan who is on callcreate_on_call_schedule, update_on_call_schedule, delete_on_call_schedule
Monitor addresses and scheduled jobscreate_monitor, update_monitor, delete_monitor, run_monitor_check, create_monitor_alert, update_monitor_alert, delete_monitor_alert, create_monitor_group, update_monitor_group, add_monitors_to_group, delete_monitor_group, run_monitor_group_check, create_cron_monitor, update_cron_monitor, delete_cron_monitor

Every tool that posts something your subscribers could be told about asks whether to tell them, and has no default. Halon asks you which you want rather than choosing for you.

Some settings work as passwords, so Firefight never sends or shows them. Set these in Statuspage or Instatus itself.

SettingWhere
A Statuspage metrics provider that pulls from Datadog, New Relic, Librato or PingdomStatuspage, under the page’s system metrics
A monitor’s basic auth, or a header or query parameter that carries a credentialInstatus, on the monitor
A Slack, Discord, Teams, Google Chat or webhook monitor alertInstatus, under monitoring alerts
A cron monitor’s ping addressInstatus, on the cron monitor
A page’s SMS providerInstatus, in the page’s settings
A monitoring tool’s keys, and the address it sends toInstatus, on the integration, and the monitoring tool itself

Running a monitor’s check counts as a change, since a check that fails can open an incident on your page.

A workflow’s Status page update step offers the tools of your connected status pages that change something, such as post_incident_update or schedule_maintenance, and none that only read. Its values can come from earlier steps, such as the incident’s name. Like every step that changes something, it asks how a person puts the change back, such as posting that the incident is resolved. See Workflows.