export type CreateApiFiberV1NaturalLanguageSearchProfilesArgs = {body: {query: string, pageSize?: number | undefined, getDetailedEducation?: boolean | undefined, getDetailedWorkExperience?: boolean | undefined, cursor?: string | undefined}}; export type CreateApiFiberV1NaturalLanguageSearchProfilesOptions = {baseUrl?: string | undefined, fetch?: typeof fetch | undefined}; /** * Takes free-form text (e.g., 'Software engineers in US with 5+ years of experience') and returns a list of matching profiles. The endpoint interprets natural language queries and applies structured filters such as job titles, seniority, skills, locations, past jobs, education, and languages to identify relevant people. Pagination billing: call the first page normally and save billing.requestId from the Orthogonal /v1/run response. For later page, offset, or cursor calls on the same logical search, pass parentRequestId with unchanged non-pagination parameters. Valid continuation calls still get their own request IDs and quoted price, but are charged 0. Changing filters starts a new billable request. * * POST /fiber/v1/natural-language-search/profiles */ export const createApiFiberV1NaturalLanguageSearchProfiles = async (args: CreateApiFiberV1NaturalLanguageSearchProfilesArgs, options?: CreateApiFiberV1NaturalLanguageSearchProfilesOptions) => { const {baseUrl = "https://api.orthogonal.com/mpp", fetch: fetchFn = fetch} = options ?? {} const query = new URLSearchParams() const headers = new Headers() headers.set('content-type', "application/json") const url = `${baseUrl.replace(/\/+$/, '')}/fiber/v1/natural-language-search/profiles${query.size > 0 ? `?${query}` : ''}` const res = await fetchFn(url, {method: "POST", headers, body: JSON.stringify(args.body)}) if (!res.ok) throw new Error(`Request failed with status ${res.status}`, {cause: {status: res.status, body: await res.text()}}) return undefined };