class SdkError(Exception):
    pass


class ValidationError(SdkError):
    pass


class NetworkError(SdkError):
    pass


class ApiError(SdkError):
    def __init__(self, status_code, body, message, url, params):
        super(ApiError, self).__init__(message)
        self.status_code = status_code
        self.body = body
        self.message = message
        self.url = url
        self.params = params


class AuthError(ApiError):
    pass


class RateLimitError(ApiError):
    pass


class NotFoundError(ApiError):
    pass


class ServerError(ApiError):
    pass
