The Bermuda Commercial Bank RESTful Open Banking API uses standard HTTP status codes to indicate the result of API requests. This section outlines the most common response codes and includes examples of potential error messages.
The request was successful and a valid response object is returned.
Example:
{
"id": "12345",
"status": "COMPLETED",
"data": {
"accountNumber": "1000078766",
"balance": "1000.00"
}
}The request was accepted for asynchronous processing. This is expected for background-job workflows such as virtual account creation.
Example:
{
"jobId": "550e8400-e29b-41d4-a716-446655440001",
"status": "Pending",
"statusUrl": "https://api.bcb.bm/v1/jobs/550e8400-e29b-41d4-a716-446655440001",
"resultUrl": "https://api.bcb.bm/v1/jobs/550e8400-e29b-41d4-a716-446655440001/results"
}The request is malformed or contains invalid parameters.
Example:
"Invalid request parameters"Virtual Accounts examples:
- creating a virtual account in a currency that has not been provisioned for your client
- attempting a VAS flow that is not allowed, such as virtual account to virtual account transfer
Authentication is missing or invalid.
Example:
"Authentication failed"Access is denied—typically due to IP restrictions or insufficient permissions.
Example:
"IP address not allowed"The requested resource could not be found. Ensure the endpoint and identifiers are correct.
Example:
"Account not found"The request could not be completed due to a conflict with the current state of the resource.
Example:
"Conflict detected"You’ve exceeded the allowed request quota. Wait until the rate limit resets before trying again.
Example:
{
"error": "Rate limit exceeded",
"message": "You have exceeded the 300 requests per 60 minutes limit. Please wait for the rate limit to reset.",
"retry_after": "60 minute(s)"
}An unexpected error occurred on the server. Try again later or contact support.
Example:
"An unknown error occurred"- Always validate inputs before making API requests.
- Implement error handling for each status code.
- Use the
retry_aftervalue to manage rate limit retries. - For Virtual Accounts background jobs, always inspect
GET /v1/jobs/{jobId}andGET /v1/jobs/{jobId}/resultsrather than relying on the initial202alone. - For VAS-specific failure patterns, read the Virtual Accounts Troubleshooting guide.
- Contact support for persistent issues at 📧 api@bcb.bm.