> ## Documentation Index
> Fetch the complete documentation index at: https://docs.elementum.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Platform Status

> Stay informed about the current status of Elementum’s platform and services through our real-time status page

## What is the Status Page?

Our [Platform Status Page](https://status.elementum.io/) provides real-time information about the health and performance of all Elementum services. This page is your go-to resource for:

* **Current System Status**: See which services are operational, experiencing issues, or under maintenance
* **Historical Uptime**: View performance metrics over the past 90 days
* **Incident Updates**: Get detailed information about any ongoing issues or maintenance
* **Service Components**: Monitor individual service areas like Core, API, Automations, and Agents

## Why Monitor Platform Status?

### Proactive Issue Awareness

Instead of wondering if a problem is on your end or ours, check the status page first. This helps you:

* **Verify Service Health**: Confirm if Elementum services are running normally
* **Plan Around Maintenance**: Be aware of scheduled maintenance windows
* **Understand Impact**: Know which specific services might be affected during incidents
* **Reduce Support Tickets**: Check status before contacting support for system-wide issues

### Business Continuity

When you're experiencing issues, the status page helps you:

* **Assess Scope**: Determine if the problem is isolated to your instance or affecting all users
* **Communicate with Stakeholders**: Provide accurate information about service status
* **Plan Workarounds**: Understand which features might be temporarily unavailable
* **Track Resolution**: Monitor incident progress and estimated resolution times

## Available Services

The status page monitors these key service areas:

<CardGroup cols={2}>
  <Card title="Core Platform" icon="server">
    Main application functionality, user interface, and core features
  </Card>

  <Card title="API Services" icon="code">
    REST API endpoints and integration services
  </Card>

  <Card title="Automations" icon="bolt">
    Workflow automation engine and trigger systems
  </Card>

  <Card title="Agents" icon="robot">
    AI agent services and intelligence features
  </Card>
</CardGroup>

## Status Indicators

The status page uses clear visual indicators to communicate service health:

* **🟢 Operational**: Service is running normally with no issues
* **🟡 Degraded Performance**: Service is experiencing performance issues but remains functional
* **🟠 Partial Outage**: Some features or regions are experiencing issues
* **🔴 Major Outage**: Service is experiencing significant disruption
* **🔵 Maintenance**: Planned maintenance is in progress

## Subscribe to Notifications

Stay informed about platform status without constantly checking the status page. You can subscribe to receive email notifications for:

* **Incident Creation**: When a new issue is identified
* **Status Updates**: Progress updates during incident resolution
* **Resolution Notifications**: When issues are resolved
* **Maintenance Alerts**: Scheduled maintenance notifications

### How to Subscribe

1. Visit [status.elementum.io](https://status.elementum.io/)
2. Click **Get email notifications** at the top of the page
3. Enter your email address
4. Verify your email with the OTP sent to your inbox
5. You'll receive notifications for all future incidents and updates

<Callout type="info">
  **Privacy**: Your email is only used for status notifications. We don't share your information or send marketing emails.
</Callout>

## Programmatic Access via API

For developers and automated systems, you can programmatically access status information through our REST API endpoints. All endpoints return JSON data and don't require authentication.

<AccordionGroup>
  <Accordion defaultOpen title="Core Endpoints">
    **Summary** - Complete status overview

    ```
    GET https://status.elementum.io/api/v2/summary.json
    ```

    **Status** - Overall indicator (`none`, `minor`, `major`, `critical`) and description

    ```
    GET https://status.elementum.io/api/v2/status.json
    ```

    **Components** - Individual service statuses (`operational`, `degraded_performance`, `partial_outage`, `major_outage`)

    ```
    GET https://status.elementum.io/api/v2/components.json
    ```
  </Accordion>

  <Accordion title="Incidents">
    **Status**: `Investigating`, `Identified`, `Monitoring`, `Resolved`, `Postmortem`\
    **Impact**: `None`, `Minor`, `Major`, `Critical`

    ```
    GET https://status.elementum.io/api/v2/incidents/unresolved.json  # Current issues
    GET https://status.elementum.io/api/v2/incidents.json            # 50 most recent
    ```
  </Accordion>

  <Accordion title="Scheduled Maintenances">
    **Status**: `Scheduled`, `In Progress`, `Verifying`, `Completed`\
    **Impact**: `None`, `Minor`, `Major`, `Critical`

    ```
    GET https://status.elementum.io/api/v2/scheduled-maintenances/upcoming.json  # Planned
    GET https://status.elementum.io/api/v2/scheduled-maintenances/active.json    # In progress
    GET https://status.elementum.io/api/v2/scheduled-maintenances.json          # 50 most recent
    ```
  </Accordion>

  <Accordion title="Example Usage">
    ```javascript theme={null}
    // Check if all systems are operational
    fetch('https://status.elementum.io/api/v2/status.json')
      .then(response => response.json())
      .then(data => {
        console.log('Status:', data.status.description);
        console.log('Indicator:', data.status.indicator);
      });
    ```

    **For automated monitoring:** See the [Datadog Integration Setup](#benefits-of-datadog-integration) appendix below for complete instructions on setting up proactive monitoring with alerting.

    <Callout type="info">
      **API Notes**: Public endpoints, no authentication required. JSON responses with CORS headers, no rate limits.
    </Callout>
  </Accordion>
</AccordionGroup>

## Integration with Support

The status page works alongside our other support resources:

* **Check Status First**: Always verify platform status before contacting support
* **Reference in Tickets**: Include status page information when reporting issues
* **Follow Incident Updates**: Use status updates to track resolution progress
* **Escalate Appropriately**: Contact support if status shows operational but you're still experiencing issues

## Need Help?

If you have questions about the status page or need assistance with platform issues:

* **Email Support**: [support@elementum.elementum.io](mailto:support@elementum.elementum.io)

<Callout type="tip">
  **Pro Tip**: Bookmark [status.elementum.io](https://status.elementum.io/) in your browser for instant access to platform status information.
</Callout>

***

## Appendix: Datadog Integration Setup

Monitor Elementum's platform status programmatically using Datadog Synthetic tests. This setup automatically alerts your team when services experience issues, providing proactive incident awareness.

<AccordionGroup>
  <Accordion title="Option A: Simple Status Monitoring">
    **Goal**: Alert whenever the platform status indicator isn't `none` (i.e., any degraded/partial/outage condition).

    ### Create the Test

    1. Navigate to **Datadog** → **Synthetic Monitoring & Testing** → **New test** → **New API test** → **HTTP**
    2. Configure the request:
       * **Method**: `GET`
       * **URL**: `https://status.elementum.io/api/v2/status.json`

    ### Add Assertions

    After clicking **Send**, add these assertions:

    1. **Status code** → **is** → `200`
    2. **Header** `content-type` → **matches regex** → `application/json`
    3. **Body** → **JSONPath** → **Path**: `$.status.indicator` → **Operator**: **is** → **Value**: `none`

    <Info>
      The key assertion is `$.status.indicator is none`. When the indicator becomes `minor`, `major`, or `critical`, this assertion fails and triggers your alert.
    </Info>

    ### Configure Monitoring

    * **Locations**: Select 1-3 managed locations near your users
    * **Frequency**: Set to every 1-5 minutes based on your needs
    * **Alert conditions**: Configure "Alert if failing for 2 minutes in at least 2 locations" to avoid false positives

    ### Set Up Notifications

    Configure alerts to your preferred channels. Use Datadog's template variables to include failure details in your messages.
  </Accordion>

  <Accordion title="Option B: Enhanced Monitoring with Component Details">
    **Goal**: Include which specific components are affected in your alerts for better incident response.

    ### Step 1: Status Check

    * **Method**: `GET`
    * **URL**: `https://status.elementum.io/api/v2/status.json`
    * **Assertion**: `$.status.indicator is none` (same as Option A)

    ### Step 2: Component Analysis

    * **Method**: `GET`
    * **URL**: `https://status.elementum.io/api/v2/summary.json`
    * **Extract Variable**:
      * **Type**: JSONPath
      * **Path**: `$.components[?(@.status!='operational')].name`
      * **Variable Name**: `AFFECTED_COMPONENTS`

    <Tip>
      The `summary.json` endpoint provides comprehensive context including overall status, component statuses, and current incidents—perfect for detailed alert messages.
    </Tip>

    ### Use in Notifications

    Reference the `AFFECTED_COMPONENTS` variable in your notification templates to automatically include which services are impacted.
  </Accordion>

  <Accordion title="Option C: Severity-Based Alerting">
    **Goal**: Different alert priorities for different severity levels (degradation vs. outages).

    ### Approach 1: Single Test with Routing

    * Use the simple Option A setup
    * Route all alerts to a primary responder
    * Failure details will show the actual indicator value (`minor`/`major`/`critical`) for manual triage

    ### Approach 2: Multiple Tests for Precise Paging

    **Degradation/Partial Alert**:

    * **URL**: `https://status.elementum.io/api/v2/status.json`
    * **Assertion 1**: `$.status.indicator is none`
    * **Assertion 2**: `$.status.indicator is not critical`
    * **Result**: Alerts on `minor` or `major` but not `critical`

    **Critical Outage Alert**:

    * **URL**: `https://status.elementum.io/api/v2/status.json`
    * **Assertion**: `$.status.indicator is critical`
    * **Result**: Only alerts on critical outages for high-priority paging
  </Accordion>

  <Accordion title="Alternative: Agent-Based Checks">
    If you prefer using Datadog Agent checks over Synthetics, you can use the HTTP Check integration:

    ```yaml theme={null}
    # datadog.yaml configuration
    init_config:

    instances:
      - name: elementum_status
        url: https://status.elementum.io/api/v2/status.json
        method: get
        content_match: '"indicator":"none"'
        reverse_content_match: false
        timeout: 10
        headers:
          Accept: application/json
    ```

    This approach flips to DOWN when it finds `"indicator":"(minor|major|critical)"` in the response.
  </Accordion>
</AccordionGroup>

### Benefits of Datadog Integration

* **Rich Context**: Include affected components and severity in alerts
* **Integration Ready**: Works with your existing Datadog alerting workflows
* **Customizable**: Adapt alert severity and routing to your operational needs
