Skip to main content
Glama
linkedin-validator.ts851 B
import { InvalidCompanyDataError } from '@/errors/company-errors.js'; const LINKEDIN_DOMAIN = 'linkedin.com'; export class LinkedInUrlValidator { static validate(rawUrl: string): void { try { const url = new URL(rawUrl); if (!LinkedInUrlValidator.isValidHostname(url.hostname)) { throw new InvalidCompanyDataError( 'LinkedIn URL must be a valid LinkedIn URL' ); } } catch (error) { if (error instanceof InvalidCompanyDataError) { throw error; } throw new InvalidCompanyDataError('LinkedIn URL must be a valid URL'); } } static isValidHostname(hostname: string): boolean { const normalizedHostname = hostname.toLowerCase(); return ( normalizedHostname === LINKEDIN_DOMAIN || normalizedHostname.endsWith(`.${LINKEDIN_DOMAIN}`) ); } }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/kesslerio/attio-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server