Skip to content

Error Handling

The SDK uses a structured error system for reliable error handling:

import { SDKError, isSDKError } from '@funtico/gameloop-sdk';
try {
const userInfo = await sdk.getUserInfo();
} catch (error) {
if (isSDKError(error)) {
console.error('SDK Error:', error.name, error.status);
switch (error.name) {
case 'auth_error':
// User needs to re-authenticate
console.log('Please log in again');
await sdk.signInWithFuntico(window.location.href);
break;
case 'internal_server_error':
// Server or network issues
console.error('Service temporarily unavailable');
break;
}
} else {
console.error('Unexpected error:', error);
}
}
Error TypeStatus CodesDescriptionRecommended Action
auth_error401, 403Authentication required or expiredRedirect to login
internal_server_error400, 500+Server or request errorsShow error message, retry
class SDKError {
name: 'auth_error' | 'internal_server_error';
status: number;
}
// Type guard function
function isSDKError(error: unknown): error is SDKError