class GoMemoryError(Exception):
    """Base exception for the GoMemory SDK."""
    pass

class APIError(GoMemoryError):
    """Exception raised when the server returns an APIError struct."""
    def __init__(self, status: int, message: str, error_details: str = ""):
        self.status = status
        self.message = message
        self.error_details = error_details
        super().__init__(f"HTTP {status} - {message} ({error_details})")