Understanding Responses
GraphQL Response Structure
Every GraphQL response has a consistent structure with up to three fields:
| Field | Type | Description |
|---|---|---|
| data | Object | null | Contains the requested data. Shape matches your query. Null if query completely failed. |
| errors | Array | List of errors that occurred. May exist alongside partial data. |
| extensions | Object | Server-specific metadata (tracing, performance hints, etc.). |
Successful Response
A successful response contains data that matches your query structure:
Query
Response
Error Responses
GraphQL errors have a structured format:
Error Fields
- • message - Human-readable error description
- • locations - Where in the query the error occurred
- • path - Which field caused the error
- • extensions - Additional error info (error codes, etc.)
Common Error Types
- • Validation - Invalid query syntax
- • Authorization - Not allowed to access field
- • Not Found - Requested resource doesn't exist
- • Internal - Server-side error
Partial Data with Errors
Unlike REST, GraphQL can return both data AND errors in the same response. This happens when some fields succeed and others fail:
Always Check for Errors
Even when data is present, check the errors array. Some fields may have failed while others succeeded.
Response Panel Features
Tigrister provides several tools for working with responses:
Body Tab
- • Format - Pretty-print JSON with indentation
- • Minify - Compact JSON (remove whitespace)
- • Copy - Copy response to clipboard
- • Syntax highlighting - JSON is color-coded
Headers Tab
View HTTP response headers. Useful for checking cache headers, rate limit info, or server version.
Detail Tab
Technical details about the request:
- • Connection info - Server address and port
- • TLS info - Protocol version and cipher suite
- • Certificate info - Server certificate details
- • DNS info - Resolved IP addresses
- • Size breakdown - Request/response sizes
HTTP Status Codes
GraphQL typically returns HTTP 200 even for errors, but some cases use other codes:
| Status | Meaning | When |
|---|---|---|
| 200 | OK | Query executed (may still have GraphQL errors in response) |
| 400 | Bad Request | Invalid JSON body or malformed GraphQL syntax |
| 401 | Unauthorized | Missing or invalid authentication |
| 403 | Forbidden | Authenticated but not authorized |
| 500 | Server Error | Unhandled server exception |
Debugging Tips
Check Error Locations
The locations field tells you exactly which line and column caused the error.
Follow the Path
The path array shows the field hierarchy that led to the error (e.g., ["user", "posts", 0, "author"]).
Check Extensions
Error codes in extensions help identify the error type programmatically.
Use Detail Tab for Performance
Slow queries? Check timing breakdown to identify bottlenecks (DNS, TLS, server processing).