Newer
Older
package apierrors
// APIError is the base API error type.
type APIError struct {
Success bool `json:"success"`
StatusCode int `json:"errorcode"`
Description string `json:"description"`
PolrStyle bool `json:"-"`
}
// Generic errors (Pomf style)
var (
// BadToken is a 401 unauthorized error.
BadToken = APIError{false, 401, "bad token", false}
// Unauthorized is a 401 unauthorized error.
Unauthorized = APIError{false, 401, "unauthorized", false}
// InvalidJSONPayload is a 400 bad request error.
InvalidJSONPayload = APIError{false, 400, "invalid JSON payload", false}
// EmailOrUsernameNotSupplied is a 400 bad request error.
EmailOrUsernameNotSupplied = APIError{false, 400, "email or username not provided", false}
// InvalidEmailOrUsername is a 400 bad request error.
InvalidEmailOrUsername = APIError{false, 400, "invalid email or username", false}
// UserExists is a 409 conflict error.
UserExists = APIError{false, 409, "user with that email or username already exists", false}
// InvalidOffsetOrLimit is a 400 bad request error.
InvalidOffsetOrLimit = APIError{false, 400, "invalid offset or limit query paramters", false}
// OffsetTooLarge is a 400 bad request error.
LimitTooLarge = APIError{false, 400, "limit is too big", false}
// NoObjectFound is a 404 not found error.
NoObjectFound = APIError{false, 404, "no object found", false}
// AlreadyDeleted is a 410 gone error.
AlreadyDeleted = APIError{false, 410, "already deleted", false}
// InsufficientTokens is a 429 too many requests error.
InsufficientTokens = APIError{false, 429, "too many requests", false}
// BadFileID is a 400 bad request error.
BadFileID = APIError{false, 400, "bad file ID", false}
// InvalidBanFileReason is a 400 bad request error.
InvalidBanFileReason = APIError{false, 400, "invalid reason, must be an integer from 0 to 3 inclusive", false}
// InvalidBanFileMalwareName is a 400 bad request error.
InvalidBanFileMalwareName = APIError{false, 400, "malware_name is required when reason is 1 (malware)", false}
// FileIsAlreadyBanned is a 409 conflict error.
FileIsAlreadyBanned = APIError{false, 409, "file is already banned", false}
// CannotQuarantineDueToNoMatchingObjects is a 404 not found error.
CannotQuarantineDueToNoMatchingObjects = APIError{false, 404, "cannot quarantine due to no matching objects", false}
// FileIsNotBanned is a 404 not found error.
FileIsNotBanned = APIError{false, 404, "specified file is not banned", false}
// InvalidObjectFilter is a 400 bad request error.
InvalidObjectFilter = APIError{false, 400, `invalid filter, must be "", "files" or "links"`, false}
)
// Pomf errors
var (
// ContentLengthRequired is a 411 length required error.
ContentLengthRequired = APIError{false, 411, "Content-Length header required", false}
// InvalidContentLength is a 400 bad request error.
InvalidContentLength = APIError{false, 400, "invalid Content-Length header, should be an integer", false}
// BodyTooLarge is a 413 payload too large error.
BodyTooLarge = APIError{false, 413, "request body too large, DO NOT reattempt upload", false}
// NoFilesInRequest is a 400 bad request error.
NoFilesInRequest = APIError{false, 400, "no files[] present in multipart/form-data body", false}
// TooManyFilesInRequest a 400 bad request error.
TooManyFilesInRequest = APIError{false, 400, "too many files[] present in multipart/form-data body", false}
// InternalServerError is a 500 internal server error.
InternalServerError = APIError{false, 500, "internal server error", false}
// FileIsBanned is a 409 conflict error.
FileIsBanned = APIError{false, 409, "file is banned", false}
)
// Polr errors
var (
// UnauthorizedPolr is a 401 unauthorized error.
UnauthorizedPolr = APIError{false, 400, "unauthorized", true}
// InvalidPolrAction is a 400 bad request error.
InvalidPolrAction = APIError{false, 400, `invalid action, must be "shorten"`, true}
// InvalidPolrURL is a 400 bad request error.
InvalidPolrURL = APIError{false, 400, "invalid URL", true}
// InternalServerErrorPolr is a 500 internal server error.
InternalServerErrorPolr = APIError{false, 500, "internal server error", true}
)