Documentation Index
Fetch the complete documentation index at: https://docs.xentfi.com/llms.txt
Use this file to discover all available pages before exploring further.
Error Response Format
All error responses follow this structure:Error Fields
| Field | Type | Description |
|---|---|---|
success | boolean | Always false for errors |
code | string | Machine-readable error code |
message | string | Human-readable error description |
details | object | Additional error context (optional) |
timestamp | string | ISO 8601 timestamp of the error |
requestId | string | Unique identifier for the request |
HTTP Status Codes
2xx - Success
| Code | Meaning | Description |
|---|---|---|
| 200 | OK | Request succeeded |
| 201 | Created | Resource created successfully |
| 204 | No Content | Request succeeded, no response body |
4xx - Client Errors
| Code | Meaning | Description |
|---|---|---|
| 400 | Bad Request | Invalid request format or parameters |
| 401 | Unauthorized | Missing or invalid authentication |
| 403 | Forbidden | Valid auth but insufficient permissions |
| 404 | Not Found | Requested resource doesn’t exist |
| 409 | Conflict | Resource already exists |
| 422 | Unprocessable Entity | Validation failed |
| 429 | Too Many Requests | Rate limit exceeded |
5xx - Server Errors
| Code | Meaning | Description |
|---|---|---|
| 500 | Internal Server Error | Generic server error |
| 502 | Bad Gateway | Upstream service error |
| 503 | Service Unavailable | Temporary service disruption |
| 504 | Gateway Timeout | Upstream timeout |
Error Codes
Authentication Errors
| Code | HTTP Status | Description |
|---|---|---|
UNAUTHORIZED | 401 | Missing or invalid API key/appId |
INVALID_TOKEN | 401 | Invalid JWT token |
TOKEN_EXPIRED | 401 | Token has expired |
FORBIDDEN | 403 | Insufficient permissions |
Validation Errors
| Code | HTTP Status | Description |
|---|---|---|
VALIDATION_ERROR | 422 | Request validation failed |
BAD_REQUEST | 400 | Malformed request |
MISSING_FIELD | 422 | Required field missing |
INVALID_FIELD | 422 | Field value invalid |
Resource Errors
| Code | HTTP Status | Description |
|---|---|---|
NOT_FOUND | 404 | Resource not found |
CONFLICT | 409 | Resource already exists |
DUPLICATE_ENTRY | 409 | Duplicate record |
Rate Limit Errors
| Code | HTTP Status | Description |
|---|---|---|
RATE_LIMIT_EXCEEDED | 429 | Too many requests |
QUOTA_EXCEEDED | 429 | Monthly quota exceeded |
Payment Errors
| Code | HTTP Status | Description |
|---|---|---|
INSUFFICIENT_FUNDS | 400 | Insufficient balance |
PAYMENT_FAILED | 400 | Payment processing failed |
PAYMENT_EXPIRED | 400 | Payment session expired |
INVALID_NETWORK | 400 | Unsupported network |
Wallet Errors
| Code | HTTP Status | Description |
|---|---|---|
WALLET_NOT_FOUND | 404 | Wallet doesn’t exist |
INVALID_ADDRESS | 400 | Invalid blockchain address |
MONITORING_FAILED | 400 | Failed to enable monitoring |
Error Examples
Validation Error (422)
Rate Limit Error (429)
Authentication Error (401)
Not Found Error (404)
Handling Errors by Type
Validation Errors
Rate Limit Errors
Authentication Errors
Retry Strategy
Recommended Retry Logic
Exponential Backoff
| Retry | Delay | Total Wait |
|---|---|---|
| 1 | 1 second | 1 second |
| 2 | 2 seconds | 3 seconds |
| 3 | 4 seconds | 7 seconds |
| 4 | 8 seconds | 15 seconds |
| 5 | 16 seconds | 31 seconds |
Idempotent Retries
For state-changing operations, use idempotency keys:Request ID Tracking
Every error response includes arequestId. Use this when contacting support:
Common Error Scenarios
400 Bad Request - Invalid JSON
400 Bad Request - Invalid JSON
Cause: Malformed JSON in request body.Solution: Validate JSON syntax before sending.
401 Unauthorized - Missing headers
401 Unauthorized - Missing headers
403 Forbidden - Insufficient scope
403 Forbidden - Insufficient scope
Cause: API key lacks required permissions.Solution: Generate key with appropriate scopes.
404 Not Found - Wrong endpoint
404 Not Found - Wrong endpoint
Cause: Incorrect URL path.Solution: Verify endpoint path in documentation.
409 Conflict - Duplicate resource
409 Conflict - Duplicate resource
Cause: Resource already exists.Solution: Use unique identifiers or update existing.
429 Too Many Requests
429 Too Many Requests
Cause: Rate limit exceeded.Solution: Implement exponential backoff or upgrade plan.
Monitoring Errors
Dashboard
Monitor API errors in the XentFi Dashboard:- Error rate by endpoint
- Top error codes
- Recent failures
- Request ID lookup
Webhooks
Configure error alerting via webhooks:Support
When contacting support, always include:- The
requestIdfrom the error response - Timestamp of the error
- Request details (method, endpoint, body)
- Response headers
Related Resources
- Authentication Guide - Fix authentication errors
- Rate Limits - Understand rate limiting
- Idempotency - Safe request retries

