Components
Document API response fields with type information and structure
The <ResponseField> component documents fields in API responses, showing their types, requirements, and nested structure. Similar to ParamField but designed specifically for response documentation.
## Response Body
<ResponseField name="success" type="boolean" required>
Whether the request was successful.
</ResponseField>
<ResponseField name="data" type="object" required>
Response data object.
</ResponseField>
<ResponseField name="id" type="string" required pre={["data"]}>
Order identifier (UUID).
</ResponseField>
<ResponseField name="status" type="string" required pre={["data"]}>
Order status: `pending`, `processing`, `completed`, `cancelled`
</ResponseField>
<ResponseField name="total" type="number" required pre={["data"]}>
Total order amount in cents.
</ResponseField>
<ResponseField name="customer" type="object" required pre={["data"]}>
Customer information.
</ResponseField>
<ResponseField name="email" type="string" required pre={["data", "customer"]}>
Customer's email address.
</ResponseField>
<ResponseField name="name" type="string" required pre={["data", "customer"]}>
Customer's full name.
</ResponseField>
<ResponseField name="items" type="array" required pre={["data"]}>
Array of ordered items.
</ResponseField>
<ResponseField
name="product_id"
type="string"
required
pre={["data", "items[]"]}
>
Product identifier.
</ResponseField>
<ResponseField name="quantity" type="number" required pre={["data", "items[]"]}>
Number of units ordered.
</ResponseField>
<ResponseField name="price" type="number" required pre={["data", "items[]"]}>
Price per unit in cents.
</ResponseField>
<ResponseField name="created_at" type="string" required pre={["data"]}>
ISO 8601 timestamp of order creation.
</ResponseField>
<ResponseField name="updated_at" type="string" required pre={["data"]}>
ISO 8601 timestamp of last update.
</ResponseField>## Pagination Response
<ResponseField name="data" type="array" required>
Array of result items.
</ResponseField>
<ResponseField name="pagination" type="object" required>
Pagination metadata.
</ResponseField>
<ResponseField name="page" type="number" required pre={["pagination"]}>
Current page number (1-indexed).
</ResponseField>
<ResponseField name="per_page" type="number" required pre={["pagination"]}>
Items per page.
</ResponseField>
<ResponseField name="total" type="number" required pre={["pagination"]}>
Total number of items across all pages.
</ResponseField>
<ResponseField name="total_pages" type="number" required pre={["pagination"]}>
Total number of pages.
</ResponseField>
<ResponseField name="has_next" type="boolean" required pre={["pagination"]}>
Whether there are more pages available.
</ResponseField>
<ResponseField name="has_prev" type="boolean" required pre={["pagination"]}>
Whether there are previous pages available.
</ResponseField>Machine-readable error code.
Examples: invalid_request, authentication_failed, rate_limited
## Error Response
<ResponseField name="success" type="boolean" required>
Always `false` for errors.
</ResponseField>
<ResponseField name="error" type="object" required>
Error details object.
</ResponseField>
<ResponseField name="code" type="string" required pre={["error"]}>
Machine-readable error code.
**Examples:** `invalid_request`, `authentication_failed`, `rate_limited`
</ResponseField>
<ResponseField name="message" type="string" required pre={["error"]}>
Human-readable error message.
</ResponseField>
<ResponseField name="details" type="object" pre={["error"]}>
Additional error context (validation errors, field-specific issues).
</ResponseField>Next, learn about the CodeGroup Component for displaying code in multiple languages.