Third Party Index

Snapshot 30714

Document
Registry listing
URL
https://status.workos.com/index.json
Fetched
HTTP status
200
Content type
application/json; charset=utf-8
Fetch mode
api
Size
46693 bytes
SHA-256 (raw)
69f2b6ae659bcdb85395bbd5baa06388c4023cbad45816aa565e014aa6d3c568
SHA-256 (normalized text)
2d1dfc26d46e27e763257e8e86733cfde8f80277e26eee91a9f1c7de0aeb0edc

Normalized text

Scripts and page chrome removed; this is what change detection compares.

{
  "components": [
    {
      "components": [
        "5ns7gvd8lhw9",
        "403ts209pj59",
        "wcjdmvcpk2lb",
        "1tlfjhlvtmsv",
        "zvvh0jztjsc0"
      ],
      "created_at": "2023-07-20T18:21:41.401-04:00",
      "description": null,
      "group_id": null,
      "id": "ykdfgbgb2pd6",
      "name": "Core Services",
      "page_id": "87bp477d06pb",
      "position": 5,
      "showcase": false,
      "start_date": null,
      "status": "operational",
      "updated_at": "2023-07-20T18:21:41.401-04:00"
    },
    {
      "components": [
        "b7k00q2s2nww",
        "631tlxw53l5c"
      ],
      "created_at": "2023-07-20T18:22:07.591-04:00",
      "description": null,
      "group_id": null,
      "id": "scd65mtnm4zl",
      "name": "Supporting Services",
      "page_id": "87bp477d06pb",
      "position": 6,
      "showcase": false,
      "start_date": null,
      "status": "operational",
      "updated_at": "2023-07-20T18:22:07.591-04:00"
    }
  ],
  "incidents": [
    {
      "components": [
        {
          "created_at": "2023-07-20T18:23:19.669-04:00",
          "description": null,
          "group_id": "ykdfgbgb2pd6",
          "id": "wcjdmvcpk2lb",
          "name": "Audit Logs",
          "page_id": "87bp477d06pb",
          "position": 3,
          "showcase": true,
          "start_date": "2023-04-01T00:00:00.000-04:00",
          "status": "operational",
          "updated_at": "2026-10-01T17:58:26.241-04:00"
        }
      ],
      "created_at": "2026-10-01T17:16:26.171-04:00",
      "id": "ln42l2xgt63z",
      "impact": "minor",
      "impact_override": "minor",
      "incident_updates": [
        {
          "affected_components": [
            {
              "code": "wcjdmvcpk2lb",
              "name": "Core Services - Audit Logs",
              "new_status": "operational",
              "old_status": "partial_outage"
            }
          ],
          "body": "This incident has been resolved.",
          "created_at": "2026-10-01T17:58:26.279-04:00",
          "custom_tweet": null,
          "deliver_notifications": true,
          "display_at": "2026-10-01T17:58:26.279-04:00",
          "id": "0k46zhb58zgh",
          "incident_id": "ln42l2xgt63z",
          "status": "resolved",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-10-01T17:58:26.279-04:00",
          "wants_twitter_update": false
        },
        {
          "affected_components": [
            {
              "code": "wcjdmvcpk2lb",
              "name": "Core Services - Audit Logs",
              "new_status": "partial_outage",
              "old_status": "partial_outage"
            }
          ],
          "body": "Between 20:39 and 20:41 UTC on October 1, 2026, the Audit Logs API returned elevated errors (HTTP 500 and 408 timeouts) for roughly one minute. Some requests to create audit log events, and a small number of export requests, failed in this window. Requests have succeeded normally since 20:41 UTC. Other WorkOS products were not affected.\n\nThe incident was triggered by an infrastructure change that increased the number of connections to the database. We have found the cause and are putting a fix in place to prevent it from happening again. If your integration does not retry failed requests, events sent between 20:39 and 20:41 UTC may not have been recorded. We will keep monitoring and post an update once the fix is complete.",
          "created_at": "2026-10-01T17:20:28.415-04:00",
          "custom_tweet": null,
          "deliver_notifications": true,
          "display_at": "2026-10-01T17:20:28.000-04:00",
          "id": "zmbmyjd55dfb",
          "incident_id": "ln42l2xgt63z",
          "status": "monitoring",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-10-01T17:22:32.893-04:00",
          "wants_twitter_update": false
        },
        {
          "affected_components": [
            {
              "code": "wcjdmvcpk2lb",
              "name": "Core Services - Audit Logs",
              "new_status": "partial_outage",
              "old_status": "operational"
            }
          ],
          "body": "We are currently investigating this issue.",
          "created_at": "2026-10-01T17:16:26.438-04:00",
          "custom_tweet": null,
          "deliver_notifications": true,
          "display_at": "2026-10-01T17:16:26.438-04:00",
          "id": "0fkgrsp63hzy",
          "incident_id": "ln42l2xgt63z",
          "status": "investigating",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-10-01T17:16:26.438-04:00",
          "wants_twitter_update": false
        }
      ],
      "metadata": {},
      "monitoring_at": "2026-10-01T17:20:28.000-04:00",
      "name": "Elevated errors for Audit Logs",
      "page_id": "87bp477d06pb",
      "postmortem_body": null,
      "postmortem_body_last_updated_at": null,
      "postmortem_ignored": false,
      "postmortem_notified_subscribers": false,
      "postmortem_notified_twitter": false,
      "postmortem_published_at": null,
      "reminder_intervals": null,
      "resolved_at": "2026-10-01T17:58:26.279-04:00",
      "scheduled_auto_completed": false,
      "scheduled_auto_in_progress": false,
      "scheduled_for": null,
      "scheduled_remind_prior": false,
      "scheduled_reminded_at": null,
      "scheduled_until": null,
      "shortlink": "https://stspg.io/xblndsvz25dl",
      "started_at": "2026-10-01T17:16:26.161-04:00",
      "status": "resolved",
      "updated_at": "2026-10-01T17:58:26.302-04:00"
    },
    {
      "components": [],
      "created_at": "2026-09-18T18:49:26.512-04:00",
      "id": "phs2prf38d75",
      "impact": "major",
      "impact_override": "major",
      "incident_updates": [
        {
          "affected_components": null,
          "body": "Our remediations continue to be effective, and services continue to be recovered. We will continue further investigation and additional preventative measures.",
          "created_at": "2026-09-18T19:29:21.363-04:00",
          "custom_tweet": null,
          "deliver_notifications": true,
          "display_at": "2026-09-18T19:29:21.363-04:00",
          "id": "8m2sgzn6nbvg",
          "incident_id": "phs2prf38d75",
          "status": "resolved",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-09-18T19:29:21.363-04:00",
          "wants_twitter_update": false
        },
        {
          "affected_components": null,
          "body": "Our initial remediations are in place, and services have recovered. We're continuing to monitor closely.",
          "created_at": "2026-09-18T19:09:25.481-04:00",
          "custom_tweet": null,
          "deliver_notifications": true,
          "display_at": "2026-09-18T19:09:25.481-04:00",
          "id": "4xx61t0z5h31",
          "incident_id": "phs2prf38d75",
          "status": "monitoring",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-09-18T19:09:25.481-04:00",
          "wants_twitter_update": false
        },
        {
          "affected_components": null,
          "body": "We've identified the root cause, and we're seeing services are beginning to recover. We'll continue to monitor closely and share updates.",
          "created_at": "2026-09-18T19:05:43.774-04:00",
          "custom_tweet": null,
          "deliver_notifications": true,
          "display_at": "2026-09-18T19:05:43.774-04:00",
          "id": "cz5glqqrtc44",
          "incident_id": "phs2prf38d75",
          "status": "identified",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-09-18T19:05:43.774-04:00",
          "wants_twitter_update": false
        },
        {
          "affected_components": null,
          "body": "We're continuing to investigate this issue to identify the root cause. We'll share another update soon.",
          "created_at": "2026-09-18T19:01:02.946-04:00",
          "custom_tweet": null,
          "deliver_notifications": true,
          "display_at": "2026-09-18T19:01:02.946-04:00",
          "id": "h0xp3rq8pn5g",
          "incident_id": "phs2prf38d75",
          "status": "investigating",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-09-18T19:01:02.946-04:00",
          "wants_twitter_update": false
        },
        {
          "affected_components": null,
          "body": "We are investigating an issue with our API.\n\nWe apologize for the inconvenience and will share an update once we have more information.",
          "created_at": "2026-09-18T18:49:26.553-04:00",
          "custom_tweet": null,
          "deliver_notifications": true,
          "display_at": "2026-09-18T18:49:26.553-04:00",
          "id": "gcbxm31ncklk",
          "incident_id": "phs2prf38d75",
          "status": "investigating",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-09-18T18:49:26.553-04:00",
          "wants_twitter_update": false
        }
      ],
      "metadata": {},
      "monitoring_at": "2026-09-18T19:09:25.481-04:00",
      "name": "Elevated API Errors",
      "page_id": "87bp477d06pb",
      "postmortem_body": "# Elevated API Errors\n\n**Date:** 09/18/2026\n\n**Duration:** 22:40–23:03 UTC \\(23 minutes\\)\n\n**Status:** Resolved\n\n## Summary\n\nOn September 18, 2026, from 22:40 to 23:03 UTC, WorkOS experienced an outage affecting authentication and other API requests. Customers encountered failed sign-ins, API errors, timeouts, and long delays. Authentication was most severely affected.\n\nAn infrastructure failover in the cache supporting our feature-flag system exposed weaknesses in application connection recovery and fallback behavior. Some connections remained stalled after the cache was available again, delaying requests and exhausting database connection pools. Service recovered by 23:03 UTC. We subsequently deployed changes to improve connection recovery. We’re sorry for the disruption this caused you and your users.\n\n## Background\n\nWorkOS uses feature flags to control application behavior. The affected backend services read flag data from a shared Redis datastore populated by LaunchDarkly Relay. Each application also keeps a local cache, with a 30-second expiration. While an entry is valid, the application can evaluate it locally; after it expires, the application reads Redis.\n\nThe Redis cluster already had a primary and replica in separate AWS availability zones, with automatic failover enabled. This redundancy allowed AWS to promote a replacement primary. Applications still needed to detect failed connections and reconnect to that primary.\n\n## What Happened\n\n### Affected products\n\nSome requests experienced errors or delays across the following products:\n\n* **AuthKit:** Sign-in, token requests, user-management operations, and hosted authentication pages.\n* **Single Sign-On \\(SSO\\):** Authorization and SAML callback requests.\n* **WorkOS API:** Selected operations, including organization requests, API-key validation, and connection requests.\n* **Dashboard:** Some operations that relied on the affected APIs.\n* **Admin Portal:** Portal link generation and monitored setup requests.\n* **Directory Sync:** SCIM OAuth token requests, plus delays and client disconnects in Directory Sync API traffic.\n* **Audit Logs:** Management operations, particularly action-schema creation.\n\n### Customer impact\n\nCustomer impact lasted from **22:40 to 23:03 UTC**. Across our public edge, **24.1% of recorded requests returned server errors**, and **17.2% ended with the client disconnecting**. The table breaks down request groups by product.\n\n| Product | Server errors \\(HTTP 5xx\\) | Client disconnects \\(HTTP 499\\) |\n| --- | --- | --- |\n| AuthKit, User Management and organization APIs | 37.22% | 24.59% |\n| Hosted AuthKit \\(default-domain proxy\\) | 7.27% | 13.77% |\n| SSO and connection APIs | 2.22% | 2.31% |\n| Dashboard | 27.10% | 8.08% |\n| Admin Portal | 24.61% | 7.47% |\n| Directory Sync APIs | 0.08% | 2.80% |\n| Audit Logs management APIs | 22.82% | 3.55% |\n| Audit Logs event capture | 0.0006% | 0.11% |\n\n#### Latency Samples\n\n* **Authenticate POST requests:** At the peak, one-minute median latency reached approximately 32 seconds and p95 latency reached approximately 45 seconds, compared with roughly 65 ms and 140 ms before the incident.\n* **Directory Sync:** Peak one-minute p95 latency for selected SCIM user-creation and PATCH-update operations reached approximately 22 seconds, compared with roughly 65 ms before the incident.\n\n### Root cause and contributing factors\n\nAround 22:40 UTC, the Redis primary became unavailable to application clients. AWS ElastiCache promoted its replica, completing the failover at 22:40:17 UTC. New connections could reach the promoted node, but some existing application connections remained stalled.\n\nThree application behaviors prolonged and amplified the interruption:\n\n1. **Flag-call timeouts did not recover stalled connections.** An application-level deadline returned a fallback value after two seconds, but it did not cancel the underlying Redis command or replace the connection. Additional reads accumulated while clients waited to detect the connection failure. Some commands remained pending for approximately 16 minutes.\n2. **External waits held database connections open.** Some flag checks occurred inside database transactions. Repeated waits of several seconds kept pooled database connections occupied and, in some cases, held row locks. Available connections were consumed, causing other requests to queue and fail. Database compute capacity was not the limiting factor.\n3. **A fallback selected an incompatible decryption path.** A flag used during a decryption-service migration defaulted to the old behavior when flag evaluation failed. That sent some encrypted values to a legacy service that could not decrypt them, causing additional authentication failures.\n\nThe local cache reduced normal Redis traffic, but expired entries still depended on Redis. Our two-second deadline limited how long a flag caller waited; it did not provide prompt recovery of a stale, established connection. This was a gap in our resiliency safeguards.\n\n### Recovery and communication\n\nResponders restarted affected application instances, which triggered reconnection to the healthy Redis instance. As connections recovered and queued work drained, error rates and latency returned to normal.\n\nWe also identified a notification gap: the initial status page update did not select the affected service components. Customers subscribed only to those components therefore did not receive the incident notification.\n\n## Timeline\n\nAll times are UTC.\n\n* **September 18, 22:40** — Customer-facing errors and latency increase. AWS completes promotion of the Redis replica at 22:40:17.\n* **22:44** — Engineers declare an incident following automated alerts.\n* **22:49** — The public status-page incident is opened.\n* **22:53** — Investigation identifies stalled feature-flag Redis clients and database connection starvation.\n* **22:55–23:03** — Responders restart affected application instances, existing clients begin reconnecting, and queued work drains. Recovery progresses across services.\n* **23:03** — Customer-facing error rates and latency return to normal.\n* **23:29** — The status-page incident is marked resolved after monitoring.\n* **September 19, 01:44** — A Redis-client recovery fix is deployed to production after validation with controlled failure and failover tests in staging.\n\n## Remediation\n\n### Immediate Fixes\n\nCompleted:\n\n* **Restored service:** Restarted affected application instances and monitored recovery as clients reconnected and database queues drained.\n* **Bounded Redis failures:** Deployed a Redis-client change to detect stalled established connections, bound failed operations, and reconnect more promptly.\n* **Corrected the decryption fallback:** Changed the migration flag’s fallback to behavior compatible with both current and legacy ciphertext formats.\n* **Validated the recovery fix:** Tested stalled-client behavior and an ElastiCache failover in staging before deploying the connection changes to production.\n\n### Near-term Improvements\n\nThe following work remains open:\n\n* Extend bounded connection recovery to other Redis clients and verify their behavior during failover \\(in progress\\).\n* Remove feature-flag and decryption-service network waits from authentication database transactions \\(in progress\\).\n* Complete the legacy decryption migration and retire its obsolete flag and fallback paths.\n* Audit feature-flag defaults against stable production behavior and retire flags whose migrations are complete.\n* Evaluate and pilot streaming flag updates into application memory, reducing the need to contact Redis while serving requests.\n\n### Preventive Measures\n\nOur follow-up work includes:\n\n* Improving visibility into flag-evaluation timeouts, fallback use, and connection recovery.\n* Adding checks for external network waits inside database transactions.\n* Requiring affected service components to be selected when opening a status-page incident, so component-specific subscribers receive notifications.\n\n## Conclusion\n\nWe recognize the impact this incident had on you and your customers. We’re sorry for the interruption and for the notification gap. We have deployed the immediate connection-recovery and fallback fixes. We will track the remaining corrective work through completion and update this analysis as unresolved findings are confirmed.",
      "postmortem_body_last_updated_at": "2026-09-21T20:53:48.890-04:00",
      "postmortem_ignored": false,
      "postmortem_notified_subscribers": false,
      "postmortem_notified_twitter": false,
      "postmortem_published_at": "2026-09-21T20:53:48.890-04:00",
      "reminder_intervals": null,
      "resolved_at": "2026-09-18T19:29:21.363-04:00",
      "scheduled_auto_completed": false,
      "scheduled_auto_in_progress": false,
      "scheduled_for": null,
      "scheduled_remind_prior": false,
      "scheduled_reminded_at": null,
      "scheduled_until": null,
      "shortlink": "https://stspg.io/9z518xkc2w39",
      "started_at": "2026-09-18T18:49:26.504-04:00",
      "status": "resolved",
      "updated_at": "2026-09-21T20:53:48.911-04:00"
    },
    {
      "components": [
        {
          "created_at": "2020-10-13T14:43:18.864-04:00",
          "description": null,
          "group_id": "scd65mtnm4zl",
          "id": "631tlxw53l5c",
          "name": "Admin Portal",
          "page_id": "87bp477d06pb",
          "position": 2,
          "showcase": true,
          "start_date": "2020-09-15T00:00:00.000-04:00",
          "status": "operational",
          "updated_at": "2026-09-22T09:30:42.938-04:00"
        }
      ],
      "created_at": "2026-09-14T15:08:47.716-04:00",
      "id": "9k9qkbn16cgp",
      "impact": "major",
      "impact_override": "major",
      "incident_updates": [
        {
          "affected_components": [
            {
              "code": "631tlxw53l5c",
              "name": "Supporting Services - Admin Portal",
              "new_status": "operational",
              "old_status": "partial_outage"
            }
          ],
          "body": "We've resolved an issue loading Admin Portal links for customers without custom domains. If you're still experiencing issues please contact support.",
          "created_at": "2026-09-14T16:00:21.293-04:00",
          "custom_tweet": null,
          "deliver_notifications": false,
          "display_at": "2026-09-14T16:00:21.293-04:00",
          "id": "5wmqpv2bfzlb",
          "incident_id": "9k9qkbn16cgp",
          "status": "resolved",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-09-14T16:00:21.293-04:00",
          "wants_twitter_update": false
        },
        {
          "affected_components": [
            {
              "code": "631tlxw53l5c",
              "name": "Supporting Services - Admin Portal",
              "new_status": "partial_outage",
              "old_status": "partial_outage"
            }
          ],
          "body": "We've fixed an issue affecting Admin Portal links for customers without custom domains and are monitoring.",
          "created_at": "2026-09-14T15:16:33.657-04:00",
          "custom_tweet": null,
          "deliver_notifications": false,
          "display_at": "2026-09-14T15:16:33.657-04:00",
          "id": "c9hz4nxxb81t",
          "incident_id": "9k9qkbn16cgp",
          "status": "monitoring",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-09-14T15:16:33.657-04:00",
          "wants_twitter_update": false
        },
        {
          "affected_components": [
            {
              "code": "631tlxw53l5c",
              "name": "Supporting Services - Admin Portal",
              "new_status": "partial_outage",
              "old_status": "operational"
            }
          ],
          "body": "We are investigating an issue loading Admin Portal links for customers without custom domains. We will share more information as soon as it's available.",
          "created_at": "2026-09-14T15:08:47.796-04:00",
          "custom_tweet": null,
          "deliver_notifications": false,
          "display_at": "2026-09-14T15:08:47.796-04:00",
          "id": "8wg50hds10d3",
          "incident_id": "9k9qkbn16cgp",
          "status": "investigating",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-09-14T15:08:47.796-04:00",
          "wants_twitter_update": false
        }
      ],
      "metadata": {},
      "monitoring_at": "2026-09-14T15:16:33.657-04:00",
      "name": "Elevated Admin Portal Errors",
      "page_id": "87bp477d06pb",
      "postmortem_body": null,
      "postmortem_body_last_updated_at": null,
      "postmortem_ignored": false,
      "postmortem_notified_subscribers": false,
      "postmortem_notified_twitter": false,
      "postmortem_published_at": null,
      "reminder_intervals": null,
      "resolved_at": "2026-09-14T16:00:21.293-04:00",
      "scheduled_auto_completed": false,
      "scheduled_auto_in_progress": false,
      "scheduled_for": null,
      "scheduled_remind_prior": false,
      "scheduled_reminded_at": null,
      "scheduled_until": null,
      "shortlink": "https://stspg.io/396gdks9z81c",
      "started_at": "2026-09-14T15:08:47.703-04:00",
      "status": "resolved",
      "updated_at": "2026-09-14T16:00:21.313-04:00"
    },
    {
      "components": [
        {
          "created_at": "2024-01-29T16:54:59.140-05:00",
          "description": null,
          "group_id": "ykdfgbgb2pd6",
          "id": "1tlfjhlvtmsv",
          "name": "AuthKit",
          "page_id": "87bp477d06pb",
          "position": 4,
          "showcase": true,
          "start_date": "2023-11-28T00:00:00.000-05:00",
          "status": "operational",
          "updated_at": "2026-09-22T09:29:52.073-04:00"
        }
      ],
      "created_at": "2026-09-09T17:00:46.000-04:00",
      "id": "6w5138xnf2fm",
      "impact": "major",
      "impact_override": null,
      "incident_updates": [
        {
          "affected_components": [
            {
              "code": "1tlfjhlvtmsv",
              "name": "Core Services - AuthKit",
              "new_status": "operational",
              "old_status": "partial_outage"
            }
          ],
          "body": "We have identified the source of the problem. A configuration change that applied to roughly 2% of organizations using a custom domain for hosted Authkit resulted in form submission errors. The configuration has been reverted and service restored.",
          "created_at": "2026-09-09T19:02:23.175-04:00",
          "custom_tweet": null,
          "deliver_notifications": true,
          "display_at": "2026-09-09T19:02:23.175-04:00",
          "id": "q9qmb0vghngq",
          "incident_id": "6w5138xnf2fm",
          "status": "resolved",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-09-09T19:02:23.175-04:00",
          "wants_twitter_update": false
        },
        {
          "affected_components": [
            {
              "code": "1tlfjhlvtmsv",
              "name": "Core Services - AuthKit",
              "new_status": "partial_outage",
              "old_status": "operational"
            }
          ],
          "body": "We are seeing an elevated error rate for some customers for POST requests. This appears to be limited to a small subset of organizations using custom domains for hosted Authkit",
          "created_at": "2026-09-09T19:00:46.905-04:00",
          "custom_tweet": null,
          "deliver_notifications": true,
          "display_at": "2026-09-09T17:00:46.000-04:00",
          "id": "1nj2wcvzdcjd",
          "incident_id": "6w5138xnf2fm",
          "status": "investigating",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-09-09T19:00:55.759-04:00",
          "wants_twitter_update": false
        }
      ],
      "metadata": {},
      "monitoring_at": null,
      "name": "Form POST failures for some Authkit customers",
      "page_id": "87bp477d06pb",
      "postmortem_body": "We're sorry for the disruption this incident caused for you and your users. Authentication is a critical path, and during this window we did not meet the reliability standard you expect from WorkOS. We take responsibility for the impact. Service was restored the same day, and we have already shipped several lasting fixes while continuing broader cleanup and detection work.\n\n# Postmortem: AuthKit custom domain sign-in failures\n\n**Date:** September 9, 2026\n\n**Duration:** 21:09 – 22:30 UTC \\(~80 minutes of customer impact\\)\n\n**Status:** Resolved\n\n## Summary\n\nOn September 9, 2026, from approximately **21:09 to 22:30 UTC**, a small subset of customers using **AuthKit custom domains** experienced failures when submitting authentication forms \\(sign-in, sign-up, MFA verification, device authorization, and email verification\\). Users on affected domains saw **HTTP 500** errors on those form submissions, which blocked interactive login for the duration of the incident.\n\nThis was a **partial outage**. It affected a small cohort of AuthKit custom domains provisioned through an earlier self-serve configuration path—**about 0.17%** of AuthKit custom-domain traffic was actually affected by the failure. Default AuthKit domains \\(`*.authkit.app`\\), the WorkOS API, the Dashboard, and **GET** requests \\(page loads and most OAuth callback traffic\\) on custom domains continued to work. The failure mode was specific to **server-action POST** requests used by AuthKit hosted UI forms.\n\nWe first learned of the issue from a customer report at approximately **22:04 UTC** \\(~55 minutes after impact began\\). Engineering restored service by **22:30 UTC**. No evidence of unauthorized access, data exposure, or data corruption was found.\n\n## Background\n\nAuthKit can be hosted on a customer’s own hostname \\(a **custom domain**\\). Traffic for those hostnames is terminated at our edge and forwarded to the AuthKit application with HTTP headers that identify the original host and browser origin. The AuthKit application relies on those headers so that browser security checks for interactive form submissions \\(Next.js server actions\\) succeed.\n\nOver time, WorkOS evolved how custom-domain traffic is routed at the edge—from earlier **per-domain** configuration toward shared, list-based edge rules and a newer application hosting path. During that migration, a set of **legacy per-domain header rules** remained in place for domains created in an earlier era. A later **zone-wide** edge rule normally overwrote those headers so the application always saw a consistent, CSRF-safe origin. While that zone-wide rule was enabled, the older per-domain rules appeared inert.\n\n## What happened\n\nAs part of decommissioning older edge configuration no longer needed for the current hosting path, the zone-wide header transform rule was **disabled** in production. That change unmasked the leftover per-domain rules for the older custom-domain cohort.\n\nFor those domains, the edge continued to rewrite the browser `Origin` header to the tenant’s default AuthKit hostname, while the application still received the customer’s custom hostname as the forwarded host. AuthKit’s application layer correctly rejected the mismatched server-action POSTs as invalid \\(CSRF / same-origin protection\\), returning HTTP 500 before application business logic ran.\n\n**Scope**\n\n* Structurally exposed: AuthKit custom domains still carrying the legacy per-domain header configuration \\(on the order of a few dozen hostnames\\).\n* Observed traffic impact: a subset of those domains that received form POST traffic during the window \\(about sixteen hostnames with material volume\\).\n* Scale: roughly **2%** of AuthKit custom-domain traffic comes from potentially affected domains; **~3,100** failed server-action POSTs over the ~80-minute window. For affected domains, failure rates on form POSTs were often near **100%**.\n\n**Symptoms**\n\n* Users on affected custom domains could not complete interactive AuthKit forms \\(sign-in and related flows\\).\n* Default AuthKit hostnames and non-form traffic paths remained healthy.\n\n**What went wrong**\n\nThe proximate trigger was disabling a shared edge header rule that had been **silently correcting** residual per-domain header rewrites left over from an earlier custom-domain design. The durable underlying condition was incomplete cleanup of that legacy configuration after the supported path moved to list-based rules—and the absence of automated detection for this failure shape.\n\n**Why it wasn’t caught sooner**\n\nSeveral detection gaps stacked:\n\n1. Pre-change validation and canaries primarily covered **newer** custom domains \\(and often **GET** probes\\). This failure only appears on **server-action POSTs** for the legacy cohort, with no representation of this configuration in our validation environment.\n2. Aggregate AuthKit error rates stayed relatively low because only a small share of traffic was affected, so fleet-wide thresholds did not page.\n\nAs a result, detection depended on customer reports rather than an automated page.\n\n## Remediation\n\n### Completed since the incident\n\n* **Worker safety net** — Added application-edge protection that detects and drops stale per-domain origin values so legacy rules can be retired without recreating this mismatch, even if rule order differs.\n* **Staging validation path** — Reproduced the legacy custom-domain configuration in staging so further edge cleanup can be proven safe before production changes.\n\n### In progress / planned\n\n* **Remove legacy per-domain edge rules** for AuthKit custom domains after staged validation, so shared transform rules are no longer load-bearing masks.\n* **Inventory residual edge configuration** tied to custom domains \\(including orphaned rules\\) so leftover resources have clear ownership and review.\n* **Per-customer / concentrated-failure detection** so a small set of fully down tenants is visible even when fleet-wide error rates look healthy.\n* **Stronger change gates** for catch-all / list edge-rule changes: same-phase inventory of earlier rules that can match the same hosts, and canaries that include **legacy-era domains** and **server-action POST** probes—not only GET checks on newer domains.\n* **Improved change visibility** for production edge-rule state \\(today some zone rules are dashboard-managed without a PR trail\\).\n\nWe treat restoring the shared transform as necessary containment, not the durable end state. The combination of residue removal, better probes, and better detection is intended to prevent both recurrence of this exact mechanism and silent customer-total failures on a small hostname set.\n\n## Closing\n\nA configuration cleanup on the AuthKit custom-domain edge path exposed leftover rules from an earlier design and blocked interactive sign-in for a limited set of custom domains for about eighty minutes. We restored service quickly once the issue was identified, and we are following through so legacy edge residue cannot remain load-bearing, so validation covers the domains and request types that actually break, and so concentrated authentication failures are visible to us before they are visible only to your users.\n\nWe regret the impact on affected customers and their end users, and we appreciate the reports that helped us engage. If you have questions about whether your integration was in the affected cohort, please contact WorkOS support \\([[email protected]](mailto:[email protected])\\).",
      "postmortem_body_last_updated_at": "2026-09-16T17:11:16.560-04:00",
      "postmortem_ignored": false,
      "postmortem_notified_subscribers": true,
      "postmortem_notified_twitter": false,
      "postmortem_published_at": "2026-09-16T17:11:16.560-04:00",
      "reminder_intervals": null,
      "resolved_at": "2026-09-09T19:02:23.175-04:00",
      "scheduled_auto_completed": false,
      "scheduled_auto_in_progress": false,
      "scheduled_for": null,
      "scheduled_remind_prior": false,
      "scheduled_reminded_at": null,
      "scheduled_until": null,
      "shortlink": "https://stspg.io/rrpt71yccgch",
      "started_at": "2026-09-09T17:00:46.000-04:00",
      "status": "resolved",
      "updated_at": "2026-09-16T17:11:16.577-04:00"
    },
    {
      "components": [
        {
          "created_at": "2024-01-29T16:54:59.140-05:00",
          "description": null,
          "group_id": "ykdfgbgb2pd6",
          "id": "1tlfjhlvtmsv",
          "name": "AuthKit",
          "page_id": "87bp477d06pb",
          "position": 4,
          "showcase": true,
          "start_date": "2023-11-28T00:00:00.000-05:00",
          "status": "operational",
          "updated_at": "2026-09-22T09:29:52.073-04:00"
        }
      ],
      "created_at": "2026-09-02T12:39:43.743-04:00",
      "id": "6dj68f9h4k3h",
      "impact": "major",
      "impact_override": "major",
      "incident_updates": [
        {
          "affected_components": [
            {
              "code": "1tlfjhlvtmsv",
              "name": "Core Services - AuthKit",
              "new_status": "operational",
              "old_status": "operational"
            }
          ],
          "body": "Static assets delivery rates have recovered.",
          "created_at": "2026-09-02T15:06:24.995-04:00",
          "custom_tweet": null,
          "deliver_notifications": false,
          "display_at": "2026-09-02T15:06:24.995-04:00",
          "id": "xc553hq273s6",
          "incident_id": "6dj68f9h4k3h",
          "status": "resolved",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-09-02T15:06:24.995-04:00",
          "wants_twitter_update": false
        },
        {
          "affected_components": [
            {
              "code": "1tlfjhlvtmsv",
              "name": "Core Services - AuthKit",
              "new_status": "operational",
              "old_status": "operational"
            }
          ],
          "body": "We have mitigated the issue and are continuing to monitor.",
          "created_at": "2026-09-02T14:33:17.346-04:00",
          "custom_tweet": null,
          "deliver_notifications": false,
          "display_at": "2026-09-02T14:33:17.346-04:00",
          "id": "5klq1fslqhwn",
          "incident_id": "6dj68f9h4k3h",
          "status": "monitoring",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-09-02T14:33:17.346-04:00",
          "wants_twitter_update": false
        },
        {
          "affected_components": [
            {
              "code": "1tlfjhlvtmsv",
              "name": "Core Services - AuthKit",
              "new_status": "operational",
              "old_status": "operational"
            }
          ],
          "body": "We have identified increased failures delivering static assets to end users with strict network allowlists. A fix is in progress.",
          "created_at": "2026-09-02T12:39:43.785-04:00",
          "custom_tweet": null,
          "deliver_notifications": false,
          "display_at": "2026-09-02T12:39:43.785-04:00",
          "id": "g7wfmz4wcw0g",
          "incident_id": "6dj68f9h4k3h",
          "status": "identified",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-09-02T12:39:43.785-04:00",
          "wants_twitter_update": false
        }
      ],
      "metadata": {},
      "monitoring_at": "2026-09-02T14:33:17.346-04:00",
      "name": "Static asset delivery failures",
      "page_id": "87bp477d06pb",
      "postmortem_body": null,
      "postmortem_body_last_updated_at": null,
      "postmortem_ignored": false,
      "postmortem_notified_subscribers": false,
      "postmortem_notified_twitter": false,
      "postmortem_published_at": null,
      "reminder_intervals": null,
      "resolved_at": "2026-09-02T15:06:24.995-04:00",
      "scheduled_auto_completed": false,
      "scheduled_auto_in_progress": false,
      "scheduled_for": null,
      "scheduled_remind_prior": false,
      "scheduled_reminded_at": null,
      "scheduled_until": null,
      "shortlink": "https://stspg.io/fwys6yzs3dqg",
      "started_at": "2026-09-02T12:39:43.734-04:00",
      "status": "resolved",
      "updated_at": "2026-09-02T15:06:25.014-04:00"
    },
    {
      "components": [
        {
          "created_at": "2024-01-29T16:54:59.140-05:00",
          "description": null,
          "group_id": "ykdfgbgb2pd6",
          "id": "1tlfjhlvtmsv",
          "name": "AuthKit",
          "page_id": "87bp477d06pb",
          "position": 4,
          "showcase": true,
          "start_date": "2023-11-28T00:00:00.000-05:00",
          "status": "operational",
          "updated_at": "2026-09-22T09:29:52.073-04:00"
        }
      ],
      "created_at": "2026-08-31T10:10:45.318-04:00",
      "id": "bzklrnrbvfzg",
      "impact": "minor",
      "impact_override": "minor",
      "incident_updates": [
        {
          "affected_components": [
            {
              "code": "1tlfjhlvtmsv",
              "name": "Core Services - AuthKit",
              "new_status": "operational",
              "old_status": "degraded_performance"
            }
          ],
          "body": "This degradation in delivery was limited to upstream testing infrastructure which has since recovered. There was no external impact.",
          "created_at": "2026-08-31T10:45:42.111-04:00",
          "custom_tweet": null,
          "deliver_notifications": true,
          "display_at": "2026-08-31T10:45:42.000-04:00",
          "id": "5g513s9z7wqs",
          "incident_id": "bzklrnrbvfzg",
          "status": "resolved",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-08-31T10:46:55.247-04:00",
          "wants_twitter_update": false
        },
        {
          "affected_components": [
            {
              "code": "1tlfjhlvtmsv",
              "name": "Core Services - AuthKit",
              "new_status": "degraded_performance",
              "old_status": "operational"
            }
          ],
          "body": "We are investigating an issue with successful delivery of emails.",
          "created_at": "2026-08-31T10:10:45.404-04:00",
          "custom_tweet": null,
          "deliver_notifications": true,
          "display_at": "2026-08-31T10:10:45.404-04:00",
          "id": "58cc43hw52tv",
          "incident_id": "bzklrnrbvfzg",
          "status": "investigating",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-08-31T10:10:45.404-04:00",
          "wants_twitter_update": false
        }
      ],
      "metadata": {},
      "monitoring_at": null,
      "name": "Degraded outbound email delivery",
      "page_id": "87bp477d06pb",
      "postmortem_body": null,
      "postmortem_body_last_updated_at": null,
      "postmortem_ignored": false,
      "postmortem_notified_subscribers": false,
      "postmortem_notified_twitter": false,
      "postmortem_published_at": null,
      "reminder_intervals": null,
      "resolved_at": "2026-08-31T10:45:42.000-04:00",
      "scheduled_auto_completed": false,
      "scheduled_auto_in_progress": false,
      "scheduled_for": null,
      "scheduled_remind_prior": false,
      "scheduled_reminded_at": null,
      "scheduled_until": null,
      "shortlink": "https://stspg.io/5ltb2n0nj24d",
      "started_at": "2026-08-31T10:10:45.308-04:00",
      "status": "resolved",
      "updated_at": "2026-08-31T10:46:55.262-04:00"
    },
    {
      "components": [
        {
          "created_at": "2020-07-31T11:56:57.123-04:00",
          "description": null,
          "group_id": "scd65mtnm4zl",
          "id": "b7k00q2s2nww",
          "name": "Dashboard",
          "page_id": "87bp477d06pb",
          "position": 1,
          "showcase": true,
          "start_date": null,
          "status": "operational",
          "updated_at": "2026-09-22T09:30:18.281-04:00"
        }
      ],
      "created_at": "2026-08-27T09:48:56.477-04:00",
      "id": "xswktxwlrmnb",
      "impact": "none",
      "impact_override": "none",
      "incident_updates": [
        {
          "affected_components": [
            {
              "code": "b7k00q2s2nww",
              "name": "Supporting Services - Dashboard",
              "new_status": "operational",
              "old_status": "operational"
            }
          ],
          "body": "The mitigation is in place and errors rates have returned to normal. We will continue to monitor.",
          "created_at": "2026-08-27T10:04:32.728-04:00",
          "custom_tweet": null,
          "deliver_notifications": false,
          "display_at": "2026-08-27T10:04:32.728-04:00",
          "id": "wk4b1dv86f52",
          "incident_id": "xswktxwlrmnb",
          "status": "resolved",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-08-27T10:04:32.728-04:00",
          "wants_twitter_update": false
        },
        {
          "affected_components": [
            {
              "code": "b7k00q2s2nww",
              "name": "Supporting Services - Dashboard",
              "new_status": "operational",
              "old_status": "operational"
            }
          ],
          "body": "Vault pages in the Dashboard started showing increased errors and timeouts starting Aug 26 at 18:00 UTC.  We have addressed the issue and are monitoring.",
          "created_at": "2026-08-27T09:48:56.516-04:00",
          "custom_tweet": null,
          "deliver_notifications": false,
          "display_at": "2026-08-27T09:48:56.516-04:00",
          "id": "z7sv2p5h8xcg",
          "incident_id": "xswktxwlrmnb",
          "status": "monitoring",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-08-27T09:48:56.516-04:00",
          "wants_twitter_update": false
        }
      ],
      "metadata": {},
      "monitoring_at": "2026-08-27T09:48:56.516-04:00",
      "name": "Degraded Vault pages in Dashboard",
      "page_id": "87bp477d06pb",
      "postmortem_body": null,
      "postmortem_body_last_updated_at": null,
      "postmortem_ignored": false,
      "postmortem_notified_subscribers": false,
      "postmortem_notified_twitter": false,
      "postmortem_published_at": null,
      "reminder_intervals": null,
      "resolved_at": "2026-08-27T10:04:32.728-04:00",
      "scheduled_auto_completed": false,
      "scheduled_auto_in_progress": false,
      "scheduled_for": null,
      "scheduled_remind_prior": false,
      "scheduled_reminded_at": null,
      "scheduled_until": null,
      "shortlink": "https://stspg.io/tfj3z9zx2b5h",
      "started_at": "2026-08-27T09:48:56.467-04:00",
      "status": "resolved",
      "updated_at": "2026-08-27T10:04:32.747-04:00"
    },
    {
      "components": [
        {
          "created_at": "2020-07-31T11:56:57.123-04:00",
          "description": null,
          "group_id": "scd65mtnm4zl",
          "id": "b7k00q2s2nww",
          "name": "Dashboard",
          "page_id": "87bp477d06pb",
          "position": 1,
          "showcase": true,
          "start_date": null,
          "status": "operational",
          "updated_at": "2026-09-22T09:30:18.281-04:00"
        }
      ],
      "created_at": "2026-08-25T13:35:40.256-04:00",
      "id": "kz9df1mjdlkg",
      "impact": "major",
      "impact_override": "major",
      "incident_updates": [
        {
          "affected_components": [
            {
              "code": "b7k00q2s2nww",
              "name": "Supporting Services - Dashboard",
              "new_status": "operational",
              "old_status": "operational"
            }
          ],
          "body": "This incident is resolved.",
          "created_at": "2026-08-25T14:41:09.823-04:00",
          "custom_tweet": null,
          "deliver_notifications": true,
          "display_at": "2026-08-25T14:41:09.823-04:00",
          "id": "9qhkskj71y1k",
          "incident_id": "kz9df1mjdlkg",
          "status": "resolved",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-08-25T14:41:09.823-04:00",
          "wants_twitter_update": false
        },
        {
          "affected_components": [
            {
              "code": "b7k00q2s2nww",
              "name": "Supporting Services - Dashboard",
              "new_status": "operational",
              "old_status": "partial_outage"
            }
          ],
          "body": "We have confirmed our fix resolved the elevated errors affecting sign-in to the WorkOS Dashboard and are continuing to monitor.",
          "created_at": "2026-08-25T13:54:19.062-04:00",
          "custom_tweet": null,
          "deliver_notifications": true,
          "display_at": "2026-08-25T13:54:19.062-04:00",
          "id": "4zsgb0xtz65h",
          "incident_id": "kz9df1mjdlkg",
          "status": "monitoring",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-08-25T13:54:19.062-04:00",
          "wants_twitter_update": false
        },
        {
          "affected_components": [
            {
              "code": "b7k00q2s2nww",
              "name": "Supporting Services - Dashboard",
              "new_status": "partial_outage",
              "old_status": "partial_outage"
            }
          ],
          "body": "We have applied a fix and are monitoring the system to verify that Dashboard sign-in is recovering.",
          "created_at": "2026-08-25T13:41:25.213-04:00",
          "custom_tweet": null,
          "deliver_notifications": true,
          "display_at": "2026-08-25T13:41:25.213-04:00",
          "id": "zpn2d8z2lzms",
          "incident_id": "kz9df1mjdlkg",
          "status": "identified",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-08-25T13:41:25.213-04:00",
          "wants_twitter_update": false
        },
        {
          "affected_components": [
            {
              "code": "b7k00q2s2nww",
              "name": "Supporting Services - Dashboard",
              "new_status": "partial_outage",
              "old_status": "operational"
            }
          ],
          "body": "We are investigating errors affecting sign-in to the WorkOS Dashboard. Users may be unable to authenticate while attempting to access the Dashboard. We will share an update as soon as possible",
          "created_at": "2026-08-25T13:35:40.335-04:00",
          "custom_tweet": null,
          "deliver_notifications": true,
          "display_at": "2026-08-25T13:35:40.335-04:00",
          "id": "00xh4833v3n3",
          "incident_id": "kz9df1mjdlkg",
          "status": "investigating",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-08-25T13:35:40.335-04:00",
          "wants_twitter_update": false
        }
      ],
      "metadata": {},
      "monitoring_at": "2026-08-25T13:54:19.062-04:00",
      "name": "Dashboard sign-in errors",
      "page_id": "87bp477d06pb",
      "postmortem_body": null,
      "postmortem_body_last_updated_at": null,
      "postmortem_ignored": false,
      "postmortem_notified_subscribers": false,
      "postmortem_notified_twitter": false,
      "postmortem_published_at": null,
      "reminder_intervals": null,
      "resolved_at": "2026-08-25T14:41:09.823-04:00",
      "scheduled_auto_completed": false,
      "scheduled_auto_in_progress": false,
      "scheduled_for": null,
      "scheduled_remind_prior": false,
      "scheduled_reminded_at": null,
      "scheduled_until": null,
      "shortlink": "https://stspg.io/k7xvj8qvjbqf",
      "started_at": "2026-08-25T13:35:40.246-04:00",
      "status": "resolved",
      "updated_at": "2026-08-25T14:41:09.837-04:00"
    },
    {
      "components": [],
      "created_at": "2026-08-18T20:00:00.000-04:00",
      "id": "5fy1qdlgth9n",
      "impact": "none",
      "impact_override": null,
      "incident_updates": [
        {
          "affected_components": null,
          "body": "On August 18 from 23:59 to 00:03 UTC (August 19), a subset of API requests (primarily AuthKit authentication endpoints) returned HTTP 500 errors. Automatic maintenance of a large, seldom-used internal index caused brief write-ahead-log contention on a primary database that exhausted connection capacity; service recovered automatically within four minutes. We identified the root cause and removed the index from production at 03:53 UTC on August 19 to prevent recurrence.",
          "created_at": "2026-08-19T14:14:28.448-04:00",
          "custom_tweet": null,
          "deliver_notifications": false,
          "display_at": "2026-08-18T20:00:00.000-04:00",
          "id": "hglfls8r4929",
          "incident_id": "5fy1qdlgth9n",
          "status": "resolved",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-08-19T14:14:28.448-04:00",
          "wants_twitter_update": false
        }
      ],
      "metadata": {},
      "monitoring_at": null,
      "name": "Elevated errors on AuthKit authentication endpoints",
      "page_id": "87bp477d06pb",
      "postmortem_body": null,
      "postmortem_body_last_updated_at": null,
      "postmortem_ignored": false,
      "postmortem_notified_subscribers": false,
      "postmortem_notified_twitter": false,
      "postmortem_published_at": null,
      "reminder_intervals": null,
      "resolved_at": "2026-08-18T20:00:00.000-04:00",
      "scheduled_auto_completed": false,
      "scheduled_auto_in_progress": false,
      "scheduled_for": null,
      "scheduled_remind_prior": false,
      "scheduled_reminded_at": null,
      "scheduled_until": null,
      "shortlink": "https://stspg.io/f6qft677v2kv",
      "started_at": "2026-08-19T14:14:28.397-04:00",
      "status": "resolved",
      "updated_at": "2026-08-19T14:14:28.459-04:00"
    },
    {
      "components": [
        {
          "created_at": "2024-01-29T16:54:59.140-05:00",
          "description": null,
          "group_id": "ykdfgbgb2pd6",
          "id": "1tlfjhlvtmsv",
          "name": "AuthKit",
          "page_id": "87bp477d06pb",
          "position": 4,
          "showcase": true,
          "start_date": "2023-11-28T00:00:00.000-05:00",
          "status": "operational",
          "updated_at": "2026-09-22T09:29:52.073-04:00"
        }
      ],
      "created_at": "2026-08-14T20:24:03.828-04:00",
      "id": "cdfqw1llf8mc",
      "impact": "minor",
      "impact_override": "minor",
      "incident_updates": [
        {
          "affected_components": [
            {
              "code": "1tlfjhlvtmsv",
              "name": "Core Services - AuthKit",
              "new_status": "operational",
              "old_status": "degraded_performance"
            }
          ],
          "body": "Microsoft's Outlook team has confirmed that mitigations have been implemented. We've verified that email delivery to Microsoft 365 domains is operating normally again.\n\nThis incident has been resolved.",
          "created_at": "2026-08-16T18:04:26.601-04:00",
          "custom_tweet": null,
          "deliver_notifications": true,
          "display_at": "2026-08-16T18:04:26.601-04:00",
          "id": "tyydn9xgt339",
          "incident_id": "cdfqw1llf8mc",
          "status": "resolved",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-08-16T18:04:26.601-04:00",
          "wants_twitter_update": false
        },
        {
          "affected_components": [
            {
              "code": "1tlfjhlvtmsv",
              "name": "Core Services - AuthKit",
              "new_status": "degraded_performance",
              "old_status": "degraded_performance"
            }
          ],
          "body": "We continue to see email deliverability issues to a subset of Microsoft 365 tenant domains. This does not affect consumer domains such as outlook.com, hotmail.com, live.com or msn.com. We will provide updates as they become available.",
          "created_at": "2026-08-15T12:21:55.028-04:00",
          "custom_tweet": null,
          "deliver_notifications": true,
          "display_at": "2026-08-15T12:21:55.028-04:00",
          "id": "lqfl3tbn0vqf",
          "incident_id": "cdfqw1llf8mc",
          "status": "identified",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-08-15T12:21:55.028-04:00",
          "wants_twitter_update": false
        },
        {
          "affected_components": [
            {
              "code": "1tlfjhlvtmsv",
              "name": "Core Services - AuthKit",
              "new_status": "degraded_performance",
              "old_status": "degraded_performance"
            }
          ],
          "body": "We are observing improvements in deliverability to Microsoft email addresses, in line with the resolution of an incident with our upstream email service provider. We will continue to monitor.",
          "created_at": "2026-08-14T23:32:10.924-04:00",
          "custom_tweet": null,
          "deliver_notifications": true,
          "display_at": "2026-08-14T23:32:10.924-04:00",
          "id": "pkr6brtxh2mm",
          "incident_id": "cdfqw1llf8mc",
          "status": "monitoring",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-08-14T23:32:10.924-04:00",
          "wants_twitter_update": false
        },
        {
          "affected_components": [
            {
              "code": "1tlfjhlvtmsv",
              "name": "Core Services - AuthKit",
              "new_status": "degraded_performance",
              "old_status": "degraded_performance"
            }
          ],
          "body": "We continue to experience deliverability delays to a subset of users with email addresses hosted by Microsoft / Office 365. \n\nWe are working with our email providers to mitigate the issues, we will provide updates as they become available.\n\nCustomers using their own custom email providers are not affected.",
          "created_at": "2026-08-14T21:35:44.775-04:00",
          "custom_tweet": null,
          "deliver_notifications": true,
          "display_at": "2026-08-14T21:35:44.000-04:00",
          "id": "c8kp6r8bl7rk",
          "incident_id": "cdfqw1llf8mc",
          "status": "identified",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-08-14T21:38:10.621-04:00",
          "wants_twitter_update": false
        },
        {
          "affected_components": [
            {
              "code": "1tlfjhlvtmsv",
              "name": "Core Services - AuthKit",
              "new_status": "degraded_performance",
              "old_status": "operational"
            }
          ],
          "body": "We are seeing deliverability issues with emails sent to Microsoft / Outlook recipients.",
          "created_at": "2026-08-14T20:24:03.927-04:00",
          "custom_tweet": null,
          "deliver_notifications": true,
          "display_at": "2026-08-14T20:24:03.927-04:00",
          "id": "syydsmnhc8sl",
          "incident_id": "cdfqw1llf8mc",
          "status": "investigating",
          "tweet_id": null,
          "twitter_updated_at": null,
          "updated_at": "2026-08-14T20:24:03.927-04:00",
          "wants_twitter_update": false
        }
      ],
      "metadata": {},
      "monitoring_at": "2026-08-14T23:32:10.924-04:00",
      "name": "Delayed Email Deliverability",
      "page_id": "87bp477d06pb",
      "postmortem_body": null,
      "postmortem_body_last_updated_at": null,
      "postmortem_ignored": false,
      "postmortem_notified_subscribers": false,
      "postmortem_notified_twitter": false,
      "postmortem_published_at": null,
      "reminder_intervals": null,
      "resolved_at": "2026-08-16T18:04:26.601-04:00",
      "scheduled_auto_completed": false,
      "scheduled_auto_in_progress": false,
      "scheduled_for": null,
      "scheduled_remind_prior": false,
      "scheduled_reminded_at": null,
      "scheduled_until": null,
      "shortlink": "https://stspg.io/j5gf4qt60l76",
      "started_at": "2026-08-14T21:35:44.000-04:00",
      "status": "resolved",
      "updated_at": "2026-08-16T18:04:26.618-04:00"
    }
  ],
  "page": {
    "id": "87bp477d06pb",
    "name": "WorkOS",
    "url": "https://status.workos.com"
  },
  "status": {
    "description": "All Systems Operational",
    "indicator": "none"
  }
}