Issues with webhook ingestion, GraphQL queries
## Service Impact On September 22, 2026, between 19:09 and 19:32 UTC, customers experienced failures ingesting webhooks and executing GraphQL queries. Some web application requests also failed or timed out. During this period, 2.0% of requests to our webhook ingestion endpoints and 20.3% of requests to our external GraphQL endpoint returned HTTP 500 errors. Webhook ingestion errors ceased by 19:30 UTC, and external GraphQL errors returned to background levels by 19:32 UTC. ## Incident Summary While investigating a separate API performance issue, we made a manual configuration change intended to rollback a routing change for one database proxy. The command instead changed the routing configuration for another database proxy, disrupting access to a database shard used internally by Buildkite. Some customer-facing operations search across all database shards to locate their shard, where routing information isn't available in the request. Those requests round robin through available shards
The latest update from Buildkite.
State
Resolved
Started
40 d ago
2026-09-22 20:07 UTC
Lasted
42 min
until 2026-09-22 20:50 UTC
Worst impact
Partial outage
Timeline
4 updatesInvestigating
18 min 44%
Identified
24 min 56%
Updates
Times in UTCAs posted by Buildkite
## Service Impact On September 22, 2026, between 19:09 and 19:32 UTC, customers experienced failures ingesting webhooks and executing GraphQL queries. Some web application requests also failed or timed out. During this period, 2.0% of requests to our webhook ingestion endpoints and 20.3% of requests to our external GraphQL endpoint returned HTTP 500 errors. Webhook ingestion errors ceased by 19:30 UTC, and external GraphQL errors returned to background levels by 19:32 UTC. ## Incident Summary While investigating a separate API performance issue, we made a manual configuration change intended to rollback a routing change for one database proxy. The command instead changed the routing configuration for another database proxy, disrupting access to a database shard used internally by Buildkite. Some customer-facing operations search across all database shards to locate their shard, where routing information isn't available in the request. Those requests round robin through available shards
Services are fully recovered. Webhook ingestion was affected between 19:09 UTC - 19:32 UTC.
Our engineers have addressed the issue and we're monitoring recovery.
We're seeing an issue affecting webhook ingestion and execution of GraphQL queries and are investigating the cause.
Buildkite in the last 90 days
Full historyIncidents in 90 days
26
Days with an incident
26
Median duration
1 h 9 min
This incident
39% shorter than the median
Other Buildkite incidents
All incidentsBuildkite·Elevated job dispatch times
We are seeing the job dispatch times are back to normal.
Buildkite·Increased latency and error rates
We identified that the majority of the impact was for a single customer and was caused by a database failover. We are investigating the cause and we will work with the impacted customer.
Buildkite·Elevated error rates
Between 23:16 and 23:27 we saw elevated error rates across our platform due to a scheduled database upgrade. That upgrade was not intended to cause any impact, but due to an unforeseen dependency on this database customers experienced error rates averages 2.5% during this period.
Buildkite·Delays with Hosted Agents jobs
Processing of Hosted Agents jobs are no longer delayed.
Buildkite·Buildkite response to the eMudhra certificate compromise
All services that power Buildkite have been updated to distrust the affected certificates, and updated releases are available for the components we distribute that run in customer infrastructure: Buildkite agent: v4.7.0 and v3.138.2 Buildkite CLI: v3.64.2 bktec: v3.3.1 elastic-ci-stack-for-aws: v7.8.0 agent-stack-k8s: v0.52.0 We recommend updating to these versions to prevent exposure to the affected certificate providers.
Follow Buildkite
Your coding agent knows when Buildkite is down, and tells you when a failure is theirs, not yours. You can also get Buildkite incidents in a feed reader or in Slack.
Install the outages.live MCP server, so that when something breaks you can tell if the cause is a provider we depend on and not my code. It reads the official status pages of cloud, AI, payment and developer providers and gives you their incidents as MCP tools.
Add it as a remote MCP server named "outages" at https://outages.cc/mcp (Streamable HTTP, no authentication), with your CLI command or your MCP config file.
Then:
1. Make sure it connects and shows the tools get_provider, list_feed and send_feedback.
2. Call get_provider with "buildkite" and tell me if Buildkite has a problem right now.
3. From now on, when a call to a third-party service fails or becomes slow, call get_provider for that service before you change my code.Paste this into any coding agent. It adds the server with its own MCP setup.
https://outages.cc/feed.xml?providers=buildkite/feed subscribe https://outages.cc/feed.xml?providers=buildkiteFAQ
Go from tracking outages to fixing production issues with Polylane.
Try Polylane