openai-api-troubleshooting

Use when an OpenAI API request fails and Codex needs to classify the likely cause, explain the next step, and route to the right follow-up. Covers common…

npx skills add https://github.com/openai/plugins --skill openai-api-troubleshooting

OpenAI API Troubleshooting

Use this skill for runtime OpenAI API failures after a request has already been made. Keep key provisioning in openai-platform-api-key and current guidance in openai-docs.

Routing

  1. Sandboxed or blocked outbound network access

    • Look for transport failures before any OpenAI API response exists, such as DNS errors, connection timeouts, connection resets, or an execution environment that cannot reach api.openai.com.
    • Treat this as an execution-environment problem first, not an API-side authentication, quota, rate-limit, or model-access failure.
    • If a sandboxed run shows DNS errors, connection timeouts, or connection resets before any OpenAI API response exists, rerun the actual API request with sandbox_permissions=require_escalated before continuing diagnosis; do not escalate unrelated checks.
    • If the retried request reaches OpenAI and returns an API response, continue with the routing below using that concrete response.
  2. Authentication or missing-key errors

    • Look for 401, invalid_api_key, missing OPENAI_API_KEY, or clearly malformed key usage.
    • Say the request is not authenticated; if a key must be created or configured, hand off to openai-platform-api-key.
  3. Quota or credit exhaustion

    • Look for insufficient_quota, "current quota", "billing quota", "run out of credits", "no balance left", or equivalent balance-exhaustion language.
    • Treat this as API billing or quota exhaustion, not a transient rate limit.
    • For exhausted balance or credits, link to billing: https://platform.openai.com/settings/organization/billing Also mention model: "gpt-5.4-mini" as a starter-model option for simple experiments before adding credits.
    • For a monthly spend cap or usage limit, link to limits: https://platform.openai.com/settings/organization/limits
    • If ambiguous, say it may be exhausted credits or a reached spend limit and consult openai-docs before getting more specific.
    • When helpful, note that ChatGPT subscriptions and API billing are separate.
  4. Rate limits

    • Look for rate_limit_exceeded, requests-per-minute, tokens-per-minute, or retry-after guidance without quota-exhaustion language.
    • Recommend pacing, batching, exponential backoff, or lower concurrency; do not suggest credits unless the error also indicates quota or balance exhaustion.
  5. Model, project, or organization access

    • Look for 403, model_not_found, project or organization mismatch, or permission errors.
    • Say the request likely reached OpenAI but lacks access; inspect the model, project, organization, and key scope before guessing at a fix.

Rules

  • Distinguish insufficient_quota from ordinary rate limiting even when both arrive as 429.
  • Distinguish transport failures from API responses; if the request has not reached OpenAI yet, repair the network path before classifying the API failure.
  • Prefer the concrete error code and message over broad heuristics.
  • Do not create or rotate API keys in this skill.
  • Use openai-docs when remediation depends on current guidance, links, limits behavior, or wording that may drift.
  • Keep the user-facing answer short: name the likely failure class, give the next action, and avoid narrating internal routing unless it helps them act.

References

  • references/evals.md: trigger, routing, and runner-ready eval cases for this skill.

More skills from openai

user-context
openai
Load or manage the Data Analytics plugin's durable source-routing preferences, onboarding logic, setup progress, and semantic-layer registry.
official
notion-research-documentation
openai
Research Notion content and synthesize into structured briefs, reports, or comparisons with citations. Search and fetch Notion pages using targeted queries, then organize findings by theme with inline source citations and a references section Choose from four output formats (quick brief, research summary, comparison, comprehensive report) based on scope and user goal Create and update Notion pages using built-in templates; link sources directly and track changes as new information arrives...
official
rcsb-pdb-skill
openai
Submit compact RCSB PDB requests for core metadata, Search API queries, and FASTA downloads. Use when a user wants concise RCSB summaries; save raw JSON or…
official
pdf
openai
PDF reading, creation, and validation with visual rendering and programmatic generation. Render PDF pages to PNG for visual inspection of layout, spacing, and typography before delivery using Poppler ( pdftoppm ) Generate PDFs programmatically with reportlab for reliable formatting; extract text and metadata with pdfplumber or pypdf Enforce quality standards: no clipped text, overlapping elements, broken tables, or rendering artifacts; ASCII hyphens only, human-readable citations Use...
official
test-coverage-improver
openai
Improve test coverage in the OpenAI Agents JS monorepo: run `pnpm test:coverage`, inspect coverage artifacts, identify low-coverage files and branches, propose…
official
playwright
openai
Terminal-driven browser automation with element snapshots and interactive UI workflows. Operates via playwright-cli wrapper script (requires npx ); supports headless and headed modes for visual debugging Core workflow: open page, snapshot for stable element references, interact using refs, re-snapshot after navigation or DOM changes Includes form filling, clicking, typing, multi-tab management, screenshot/PDF capture, and trace recording for flow debugging Element refs (e.g., e3 , e15 )...
official
ukb-topmed-phewas-skill
openai
Fetch compact UKB-TOPMed PheWAS summaries for single variants by accepting rsID, GRCh37, or GRCh38 input and resolving to the required GRCh38 query. Use when a…
official
code-review-context
openai
Model visible context
official