import {
SocialRouter,
SocialRouterError,
AuthenticationError,
InsufficientCreditsError,
RateLimitError,
} from "@socialrouter/sdk";
const sr = new SocialRouter({ apiKey: "sr_live_your_key" });
try {
const extraction = await sr.extract({
url: "https://linkedin.com/in/example",
provider: "apify/linkedin/profile.info",
});
} catch (err) {
if (err instanceof RateLimitError) {
// err.retryAfter — seconds until the rate limit resets
console.log(`Rate limited. Retry after ${err.retryAfter}s`);
} else if (err instanceof InsufficientCreditsError) {
console.log("Add credits:", err.message);
} else if (err instanceof AuthenticationError) {
console.log("Check your API key:", err.message);
} else if (err instanceof SocialRouterError) {
console.log(`API error [${err.code}]: ${err.message}`);
}
}