{"id":"INC-circleci-9lvbbbs9l87b","kind":"incident","aliases":[],"related":[],"title":"CircleCI: Errors with GitHub APIs delaying workflows","description":"## Summary\n\nOn July 20, 2026 from 00:22 to 01:45 UTC, CircleCI customers using our GitHub integrations experienced failures running pipelines and experienced workflows getting stuck. During this incident, some pipelines triggered by users using GitHub failed to start or ran as error pipelines. Customers whose pipelines failed or ran as error pipelines during this window should re-run them.\n\nThis was caused by an [upstream API degradation at GitHub](https://www.githubstatus.com/incidents/ph5nns5y4gxj), which impacted many GitHub APIs that CircleCI uses to trigger and run pipelines.\n\nBy 01:45 UTC, GitHub APIs recovered, and customer pipelines ran normally.\n\nThe original CircleCI status page can be found [here](https://status.circleci.com/incidents/9lvbbbs9l87b). \n\n## What Happened\n\n\\(all times UTC\\)\n\nBeginning 00:22 on July 20, 2026, GitHub began returning elevated errors for the following API requests:\n\n* `applications/*/token`\n* `repos/*/commits`\n* `repos/*/*/contents/*`\n* `repos/*/*/hooks`\n* `repos/*/*/hooks/*`\n* `repos/*/*/keys`\n* `repos/*/*/pulls`\n* `repos/*/*/statuses/*`\n\nCircleCI relies on these requests to correctly trigger and run pipelines.\n\nAt 00:22, our internal monitoring alerted us to the problem. Our team began investigating, and found that a small number of pipelines belonging to GitHub projects either failed to start or ran as error pipelines. This included scheduled pipelines and workflows. In addition, a small number of customer workflows experienced stuck jobs and required a re-run of the workflow to fix.\n\nAt 01:45, GitHub recovered and pipeline processing returned to normal operating levels. Only pipelines triggered during the incident window were affected, and customers should re-run those pipelines.\n\n## Future Prevention and Process Improvement\n\nWe are actively working to improve the resilience of pipeline processing during GitHub service disruptions to reduce the customer impact of similar incidents in the future. We are scoping features that will help customers recover with reduced manual steps after incidents resolve.\n\nCustomer experience is our top priority, and we commit to continually improving the reliability of our systems to match the trust that our customers place in us. Please reach out to our support team with any questions or concerns.","summary":"CircleCI had an incident from July 20, 2026 00:22 to 01:45 UTC where pipelines using GitHub integrations failed to start, ran as error pipelines, or got stuck. The cause was an upstream GitHub API degradation, and the incident is resolved.","severity":"medium","cvss":null,"epss":null,"exploited":false,"exploited_at":null,"products":[{"name":"CircleCI","fixed":[],"affected":"","ecosystem":"vendor"}],"ecosystems":["vendor"],"tags":["ci","circleci","github-integration","incident","security","vendor"],"not_affected_if":["no-github-integration","no-pipelines-in-window"],"how_to_check":"Check pipelines triggered by GitHub during 00:22 to 01:45 UTC on July 20, 2026 for failed, error or stuck status.","fix":"Re-run any pipelines that failed or ran as error pipelines during the incident window, as CircleCI advises.","status":"resolved","published_at":"2026-07-20T00:35:59+00:00","first_seen_at":"2026-10-23T19:12:22+00:00","triaged_at":"2026-10-23T21:57:11+00:00","updated_at":"2026-10-23T21:57:11+00:00","category":"vendor","confidence":0.7,"triage":{"at":"2026-10-23T21:57:11Z","model":"claude-haiku-5-5","output":{"fix":"Re-run any pipelines that failed or ran as error pipelines during the incident window, as CircleCI advises.","reach":"unknown","impact":"low","summary":"CircleCI had an incident from July 20, 2026 00:22 to 01:45 UTC where pipelines using GitHub integrations failed to start, ran as error pipelines, or got stuck. The cause was an upstream GitHub API degradation, and the incident is resolved.","category":"vendor","who_cares":["circleci","github-integration","ci"],"confidence":0.7,"needs_auth":"unknown","worst_case":"Pipelines fail or stall; no code execution or data exposure reported.","analyst_note":"","how_to_check":"Check pipelines triggered by GitHub during 00:22 to 01:45 UTC on July 20, 2026 for failed, error or stuck status.","needs_analyst":false,"not_affected_if":["no-github-integration","no-pipelines-in-window"],"user_interaction":"no","needs_special_setup":"unknown","severity_if_unknown":"low"},"cost_usd":0.000534,"input_tokens":3502,"output_tokens":368,"severity_before":"medium"},"analyst_status":null,"analyst_note":null,"search":"'/commits':200C '/contents':202C '/hooks':204C,206C '/incidents/9lvbbbs9l87b).':174C '/incidents/ph5nns5y4gxj),':137C '/keys':208C '/pulls':210C '/statuses':212C '/token':198C '00':29B,69C,181C,225C '01':32B,72C,152C,289C '20':27B,66C,185C '2026':28B,67C,186C '22':30B,70C,182C,226C '45':33B,73C,153C,290C '9lvbbbs9l87b':11A 'activ':325C 'addit':267C 'affect':309C 'alert':230C 'api':5A,56B,131C,142C,156C,195C 'applic':197C 'began':188C,237C 'begin':180C 'belong':247C 'caus':51B,127C 'ci':13B 'circleci':1A,10A,12A,14B,21B,75C,144C,165C,213C 'commit':373C 'concern':403C 'continu':375C 'correct':219C 'custom':76C,108C,159C,272C,311C,341C,356C,365C,388C 'degrad':57B,132C 'delay':6A 'disrupt':337C 'either':251C 'elev':190C 'error':2A,45B,106C,115C,191C,258C 'experi':366C 'experienc':81C,86C,274C 'fail':40B,100C,111C,252C 'failur':82C 'featur':352C 'fix':287C 'follow':194C 'found':170C,240C 'futur':318C,348C 'get':88C 'github':4A,16B,38B,55B,79C,99C,134C,141C,155C,187C,249C,291C,335C 'github-integr':15B 'got':48B 'happen':176C 'help':355C 'impact':139C,342C 'improv':322C,328C,376C 'inc':9A 'inc-circleci-9lvbbbs9l87b':8A 'incid':18B,24B,60B,92C,306C,345C,363C 'includ':261C 'integr':17B,39B,80C 'intern':228C 'investig':238C 'job':276C 'juli':26B,65C,184C 'level':300C 'mani':140C 'manual':360C 'match':383C 'monitor':229C 'normal':162C,298C 'number':244C,270C 'oper':299C 'origin':164C 'page':167C 'pipelin':36B,46B,84C,94C,107C,110C,116C,150C,160C,223C,246C,259C,263C,294C,302C,317C,332C 'place':389C 'pleas':392C 'prevent':319C 'prioriti':370C 'problem':234C 'process':295C,321C,333C 'project':250C 'question':401C 'ran':43B,104C,113C,161C,256C 're':122C,281C,314C 're-run':121C,280C,313C 'reach':393C 'recov':157C,292C,357C 'reduc':339C,359C 'reli':214C 'reliabl':378C 'repo':199C,201C,203C,205C,207C,209C,211C 'request':196C,217C 'requir':278C 'resili':330C 'resolv':62B,364C 'return':189C,296C 'run':83C,123C,149C,222C,282C,315C 'schedul':262C 'scope':351C 'secur':19B 'servic':336C 'similar':344C 'small':243C,269C 'start':42B,102C,254C 'status':166C 'status.circleci.com':173C 'status.circleci.com/incidents/9lvbbbs9l87b).':172C 'step':361C 'stuck':49B,89C,275C 'summari':63C 'support':397C 'system':381C 'team':236C,398C 'time':178C 'top':369C 'trigger':95C,147C,220C,303C 'trust':385C 'upstream':54B,130C 'us':231C,391C 'use':37B,77C,98C,145C 'user':97C 'utc':34B,74C,154C,179C 'vendor':20B 'whose':109C 'window':119C,307C 'work':326C 'workflow':7A,87C,265C,273C,285C 'www.githubstatus.com':136C 'www.githubstatus.com/incidents/ph5nns5y4gxj),':135C","nicknames":[],"mitigations":[],"who_affected":null,"tier":null,"verified":{},"analyst_revisit_at":null,"first_public_at":"2026-07-20T00:35:59+00:00","kev":null,"cvss_vector":null,"cvss_by":null,"poc_count":0,"sources":[{"source":"statuspage","external_id":"circleci:9lvbbbs9l87b","url":"https://stspg.io/96ffdz58cxdr","severity":"medium","published_at":"2026-07-20T00:35:59+00:00","modified_at":"2026-07-23T21:10:52+00:00","first_seen_at":"2026-10-23T19:12:22+00:00","fetched_at":"2026-10-25T21:37:07+00:00","note":null}],"documents":[],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}