rest-graphql-debug

Diagnose REST and GraphQL API failures through layered connectivity, auth, and schema checks.

Updated Aug 22, 2026
One-click install
npx skills add https://github.com/vivekgoquest/hermes-agent-stable --skill rest-graphql-debug-vivekgoquest
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: rest-graphql-debug
Source: https://github.com/vivekgoquest/hermes-agent-stable/tree/main/optional-skills/software-development/rest-graphql-debug
Command: npx skills add https://github.com/vivekgoquest/hermes-agent-stable --skill rest-graphql-debug-vivekgoquest

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires requests, pytest.

What problem does it solve? API integrations fail in opaque ways — a 401 after token refresh, a GraphQL query returning HTTP 200 with hidden errors, or code that works in Postman but breaks in production. This Skill provides a systematic, layer-by-layer debugging methodology that isolates the exact failure point before attempting fixes. ## Core Features & Use Cases - Layered Diagnostic Flow: Walks connectivity, timeouts, TLS, authentication, request format, response parsing, and semantic validation in strict order using curl and Python requests. - HTTP Status Playbook: Provides targeted checklists for 401, 403, 404, 409, 422, 429, and 5xx responses, including exponential backoff for rate limits. - Contract & Regression Testing: Includes schema validation snippets and a pytest smoke-test template to catch API drift before production. - Use Case: Your payment API suddenly returns 422 errors after a provider update. Use this Skill to capture the correlation ID, reproduce with curl, identify the changed required field, and generate a vendor bug report. ## Quick Start Debug why my POST request to the users API returns a 422 error and give me a working curl reproduction.

Frequently Asked Questions about rest-graphql-debug

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I debug a REST API returning 401 or 403 errors?▼

Debug 401 errors by confirming the Authorization header is present with curl -v, checking token expiry via the JWT exp claim, and verifying the correct auth scheme. For 403, check token scopes, resource ownership, and IP allowlists.

Why does my GraphQL query return HTTP 200 but no data?▼

GraphQL servers often return HTTP 200 even when the query fails, placing failure details in the errors field of the response body. Always inspect the errors array regardless of status code and check each error's message and path.

How do I handle 429 rate limit errors in Python requests?▼

Handle 429 responses with exponential backoff that respects the Retry-After and X-RateLimit headers. Retry the request up to five times, sleeping for the Retry-After value or 2^attempt seconds between attempts.

curl vs Python requests for API debugging — which should I use?▼

Use curl via the terminal for quick single-request checks like headers, TLS inspection, and timing breakdowns. Use Python requests for multi-step flows spanning authentication, pagination, and response validation where variables must persist.

Why does my POST request fail with 415 or 400 in Python requests?▼

These errors usually come from a Content-Type and body mismatch, such as passing data= with a JSON header, which sends form-encoded data. Use json= so requests serializes the payload and sets the header automatically.

When should I not use this API debugging approach?▼

Skip this layered HTTP debugging flow for UI rendering issues, database query tuning, or DNS and firewall infrastructure problems, which should be escalated to the appropriate specialty. It targets application-layer API failures only.