import { RoutingEngineSDK, RoutingEngineAPIError, ApiErrorResponse } from 'routing-engine-sdk';
const sdk = new RoutingEngineSDK({
api: { apiKey: 'your-api-key' },
});
try {
const response = await sdk.quote.request({
fromChain: 'arbitrum',
toChain: 'avax',
tokenIn: 'TBTC',
tokenOut: 'WETH',
network: 'mainnet',
amount: '100.00',
slippageBps: 75,
recipient: '0x1234567890123456789012345678901234567890',
});
console.log(response);
} catch (e) {
if (e instanceof RoutingEngineAPIError) {
console.error('Status:', e.statusCode);
console.error('Message:', e.message);
if (e.body && typeof e.body === 'object' && 'error' in e.body) {
const errBody = e.body as ApiErrorResponse;
console.error('Code:', errBody.error.code);
console.error('Details:', errBody.error.details);
console.error('Request ID:', errBody.meta.requestId);
}
} else {
throw e;
}
}