Skip to main content

Instatus

Instatus is a hosted status page platform that enables engineering and operations teams to communicate the real-time health of their products and infrastructure to customers and stakeholders. With Instatus, teams can create public or private status pages, manage incidents and scheduled maintenances, update component statuses, notify subscribers via email and other channels, and track uptime metrics—all through an intuitive interface and a comprehensive REST API. Instatus is designed for simplicity and speed, making it easy for startups and enterprises alike to keep users informed during outages, incidents, and planned downtime.

Instatus icon

Power end-to-end data operations for your Instatus API with Nexla. Our bi-directional Instatus connector is purpose-built for Instatus, making it simple to ingest data, sync it across systems, and deliver it anywhere — all with no coding required. Nexla turns API-sourced data into ready-to-use, reusable data products and makes it easy to send data to Instatus or any other destination. With comprehensive monitoring, lineage tracking, and access controls, Nexla keeps your Instatus workflows fast, secure, and fully governed.

Features

Type: API

SourceDestination

  • Seamless API Integration: Connect to any endpoint as source or destination without coding, with automatic data product creation
  • Visual Composition & Chaining: Build complex integrations using visual templates, chain API calls, and compose workflows with data validation and filtering
  • API Proxy: Expose curated slices of your data securely with a secure and customizable API proxy that validates and transforms data on the fly
  • Request optimization with intelligent batching, retry, and caching to minimize API calls and costs

Prerequisites

To connect Nexla to Instatus, you will need an Instatus account and an Instatus API key. Instatus uses API key authentication with Bearer tokens—all API requests are authorized by including your API key in the Authorization header of each request.

Obtain Your Instatus API Key

Instatus API keys are generated from the Developer section of your Instatus account settings. Each API key provides full access to the Instatus API on behalf of your account, so it should be stored securely and not shared.

  1. Sign in to your Instatus account at instatus.com.

  2. Navigate to your account developer settings by going to instatus.com/app/developer, or by clicking your profile avatar in the upper right corner and selecting Developer Settings.

  3. On the Developer Settings page, locate the API Key section.

  4. Click Generate API Key (or copy your existing key if one has already been generated). Your API key will be displayed on screen.

Important

Copy your API key immediately and store it in a secure location such as a password manager or secrets vault. Instatus does not display the full key again after you leave the page. If you lose access to your key, you will need to regenerate it.

  1. Keep this API key available — you will enter it in the Nexla credential form in the steps below.

For additional information about the Instatus API and authentication, refer to the official Instatus API documentation.

Authenticate

Create a credential in Nexla

  1. After selecting the data source/destination type, click the Add Credential tile to open the Add New Credential overlay.

  2. Enter a name for the credential in the Credential Name field and a short, meaningful description in the Credential Description field.

  3. Enter your Instatus API key in the API Key field. This key authenticates Nexla with the Instatus API using Bearer token authentication — Nexla will include it automatically in the Authorization: Bearer <API_KEY> header of all requests made on behalf of this credential. This is the key you obtained in Prerequisites.

    Your Instatus API key grants full access to your Instatus account via the API. Treat it like a password — do not share it or include it in source code repositories. Nexla stores credentials securely and uses them only to make authorized API calls on your behalf.

  4. Click the Save button at the bottom of the overlay. The newly added credential will now appear in a tile on the Authenticate screen during data source/destination creation.

Use as a data source

To create a new data flow, navigate to the Integrate section, and click the New Data Flow button. Select the Instatus connector tile, then select the credential that will be used to connect to the Instatus instance, and click Next; or, create a new Instatus credential for use in this flow.

Endpoint templates

Nexla provides pre-built templates that can be used to rapidly configure data sources to ingest data from common Instatus endpoints. Select the endpoint from which this source will fetch data from the Endpoint pulldown menu. Available endpoint templates are listed in the expandable boxes below.

List Page Components

Returns all components for a specific status page. Use this endpoint to retrieve the individual service or system components displayed on an Instatus status page for monitoring or reporting.

  • Issues a GET request to https://api.instatus.com/v1/{'{page_id}'}/components. Returns a top-level JSON array of component objects.
  • Response data path: $[*] — each array element is one component record. Configure the Page ID parameter with the ID of your Instatus status page.

You can find your status page ID by first calling the Get Your Status Pages endpoint (GET /v2/pages) and copying the id value from the response.

List Incidents

Returns all incidents for a specific status page. Use this endpoint to ingest incident history for SLA reporting, post-mortem analysis, or integration with alerting and ITSM systems.

  • Issues a GET request to https://api.instatus.com/v1/{'{page_id}'}/incidents. Returns a top-level JSON array of incident objects.
  • Response data path: $[*] — each array element is one incident record. Configure the Page ID parameter with your status page ID.

This endpoint returns all incidents across all statuses (investigating, identified, monitoring, resolved). Use the Get Page Incidents endpoint if you need to filter by incident status.

List Incident Updates

Returns all status updates posted to a specific incident. Use this endpoint to ingest the full timeline of updates for an incident for detailed incident reporting or audit trails.

To iterate over updates for multiple incidents, use a Nexla lookup-based macro to pass incident IDs from a previous source into this endpoint's URL dynamically.

List Maintenances

Returns all scheduled maintenance events for a specific status page. Use this endpoint to ingest maintenance windows for change management reporting or calendar integration.

Maintenance events include both upcoming and completed windows. Use this endpoint to build a historical log of all maintenance activity on your status pages.

List Maintenance Updates

Returns all status updates posted to a specific maintenance event. Use this endpoint to retrieve the detailed update timeline for a maintenance window.

Use a lookup-based macro to dynamically pass maintenance IDs from a List Maintenances source to iterate over updates for all maintenance events in a single data flow.

List Templates

Returns all incident and maintenance update templates for a status page. Use this endpoint to export your pre-defined communication templates for documentation or replication across pages.

Templates define pre-written messages for common incident and maintenance update scenarios. Exporting them allows you to audit or replicate your communication standards across multiple status pages.

List Team Members

Returns all team members in the Instatus account. Use this endpoint to audit user access or export your team roster for HR and access management reporting.

  • Issues a GET request to https://api.instatus.com/v1/team. Returns a JSON object with a team array.
  • Response data path: $.team[*] — each element of the team array is one team member record.

This endpoint returns account-level team members, not page-specific subscribers. The response is a JSON object rather than a top-level array, so the path to data must be set to $.team[*].

List Subscribers

Returns all subscribers to a specific status page. Use this endpoint to export subscriber lists for analysis, backup, or migration to other notification systems.

Subscriber data may include email addresses and phone numbers. Ensure that any downstream handling of this data complies with applicable privacy regulations (e.g., GDPR, CAN-SPAM).

List Metrics

Returns all metrics tracked on a specific status page. Use this endpoint to ingest uptime and performance metric definitions for reporting or integration with monitoring dashboards.

This endpoint returns metric definitions and metadata, not the raw datapoints. Use it to inventory which metrics are tracked on each page before ingesting historical metric data.

Get Current User

Retrieves the profile information for the currently authenticated Instatus user. Use this endpoint to verify authentication or capture account metadata for auditing purposes.

  • Issues a GET request to https://api.instatus.com/v1/user. Returns a single JSON object representing the authenticated user's profile.
  • Response data path: $ — the entire response is treated as a single record.

This endpoint is useful as a connectivity test to verify that the configured Instatus credential is valid and active before running more complex data flows.

Get Public Status Data

Retrieves the public status summary for an Instatus status page in JSON format. Use this endpoint to ingest publicly available status page data without authentication for external monitoring integrations.

  • Issues a GET request to https://{subdomain}.instatus.com/summary.json. Returns a JSON object with the current page status, components, and active incidents.
  • Response data path: $ — the entire summary object is treated as a single record. Configure the Page Subdomain parameter with your status page subdomain.

This endpoint does not require an API key — it accesses the public summary data that visitors to your status page can see. It is useful for monitoring your own page's public status or aggregating status data from multiple pages.

Get Your Workspaces

Retrieves all workspaces for the authenticated Instatus user. Use this endpoint to inventory your Instatus workspace configuration or to retrieve workspace IDs for use in downstream operations.

Workspace IDs are used to scope certain Instatus API operations. Use this endpoint to retrieve workspace metadata before configuring workspace-scoped sources or destinations.

Get Your Status Pages

Retrieves all status pages in the Instatus account. Use this endpoint to inventory your status pages and retrieve page IDs needed to configure other page-scoped endpoints.

  • Issues a GET request to https://api.instatus.com/v2/pages. Returns a top-level JSON array of status page objects.
  • Response data path: $[*] — each array element is one status page record.

This is typically the first endpoint to call when setting up Instatus integrations — it returns the page IDs required by all other page-scoped endpoints such as List Incidents, List Components, and List Subscribers.

Get Page Incidents

Returns a paginated list of incidents on a specific status page with optional filtering by incident status. Use this endpoint when you need to retrieve only incidents in a particular state, such as all active or resolved incidents.

  • Issues a GET request to https://api.instatus.com/v1/{'{page_id}'}/incidents. Returns a JSON object with an incidents array.
  • Response data path: $.incidents[*] — each element of the incidents array is one incident record. Configure the Id (page ID) and optionally the Incident Status filter parameters.

Unlike the List Incidents endpoint, this endpoint wraps results in an incidents key and supports status filtering. Use the Incident Status parameter to filter by values such as INVESTIGATING, IDENTIFIED, MONITORING, or RESOLVED.

Get an Incident

Retrieves the full details of a single incident by its ID. Use this endpoint to fetch complete incident records including all update history and affected components.

Use a lookup-based macro to dynamically pass incident IDs from a List Incidents source to fetch full detail records for each incident in a chained data flow.

List Components

Returns a paginated list of all components on a specific status page. Use this endpoint when you need component data with pagination support for large component lists.

  • Issues a GET request to https://api.instatus.com/v1/{'{id}'}/components. Returns a JSON object with a components array.
  • Response data path: $.components[*] — each element of the components array is one component record. Configure the Id (page ID) parameter.

This endpoint uses the $.components[*] path, unlike the List Page Components endpoint which returns a top-level array. Confirm the correct path when configuring this source to ensure all component records are properly parsed.

Once the selected endpoint template has been configured, click the Test button to the right of the endpoint selection menu to retrieve a sample of the data that will be fetched. Sample data will be displayed in the Endpoint Test Result panel on the right, allowing you to verify that the source is configured correctly before saving.

Manual configuration

Instatus data sources can also be manually configured to ingest data from any valid Instatus API endpoint not covered by the pre-built templates, or to apply further customization. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, endpoint URL, date/time and lookup macros, path to data, metadata, and request headers.

The Instatus API base URL is https://api.instatus.com. Most list endpoints — including /v1/{page_id}/components, /v1/{page_id}/incidents, /v1/{page_id}/maintenances, /v1/{page_id}/subscribers, /v1/{page_id}/metrics, /v1/{page_id}/templates, /v1/workspaces, and /v2/pages — return a top-level JSON array, so the path to data is $[*]. A few endpoints return the data wrapped in an object instead, such as /v1/team (path $.team[*]) and the paginated List Components endpoint at /v1/{id}/components (path $.components[*]); single-record endpoints such as /v1/user or /v1/{page_id}/incidents/{incident_id} use $ to treat the entire response as one record. Replace {page_id} in the above paths with your status page ID, obtained by calling GET /v2/pages.

You do not need to add the Authorization header manually — Nexla automatically includes it as Authorization: Bearer <API_KEY> based on your Instatus credential.

Once all of the relevant settings have been configured, click the Create button in the upper right corner of the screen to save and create the new Instatus data source. Nexla will now begin ingesting data from the configured endpoint and will organize any data that it finds into one or more Nexsets.

Use as a destination

Click the + icon on the Nexset that will be sent to the Instatus destination, and select the Send to Destination option from the menu. Select the Instatus connector from the list of available destination connectors, then select the credential that will be used to connect to the Instatus organization, and click Next; or, create a new Instatus credential for use in this flow.

Endpoint templates

Nexla provides pre-built templates that can be used to rapidly configure destinations to send data to common Instatus endpoints. Select the endpoint to which data will be sent from the Endpoint pulldown menu. Then, click on the template in the list below to expand it, and follow the instructions to configure additional endpoint settings.

Create Status Page

Creates a new Instatus status page with specified configuration, branding, and notification settings. Use this endpoint to automate the provisioning of status pages from a data-driven workflow.

  • Issues a POST request to the Instatus pages API. The request body accepts page name, subdomain, component definitions, branding colors, notification settings, and custom HTML/CSS.
  • Required fields include Email, Page Name, and Subdomain. All other parameters are optional configuration.

The subdomain must be unique across Instatus. Ensure that the subdomain values in your Nexset do not conflict with existing pages before running this destination at scale.

Update Status Page

Updates an existing Instatus status page with new configuration, branding, or notification settings. Use this endpoint to programmatically apply changes to page settings from a Nexla data flow.

  • Issues a PUT request to the Instatus page endpoint. The Page ID parameter must be configured to identify which page to update.
  • Accepts all page configuration fields — only the fields included in the request body will be updated.

Use the Exclude Attributes option to omit any Nexset fields that are not valid Instatus page parameters, preventing API errors from unrecognized fields.

Create Component

Creates a new component on a specified Instatus status page. Use this endpoint to programmatically add service components to a status page from a Nexset of component definitions.

  • Issues a POST request to the components endpoint for the specified page. Configure the Id (page ID) parameter along with component name, description, status, and display settings.
  • Supported component status values include operational, degraded_performance, partial_outage, major_outage, and under_maintenance.

Components must be associated with a page. Ensure the Page ID parameter is set correctly, and that the component status value matches one of the accepted Instatus status strings.

Update Component

Updates the configuration and status of a specific component on a status page. Use this endpoint to automate component status updates — for example, changing a component to degraded or operational based on monitoring data flowing through Nexla.

  • Issues a PUT request to the specific component endpoint. Configure both the Id (page ID) and Component Id parameters to identify which component to update.
  • Only the fields included in the request body will be changed on the component record.

This is one of the most common Instatus destination patterns — feeding monitoring or alerting data into Nexla and using this endpoint to keep component statuses on your status page current in real time.

Add an Incident

Creates a new incident on the specified status page. Use this endpoint to automatically open incidents from alerting or monitoring data flowing through Nexla.

  • Issues a POST request to the incidents endpoint. Configure the Page Id parameter along with incident name, message, affected components, start time, and status.
  • Required fields include Page Id, Incident Name, and Message. Use the Notify parameter to control whether subscribers receive a notification.

Set the Status parameter to INVESTIGATING, IDENTIFIED, MONITORING, or RESOLVED to control the initial incident state. Use the Response Webhook option to capture the newly created incident ID for subsequent update operations.

Update Incident

Updates an existing incident with new details, status, or affected component information. Use this endpoint to progress an incident through its lifecycle from a Nexla data flow.

  • Issues a PUT request to the specific incident endpoint. Configure the Page Id and Incident Id parameters to identify the incident to update.
  • Accepts updated incident name, components, status, and notification flag. Only the supplied fields are updated.

Pair this endpoint with the Add an Incident Update endpoint to both update incident metadata and post a visible status message update at the same time.

Add an Incident with a Template

Creates a new incident using a predefined template for consistent, standardized incident creation. Use this endpoint when incident communications should follow a pre-approved template format.

  • Issues a POST request to the incidents endpoint using a template ID. Configure the Page Id parameter along with the template ID to use.
  • The template defines the incident message and structure — reducing the data fields required in the request body compared to a manual incident creation.

Use the List Templates source endpoint to retrieve available template IDs before configuring this destination. Templates ensure consistent incident communication standards across your team.

Add an Incident Update

Posts a new status update to an existing incident. Use this endpoint to automatically publish progress updates to an incident timeline from a Nexla data flow.

  • Issues a POST request to the incident updates endpoint. Configure the Page Id and Incident Id parameters along with the update message, status, and notification settings.
  • Each call creates a new timeline entry on the incident visible to subscribers and status page visitors.

Use the Notify parameter to control whether subscribers receive an email/SMS notification for each update. For high-frequency updates, consider setting Notify to false to avoid subscriber notification fatigue.

Create a Maintenance

Creates a new scheduled maintenance event on a status page. Use this endpoint to automate the creation of maintenance windows from change management or ITSM data flowing through Nexla.

  • Issues a POST request to the maintenances endpoint. Configure the Page Id parameter along with maintenance name, message, start/end times, affected components, and notification settings.
  • Supports auto-start and auto-end flags to automatically transition maintenance status at the scheduled start and end times.

Use the Notifystart and Notifyend parameters to control when subscriber notifications are sent. Set Auto-start and Auto-end to true to have Instatus automatically manage maintenance status transitions.

Update a Maintenance

Updates an existing maintenance event on a status page. Use this endpoint to modify maintenance window details, extend duration, or update affected components from a Nexla data flow.

  • Issues a PUT request to the specific maintenance endpoint. Configure both the Page Id and Maintenance Id parameters.
  • Accepts updated name, message, start/end times, status, and notification settings.

Use the Response Webhook option on the Create a Maintenance destination to capture maintenance IDs, which can then be used as input to this endpoint for subsequent updates in the same data flow.

Add a Metric

Creates a new metric on a status page. Use this endpoint to define a new uptime or performance metric that can track and display operational data on the status page.

  • Issues a POST request to the metrics endpoint. Configure the Page Id parameter along with the metric name and suffix (unit label, e.g., "ms" or "%").
  • After creation, use the Add Multiple Datapoints endpoint to populate the metric with data values.

Metrics must be created before datapoints can be added. Use this endpoint to provision new metrics, then use the Add Multiple Datapoints endpoint to write historical or real-time performance data.

Add Multiple Datapoints to a Metric

Adds multiple datapoints to an existing metric in a single request. Use this endpoint to bulk-upload performance or uptime data from Nexla into a status page metric.

  • Issues a POST request to the metric datapoints endpoint. Configure the Page Id and Metric Id parameters along with the Data array of timestamp/value pairs.
  • Each datapoint in the Data array should include a timestamp and a numeric value.

This endpoint accepts an array of datapoints per request, making it efficient for backfilling historical metric data or writing batches of recent observations from a monitoring pipeline.

Create a Monitor

Creates a new uptime monitor on a status page to track the availability and performance of a specified URL or endpoint. Use this endpoint to automate monitor provisioning from a list of services or URLs.

  • Issues a POST request to the monitors endpoint. Configure the Page ID parameter along with the URL to monitor and optional basic authentication credentials.
  • The monitor will periodically check the specified URL and report its availability on the status page.

Instatus monitors can check HTTP/HTTPS endpoints for availability. Provide the Basic Authentication parameter if the monitored endpoint requires credentials, in the format username:password.

Create a Workspace

Creates a new Instatus workspace with customizable notification and reporting settings. Use this endpoint to automate workspace provisioning as part of a multi-tenant or onboarding workflow.

  • Issues a POST request to the workspaces endpoint. Required fields include Workspace Name and Workspace Slug (unique identifier).
  • Optional settings control notification preferences for status updates, automation alerts, domain notifications, phone notifications, and weekly reports.

The workspace slug must be globally unique within Instatus. Verify slug values in your Nexset before running this destination to avoid creation failures from slug conflicts.

Manual configuration

Instatus destinations can also be manually configured to send data to any valid Instatus API endpoint — including creating incidents, updating component statuses, posting maintenance windows, or adding subscribers. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, data format, endpoint URL, request headers, attribute exclusions, record batching, and response webhooks.

The Instatus API base URL is https://api.instatus.com, and all request bodies must be sent as JSON. For update and delete operations, include the specific resource ID at the end of the URL (for example, https://api.instatus.com/v1/{page_id}/incidents/{incident_id}). The Authorization and Content-Type headers are added automatically based on your Instatus credential and the selected Content Format.

The Instatus bulk subscribers endpoint (/v1/{page_id}/subscribers/bulk) accepts a maximum of 100 subscribers per call — when using record batching with subscriber data, set the Batch Size to 100 or fewer to comply with this limit.

Save & activate

Once all endpoint settings have been configured, click the Done button in the upper right corner of the screen to save and create the destination. To send the data to the configured Instatus endpoint, open the destination resource menu, and select Activate.

The Nexset data will not be sent to the Instatus API until the destination is activated. Destinations can be activated immediately or at a later time, providing full control over data movement.