Run before concluding anything from an HTTP error on a third-party API. Separates a real credential/entitlement problem from a CDN or WAF block, a wrong endpoint, or a client-signature ban. Use whenever an API returns 401/403/402/429 and you are about to say "the key is dead", "credits are exhausted", "the plan lacks access", or "we are rate limited".
Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.
What the file says
# HTTP error triage
An HTTP error tells you a request failed. It usually does **not** tell you why.
Concluding "the key is dead" from a 403 is a guess wearing a number.
Born from a real incident (2026-07-30): a third-party contact-enrichment API
returned `403 error code: 1010` to every call for six days. It was read as "key
not entitled", "credits exhausted", "monthly quota reached". A 756-line browser
automation workaround was built on that belief, and a customer was nearly asked
to check a plan that was fine. The actual cause was a missing `User-Agent`, so
the CDN banned the client at the edge. One header fixed it: 200 OK, full data,
and the credit balance had been there the whole time.
## Run these three controls before you diagnose
**1. The invalid-credential control.** Send the same request with a deliberately
garbage credential, and again with none at all.
```python
for label, key in [("real", REAL_KEY), ("garbage", "0"*36), ("empty", "")]:
... # same URL, same method, same headers
```
If all three return the **same** status and body, the error is not about your
credential. It carries zero information about entitlement, quota or validity.
…
The line at the top of this page pins the label git:20260910.badf951, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.
GET https://markdownregistry.com/api/v1/artifacts/art_3hs6kbn7ebiz7qpc
GET https://markdownregistry.com/api/v1/resolve?ref=getedgehq/skills/http-error-triage
GET https://markdownregistry.com/api/v1/blob/0e05ddb904fa0979b255b7bdde3b8af1397f068ce5b84917a800e727b696cab3
Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.
getedgehq/skills · abel-sell-the-alpha/SKILL.md · Build an account-specific enterprise sales brief using Jen Abel's buyer-advantage method. Use for founder-led…
getedgehq/skills · agent-governance-gap-analysis/SKILL.md · Score an organisation's AI agent governance against 25 technical checks across 7 dimensions — agent inventory…
getedgehq/skills · agent-infra-fixer/SKILL.md · Fix the agent's own environment when skill-miner surfaces infra-class failures - broken or over-broad hooks…
getedgehq/skills · agent-receipt/SKILL.md · Create a compact, evidence-backed proof-of-work receipt for a completed AI agent run. Use when the user wants to…
getedgehq/skills · ai-dna/SKILL.md · Turn your own local ChatGPT, Claude Code, and Codex conversation history into a 4:5 AI DNA helix still and 12-second…
getedgehq/skills · ai-festival-poster/SKILL.md · Turn someone's real AI usage into a desert festival lineup poster, painted in Python. Scans local Claude Code and Codex…
getedgehq/skills · ai-team/SKILL.md · Set up a small AI team in Claude Code or Codex: a Chief of Staff that routes work on a board, role agents (product…
getedgehq/skills · albro-founder-brand/SKILL.md · Build a buyer-focused founder narrative, content plan, distribution routine, and revenue hook using Scott Albro's…
getedgehq/skills · anatomy/SKILL.md · Build crafted, highly detailed, interactive isometric SVG figures that explain a technical idea as a real physical…
getedgehq/skills · andy-raskin-strategic-narrative/SKILL.md · Build or review a buyer-centered strategic narrative using Andy Raskin's public method. Use for sales or investor deck…
getedgehq/skills · evals/skillneed/2026-09-19/skillneed-catalog-routing-v2/s2/with/catalog/http-error-triage/SKILL.md · Separate credential and entitlement failures from wrong endpoints, CDN/WAF blocks, rate limits, and client-signature…
getedgehq/skills · evals/skillneed/2026-09-19/skillneed-catalog-routing-v2/s2/without/catalog/http-error-triage/SKILL.md · Separate credential and entitlement failures from wrong endpoints, CDN/WAF blocks, rate limits, and client-signature…
getedgehq/skills · evals/skillneed/2026-09-19/skillneed-catalog-routing/s2/with/catalog/http-error-triage/SKILL.md · Separate credential and entitlement failures from wrong endpoints, CDN/WAF blocks, rate limits, and client-signature…
getedgehq/skills · evals/skillneed/2026-09-19/skillneed-catalog-routing-v2/s3/without/catalog/http-error-triage/SKILL.md · Separate credential and entitlement failures from wrong endpoints, CDN/WAF blocks, rate limits, and client-signature…
getedgehq/skills · evals/skillneed/2026-09-19/skillneed-catalog-routing/s1/without/catalog/http-error-triage/SKILL.md · Separate credential and entitlement failures from wrong endpoints, CDN/WAF blocks, rate limits, and client-signature…
getedgehq/skills · evals/skillneed/2026-09-19/skillneed-catalog-routing/s2/without/catalog/http-error-triage/SKILL.md · Separate credential and entitlement failures from wrong endpoints, CDN/WAF blocks, rate limits, and client-signature…
getedgehq/skills · evals/skillneed/2026-09-19/skillneed-catalog-routing-v2/s3/with/catalog/http-error-triage/SKILL.md · Separate credential and entitlement failures from wrong endpoints, CDN/WAF blocks, rate limits, and client-signature…
getedgehq/skills · evals/skillneed/2026-09-19/skillneed-catalog-routing/s3/without/catalog/http-error-triage/SKILL.md · Separate credential and entitlement failures from wrong endpoints, CDN/WAF blocks, rate limits, and client-signature…