Error Codes

3 min read

Error Codes

Reference for API error codes returned by the GoVista API.

HTTP Status Codes

| Code | Meaning | Description | |------|---------|-------------| | 200 | OK | Request succeeded | | 201 | Created | Resource created successfully | | 204 | No Content | Request succeeded, no response body | | 400 | Bad Request | Invalid request parameters | | 401 | Unauthorized | Missing or invalid API key | | 403 | Forbidden | Valid key but insufficient permissions | | 404 | Not Found | Resource does not exist | | 409 | Conflict | Resource already exists or state conflict | | 422 | Unprocessable | Valid request but semantic errors | | 429 | Too Many Requests | Rate limit exceeded | | 500 | Server Error | Internal server error |

Application Error Codes

Authentication Errors:

  • AUTH_INVALID_KEY — API key is invalid or expired
  • AUTH_INSUFFICIENT_SCOPE — Key does not have the required scope
  • AUTH_EXPIRED_SESSION — Session has expired, re-authenticate

Device Errors:

  • DEVICE_NOT_FOUND — Device ID does not exist
  • DEVICE_OFFLINE — Cannot send command to offline device
  • DEVICE_ALREADY_PAIRED — Device is already paired to an organization
  • PAIRING_CODE_EXPIRED — The 6-character pairing code has expired
  • PAIRING_CODE_INVALID — The pairing code is incorrect

Content Errors:

  • CONTENT_NOT_FOUND — Content asset does not exist
  • CONTENT_TOO_LARGE — File exceeds the maximum upload size
  • CONTENT_INVALID_FORMAT — Unsupported file format
  • CONTENT_PROCESSING_FAILED — Server could not process the uploaded file

Playlist Errors:

  • PLAYLIST_NOT_FOUND — Playlist does not exist
  • PLAYLIST_EMPTY — Cannot deploy an empty playlist
  • PLAYLIST_ITEM_NOT_FOUND — Content item in playlist was deleted

Always check the error.code field in error responses for programmatic error handling. The error.message field provides human-readable details useful for debugging.

Schedule Errors:

  • SCHEDULE_NOT_FOUND — Schedule does not exist
  • SCHEDULE_CONFLICT — Time rule conflicts with existing rules
  • SCHEDULE_INVALID_RULE — Rule configuration is invalid

Rate Limit Errors:

  • RATE_LIMIT_EXCEEDED — Too many requests, check the Retry-After header

Handling Errors

Best practices:

1. Always check the HTTP status code first 2. Parse the error code for programmatic handling 3. Log the full error response for debugging 4. Implement exponential backoff for 429 errors 5. Contact support for persistent 500 errors

Do not retry on 400, 401, 403, or 404 errors. These indicate a problem with your request that needs to be fixed, not a temporary server issue. Only retry on 429 and 500 errors.

Was this article helpful?