Error status codes in the Nebula API
Salto Nebula uses gRPC error codes to indicate the success or failure of an API request.
Summary of status codes
Status | Description |
---|---|
OK | Not an error, returned on success. |
INVALID_ARGUMENT | The request was unacceptable, often due to missing a required parameter. |
NOT_FOUND | The requested resource does not exist. |
ALREADY_EXISTS | The entity that a client attempted to create already exists. |
PERMISSION_DENIED | The caller does not have permission to execute the specified operation. |
FAILED_PRECONDITION | The operation was canceled because the conditions required for the operation were not met. For example, an access right cannot be deleted because it's actively being used by a user. |
INTERNAL | Internal errors. This means that some invariants expected by the underlying system have been broken. This error code is reserved for serious errors. |
UNAVAILABLE | The service is currently unavailable. This might occur if a resource is blocked by another process. This is often a transient condition, which can be corrected by retrying later. |
UNAUTHENTICATED | The request has not been applied because it lacks valid credentials for the target resource. |
To allow for future enhancements, the Nebula API may introduce new, more granular error codes over time. When new error codes are added, they will not replace or alter the meaning of existing ones.
We strongly recommend that you design your client applications to handle unexpected error codes gracefully. If your application encounters an error code it does not recognize, it should treat it as a generic or unknown error.