{"api":"Job search","apiRows":{"Employee profile":2944,"Cached employee profile":1265,"Employee email":2347,"Cached employee email":971,"Email validation":3515,"Cached email validation":611,"Employee phone":820,"Cached employee phone":464,"Company profile":958,"Cached company profile":165,"Company headcount":146,"Cached company headcount":94,"Phone validation":572,"Cached phone validation":165,"Post comments":325,"Post reactions":303,"Employee lookalikes":160,"Cached employee lookalikes":54,"Company lookalikes":470,"Cached company lookalikes":163,"Company technologies":131,"Cached company technologies":187,"Company job count":53,"Employee posts":320,"Cached employee posts":14,"Company posts":307,"Cached company posts":10,"Company funding":100,"Cached company funding":133,"Company jobs":114,"Cached company jobs":30,"Employee search":828,"Cached employee search":214,"Company search":315,"Cached company search":181,"Job search":350,"Cached job search":30,"Reverse email lookup":275,"Cached reverse email lookup":358,"Post search":239,"Cached post search":57,"Post details":377,"Job details":351,"Employee comments":179,"Cached employee comments":14,"Employee reactions":149,"Post reposts":106,"Employee recommendations":80,"Job lookalikes":34,"Employee articles":47,"Company enrichment":441,"Cached company enrichment":1043,"People search":542,"Cached people search":1088,"Company discovery":295,"Cached company discovery":1237,"Job postings":19,"Cached job postings":192,"Job posting details":15,"Cached job posting details":53,"Person enrichment":88,"Cached person enrichment":143,"Leadership changes":17,"Cached leadership changes":71,"Company hierarchy":93},"treeCounts":{"Employee profile":{"best":90,"top":3},"Cached employee profile":{"best":65,"top":3},"Employee email":{"best":108,"top":3},"Cached employee email":{"best":42,"top":3},"Email validation":{"best":151,"top":3},"Cached email validation":{"best":27,"top":3},"Employee phone":{"best":59,"top":3},"Cached employee phone":{"best":28,"top":3},"Company profile":{"best":60,"top":3},"Cached company profile":{"best":13,"top":3},"Company headcount":{"best":15,"top":3},"Cached company headcount":{"best":7,"top":3},"Phone validation":{"best":42,"top":3},"Cached phone validation":{"best":15,"top":3},"Post comments":{"best":26,"top":3},"Post reactions":{"best":24,"top":3},"Employee lookalikes":{"best":6,"top":3},"Cached employee lookalikes":{"best":6,"top":3},"Company lookalikes":{"best":23,"top":3},"Cached company lookalikes":{"best":12,"top":3},"Company technologies":{"best":21,"top":3},"Cached company technologies":{"best":19,"top":3},"Company job count":{"best":6,"top":3},"Employee posts":{"best":31,"top":3},"Cached employee posts":{"best":2,"top":2},"Company posts":{"best":31,"top":3},"Cached company posts":{"best":1,"top":1},"Company funding":{"best":15,"top":3},"Cached company funding":{"best":12,"top":3},"Company jobs":{"best":28,"top":3},"Cached company jobs":{"best":5,"top":3},"Employee search":{"best":32,"top":3},"Cached employee search":{"best":16,"top":3},"Company search":{"best":18,"top":3},"Cached company search":{"best":12,"top":3},"Job search":{"best":28,"top":3},"Cached job search":{"best":3,"top":3},"Reverse email lookup":{"best":24,"top":3},"Cached reverse email lookup":{"best":25,"top":3},"Post search":{"best":23,"top":3},"Cached post search":{"best":5,"top":3},"Post details":{"best":36,"top":3},"Job details":{"best":28,"top":3},"Employee comments":{"best":15,"top":3},"Cached employee comments":{"best":2,"top":2},"Employee reactions":{"best":12,"top":3},"Post reposts":{"best":8,"top":3},"Employee recommendations":{"best":6,"top":3},"Job lookalikes":{"best":3,"top":3},"Employee articles":{"best":5,"top":3},"Company enrichment":{"best":45,"top":3},"Cached company enrichment":{"best":59,"top":3},"People search":{"best":49,"top":3},"Cached people search":{"best":48,"top":3},"Company discovery":{"best":38,"top":3},"Cached company discovery":{"best":64,"top":3},"Job postings":{"best":5,"top":3},"Cached job postings":{"best":17,"top":3},"Job posting details":{"best":12,"top":3},"Cached job posting details":{"best":5,"top":3},"Person enrichment":{"best":11,"top":3},"Cached person enrichment":{"best":14,"top":3},"Leadership changes":{"best":4,"top":3},"Cached leadership changes":{"best":4,"top":3},"Company hierarchy":{"best":12,"top":3}},"bestPages":{"Employee profile":["/best-linkedin-profile-api","Best LinkedIn profile API in 2026"],"Cached employee profile":["/best-cached-linkedin-profile-api","Best cached LinkedIn profile API in 2026"],"Employee email":["/best-email-finder-api","Best email finder API in 2026"],"Cached employee email":["/best-cached-email-finder-api","Best cached email finder API in 2026"],"Email validation":["/best-email-verification-api","Best email verification API in 2026"],"Cached email validation":["/best-cached-email-verification-api","Best cached email verification API in 2026"],"Employee phone":["/best-phone-finder-api","Best phone finder API in 2026"],"Cached employee phone":["/best-cached-phone-finder-api","Best cached phone finder API in 2026"],"Company profile":["/best-linkedin-company-data-api","Best LinkedIn company data API in 2026"],"Cached company profile":["/best-cached-linkedin-company-data-api","Best cached LinkedIn company data API in 2026"],"Phone validation":["/best-phone-validation-api","Best phone validation API in 2026"],"Post comments":["/best-linkedin-post-comment-api","Best LinkedIn post comment API in 2026"],"Post reactions":["/best-linkedin-post-reaction-api","Best LinkedIn post reaction API in 2026"],"Company technologies":["/best-company-technology-api","Best company technology API in 2026"],"Cached company technologies":["/best-cached-company-technology-api","Best cached company technology API in 2026"],"Employee posts":["/best-linkedin-person-post-api","Best LinkedIn person post API in 2026"],"Company posts":["/best-linkedin-company-post-api","Best LinkedIn company post API in 2026"],"Cached company funding":["/best-company-funding-api","Best company funding API in 2026"],"Employee search":["/best-linkedin-people-search-api","Best LinkedIn people search API in 2026"],"Cached employee search":["/best-cached-linkedin-people-search-api","Best cached LinkedIn people search API in 2026"],"Company search":["/best-linkedin-company-search-api","Best LinkedIn company search API in 2026"],"Cached company search":["/best-cached-linkedin-company-search-api","Best cached LinkedIn company search API in 2026"],"Job search":["/best-linkedin-job-search-api","Best LinkedIn job search API in 2026"],"Cached job search":["/best-cached-linkedin-job-search-api","Best cached LinkedIn job search API in 2026"],"Reverse email lookup":["/best-reverse-email-lookup-api","Best reverse email lookup API in 2026"],"Cached reverse email lookup":["/best-cached-reverse-email-lookup-api","Best cached reverse email lookup API in 2026"],"Post search":["/best-linkedin-post-search-api","Best LinkedIn post search API in 2026"],"Post details":["/best-linkedin-post-details-api","Best LinkedIn post details API in 2026"],"Job details":["/best-linkedin-job-details-api","Best LinkedIn job details API in 2026"],"Employee comments":["/best-linkedin-person-comment-api","Best LinkedIn person comment API in 2026"],"Employee reactions":["/best-linkedin-person-reaction-api","Best LinkedIn person reaction API in 2026"],"Cached company enrichment":["/best-company-enrichment-api","Best company enrichment API in 2026"],"People search":["/best-people-search-api","Best people search API in 2026"],"Cached people search":["/best-cached-people-search-api","Best cached people search API in 2026"],"Cached company discovery":["/best-company-discovery-api","Best company discovery API in 2026"],"Cached job postings":["/best-job-postings-api","Best job postings API in 2026"],"Job posting details":["/best-job-posting-details-api","Best job posting details API in 2026"],"Cached person enrichment":["/best-people-enrichment-api","Best people enrichment API in 2026"]},"first":[{"provider":"agdata","api":"Job search","website":"https://agdata.shveik.dev","pricingPage":"https://agdata.shveik.dev/pricing","pitch":"LinkedIn jobs search API for AI agents: send a job title or keywords and an optional location and get up to 50 public job listings as JSON: title, company, location, posting date, employment type, seniority, salary when listed, the listing's URL and its description. Filter by how recently a job was posted.","strengths":[],"aggregators":[],"freshness":null,"fieldFreshness":null,"history":null,"keep":"no limit","use":"lawful use only, with the rights and authority your requests need and returned data handled lawfully; not to violate access controls, harass people, distribute malware, infringe rights, evade a site's security protections or overload the service or a target","plan":"Pay as you go","who":"anyone, with no account or API key, paying each call in USDC from a wallet: x402 on Base, Polygon or Solana, or MPP on Base","billing":"on-demand","charged":"per call","topUp":null,"pay":0,"currency":"USD","exchangeRate":1,"termMonths":null,"from":null,"graduated":null,"units":null,"unit":"usd","renews":null,"expires":null,"costUnits":0.0016,"calls":null,"monthlyCap":null,"perThousand":1.6,"waterfall":null,"listPerThousand":1.6,"overagePerThousand":null,"addons":null,"notFoundPerThousand":0,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":[],"startPerCall":0.0134,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"result","resultsPerPage":null,"resultsCap":50,"perDay":null,"perSecond":null,"concurrent":null,"batch":1,"answer":"in the call","latencyMs":null,"call":null,"method":"POST","path":"/x402/linkedin-jobs","send":"query; limit, location, posted, Idempotency-Key","fields":["job ID","job URL","title","company","company URL","location","posted date","posted ago","employment type","experience level","workplace type","industries","salary","applicants","apply type","apply URL","description"]},{"provider":"AnyAPI","api":"Job search","website":"https://getanyapi.com","pricingPage":"https://getanyapi.com/catalog","pitch":"Cheap job index: title, company, location, posted date, URL. No description, salary, applicant counts, or seniority - for those use linkedin.jobs.","strengths":[],"aggregators":[],"freshness":null,"fieldFreshness":null,"history":null,"keep":"no limit","use":"You are solely responsible for ensuring that your collection and use of Customer Data is lawful. This includes compliance with applicable laws (including data protection, intellectual property, and computer-access laws) and, where they apply to you, the terms of the websites and services from which data originates. [...] Do not collect non-public data (data accessible only behind a login, paywall, or other access control) without authorization from the source. [...] Comply with all data protection and privacy laws that apply to the personal data you collect (including the GDPR and US state privacy laws), including having a legal basis and honoring data-subject rights. Do not collect or use personal data to stalk, harass, dox, surveil, or otherwise harm individuals. Do not build profiles of individuals from sensitive data (such as health, biometric, or precise-location data) without a lawful basis. [...] Do not use the Service to engage in, support, or promote: Any unlawful activity, or any violation of third-party rights. Phishing, malware distribution, or any form of fraud or deception, including advertising or click fraud and obtaining the Service with intent to avoid payment. Spam or unsolicited bulk messaging, or building contact lists for them. Fake engagement: fabricated reviews, votes, followers, accounts, or coordinated disinformation. Harassment, threats, or incitement of violence. Child sexual abuse material in any form: zero tolerance; we report it to the relevant authorities. Violations of export-control or sanctions laws. [...] Do not resell raw access to the Service or operate a service that merely proxies it, without our written agreement.","plan":"Manual top-up","who":"anyone 18 or over, for business or professional use, not in an embargoed jurisdiction or on a restricted-party list","billing":"one-time","charged":null,"topUp":true,"pay":10,"currency":"USD","exchangeRate":1,"termMonths":null,"from":null,"graduated":null,"units":10,"unit":"usd","renews":"never","expires":"never","costUnits":0.00066,"calls":15151.515152,"monthlyCap":null,"perThousand":0.0264,"waterfall":null,"listPerThousand":0.0264,"overagePerThousand":null,"addons":null,"notFoundPerThousand":null,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["468 other calls"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"page","resultsPerPage":25,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":null,"batch":1,"answer":"in the call","latencyMs":3155,"call":"LinkedIn Jobs (index)","method":"POST","path":"/v1/run/linkedin.jobs_thin","send":"query; companyId, cursor, employmentType, experienceLevel, geoId, limit, location, postedLimit, workplaceType, requireFields, source, allowFallbacks, ignoreSources, preferLatencyUnderMs","fields":["company","company URL","created utc","ID","location","logo URL","title","URL","next cursor","found","amount charged","result ID","replayed","serving source","results returned"]},{"provider":"Anysite","api":"Job search","website":"https://anysite.io","pricingPage":"https://anysite.io/pricing/api","pitch":"Search LinkedIn job listings by keywords, location, and filters.","strengths":[],"aggregators":[],"freshness":null,"fieldFreshness":null,"history":null,"keep":"no limit","use":"lawful, legitimate use only; no unsolicited mass messaging, and no reselling or sublicensing of the API, credits or resources without Anysite's written approval; you answer for your lawful rights to the data, the consents and data protection law, and the source sites' terms","plan":"Scale","who":"anyone at least 18 years old or of the age of majority in their jurisdiction","billing":"monthly","charged":null,"topUp":null,"pay":300,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":190000,"unit":"credit","renews":"month","expires":"at every renewal: unused plan credits do not carry over","costUnits":0.04,"calls":4750000,"monthlyCap":null,"perThousand":0.0632,"waterfall":null,"listPerThousand":null,"overagePerThousand":0.116,"addons":null,"notFoundPerThousand":1.5789,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":"never","alsoPaysFor":[],"sharesBudgetWith":["6,270 other calls"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"result","resultsPerPage":null,"resultsCap":1000,"perDay":null,"perSecond":null,"concurrent":null,"batch":1,"answer":"in the call","latencyMs":null,"call":null,"method":"POST","path":"/api/linkedin/search/jobs","send":"count; timeout, keywords, sort, experience_level, job_types, work_types, industry, company, posted_within, location","fields":["job ID","title","job URL","company","company URL","company logo","company ID","location","workplace type","created at","easy apply","applicants","promoted","early applicant","verified hiring","relevance insight","highlight"]},{"provider":"API Direct","api":"Job search","website":"https://apidirect.io","pricingPage":"https://apidirect.io/docs/pricing","pitch":"Search LinkedIn job listings by keyword. Returns job title, company, location, posting date, job type, experience level, workplace type, industry, salary, benefits, full description, and company logo. Supports filtering by recency, job type, company, and location.","strengths":[],"aggregators":[],"freshness":"live","fieldFreshness":null,"history":null,"keep":"no limit","use":"You agree not to use the Service to: Violate any applicable laws, regulations, or third-party rights; Infringe upon intellectual property rights of others; Engage in any activity that could damage, disable, or impair the Service; Attempt to gain unauthorised access to any part of the Service; Use the Service for any illegal, harmful, or fraudulent purposes; Circumvent or attempt to circumvent any rate limits, usage limits, or security measures; Use automated means to create accounts or generate API keys; Harass, abuse, or harm individuals using data obtained through the Service; Scrape our Service [...] You acknowledge that: [...] You are responsible for complying with the terms of service of the underlying platforms (LinkedIn, Twitter/X, Reddit, YouTube, Instagram, etc.) when using data obtained through our Service [...] You agree that: You have a lawful basis for requesting, receiving, and using the data you obtain through the Service [...] You will comply with applicable data protection law, including providing any notices and honouring any rights owed to individuals by you as controller [...] You will not use the Service to identify or target individuals on the basis of special categories of personal data","plan":"Pay per request","who":"at least 18 years old, with the legal capacity to enter into the Terms","billing":"on-demand","charged":"at a threshold","topUp":null,"pay":0,"currency":"USD","exchangeRate":1,"termMonths":null,"from":null,"graduated":null,"units":null,"unit":"request","renews":null,"expires":null,"costUnits":1,"calls":null,"monthlyCap":null,"perThousand":0.24,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"addons":null,"notFoundPerThousand":6,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["142 other calls"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"page","resultsPerPage":25,"resultsCap":1000,"perDay":null,"perSecond":1.39,"concurrent":10,"batch":1,"answer":"in the call","latencyMs":2929,"call":"LinkedIn Jobs","method":"GET","path":"/v1/linkedin/jobs","send":"query; page, sort_by, posted_ago, job_type, company_ids, location_id","fields":["title","job URL","company","company ID","company URL","company logo","location","posted at","employment type","experience level","workplace type","industries","functions","description","salary","benefits","apply URL","applicants","page","results on page"]},{"provider":"Bridgly","api":"Job search","website":"https://bridgly.app","pricingPage":"https://bridgly.app/pricing","pitch":"LinkedIn jobs scraper API: search job listings by keyword, location, remote or hybrid, seniority, job type and date posted, with company and salary.","strengths":[],"aggregators":[],"freshness":"live","fieldFreshness":null,"history":null,"keep":"no limit","use":"The Services may not be used in connection with any commercial endeavors except those that are specifically endorsed or approved by us. [...] As a user of the Services, you agree not to: Systematically retrieve data or other content from the Services to create or compile, directly or indirectly, a collection, compilation, database, or directory without written permission from us. [...] Use any information obtained from the Services in order to harass, abuse, or harm another person. Use the Services in a manner inconsistent with any applicable laws or regulations. Engage in any automated use of the system, such as using scripts to send comments or messages, or using any data mining, robots, or similar data gathering and extraction tools. [...] Use the Services as part of any effort to compete with us or otherwise use the Services and/or the Content for any revenue-generating endeavor or commercial enterprise not approved by us.","plan":"Scale","who":"anyone with the legal capacity to agree to its terms, not a minor where they live","billing":"one-time","charged":null,"topUp":false,"pay":300,"currency":"USD","exchangeRate":1,"termMonths":null,"from":null,"graduated":null,"units":300000,"unit":"credit","renews":"never","expires":"never","costUnits":1,"calls":300000,"monthlyCap":null,"perThousand":1,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"addons":null,"notFoundPerThousand":1,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["almost all 86 endpoints"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"result","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":16.67,"concurrent":null,"batch":1,"answer":"in the call","latencyMs":null,"call":null,"method":"POST","path":"/linkedin/search/jobs","send":"keyword; start, count, location, workplaceType, experienceLevel, jobType, datePosted","fields":["job URN","job ID","job URL","title","company","company URN","company ID","company universal name","company URL","location","salary","posted at","company logo","reposted","verified hiring","keyword","total results","execution time","credits consumed"]},{"provider":"Bright Data","api":"Job search","website":"https://brightdata.com","pricingPage":"https://brightdata.com/pricing/web-scraper","pitch":"Use the Bright Data Scraper API to discover LinkedIn Jobs by Keyword.","strengths":[],"aggregators":[],"freshness":"live","fieldFreshness":null,"history":null,"keep":"no limit","use":"The Client shall not use the Services in violation of applicable law or regulations or any third party rights (including intellectual property rights) and not use the Service in any manner or for any purpose other than as stated in the intended use case provided to Bright Data, if applicable. [...] the Client will only use the Service in accordance with the Acceptable Use Policy, as may be amended from time to time. [...] When using the Data Services, the Client shall not distribute, transmit, reproduce, publish, license, transfer, or sell any Data in order to offer a similar or competitive product. [...] Client’s use of the data collector service is subject to all applicable laws, including without limitation data protection and privacy laws. To the extent applicable to processing of personal data, Client is solely responsible for determining the lawful grounds, providing notices, respecting data subject rights and all other related obligations. [...] Bright Data’s platform, technology, and network (collectively, “Services”) are meant for legitimate and legal purposes only and are subject to the Bright Data Master Service Agreement. [...] Any use of the Bright Data Services for illegal, fraudulent, or abusive activities is strictly prohibited. [...] Forbidden activities include, but are not limited to: Collection of nonpublic information (i.e data behind login); DDoS attacks; Spam: mass posting any mail/message boards/IRC/comments messages and images; Ad fraud or click fraud; Impersonation or spoofing for fraudulent purposes; Creating fake accounts or content; Use of automatic ticket purchasing (ticket-bots); Raffles, lottery, or gambling; Fake engagement (likes, comments, shares, etc.); Gaming or trading of in games items/currency; Reselling of proxies without Bright Data’s prior written approval (see our partners programs); Use of streaming related domains (videos, music or images streaming); Trading crypto/virtual currency or NFT; Any Search Engine Optimization (SEO) manipulation (i.e: fake clicks in search engines results); Posting on classified, used, and resell sites (such as Craig’s list); Completion of surveys in return for a benefit or anything of value; Any form of activity that is in violation of applicable law or regulations or any third party rights","plan":"Pay as you go","who":"anyone 18 or over, not sanctioned or in Russia, Belarus, Syria or Lebanon","billing":"one-time","charged":null,"topUp":true,"pay":null,"currency":"USD","exchangeRate":1,"termMonths":null,"from":null,"graduated":null,"units":null,"unit":"result","renews":null,"expires":null,"costUnits":1,"calls":null,"monthlyCap":null,"perThousand":1.5,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"addons":null,"notFoundPerThousand":null,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["other scrapers in the Web Scraper API library"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"result","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":null,"batch":null,"answer":"in the call or by polling","latencyMs":null,"call":null,"method":"POST","path":"/datasets/v3/scrape?dataset_id=gd_lpfll7v5hcqtkxl6l&type=discover_new&discover_by=keyword","send":"location; keyword, country, time_range, job_type, experience_level, remote, company, selective_search, jobs_to_not_include, location_radius, notify, include_errors, limit_per_input, custom_output_fields","fields":["job URL","job ID","title","company","company ID","location","description","seniority","functions","employment type","industries","salary","company URL","posted at","applicants","discovery input","apply URL","location country code","title ID","company logo","posted date","job poster","application availability","description HTML","base salary","salary standards","easy apply"]},{"provider":"ChocoData","api":"Job search","website":"https://chocodata.com","pricingPage":"https://chocodata.com/pricing","pitch":"Access LinkedIn jobsearch data using our LinkedIn Scraper API. One API request returns clean, structured JSON while we get past CAPTCHAs, IP rate limiting, IP blocking, and headless-browser detection with rotating residential proxies.","strengths":[],"aggregators":[],"freshness":"live","fieldFreshness":null,"history":null,"keep":"no limit","use":"lawful purposes only and not to violate third-party rights; the data you extract remains yours, and you alone answer for its use complying with applicable laws and the data source's terms of service; only data that is publicly accessible; no reselling, sublicensing or distributing the Service without written authorization","plan":"Pay-as-you-go top-up","who":"anyone","billing":"one-time","charged":null,"topUp":true,"pay":null,"currency":"USD","exchangeRate":1,"termMonths":null,"from":null,"graduated":null,"units":null,"unit":"request","renews":"never","expires":"never","costUnits":1,"calls":null,"monthlyCap":null,"perThousand":null,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"addons":null,"notFoundPerThousand":0,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["every dedicated endpoint","Universal Web Scraper API","Batch endpoint"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"page","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":null,"batch":null,"answer":"in the call","latencyMs":1153,"call":"linkedin.jobsearch","method":"GET","path":"/api/v1/linkedin/jobsearch","send":"keywords; location, start, limit","fields":["search parameters","page","total results","position","job ID","title","job URL","company","company URL","location","posted date","posted ago","company logo"]},{"provider":"DataForB2B","api":"Job search","website":"https://dataforb2b.ai","pricingPage":"https://dataforb2b.ai/pricing","pitch":"Search job postings on LinkedIn and Indeed","strengths":[],"aggregators":[],"freshness":null,"fieldFreshness":null,"history":"open only","keep":"until termination, when you must cease all use of the Platform and any data obtained from it","use":"Subject to your compliance with these Terms, DataForB2B grants you a non-exclusive, non-transferable, revocable license to: Access and use the Platform and Services for your internal business purposes; Use Business Contact Information for B2B sales, marketing, and business development activities; Integrate the API with your internal systems and applications. You must not: Resell, redistribute, or provide access to the Services to third parties; Use the Services to create a competing product or service; Scrape, extract, or systematically download data from the Platform beyond API usage limits; Reverse engineer, decompile, or disassemble any part of the Platform; Use the Services for consumer marketing, credit decisions, or any FCRA-regulated purpose; Circumvent usage limits, rate limits, or other technical restrictions; Share API keys or account credentials with unauthorized parties; Use the Services in violation of applicable laws including GDPR, CCPA, CAN-SPAM, or TCPA","plan":"Growth","who":"anyone, for their internal business purposes","billing":"monthly","charged":null,"topUp":null,"pay":499,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":null,"unit":"result","renews":"month","expires":null,"costUnits":0,"calls":null,"monthlyCap":25000,"perThousand":19.96,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"addons":null,"notFoundPerThousand":0,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["Search People","Search Company","Enrich Profile","Enrich Company","Search Social Posts"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"result","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":25,"concurrent":null,"batch":1,"answer":"in the call","latencyMs":null,"call":null,"method":"POST","path":"/search/jobs","send":"nothing required; platform, keyword, location, distance, job_type, work_type, experience_level, date_posted, company_ids, company_name, fetch_description, offset, count","fields":["job ID","platform","title","job URL","employment type","seniority","functions","remote","company","company URL","company logo","company industry","location","salary","posted date","posted ago","description","total results","offset","results returned","has more","credits consumed"]},{"provider":"Edges","api":"Job search","website":"https://edges.run","pricingPage":"https://edges.run/pricing","pitch":"Search for job postings on LinkedIn using keywords, location, company, and other filters.","strengths":[],"aggregators":[],"freshness":"live","fieldFreshness":null,"history":null,"keep":"no limit","use":"to automate any task on a Third-Party Service, to the extent that such automation is lawful. For clarification purposes, the Client cannot carry out any automation that would infringe on a third-party's rights. [...] The Client will use the Services in compliance with the applicable laws and regulations (in particular the Data Protection Laws and Regulations) and the Documentation; [...] The Client will respect all intellectual property rights held by third parties, including those of Third-Party Services. [...] The Client warrants Edges Labs that it has the rights and/or authorizations to collect the Data on Third-Party Services and that such collection complies with applicable law and regulations. [...] The Client agrees not to [...] license, sublicense, sell, assign, resell, rent, lease, loan, transfer, assign, distribute, share, copy the Services, or all or any part of the Platform, including on a time-sharing basis, or in any other way commercially exploit the Services or make them available to third parties other than End Users; [...] use the Services or any part of the Platform to store, transmit, upload, link to, post or otherwise store any material (e.g., documents, data, text, images or other content) that is unlawful, racist, hateful, abusive, defamatory, obscene, libelous, deceptive, unfair, inaccurate/misleading, discriminatory, or in any way violates these TOS, any applicable laws and regulations [...]; use the Services or any part of the Platform for any purpose other than its Purpose; use the Services or any part of the Platform in a manner that harms (or is likely to harm) any third party; use the Services or all or part of the Platform to store or transmit any sensitive data within the meaning of Article 9 of the GDPR; [...] use or launch any automated system that accesses all or part of the Services (i.e., bot) in a manner that sends more request messages to a Service server in a given period of time than a human can reasonably produce in that same time period, by using a conventional online web browser","plan":"SILVER, 20,000 credits / month","who":"professionals (anyone acting for their commercial, industrial or liberal activity)","billing":"monthly","charged":null,"topUp":null,"pay":440,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":20000,"unit":"credit","renews":"month","expires":"no rollover: credits reset each month","costUnits":1.5,"calls":13333.333333,"monthlyCap":null,"perThousand":32.985,"waterfall":null,"listPerThousand":null,"overagePerThousand":32.985,"addons":null,"notFoundPerThousand":0,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["70 other calls"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"result","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":10,"concurrent":null,"batch":1,"answer":"in the call","latencyMs":null,"call":"Search LinkedIn Jobs","method":"POST","path":"/actions/linkedin-search-jobs/run/live","send":"input.linkedin_job_search_url (a LinkedIn Job Search URL starting with https://www.linkedin.com/jobs/search/) and identity_mode \"managed\" (or identity_ids, LinkedIn accounts you connect, at 1 credit a result instead of 1.5); parameters, input.custom_data, cursor, page_size","fields":["job ID","job URL","promoted","apply URL","new","location","title","remote","posted date","posted at","valid through","source domain","initial query","applicants"]},{"provider":"Enrich Layer","api":"Job search","website":"https://enrichlayer.com","pricingPage":"https://enrichlayer.com/pricing","pitch":"List jobs posted by a company.","strengths":[],"aggregators":[{"aggregator":"Orthogonal","url":"https://orthogonal.com/discover/enrich-layer","ownKey":null,"paid":true,"perThousand":null,"usd":0.0472,"per":"page","resultsPerPage":null,"callStated":true},{"aggregator":"treg","url":"https://treg.to/catalog/endpoints/enrichlayer.jobs.search","ownKey":"free","paid":true,"perThousand":8,"usd":0.2,"per":"page","resultsPerPage":25,"callStated":true}],"freshness":null,"fieldFreshness":null,"history":"open only","keep":"no limit in its public terms, a summary of its full terms (\"for complete terms including definitions, fees, intellectual property rights, termination procedures, and dispute resolution, please refer to the full terms document or contact our legal team\")","use":"no limit in its public terms, a summary of its full terms (\"for complete terms including definitions, fees, intellectual property rights, termination procedures, and dispute resolution, please refer to the full terms document or contact our legal team\"); Enterprise's \"Unlimited enriched contacts\" is \"Subject to Fair Usage Policy as outlined in our Terms of Service\"","plan":"Growth","who":"anyone 18 or over, on a 12-month contract","billing":"monthly","charged":null,"topUp":null,"pay":299,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":25000,"unit":"credit","renews":"month","expires":"at the end of each month","costUnits":2,"calls":12500,"monthlyCap":null,"perThousand":0.9568,"waterfall":null,"listPerThousand":null,"overagePerThousand":0.96,"addons":null,"notFoundPerThousand":null,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["School Profile Endpoint (GET /api/v2/school)","Company Profile Endpoint (GET /api/v2/company)","Person Profile Endpoint (GET /api/v2/profile)","Employee Listing Endpoint (GET /api/v2/company/employees/)","Employee Count Endpoint (GET /api/v2/company/employees/count)","Person Lookup Endpoint (GET /api/v2/profile/resolve)","Role Lookup Endpoint (GET /api/v2/find/company/role/)","Company Lookup Endpoint (GET /api/v2/company/resolve)","Employee Search Endpoint (GET /api/v2/company/employee/search/)","Student Listing Endpoint (GET /api/v2/school/students/)","Reverse Email Lookup Endpoint (GET /api/v2/profile/resolve/email)","Reverse Contact Number Lookup Endpoint (GET /api/v2/resolve/phone)","Work Email Lookup Endpoint (GET /api/v2/profile/email)","Job Profile Endpoint (GET /api/v2/job)","Jobs Listing Count Endpoint (GET /api/v2/company/job/count)","Company Search Endpoint (GET /api/v2/search/company)","Person Search Endpoint (GET /api/v2/search/person)","Personal Contact Number Lookup Endpoint (GET /api/v2/contact-api/personal-contact)","Personal Email Lookup Endpoint (GET /api/v2/contact-api/personal-email)"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"page","resultsPerPage":25,"resultsCap":null,"perDay":null,"perSecond":15,"concurrent":"n/a","batch":1,"answer":"in the call","latencyMs":null,"call":null,"method":"GET","path":"/api/v2/company/job","send":"nothing required; job_type, experience_level, when, flexibility, geo_id, keyword, search_id, pagination","fields":["company","company URL","title","job URL","posted at","location","next page number","next page URL","previous page number","previous page URL"]},{"provider":"EnvoAPI","api":"Job search","website":"https://envoapi.com","pricingPage":"https://envoapi.com/pricing","pitch":"Search jobs by keyword with EnvoAPI.","strengths":[],"aggregators":[],"freshness":"live","fieldFreshness":null,"history":null,"keep":"a limited, non-exclusive, non-transferable, non-sublicensable right to use Output Data during the applicable term for Permitted Business Purposes. [...] Customer may store Output Data in Customer’s internal systems, including CRM, data warehouse, applicant tracking system, sales engagement platform, customer support system, or analytics system, only as reasonably necessary for Permitted Business Purposes and subject to Customer’s legal obligations. [...] Customer must delete Output Data where required by law, these Terms, an Order Form, or EnvoAPI’s written instruction","use":"Customer must use the Services only for lawful, professional, and B2B purposes. [...] a limited, non-exclusive, non-transferable, non-sublicensable right to use Output Data during the applicable term for Permitted Business Purposes. [...] “Permitted Business Purposes” means lawful B2B sales operations, CRM hygiene, account enrichment, company research, professional profile matching, recruiting workflow support, talent sourcing support, fraud prevention, business analytics, and other professional business purposes that comply with these Terms and applicable law. [...] Unless an Order Form expressly permits embedded or external use, the Services and Output Data may be used only for Customer’s internal business purposes. [...] Customer must not use the Services to request, obtain, infer, reconstruct, or process non-public data or Sensitive Data. [...] Customer must not use the Services or Output Data as the sole or determinative basis for decisions involving: credit, lending, insurance, housing, education admissions, government benefits, healthcare eligibility, criminal justice, or similar eligibility determinations; employment eligibility, hiring, firing, promotion, compensation, disciplinary action, or other adverse employment decisions; consumer reports, investigative consumer reports, background checks, tenant screening, creditworthiness, or insurance underwriting; legally significant decisions based solely on automated processing where prohibited or restricted by applicable law. [...] Customer must not use the Services to collect, infer, classify, profile, target, segment, rank, or make decisions based on Sensitive Data or protected characteristics, including race, ethnicity, religion, political opinion, union membership, health, disability, genetic data, biometric data, sexual orientation, age, gender, pregnancy status, citizenship, immigration status, veteran status, or other legally protected categories. [...] Customer must not use the Services or Output Data to send unlawful, deceptive, excessive, or non-compliant email, SMS, calls, direct messages, ads, or other communications. [...] Except as expressly allowed in an Order Form, Customer must not: resell, sublicense, rent, lease, publish, disclose, distribute, or make available Output Data as a standalone dataset, database, data feed, API, enrichment service, lead list, or data brokerage product; use the Services or Output Data to build, train, validate, benchmark, or improve a product or service that competes with EnvoAPI; use the Services to create a persistent shadow database substantially similar to EnvoAPI’s proprietary databases; remove, obscure, or alter proprietary notices, source metadata, suppression flags, field timestamps, or compliance indicators. [...] Customer must not knowingly use the Services to re-identify, re-add, enrich, sell, contact, or otherwise process a person or record that EnvoAPI has identified as suppressed, opted out, deleted, or restricted.","plan":"Scale","who":"anyone, for lawful, professional B2B purposes, not in a sanctioned jurisdiction or on a restricted-party list","billing":"monthly","charged":null,"topUp":null,"pay":499,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":250000,"unit":"credit","renews":"month","expires":"monthly credits reset at renewal","costUnits":1,"calls":250000,"monthlyCap":null,"perThousand":0.02,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"addons":null,"notFoundPerThousand":null,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["57 other calls"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"page","resultsPerPage":100,"resultsCap":null,"perDay":null,"perSecond":5,"concurrent":null,"batch":1,"answer":"in the call","latencyMs":null,"call":null,"method":"GET","path":"/v1/jobs/search","send":"keywords; start, location, companyIds, experience, sort, timePosted, employmentType, workplaceType, easyApply, under10Applicants","fields":["title","job URL","location","posted at","company","company URL","company logo","promoted","easy apply","offset","page size","has more","credits consumed","credits remaining","request ID"]},{"provider":"HarvestAPI","api":"Job search","website":"https://harvestapi.io","pricingPage":"https://harvestapi.io/#pricing","pitch":"Search LinkedIn jobs by title, company, location, and more.","strengths":[],"aggregators":[{"aggregator":"ColdIQ","url":"https://coldiq.com/marketplace/docs/endpoint?method=get&path=%2Fv1%2Fharvestapi%2Flinkedin%2Fjob-search&format=markdown","ownKey":null,"paid":true,"perThousand":0.0962,"usd":0.0024043,"per":"page","resultsPerPage":25,"callStated":true},{"aggregator":"Deepline","url":"https://deepline.com/integrations/harvestapi","ownKey":null,"paid":true,"perThousand":null,"usd":null,"per":"page","resultsPerPage":null,"callStated":true},{"aggregator":"Orthogonal","url":"https://orthogonal.com/discover/harvestapi","ownKey":null,"paid":true,"perThousand":null,"usd":null,"per":"page","resultsPerPage":null,"callStated":true},{"aggregator":"treg","url":"https://treg.to/catalog/endpoints/harvestapi.linkedin.search.jobs","ownKey":"free","paid":true,"perThousand":null,"usd":0.001,"per":"page","resultsPerPage":null,"callStated":true}],"freshness":"live","fieldFreshness":null,"history":null,"keep":"You will not store or cache data for longer than is reasonably necessary for your specific, legitimate use case","use":"You agree to: Use the API in full compliance with all applicable laws and regulations. Respect the rate limits and quotas associated with your purchased fund packages. Not attempt to circumvent any of our security measures or technical limitations. Store and process data in a manner that complies with all relevant privacy regulations (like GDPR, CCPA, etc.). [...] You must maintain a clear and appropriate privacy policy for your users regarding how you use this data. You will not use the data for any illegal, unethical, or malicious purposes.","plan":"Starter","who":"anyone","billing":"one-time","charged":null,"topUp":false,"pay":20,"currency":"USD","exchangeRate":1,"termMonths":null,"from":null,"graduated":null,"units":20,"unit":"usd","renews":"never","expires":"365 days","costUnits":0.001,"calls":20000,"monthlyCap":null,"perThousand":null,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"addons":null,"notFoundPerThousand":null,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["Get Profile","Get Profile with findEmail","Search LinkedIn profiles","Search Leads","Profile Posts","Profile comments","Profile reactions","Get Company","Search Companies","Company Posts","Company People Stats","Search Accounts","Account Insights","Search Posts","Get post","Post comments","Post reactions","Comment replies","Comment reactions","Get Job","Get Group","Search Groups","Search Ad Library","Search Profile Services","Search GeoID","My Received Connections","My Sent Connections","Send Connection","Send Message"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"page","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":5,"batch":1,"answer":"in the call","latencyMs":854,"call":null,"method":"GET","path":"/linkedin/job-search","send":"nothing required; search, companyId, location, geoId, sortBy, workplaceType, employmentType, salary, postedLimit, experienceLevel, industryId, functionId, under10Applicants, easyApply, page","fields":["job ID","job URL","title","posted at","company","company URL","location","easy apply","total results","page","page size","next page token","company universal name","total pages"]},{"provider":"InsightSocial","api":"Job search","website":"https://www.insightsocial.app","pricingPage":"https://www.insightsocial.app/pricing","pitch":"Returns LinkedIn job postings matching a keyword, each with job id, title, hiring company, location, posting date, and Easy Apply flag.","strengths":[],"aggregators":[],"freshness":"live","fieldFreshness":null,"history":null,"keep":"no limit","use":"You are responsible for using InsightSocial in compliance with the terms of service of each platform or site you scrape, and with applicable law (including data protection laws such as GDPR and CCPA where they apply to you) [...] You agree not to use the Service to harvest personal data for harassment, stalking, mass unsolicited contact, or any unlawful purpose.","plan":"250 credits","who":"anyone","billing":"one-time","charged":null,"topUp":false,"pay":2,"currency":"USD","exchangeRate":1,"termMonths":null,"from":null,"graduated":null,"units":250,"unit":"credit","renews":"never","expires":"never","costUnits":100,"calls":2.5,"monthlyCap":null,"perThousand":null,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"addons":null,"notFoundPerThousand":0,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":"never","alsoPaysFor":[],"sharesBudgetWith":["301 other calls"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"page","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":1,"concurrent":10,"batch":1,"answer":"in the call","latencyMs":null,"call":"Search › Jobs","method":"GET","path":"/v1/linkedin/search/jobs","send":"query; page, date_posted, experience_level, job_type, remote, easy_apply, sort_by, company, geocode, industry_ids, cursor, dry_run","fields":["job ID","title","company","location","posted date","easy apply","next cursor","has more","page size"]},{"provider":"LinkedIn Scraper API","api":"Job search","website":"https://linkedinscraperapi.com","pricingPage":"https://linkedinscraperapi.com/pricing","pitch":"Our LinkedIn search results scraper runs against LinkedIn's own public guest jobs search: pass keywords and a location, and get back a clean list of job-card results as JSON, each with title, company, company URL, location, posted date, salary when shown, and logo, with offset pagination for more.","strengths":[],"aggregators":[],"freshness":"live","fieldFreshness":null,"history":null,"keep":"no limit","use":"We grant you a limited, non-exclusive, non-transferable license to use the API in line with these terms. You agree not to use the service for unlawful, infringing, deceptive, or abusive purposes, or to access data you are not permitted to access. You agree not to resell raw access or attempt to circumvent plan limits. Data you retrieve may be subject to the rights of the underlying source. You are responsible for complying with all applicable laws and with the terms of service and robots policies of any site you target through the API.","plan":"Pro","who":"anyone of legal age to form a binding contract","billing":"monthly","charged":null,"topUp":null,"pay":49,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":82000,"unit":"request","renews":"month","expires":"reset at the start of each billing cycle","costUnits":1,"calls":82000,"monthlyCap":null,"perThousand":0.0598,"waterfall":null,"listPerThousand":null,"overagePerThousand":0.09,"addons":null,"notFoundPerThousand":0,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["Profile API","Company API","Post API","Job API","Email & Lead API","Sales Navigator","Followers & Connections","Comment"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"page","resultsPerPage":10,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":null,"batch":1,"answer":"in the call","latencyMs":2600,"call":null,"method":"GET","path":"/api/v1/linkedin/search","send":"keywords; location, start, limit","fields":["search parameters","page","offset","results on page","position","job ID","title","job URL","company","company URL","location","posted date","posted ago","salary","company logo"]},{"provider":"lobstr.io","api":"Job search","website":"https://www.lobstr.io","pricingPage":"https://www.lobstr.io/pricing","pitch":"Scrape every job from any LinkedIn Jobs search — salary ranges & recruiter details included.","strengths":[],"aggregators":[],"freshness":"live","fieldFreshness":null,"history":null,"keep":"no limit; results stay on lobstr.io 7 days on Free, 28 days on paid plans","use":"The User hereby asserts and affirms that the utilization of the Platform is solely for professional activities, thereby exempting the User from being classified as a \"consumer\" under the governing law. [...] Squiders are obligated to: (i) Procure requisite permissions for accessing websites through Squids; (ii) Abstain from extracting substantial portions of databases, whether in terms of quality or quantity; (iii) Refrain from unauthorized access to confidential or proprietary information; (iv) Observe all third-party rights, including but not limited to copyrights, patents, trademarks, trade secrets, and other intellectual property or proprietary rights; (v) Comply with all pertinent laws, statutes, ordinances, and regulations, inclusive of those related to the protection of personal data. [...] a global, non-exclusive, non-transferrable, and non-sublicensable right to employ the Platform for the duration of the User's active account on said Platform [...] Absent express written consent from LOBSTR, the User shall abstain—and shall prohibit any third parties acting on their behalf, including but not limited to employees, agents, affiliates, and subcontractors—from: (i) Decompiling, disassembling, or reverse-engineering the Platform, or attempting to discern its source code, foundational ideas, algorithms, file formats, or interoperability features [...]; (ii) Independently or with third-party assistance, rectifying any Platform defects to render it compliant with its intended use [...]; (iii) Removing or altering any notifications, labels, or references pertaining to the intellectual property rights of LOBSTR or any third parties; (iv) Engaging in the transfer, utilization, or exportation of the Platform in a manner that contravenes applicable laws; (v) Integrating, associating, or amalgamating the Platform with any other software or documents, or generating derivative works based in whole or part on the Platform; (vi) Conducting any activities with the Platform other than those explicitly sanctioned by these Terms and Conditions","plan":"Team","who":"professionals, not consumers","billing":"monthly","charged":null,"topUp":null,"pay":500,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":1000000,"unit":"credit","renews":"month","expires":"credits refresh each month and don't roll over at renewal; only a paid billing-cycle reset carries unused credits over, for 30 days","costUnits":1,"calls":1000000,"monthlyCap":null,"perThousand":0.5,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"addons":null,"notFoundPerThousand":null,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["all scrapers","Email Enrichment"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[{"fields":["company website","company description","company industry","company size","company employee count","company followers","company founded","company headquarters","company specialties","company slogan","company type"],"perThousand":0.5},{"fields":["description","description HTML","seniority","employment type","functions","industries","applicants","apply URL","apply type","job poster","salary min","salary max"],"perThousand":0.5}],"per":"result","resultsPerPage":null,"resultsCap":1000,"perDay":null,"perSecond":2,"concurrent":50,"batch":null,"answer":"by polling or webhook","latencyMs":null,"call":"LinkedIn Jobs Scraper","method":"POST","path":"/v1/runs","send":"squid (a LinkedIn Jobs Scraper squid, crawler b5a5fc71ba325dc507bc302e02327d9b, holding LinkedIn jobs search URLs as its tasks); date_posted, job_type, experience_level, workplace_type, easy_apply, under_10_applicants, distance, sort_by, exclude_job_titles, exclude_companies, max_results, max_unique_results_per_run, fetch_since, fetch_since_timezone, job_details, company_details","fields":["job ID","job URL","title","company","company URL","company logo","location","posted date","posted ago","salary","benefits","total results","page"]},{"provider":"OpenWeb Ninja","api":"Job search","website":"https://www.openwebninja.com","pricingPage":"https://www.openwebninja.com/api/real-time-linkedin-data","pitch":"Search LinkedIn job postings.","strengths":[],"aggregators":[],"freshness":"live","fieldFreshness":null,"history":"open only","keep":"no limit","use":"we additionally grant you a non-exclusive, non-transferable license to use, reproduce, and commercially exploit such API Data in your own products, services, applications, or business, including for resale or redistribution as part of a broader product offering, provided that you do not resell, sublicense, or redistribute API Data as a standalone data or API product that substantially replicates the Services themselves [...] As a user of the Services, you agree not to: [...] Use any information obtained from the Services in order to harass, abuse, or harm another person. [...] Use the Services in a manner inconsistent with any applicable laws or regulations. [...] Use the Services to build, operate, or support a product or service that functions as a substitute for the Services themselves (for example, a competing data-access API sourced by re-extracting our underlying Content), as distinct from ordinary commercial use of API Data licensed to you under Section 2.","plan":"Mega","who":"anyone, a minor with a parent's permission","billing":"monthly","charged":null,"topUp":null,"pay":150,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":200000,"unit":"request","renews":"month","expires":null,"costUnits":1,"calls":200000,"monthlyCap":null,"perThousand":0.075,"waterfall":null,"listPerThousand":null,"overagePerThousand":0.1,"addons":null,"notFoundPerThousand":0.75,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["Company Jobs","Job Details"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"page","resultsPerPage":10,"resultsCap":1000,"perDay":null,"perSecond":20,"concurrent":null,"batch":1,"answer":"in the call","latencyMs":2413,"call":null,"method":"GET","path":"/search","send":"query; location, page, num_pages, geo_id, country, sort_by, date_posted, employment_types, seniority_levels, company_id, remote_jobs_only, include_details, radius, fields","fields":["title","company","company logo","employment type","apply URL","job URL","description","posted at","posted date","location","location city","location region","location country code","benefits","salary","job ID","company URL","company ID","seniority","functions","industries","applicants","badges","publisher","apply options","apply is direct","remote","request ID","latitude","longitude","position"]},{"provider":"Renidly","api":"Job search","website":"https://renidly.com","pricingPage":"https://renidly.com/pricing","pitch":"Search job postings by keyword + filters","strengths":[],"aggregators":[],"freshness":"live","fieldFreshness":null,"history":null,"keep":"no limit","use":"Subject to your compliance with these Terms, we grant you a non-exclusive, non-transferable, revocable licence to access and use the Service for your internal business purposes during the term. [...] You agree not to: Use the Service to violate any law, regulation, or third-party right. Re-sell, sub-license, or repackage the Service or its raw data outputs as a competing data product without our prior written agreement. [...] Build profiles to harass, dox, or discriminate against individuals, or to make automated decisions producing legal or similarly significant effects on a person without an adequate lawful basis and human review. Use the Service to send unsolicited bulk communications in violation of applicable anti-spam laws (including CAN-SPAM, CASL, GDPR/ePrivacy and equivalents). [...] You are responsible for: [...] Ensuring your downstream use of enriched data complies with all applicable laws.","plan":"Scale","who":"anyone 18 or over with a work email (Gmail, Yahoo, Outlook and other free providers aren't accepted)","billing":"one-time","charged":null,"topUp":false,"pay":290,"currency":"USD","exchangeRate":1,"termMonths":null,"from":null,"graduated":null,"units":100050,"unit":"credit","renews":null,"expires":"never","costUnits":2,"calls":50025,"monthlyCap":null,"perThousand":0.116,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"addons":null,"notFoundPerThousand":null,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":"20 minutes","alsoPaysFor":[],"sharesBudgetWith":["45 other calls"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"page","resultsPerPage":50,"resultsCap":null,"perDay":null,"perSecond":4.17,"concurrent":null,"batch":1,"answer":"in the call","latencyMs":null,"call":null,"method":"GET","path":"/api/v2/discover/opportunities","send":"keyword, or at least one of sortBy, datePosted, experience, jobTypes, workplaceTypes, salary, companies, industries, locations, functions, titles, benefits, commitments, easyApply, verifiedJob, under10Applicants, fairChance; start, count","fields":["job ID","total results"]},{"provider":"RichAPI","api":"Job search","website":"https://richapi.ai","pricingPage":"https://richapi.ai/pricing","pitch":"Search LinkedIn jobs by title, company, location, and more.","strengths":[],"aggregators":[],"freshness":null,"fieldFreshness":null,"history":null,"keep":"no API terms","use":"no API terms","plan":"Starter","who":"anyone","billing":"one-time","charged":null,"topUp":false,"pay":100,"currency":"USD","exchangeRate":1,"termMonths":null,"from":null,"graduated":null,"units":5000,"unit":"credit","renews":"never","expires":"never","costUnits":0.1,"calls":50000,"monthlyCap":null,"perThousand":2,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"addons":null,"notFoundPerThousand":0,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["69 other calls"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"result","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":10,"concurrent":null,"batch":null,"answer":"in the call","latencyMs":null,"call":"LinkedIn Job Search","method":"POST","path":"/linkedin_job_search","send":"nothing required; title, company, location, geoId, jobType, experienceLevel, page","fields":["job ID","job URL","title","company","company LinkedIn URL","company universal name","location","easy apply","posted date","page size","page","total pages","total results","offset","request ID","execution time","credits consumed","credits remaining","credits status","credits reason code","credits reason","estimated credits charge"]},{"provider":"ScrapeBadger","api":"Job search","website":"https://scrapebadger.com","pricingPage":"https://scrapebadger.com/pricing","pitch":"Search linkedin.com’s public jobs surface by keyword and location, with filters for date posted, experience level, job type and workplace. Paginates in blocks of 25 via start (0, 25, 50). Returns lightweight JobCards — hydrate a single card with /jobs/{job_id}.","strengths":[],"aggregators":[],"freshness":"live","fieldFreshness":null,"history":null,"keep":"no limit in its terms: the applicable law and the rights holders decide","use":"to access and use the Services and Documentation through the Access Channels for your internal business purposes and for the purpose of building and operating your own products and services, provided that your products do not consist of, or primarily function as, a means of providing others with access to the Services or to raw Output on demand [...] You must not, and must not permit anyone else to: [...] (c) use the Services, the Documentation or any Output to develop, train, benchmark for competitive purposes, or improve a product or service that competes with the Services; [...] Whether and how you may collect, keep and use Third-Party Content is governed by the applicable law and by the rights of the relevant third parties, not by the Agreement [...] you must not use the Services or any Output to: (a) download, store, copy, re-host, publish, display, distribute, sell, license or otherwise exploit images, photographs, videos, audio or other media obtained from a Source [...] unless the rights holder has authorised that use or a statutory exception clearly applies to you; (b) publish, republish, redistribute, communicate to the public, sell, license, use in advertising or otherwise commercially exploit creative listing descriptions, articles, reviews or other protected text obtained from a Source, unless the rights holder has authorised that use or a statutory exception clearly applies to you [...]; (c) extract or re-utilise the whole or a substantial part [...] or create a substitute, mirror or competing database from a Source [...] you are the controller (or a processor acting for another controller)","plan":"Starter","who":"anyone 18 or over","billing":"monthly","charged":null,"topUp":null,"pay":49,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":600000,"unit":"credit","renews":"month","expires":"at each refresh: unused subscription credits do not carry over","costUnits":8,"calls":75000,"monthlyCap":null,"perThousand":0.0261,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"addons":null,"notFoundPerThousand":0,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":"1 minute","alsoPaysFor":[],"sharesBudgetWith":["Get Job","Company Jobs","Get Company","Get School","Get Profile","Get Post","Get Article","Get Course","Geo / Company Suggest","Web Scraping API","Google Scraper API","Twitter Scraper API","Reddit Scraper API","Facebook Scraper API","Instagram Scraper API","TikTok Scraper API","YouTube Scraper API","ChatGPT Scraper API","Gemini Scraper API","Perplexity Scraper API","Amazon Scraper API","eBay Scraper API","Walmart Scraper API","Etsy Scraper API","AliExpress Scraper API","Target Scraper API","ASOS Scraper API","Best Buy Scraper API","Vinted Scraper API","Depop Scraper API","Wallapop Scraper API","Gumtree Scraper API","Leboncoin Scraper API","Apple App Store Scraper API","Google Play Store Scraper API","Bing Scraper API","Yahoo Scraper API","DuckDuckGo Scraper API","Yandex Scraper API","Baidu Scraper API","Naver Scraper API","Zillow Scraper API","Redfin Scraper API","Realtor Scraper API","Apartments.com Scraper API","Idealista API","Immobiliare.it API","LoopNet Scraper API","Airbnb Scraper API","Booking.com Scraper API"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"page","resultsPerPage":25,"resultsCap":null,"perDay":null,"perSecond":5,"concurrent":null,"batch":1,"answer":"in the call","latencyMs":null,"call":null,"method":"GET","path":"/v1/linkedin/jobs/search","send":"nothing required; keywords, location, geo_id, company_id, date_posted, experience, job_type, workplace, sort, start, country","fields":["job ID","title","job URL","company","company URL","company logo","location","posted at","posted ago","new","benefits","results on page","offset","has more"]},{"provider":"Scrapingdog","api":"Job search","website":"https://www.scrapingdog.com","pricingPage":"https://www.scrapingdog.com/pricing/","pitch":"Search and scrape LinkedIn job listings by keyword, location, job type, experience level, and work model.","strengths":[],"aggregators":[],"freshness":"live","fieldFreshness":null,"history":null,"keep":"no limit","use":"While your paid subscription is active, Scrapingdog grants you a non-exclusive, worldwide license to access, store, display, analyze, and redistribute, commercially or otherwise, the publicly available data returned by Scrapingdog’s API (“Licensed Data”) [...] You may present, transform, or combine the Licensed Data in any manner, provided that you do not add or alter data points in a way that would misrepresent the information actually returned by Scrapingdog’s API or cause harm to third parties [...] You agree not to use any data obtained through Scrapingdog in a manner that (a) discloses private or sensitive personal information, or (b) harms individual or public sentiments, violates applicable laws, or otherwise causes injury.","plan":"Lite","who":"anyone","billing":"monthly","charged":null,"topUp":null,"pay":40,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":200000,"unit":"credit","renews":"month","expires":"credits reset on the next billing date: they carry over from the Standard plan upward only","costUnits":5,"calls":40000,"monthlyCap":null,"perThousand":null,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"addons":null,"notFoundPerThousand":0,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["every API on your plan"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"page","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":5,"batch":null,"answer":"in the call","latencyMs":null,"call":null,"method":"GET","path":"/jobs","send":"field; geoid, location, page, sort_by, job_type, exp_level, work_type, filter_by_company","fields":["title","job URL","job ID","company","company URL","company logo","location","posted date"]},{"provider":"SearchApi","api":"Job search","website":"https://www.searchapi.io","pricingPage":"https://www.searchapi.io/pricing","pitch":"Pull LinkedIn job listings by keyword and location, with the company, posting date and link of each job","strengths":[],"aggregators":[],"freshness":"live","fieldFreshness":null,"history":null,"keep":"no limit","use":"Some public-domain content accessible through SearchApi may also be subject to intellectual property rights. In such cases, you may only use the content if you have the appropriate license or are otherwise permitted by law. Unless required by law or explicitly allowed by the owner, you must not, and must not allow your end-users or others acting on your behalf, to engage in the following activities with the Data obtained from the API: Misrepresent the ownership or source of the Data. Alter, remove, or conceal any copyright, trademark, or other proprietary notices associated with the Data. Falsify or delete any author attributions, legal notices, or other labels that indicate the origin or source of the material. [...] In addition to other prohibitions as set forth in these Terms of Service, you are prohibited from using our Services or any data obtained from it in any of the following ways: (a) for any unlawful purpose; (b) to solicit others to perform or participate in any unlawful acts; (c) to violate any international, federal, provincial, or state regulations, rules, laws, or local ordinances; (d) to infringe upon or violate our intellectual property rights or the intellectual property rights of others; (e) to harass, abuse, insult, harm, defame, slander, disparage, intimidate, or discriminate based on gender, sexual orientation, religion, ethnicity, race, age, national origin, or disability; (f) to submit false or misleading information; (g) to upload or transmit viruses or any other type of malicious code that will or may be used in any way that will affect the functionality or operation of our Services or of any related website, other websites, or the Internet; (h) to interfere with or circumvent the security features of our Services or any related website, other websites, or the Internet, including accessing restricted features, content, or functionality by manipulating technical controls beyond your authorized access level; (i) to resell, redistribute or offer our Services to a third-party without prior written consent from us. [...] You agree not to reproduce, duplicate, copy, sell, resell or exploit any portion of the Services, use of the Services, or access to the Services without the express written permission by the Company.","plan":"Scale Plan","who":"anyone","billing":"monthly","charged":null,"topUp":null,"pay":500,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":250000,"unit":"request","renews":"month","expires":null,"costUnits":1,"calls":250000,"monthlyCap":null,"perThousand":0.2,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"addons":null,"notFoundPerThousand":null,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["every other API of its APIs menu (Google SERP API, Google Maps API, LinkedIn Job Details API and the rest), all counted in the month's searches"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"page","resultsPerPage":10,"resultsCap":1000,"perDay":null,"perSecond":13.89,"concurrent":null,"batch":1,"answer":"in the call","latencyMs":1553,"call":null,"method":"GET","path":"/api/v1/search?engine=linkedin_jobs","send":"nothing required; q, location, location_id, distance, time_period, company_id, is_easy_apply, has_under_10_applicants, page","fields":["job ID","title","company","company URL","company logo","location","benefits","posted date","posted at","job URL","company ID","total results","page","next page URL","previous page URL","request ID"]},{"provider":"Serpent API","api":"Job search","website":"https://apiserpent.com","pricingPage":"https://apiserpent.com/pricing","pitch":"One jobs request returns a whole page of roughly ten postings, and it bills as one call.","strengths":[],"aggregators":[],"freshness":"live","fieldFreshness":null,"history":null,"keep":"no limit; \"You agree NOT to use the Service to: [...] Scrape, copy, or store data in violation of third-party terms\"","use":"You may use the API for lawful purposes in accordance with these Terms and applicable laws. [...] You agree NOT to use the Service to: Violate any applicable laws or regulations; Infringe on intellectual property rights of others; Distribute malware, spam, or harmful content; Attempt to gain unauthorized access to our systems; Interfere with or disrupt the Service or servers; Resell or redistribute the Service without authorization; Use automated means to abuse or overload the Service; Deliberately obtain discounted volume pricing for a completed workload and then seek a refund of the qualifying payment to retain that discount without paying the applicable Default rate. Refund requests alone, or ordinary API usage, are not abuse; any request is reviewed individually under our Cancellation & Refund Policy and applicable law; Open or operate more than one account in order to claim free searches, introductory pricing, or any promotional benefit more than once; Scrape, copy, or store data in violation of third-party terms; Submit sensitive personal data in query strings, including health, financial account, government identification, biometric, or similar special-category information [...] Free searches are for evaluation purposes only. [...] You retain ownership of any content you create using data obtained through the Service, subject to third-party rights.","plan":"Default","who":"anyone","billing":"one-time","charged":null,"topUp":true,"pay":10,"currency":"USD","exchangeRate":1,"termMonths":null,"from":null,"graduated":null,"units":10,"unit":"usd","renews":"never","expires":"never","costUnits":0.0005,"calls":20000,"monthlyCap":null,"perThousand":0.05,"waterfall":null,"listPerThousand":0.05,"overagePerThousand":null,"addons":null,"notFoundPerThousand":0.5,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["Quick Search","Deep Search","News","Images","Videos","AI Ranking Combined","AI Ranking Single Engine","LinkedIn Company","LinkedIn Posts","LinkedIn Job Details","LinkedIn Profile","LinkedIn Full Profile","LinkedIn Profile Search","Google Maps Quick Place Search","Google Maps Deep Place Search","Google Maps Place Details","Google Maps Reviews","YouTube Search","YouTube Video Details","YouTube Channel Details","YouTube Playlist Videos","Instagram","Amazon Search","Amazon Product","Amazon Bestsellers","TikTok Profile","TikTok Video","TikTok Hashtag","TikTok Search","TikTok Music","X Post","X Profile","Reddit Subreddit Listing","Reddit Comments","Reddit Search","Reddit User","Reddit Community","eBay Search listings","eBay Item details","eBay Seller profile","eBay Seller listings","eBay Product reviews","eBay Seller feedback"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"page","resultsPerPage":10,"resultsCap":null,"perDay":10000,"perSecond":0.28,"concurrent":10,"batch":1,"answer":"in the call","latencyMs":null,"call":null,"method":"GET","path":"/api/linkedin/jobs","send":"keywords; location, start, geo_id, date_posted, job_type, experience_level, remote, company_id, easy_apply, early_applicant, sort","fields":["success","job ID","job URL","title","company","company LinkedIn URL","company logo","location","posted date","results on page","search parameters","offset"]},{"provider":"Social Fetch","api":"Job search","website":"https://www.socialfetch.dev","pricingPage":"https://www.socialfetch.dev/pricing","pitch":"Search LinkedIn jobs by keyword and filters.","strengths":[],"aggregators":[],"freshness":"live","fieldFreshness":null,"history":null,"keep":"no limit","use":"You agree not to: Use the Services in violation of applicable law. Use outputs to harass, surveil, discriminate against, or harm individuals or groups. Send spam, manipulate platforms, or engage in deceptive or fraudulent activity. Infringe intellectual property or other rights of third parties. Attempt to access non-public data, bypass rate limits or technical controls, or probe our systems in ways that could harm availability or security. Resell or redistribute the Services in ways that misrepresent their source, or use them to build a substantially similar competing API without our written consent. [...] On any plan you may incorporate Social Fetch data outputs into your own products and services, present them under your own brand without attribution to us, and supply them to your own customers. You may not share or resell API keys or other access credentials, expose the Social Fetch API itself as a like-for-like API, or build a substantially similar competing API. This gives you no right beyond what we hold ourselves in the underlying data: the terms of the source platforms, restrictions that apply to us and applicable law, including data-protection law, still apply, and you remain responsible for how your own customers use what you supply. [...] Subject to these Terms, we grant you a limited, non-exclusive, non-transferable right to use the Services for your internal business purposes or to power your applications for your end users, in each case as intended.","plan":"Growth","who":"anyone; for an organisation, someone with the authority to bind it","billing":"monthly","charged":null,"topUp":null,"pay":79,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":50000,"unit":"credit","renews":"month","expires":"do not roll over","costUnits":6,"calls":8333.333333,"monthlyCap":null,"perThousand":0.1896,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"addons":null,"notFoundPerThousand":9.48,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":"never","alsoPaysFor":[],"sharesBudgetWith":["263 other calls"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"page","resultsPerPage":50,"resultsCap":1000,"perDay":null,"perSecond":null,"concurrent":200,"batch":1,"answer":"in the call","latencyMs":null,"call":null,"method":"GET","path":"/v2/linkedin/jobs/search","send":"nothing required; count, start, cursor, keyword, sortBy, datePosted, experience, jobTypes, workplaceTypes, salary, companies, industries, locations, functions, titles, benefits, commitments, easyApply, verifiedJob, under10Applicants, fairChance","fields":["job ID","job URN","job URL","title","description","job state","apply URL","contractor job","reposted","employment type","created at","posted at","original posted at","expires at","posted date","posted date is exact","new","easy apply","promoted","verified job","relevance insight","location","location ID","location country code","company","company URL","company universal name","company logo","company ID","title ID","standardized title","functions","industries","salary","workplace type","next cursor","has more","offset","results on page","total results"]},{"provider":"SocialCrawl","api":"Job search","website":"https://www.socialcrawl.dev","pricingPage":"https://www.socialcrawl.dev/pricing","pitch":"Search LinkedIn jobs, normalised to the SocialCrawl schema.","strengths":[],"aggregators":[],"freshness":"live","fieldFreshness":null,"history":null,"keep":"no limit","use":"You may use the Service for lawful purposes that comply with these Terms, applicable laws, and the terms of service of the social media platforms from which data is retrieved. [...] You must not: Resell raw data: You may not redistribute, resell, or sublicense raw Platform Data retrieved through the Service without adding meaningful transformation, analysis, or value. You must not operate a service that merely proxies or mirrors SocialCrawl responses. Violate platform terms: You must not use the Service in a manner that violates the terms of service of any social media platform from which data is retrieved. Harass or harm: You must not use the Service to stalk, harass, doxx, or otherwise harm any individual. Surveillance and identification of individuals: You must not use the Service or Platform Data to (a) perform facial recognition, biometric identification, or biometric verification of any individual, or build or enrich any facial-recognition or biometric database; (b) conduct surveillance, tracking, or behavioural monitoring of identified or identifiable individuals, including for law-enforcement, intelligence, or employment-vetting purposes; (c) re-identify individuals from aggregated, pseudonymised, or anonymised data; (d) profile individuals based on special categories of personal data (such as health, religion, political opinions, or sexual orientation); or (e) compile databases of individuals' personal data for sale or licensing as such. Circumvent restrictions: You must not attempt to bypass any usage limits, access controls, or security measures of the Service. Reverse engineer: You must not reverse engineer, decompile, or disassemble any part of the Service or its underlying infrastructure. Overload the Service: You must not engage in activity designed to degrade, disrupt, or place an unreasonable burden on the Service or its infrastructure. Illegal activity: You must not use the Service for any purpose that violates applicable law, including but not limited to data protection legislation, intellectual property law, or export control regulations. Automated abuse: You must not use automated systems to create accounts, generate API Keys, or consume Credits in a manner intended to exploit the Service. [...] You are solely responsible for: Ensuring your use of Platform Data complies with all applicable laws, including data protection and privacy legislation (such as the UK GDPR and the Data Protection Act 2018). Respecting the intellectual property rights of content creators whose data is accessed through the Service. [...] Complying with the terms of service of the social media platforms from which data originates. [...] Subject to your compliance with these Terms, we grant you a limited, non-exclusive, non-transferable, revocable licence to access and use the Service for your internal business or personal purposes. You retain ownership of any data, applications, or materials that you create using Platform Data retrieved through the Service, subject to: The intellectual property rights of the original content creators on social media platforms. Any applicable terms of service of the social media platforms from which the data originates. The restrictions set out in Section 7 (Acceptable Use Policy) of these Terms.","plan":"Starter","who":"anyone 18 or over","billing":"one-time","charged":null,"topUp":false,"pay":15,"currency":"GBP","exchangeRate":1.3335,"termMonths":null,"from":null,"graduated":null,"units":2500,"unit":"credit","renews":"never","expires":"never","costUnits":10,"calls":250,"monthlyCap":null,"perThousand":null,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"addons":null,"notFoundPerThousand":0,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":"2 minutes","alsoPaysFor":[],"sharesBudgetWith":["674 other calls"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"page","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":10,"concurrent":50,"batch":1,"answer":"in the call","latencyMs":null,"call":"Search LinkedIn jobs","method":"GET","path":"/v1/linkedin/search/jobs","send":"query; page, date_posted, experience_level, job_type, remote, easy_apply, sort_by, company, geocode, industry_ids","fields":["success","credits consumed","credits remaining","request ID","from cache","replayed","next cursor","has more","page size","job ID","title","job URL","company","company ID","company URL","location","posted date","employment type","remote","easy apply","experience level","description","apply URL"]},{"provider":"TikHub","api":"Job search","website":"https://tikhub.io","pricingPage":"https://tikhub.io/pricing","pitch":"Search jobs by keywords and filters.","strengths":[],"aggregators":[],"freshness":"live","fieldFreshness":null,"history":null,"keep":"until termination, then you must immediately stop using the Services and delete any cached or stored data obtained through the Services","use":"Subject to your compliance with these Terms and payment of applicable fees, TikHub grants you a limited, non-exclusive, non-transferable, non-sublicensable, worldwide, and revocable license to access and use the Services solely for your lawful internal business purposes. You shall not, and shall not permit any third party to: Reverse engineer, decompile, disassemble, or attempt to derive the source code of any part of the Services; Modify, adapt, translate, or create derivative works based on the Services; Sublicense, lease, rent, loan, sell, resell, or otherwise redistribute the Services to third parties without prior written authorization; Remove, alter, or obscure any proprietary notices, labels, or marks on the Services; Use the Services to build a competitive product or service; Exceed any rate limits, usage quotas, or other technical restrictions associated with your subscription tier. You agree that you will NOT use the Services to: Violate any applicable local, state, national, or international law or regulation; Infringe upon or violate the intellectual property rights, privacy rights, or other rights of any third party; Create fake engagement, including but not limited to automated following, liking, commenting, or any form of artificial interaction; Engage in unsolicited advertising, spam, chain letters, pyramid schemes, or any form of unauthorized solicitation; Authenticate fake accounts or access accounts without the account owner's explicit consent; Harass, stalk, threaten, defame, or intimidate any person or entity; Conduct surveillance, tracking, or monitoring of individuals without lawful basis and proper consent; Build or train facial recognition systems or biometric identification tools; Discriminate against individuals based on race, gender, religion, nationality, disability, sexual orientation, or age; Engage in any activity that could damage, disable, overburden, or impair the Services or any connected platform [...] You will comply with all applicable data protection and privacy laws, including but not limited to the GDPR, CCPA/CPRA, LGPD, PIPA, and any other relevant privacy regulations; You will obtain all necessary consents, authorizations, and legal bases required for your processing of personal data; You will implement appropriate technical and organizational measures to protect any personal data obtained through the Services; You will not use the data for any purpose that violates the rights of data subjects or the terms of service of any originating platform [...] In addition to the prohibited uses listed above, you expressly agree that you will NOT use the Services or any data obtained through the Services to: Conduct political surveillance, political persecution, or targeting of individuals based on their political opinions, religious beliefs, or ethnic identity; Provide data to any government, law enforcement agency, or intelligence service for the purpose of surveilling, targeting, or persecuting individuals, except where compelled by valid legal process in a jurisdiction that provides due process protections; Identify, target, or profile individuals for the purpose of harassment campaigns, doxxing, or coordinated abuse; Compile dossiers or profiles on individuals for the purpose of political repression, authoritarian enforcement, or suppression of free expression; Circumvent sanctions, export controls, or trade restrictions imposed by the United States, the European Union, or the United Nations [...] You agree to comply with all applicable export control and sanctions laws and regulations. You represent and warrant that you are not: (a) located in, or a resident or national of, any country subject to a comprehensive U.S. embargo (including Cuba, Iran, North Korea, Syria, and the Crimea, Donetsk, and Luhansk regions of Ukraine); (b) listed on any U.S. government restricted party list, including the Specially Designated Nationals (SDN) list, the Entity List, or the Denied Persons List; or (c) owned or controlled by, or acting on behalf of, any person or entity described in (a) or (b). [...] Unless you opt out by sending written notice to support@tikhub.io, you grant TikHub a limited, non-exclusive right to use your company name and logo solely in TikHub's customer lists and marketing materials.","plan":"Pay-as-you-go","who":"anyone 18 or over (or of legal age where they live), for lawful internal business purposes, not in a US-embargoed country or on a US restricted-party list","billing":"one-time","charged":null,"topUp":true,"pay":5.55,"currency":"USD","exchangeRate":1,"termMonths":null,"from":null,"graduated":null,"units":5,"unit":"usd","renews":"never","expires":null,"costUnits":0.05,"calls":100,"monthlyCap":null,"perThousand":2.22,"waterfall":null,"listPerThousand":2,"overagePerThousand":null,"addons":null,"notFoundPerThousand":null,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":"never","alsoPaysFor":[],"sharesBudgetWith":["1,000 other calls"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"page","resultsPerPage":25,"resultsCap":null,"perDay":null,"perSecond":10,"concurrent":null,"batch":1,"answer":"in the call","latencyMs":null,"call":null,"method":"GET","path":"/api/v1/linkedin/web_v2/search_jobs","send":"nothing required; keywords, geo_code, date_posted, experience_levels, company_ids, title_ids, onsite_remotes, functions, industries, job_types, sort_by, easy_apply, under_10_applicants, start","fields":["company","title","location","salary","posted at","total results"]},{"provider":"Up2Data","api":"Job search","website":"https://up2data.ai","pricingPage":"https://up2data.ai/#pricing","pitch":"Live LinkedIn job postings by company, keyword, and filters.","strengths":[],"aggregators":[],"freshness":"live","fieldFreshness":null,"history":"open only","keep":"no API terms","use":"no API terms","plan":"100K","who":"anyone","billing":"one-time","charged":null,"topUp":false,"pay":200,"currency":"USD","exchangeRate":1,"termMonths":null,"from":null,"graduated":null,"units":100000,"unit":"credit","renews":"never","expires":"never","costUnits":1,"calls":100000,"monthlyCap":null,"perThousand":2,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"addons":null,"notFoundPerThousand":0,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":"never","alsoPaysFor":[],"sharesBudgetWith":["Enrich a profile","Get profile activity","Get profile recommendations","Get profile interests","Enrich a company","Count company job openings","Get company posts","Find custom headcount","Enrich a job","Enrich a post","Search posts","Get post comments","Get post reactions","Get post reposts","Search people","Search people (Sales Navigator)","Search people (standard)","Search companies","Search companies (Sales Navigator)","Search companies (standard)","Create a batch job"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"result","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":1.39,"concurrent":6000,"batch":1,"answer":"in the call","latencyMs":8661,"call":"Search jobs","method":"POST","path":"/v1/search/jobs","send":"at least one of company_url, keywords or filters; filters.locations, filters.seniority, filters.function, filters.workplace_type, filters.posted_within_days, max_results, per_page, page, pagination_token","fields":["job URL","title","company","company URL","company ID","company logo","location","posted at","workplace type","description snippet","job ID","employment type","credits consumed","credits remaining","charged","reason","request ID"]},{"provider":"Vayne","api":"Job search","website":"https://www.vayne.io","pricingPage":"https://www.vayne.io/en/pricing","pitch":"[...] search LinkedIn jobs by keywords, location, or company, loading extra pages on demand.","strengths":[],"aggregators":[],"freshness":null,"fieldFreshness":null,"history":null,"keep":"no limit","use":"Under this license, you may not: Build a similar or competitive service; Try to sell any illegal product or services; In any way, violate any applicable federal, state, local, or international law or regulation (including, without limitation, any laws regarding the export of data or software to and from the United States of America or other countries); For the purpose of exploiting, harming, or attempting to exploit or harm minors in any way by exposing them to inappropriate content, asking for personally identifiable information, or otherwise; Send, knowingly receive, upload, download, use, or re-use any material that does not comply with this Agreement; Engage in any harassing, threatening, intimidating, predatory or stalking conduct; Impersonate any person or entity, including without limitation, any Vayne official, employee, or falsely state or otherwise misrepresent your affiliation with such a person or entity; Access the Services by any means other than through the standard industry-accepted or Vayne-approved application program interfaces; Use our Services in any manner that could interfere with, disrupt, negatively affect or inhibit other users from fully enjoying our Services or that could damage, disable, overburden or impair the functioning of our Services in any manner [...]","plan":"Expand","who":"anyone 18 or over","billing":"monthly","charged":null,"topUp":null,"pay":159,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":100000,"unit":"credit","renews":"month","expires":"at the end of each month: no credit rollover","costUnits":1,"calls":100000,"monthlyCap":null,"perThousand":0.0636,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"addons":null,"notFoundPerThousand":0,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":["Check LinkedIn Sales Navigator URL (does not consume credits, 10 requests per minute per user)"],"sharesBudgetWith":["Create an order (Sales Navigator orders)","Scrape a single LinkedIn URL","Scrape multiple LinkedIn URLs (async)","Synchronously scrape a single LinkedIn job","Asynchronously scrape a batch of LinkedIn jobs","Create a post scraper","Estimate credits for profile or company posts scraping","Search LinkedIn profiles (Find People)","Create a reverse lookup","Find a company's social profiles (synchronous)","Create a company lookup (asynchronous batch)"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"page","resultsPerPage":25,"resultsCap":null,"perDay":null,"perSecond":1,"concurrent":null,"batch":null,"answer":"by polling or webhook","latencyMs":2394,"call":"Create a LinkedIn job search and fetch the first page(s)","method":"POST","path":"/api/linkedin_job_searches","send":"at least one of search, location, geo_id or company_id; name, sort_by, date, contract_type, salary, experience_level, industry_ids, pages, auto_scrape, webhook_url","fields":["job ID","job URL","title","posted date","location","company","company LinkedIn URL","easy apply","page","total results","page size","total pages","credits consumed"]},{"provider":"Zooq","api":"Job search","website":"https://zooq.dev","pricingPage":"https://zooq.dev/pricing","pitch":"Job/opportunity search with the full filter set.","strengths":[],"aggregators":[],"freshness":null,"fieldFreshness":null,"history":null,"keep":"no limit","use":"Comply with all applicable laws (GDPR, CASL, CAN-SPAM, etc.). Don't use Zooq for harassment, scraping protected data, or anything in our AUP. Honor opt-out requests from individuals whose data you process. [...] You agree not to use Zooq to: Harass, stalk, or threaten any individual. Send unsolicited bulk messaging (spam) in violation of CAN-SPAM, CASL, or other anti-spam laws. Build databases of EU residents' personal data without a lawful basis under GDPR. Resell raw LinkedIn data to third parties (you may use it in your own products and analytics). Attempt to circumvent our rate limits, credit accounting, or abuse free trials. Use Zooq to enrich profiles of minors, protected classes for discriminatory purposes, or anyone who has explicitly opted out. Run automated content generation that misleads the recipients about its origin.","plan":"Enterprise","who":"anyone","billing":"one-time","charged":null,"topUp":false,"pay":299,"currency":"USD","exchangeRate":1,"termMonths":null,"from":null,"graduated":null,"units":75000,"unit":"credit","renews":"never","expires":"never","costUnits":10,"calls":7500,"monthlyCap":null,"perThousand":0.7973,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"addons":null,"notFoundPerThousand":39.8667,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["other Profile endpoints","Companies endpoints","Search endpoints","Jobs endpoints","Posts endpoints","Comments endpoints","Lookups endpoints","Email endpoints"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"page","resultsPerPage":50,"resultsCap":null,"perDay":null,"perSecond":16.67,"concurrent":null,"batch":1,"answer":"in the call","latencyMs":null,"call":null,"method":"GET","path":"/api/v1/search/jobs","send":"nothing required; keyword, sortBy, datePosted, experience, jobTypes, workplaceTypes, salary, companies, industries, locations, functions, titles, benefits, commitments, easyApply, verifiedJob, under10Applicants, fairChance, count, start","fields":["job ID","job URL","title","company","company logo","location","posted at","promoted","easy apply","total results"]}],"total":350,"freshness":["Live","Within an hour","Within a day","Within a week","Within a month","Within a year","Stored, age unknown"],"providers":[{"label":"A to Ed","kids":[{"label":"agdata","value":"agdata on its own site"},{"label":"AnyAPI","value":"AnyAPI on its own site"},{"label":"Anysite","value":"Anysite on its own site"},{"label":"API Direct","value":"API Direct on its own site"},{"label":"Bridgly","value":"Bridgly on its own site"},{"label":"Bright Data","value":"Bright Data on its own site"},{"label":"ChocoData","value":"ChocoData on its own site"},{"label":"DataForB2B","value":"DataForB2B on its own site"},{"label":"Edges","value":"Edges on its own site"}],"range":true},{"label":"En to R","kids":[{"label":"Enrich Layer","value":"Enrich Layer on its own site"},{"label":"EnvoAPI","value":"EnvoAPI on its own site"},{"label":"HarvestAPI","value":"HarvestAPI on its own site"},{"label":"InsightSocial","value":"InsightSocial on its own site"},{"label":"LinkedIn Scraper API","value":"LinkedIn Scraper API on its own site"},{"label":"lobstr.io","value":"lobstr.io on its own site"},{"label":"OpenWeb Ninja","value":"OpenWeb Ninja on its own site"},{"label":"Renidly","value":"Renidly on its own site"},{"label":"RichAPI","value":"RichAPI on its own site"}],"range":true},{"label":"S to Z","kids":[{"label":"ScrapeBadger","value":"ScrapeBadger on its own site"},{"label":"Scrapingdog","value":"Scrapingdog on its own site"},{"label":"SearchApi","value":"SearchApi on its own site"},{"label":"Serpent API","value":"Serpent API on its own site"},{"label":"SocialCrawl","value":"SocialCrawl on its own site"},{"label":"Social Fetch","value":"Social Fetch on its own site"},{"label":"TikHub","value":"TikHub on its own site"},{"label":"Up2Data","value":"Up2Data on its own site"},{"label":"Vayne","value":"Vayne on its own site"},{"label":"Zooq","value":"Zooq on its own site"}],"range":true}],"at":[0,8,12,19,23,26,31,54,61,82,98,127,132,150,158,174,180,186,192,206,268,279,290,297,301,326,339,347],"fields":{"Job search":["location","title","company","job URL","job ID","company URL","company logo","posted date","posted at","total results","easy apply","salary","company ID","employment type","page","apply URL","credits consumed","description","offset","applicants","has more","page size","posted ago","request ID","benefits","functions","industries","promoted","results on page","workplace type","company universal name","credits remaining","next cursor","remote","company LinkedIn URL","experience level","location country code","new","position","search parameters","seniority","total pages","created at","execution time","job URN","next page URL","previous page URL","relevance insight","replayed","reposted","results returned","success","title ID","verified hiring","amount charged","application availability","apply is direct","apply options","apply type","badges","base salary","charged","company industry","company URN","contractor job","created utc","credits reason","credits reason code","credits status","description HTML","description snippet","discovery input","early applicant","estimated credits charge","expires at","found","from cache","highlight","ID","initial query","job poster","job state","keyword","latitude","location city","location ID","location region","logo URL","longitude","next page number","next page token","original posted at","platform","posted date is exact","previous page number","publisher","reason","result ID","salary standards","serving source","source domain","standardized title","URL","valid through","verified job"]},"same":["api","strengths","waterfall","monthlyFee","addons","catchAllPerThousand","bounceRefund"],"facets":["defaults","provider","price","fields","billing","who","freshness","use","answer","paysFor"],"ties":{"Job search":{"tied":["API Direct, pay as you go","API Direct, pay as you go, Pay per request","AnyAPI, top-up from $10","AnyAPI, top-up from $10, Manual top-up","ChocoData, top-up","ChocoData, top-up, Pay-as-you-go top-up","SearchApi, $500 monthly","Up2Data, $200 pack","Up2Data, $200 pack, 100K","lobstr.io, $500 monthly","lobstr.io, $500 monthly, Team","lobstr.io, $500 monthly, Team, POST /v1/runs","lobstr.io, $500 monthly, Team, POST /v1/runs, 1,000,000 credits a month"],"movedPages":{"API Direct, pay as you go, Pay per request, GET /v1/linkedin/jobs":"/linkedin-job-search-apis/api-direct/pay-as-you-go","lobstr.io, $500 monthly, Team, POST /v1/runs, LinkedIn Jobs Scraper":"/linkedin-job-search-apis/lobstr-io/500-monthly"},"canonicals":{"AnyAPI\nPOST /v1/run/linkedin.jobs_thin":"free-trial-key-post-v1-run-linkedin-jobs-thin","AnyAPI":"free-trial-key-post-v1-run-linkedin-jobs","Anysite":"free","API Direct\nGET /v1/linkedin/jobs":"free","API Direct":"free-tier-post-v1-batch","Bridgly":"free","Bright Data":"free","ChocoData":"free-free-get-api-v1-linkedin-jobsearch","DataForB2B":"499-monthly","Edges":"free","Enrich Layer":"free","EnvoAPI":"free","HarvestAPI":"free","InsightSocial":"free","LinkedIn Scraper API":"free","lobstr.io":"free","OpenWeb Ninja":"free","Renidly":"free","RichAPI":"free","ScrapeBadger":"free","Scrapingdog":"free","SearchApi":"free","Serpent API":"free","Social Fetch":"free","SocialCrawl":"free","TikHub":"top-up-from-5-55","Up2Data\nPOST /v1/search/jobs":"25-pack-10k-post-v1-search-jobs","Up2Data":"25-pack-10k-post-v1-batch","Vayne":"49-monthly","Zooq":"free"}}},"shared":[],"notes":{"name":"The row's name, unique on the sheet: the provider, then the plan's price, like \"API Builderz, $50 monthly\", \"HarvestAPI, $280 pack\", \"Crawlbase, pay as you go\", \"Bright Data, top-up\" (a prepaid balance of any amount), \"AnyAPI, top-up from $10\" (a balance you top up by $10 or more), \"free\" or \"contact us\". If two plans share a price, we add the plan's name, then the call's method and path, its units and the call's name, until no two rows share a name. We build the name for the sheet and leave it out of the sheet's CSV and JSON. datacircle.json and datacircle.csv have the name from its API's sheet.","api":"This column names each row's API. \"Employee profile\" returns a person's LinkedIn profile, on LinkedIn profiles. \"Cached employee profile\" returns it from the provider's copy of LinkedIn, on Cached LinkedIn profiles, which lists the LinkedIn profile plans whose Freshness says a copy. \"Employee email\" finds a person's work email, on Find email. \"Cached employee email\", on the Find cached email sheet, finds a person's work email in the provider's stored data. \"Email validation\" checks whether an address takes mail, on Validate email. On the Cached email validation sheet, \"Cached email validation\" may answer from data the provider keeps, without asking the mail server. \"Employee phone\" finds a person's phone number, on Find phone. \"Cached employee phone\", on the Find cached phone sheet, finds a person's phone number in the provider's stored data. \"Company profile\" returns a company's LinkedIn page, on LinkedIn company profiles. \"Cached company profile\", on the Cached LinkedIn company profiles sheet, returns a company's LinkedIn page from the provider's copy of LinkedIn. \"Company headcount\" counts a company's staff, on its own sheet. \"Cached company headcount\", on the Cached company headcount sheet, counts a company's staff from the provider's stored data. \"Phone validation\" checks whether a phone number is valid, on Validate phone. \"Cached phone validation\", on the Cached phone validation sheet, checks a phone number against data the provider has stored. \"Post comments\" returns the comments on a LinkedIn post, on LinkedIn post comments. \"Post reactions\" returns who reacted to a LinkedIn post and how, on LinkedIn post reactions. \"Employee lookalikes\" returns people similar to the one you send, on Similar people. On the Cached similar people sheet, \"Cached employee lookalikes\" returns similar people from a copy the provider keeps. On the Similar companies sheet, \"Company lookalikes\" returns companies similar to the company you send. On the Cached similar companies sheet, \"Cached company lookalikes\" returns similar companies from a copy the provider keeps. \"Company technologies\" returns the tools a company uses, on its own sheet. \"Cached company technologies\" returns the tools a company uses, from a copy the provider saved earlier. \"Company job count\" counts the jobs a company has open on LinkedIn, on its own sheet. \"Employee posts\" returns a person's LinkedIn posts, on LinkedIn person posts. \"Company posts\" returns a company's LinkedIn posts, on LinkedIn company posts. \"Cached employee posts\" and \"Cached company posts\", on Cached LinkedIn person posts and Cached LinkedIn company posts, return them from the provider's copy of LinkedIn. \"Company funding\" returns a company's funding rounds, on its own sheet. \"Cached company funding\", on the Cached company funding sheet, returns them from the provider's stored data. \"Company jobs\" returns the jobs a company has open, on Company open jobs. On the Cached company open jobs sheet, \"Cached company jobs\" returns a company's open jobs from a copy the provider keeps. \"Employee search\" finds people by job title, company and place, on LinkedIn people search. \"Cached employee search\", on the Cached LinkedIn people search sheet, finds people in the provider's copy of LinkedIn. \"Company search\" finds companies by industry, size and place, on LinkedIn company search. \"Cached company search\" finds companies by industry, size and place in the provider's copy of LinkedIn. It is on the Cached LinkedIn company search sheet. \"Job search\" finds jobs by title, company and place, on LinkedIn job search. \"Cached job search\" finds jobs by title, company and place in a copy of LinkedIn's jobs. It is on the Cached LinkedIn job search sheet. \"Reverse email lookup\" finds the person behind an email, on its own sheet. \"Cached reverse email lookup\" finds who owns an email address in data the provider already holds. It is on the Cached reverse email lookup sheet. \"Post search\" finds posts by keyword, on LinkedIn post search. \"Cached post search\" finds posts by keyword in a copy of LinkedIn posts. It is on the Cached LinkedIn post search sheet. \"Post details\" returns a post from its URL or ID, on LinkedIn post details. \"Job details\" returns a job from its URL or ID, on LinkedIn job details. \"Employee comments\" returns the comments a person left on posts, on LinkedIn person comments. On the Cached LinkedIn person comments sheet, \"Cached employee comments\" returns a person's comments from a copy the provider keeps. \"Employee reactions\" returns the posts a person reacted to, on LinkedIn person reactions. \"Post reposts\" returns the people who reposted a LinkedIn post, on LinkedIn post reposts. \"Employee recommendations\" returns the recommendations on a person's LinkedIn profile, on LinkedIn person recommendations. \"Job lookalikes\" returns jobs similar to the one you send, on Similar jobs. \"Employee articles\" returns a person's LinkedIn articles, on LinkedIn person articles. \"Company enrichment\" returns a company's profile from the provider's own database, on Company enrichment. \"Cached company enrichment\", on the Cached company enrichment sheet, returns a company's profile from the provider's stored data. \"People search\" finds people in the provider's own database. \"Cached people search\", on the Cached people search sheet, finds people in the provider's stored data. \"Company discovery\" finds companies in the provider's own database. \"Cached company discovery\", on the Cached company discovery sheet, finds companies in the provider's stored data. \"Job postings\" finds job postings in the provider's own database. \"Cached job postings\", on the Cached job postings sheet, finds job postings in a copy the provider keeps. \"Job posting details\" returns a job posting from its ID. On the Cached job posting details sheet, \"Cached job posting details\" returns a job posting from a copy the provider keeps. \"Person enrichment\" returns a person's profile. On the Cached person enrichment sheet, \"Cached person enrichment\" returns a person's profile from a copy the provider keeps. \"Leadership changes\" returns the new hires, promotions and departures in a company's senior roles. \"Cached leadership changes\" returns a company's leadership changes from a copy the provider keeps. \"Company hierarchy\" returns a company's parent companies and subsidiaries. Pick an API from the GTM APIs list on the left of the sheet. Pick \"All GTM APIs\" in the GTM APIs list to see every API in one sheet. We name each folder in the zip after its API.","score":"We score each plan out of 100 on five parts: price, data, cost to get started, bundled calls and performance. We score data and performance from our benchmark of the provider's call. Until we benchmark the call, the plan's data, performance and Overall scores are N/A. A plan whose data score is 0 has an Overall score of 0, whatever its other scores. Each API's sheet shows what we measured on each benchmarked plan, in the columns after its price. We rank a plan's price per 1,000 against the price per 1,000 of its API's other scored plans. We score cost to get started and bundled calls on the plan alone. We give N/A to yearly and contact us plans, plans over $500 to start, plans bought on a marketplace and plans that need your own LinkedIn account. A free plan gets N/A unless it has no limit and the provider has no paid plan for that call. Then we score it. Click Score in the sheet's bar to set the five weights. The JSON, datacircle.json and datacircle.csv give each plan's score at the default weights. A plan with N/A has an empty score there. The sheet's CSV has no scores.","Price score":"The plan's price score out of 100. We rank the plan's $ per 1,000 against the $ per 1,000 of the other scored plans of its API. We also count the cost of a call that finds nothing. Some plans give no $ per 1,000. For those plans, when each call returns one result, we use the price our benchmark paid per call. We scale that price by what a credit costs on the plan. We skip our benchmark's price for a plan if another paid plan for the same call lists its own $ per 1,000. Plans for one call can each charge a different price per call. On the sheet, hover over or tap the score to see how we worked it out.","Data score":"The plan's data score out of 100, from our benchmark of its provider's call: how complete the call's answer is, or how often it is right, depending on the API. Until we benchmark the call, the score is N/A, and so is the Overall score. On the sheet, point at the score to see how we scored it. Each API's sheet shows what we measured on each benchmarked plan, in the columns after its price.","Cost to get started score":"The plan's score out of 100 for getting your first result: who can get it, how you pay, and the least you pay before it. On the sheet, point at the score to see why.","Bundle score":"The plan's score out of 100 for the other calls its price gets you, as its pages list them under Also pays for. On the sheet, point at the score to see why.","Performance score":"The plan's performance score out of 100, from our benchmark of its provider's call. We divide the fastest benchmarked provider's median time by this provider's median time. A median under 0.1 s counts as 0.1 s, since the baseline we take off varies by about that much. The Performance score and the Overall score are N/A until we benchmark the call. If the call gave no answer we could time, the Performance score is N/A and the Overall score counts it as 0. The Performance score is N/A if we timed no other call in the same benchmark. The Overall score then leaves Performance out. On the sheet, point at the score to see how we scored it. Each API's sheet shows what we measured on each benchmarked plan, in the columns after its price.","perThousand":"The price of 1,000 jobs on this plan, in dollars. It is 0 on a free plan. On a plan that charges by the page, we divide 1,000 by the most jobs one page holds. We round that up to whole pages and add up what the pages cost. We leave it blank when the provider doesn't say how many jobs a page holds. On a flat fee, we take the most jobs the plan allows in one month and multiply by the number of months the fee covers. We divide the fee by that total. Then we multiply by 1,000. We leave it blank when the provider doesn't say how many jobs the plan allows. On a flat fee with no cap on jobs, the sheet shows \"no limit\", and the CSV and JSON leave it blank. On a waterfall's paid plan, we show the average cost of a call. We take the price of each provider listed under Waterfall. We weight each price by how often a call reaches that provider. We leave it blank when the waterfall doesn't list a hit rate or a page size for a provider a call can reach. On a plan with a Monthly fee, we first subtract one month of the fee from the plan's units. Then we divide the plan's price by the number of jobs the remaining units buy. Then we multiply by 1,000. We leave it blank when the Monthly fee uses up all the plan's units. Some plans limit calls per day or per month. If that limit allows fewer jobs than the units pay for, we divide the plan's price by the jobs the limit allows, and multiply by 1,000. We leave it blank on a top-up, because a top-up buys no fixed number of jobs. We also leave it blank when the provider's website doesn't say what a job costs on this plan, or how many jobs the plan's price buys.","billing":"How you pay: \"free\", \"on-demand\" (you pay for what you use, with nothing to buy first), \"one-time\" (a pack or a top-up you pay for first, then use), \"contact\" (no public price: you ask the provider for one), or a subscription: \"monthly\", \"quarterly\" (every three months), \"half-yearly\" (every six months) or \"yearly\". The sheet shows \"one-time\" as \"pay first\" and \"on-demand\" as \"pay as you go\".","perMonth":"On a subscription: its price for one month in dollars, its Pay divided by the months it buys (termMonths), 12 on most yearly plans. We work it out for the sheet, to the cent. We leave it out of the sheet's CSV and JSON, and datacircle.json and datacircle.csv have it. Blank (null) on every other plan.","notFoundPerThousand":"Dollars for 1,000 searches that find no job. 0 when the provider charges nothing for them, as on free plans. On a waterfall, the cost of a call when no provider finds the answer: the sum of the prices of the providers that charge for a miss.","strengths":"The plan's strengths, which we work out from its row: each one is a band that many plans of its API are in. Each API has its own strengths, listed and explained under Strengths on datacircle.dev/fields, and Validate email, Find phone, Validate phone, LinkedIn company profiles, Company headcount, LinkedIn post comments, LinkedIn post reactions, Similar people, Similar companies, Company technologies, Company job count, LinkedIn person posts, LinkedIn company posts, Company funding, Company open jobs, LinkedIn people search, LinkedIn company search, LinkedIn job search, Reverse email lookup, LinkedIn post search, LinkedIn post details, LinkedIn job details, LinkedIn person comments, LinkedIn person reactions, LinkedIn post reposts, LinkedIn person recommendations, Similar jobs, LinkedIn person articles, Company enrichment, People search, Company discovery, Job postings, Job posting details, Person enrichment, Leadership changes and Company hierarchy have none yet. Cached LinkedIn profiles and Find cached email have the strengths of LinkedIn profiles and Find email, but never \"read live\" or \"found live\". The other cached sheets have none yet. Blank ([] in the JSON) when the plan has none, and we leave Strengths off its page. Under Filters, you see only the rows with every strength you tick.","aggregators":"Aggregators like treg and Deepline sell the row's call. With one aggregator account, you reach many providers. Each cell says what a call costs through the aggregator with your own provider key. It also says what 1,000 jobs cost when you pay the aggregator and have no account at the provider: \"treg: your key free, paid $1.50\". We add \"per 1,000 results\" when the aggregator charges per job it finds, and say \"paid, no fixed price\" when the aggregator publishes no price. For an aggregator that charges by the page, we take the largest page size and price the full pages you need for 1,000 results. We write \"paid, page size not stated\" when the aggregator doesn't say how many results a page holds. We write \"listed, how it's sold not stated\" when the aggregator lists the call but doesn't say if you pay the aggregator or use your own key. When the aggregator sells one of the provider's calls without saying which, the cell ends with \"this call or another\", the provider's name and \"call\": \"this call or another Pubrio call\". A cell says \"none\" when no aggregator we checked for the row's API sells the call. A blank cell (null in the JSON) means we haven't checked any aggregator for that API. We skip calls an aggregator doesn't list. In the JSON, each aggregator has these keys. aggregator is its name. url is its page for the call. ownKey is what a call costs there with your own key, or null when you can't use yours. paid is true when you can pay the aggregator. paid and ownKey are both null when the aggregator doesn't say how it sells the call. callStated is false when the aggregator sells this call or another of the provider's and doesn't say which. usd is its price in dollars for one per, or null when it sets no price. perThousand is its price in dollars for 1,000. per is \"call\", \"result\" or \"page\". resultsPerPage is the most results a page holds, or null. So far we have read AnyAPI, Clay, ColdIQ, Databar, Deepline, Monid, Orthogonal, RouterGrowth and treg.","waterfall":"Some routers, like treg's, try one provider after another until one finds the job. On a router's call, the Waterfall column lists each provider the router tries, in order. Each provider shows the router's name for its call in brackets. Then comes its price per 1,000 on this plan, then how often it finds the job. We add \"misses billed\" when the provider charges for a miss. For a provider that charges by the page, we count the full pages that hold 1,000 results at the largest page size, and we write \"page size not stated\" when the provider doesn't say how many results a page holds. The router publishes how often each provider finds a job over all its calls. We assume each provider finds jobs at that same rate on the calls the earlier providers miss. We leave the Waterfall column blank on calls with a single provider. In the JSON, each step has these keys. provider is the provider's name. call is the provider's call, which you can also make on its own. perThousand, per and resultsPerPage mean the same as on a plan's row. hitRate is from 0 to 1, or null when the router gives none. missesBilled is true when the provider charges for a miss.","repeatFree":"On a call that costs units: how long you can get a job again free on this plan after you pay for it. On a flat fee with a daily or monthly limit: how long you can get a job again without using up the limit after you first get the job. We copy it from the provider's pages, like \"20 minutes\". \"no limit\" means the provider never charges again for a job you paid for once. \"never\" means the provider says it charges each time you get the job again. Blank when the provider's pages don't say.","per":"The price counts a \"call\" or a \"result\". A call asks for one job. A result is each job a call returns. Some calls return a page of results: a post's comments, reactions or reposts, a person's or company's posts, a person's articles, comments or reactions, a company's open jobs, the people, companies, jobs or posts a search finds, or people, companies or jobs similar to the one you send. \"result\" counts each job on the page. \"page of 50\" counts each page, and you pay for a whole page even when it holds fewer than 50. resultsPerPage is the most jobs a page holds. It is null when the price doesn't count pages or the provider doesn't say the page size. \"page, size not stated\" means the provider doesn't say how many jobs a page holds.","resultsCap":"For a search API, the most results you can get from one search on this plan, however many pages you ask for. \"no limit\" when the provider says you can get every match. Blank (null in the JSON) when the provider's docs don't say, or when the API isn't a search.","startPerCall":"A fee in dollars you pay once for each call, on top of the price per job, like an Apify Actor's start fee. You pay the same fee for a call of 1,000 jobs or a call of one job. We leave this fee out of the $ per 1,000. It is $0.00 on a free plan. It is blank when the plan has no start fee. Some providers' pages give a range, like \"2-3 credits\". When the page gives a range, startPerCall is the lowest fee and startPerCallMax is the highest. The sheet and the CSV show \"$0.04 to $0.06\". startPerCallMax is blank on a plan with one start fee or none.","monthlyFee":"A monthly fee the call needs. The provider takes it from the plan's units. For example, RouterGrowth charges $9.625 a month for each LinkedIn account you connect. monthlyFee is the fee in dollars. monthlyFeePer is what one fee pays for, like \"LinkedIn account\". The Enough for and $ per 1,000 columns count what is left after one month of the fee. Blank (null in the JSON) when the call has no monthly fee.","extras":"Fields that cost more. Each has its fields and its perThousand on top of the row's.","Also pays for":"The other calls you get for the plan's price. Each has its own limit. We use the provider's words. When a plan pays for more than 40 other calls, we write their count instead, like \"300 other calls\". We leave out apps, extensions, MCP servers, proxies and storage, since they are not calls. We also leave out features you can use only in the provider's app, like sending its email campaigns. For example, gtm-api.com's account price also buys 100 searches, 50 messages and 25 connection requests a day. \"nothing\" when you get only the row's call. The row's $ per 1,000 is for that call alone, since providers don't say how to split their price. Blank (null in the JSON) until we read the provider's plan. Also blank on a \"contact\" plan whose pages don't say what its price buys.","overagePerThousand":"On a subscription: dollars for each 1,000 jobs you get past the plan's units, when the provider sells extra jobs.","addons":"On an email API's subscription: the packs of units the provider sells on top of the plan, as its pricing page lists them. Each has its units, its pay in the plan's currency, when it renews (\"month\" or \"year\" when you pay for it again with the plan, \"never\" when you buy it once), and its perThousand, dollars for 1,000 emails at its price. The sheet's CSV says \"500 credits a month for $10 ($20.00 per 1,000)\". An empty list when the provider sells none. Blank (null) on every other plan.","catchAllPerThousand":"On an email API: dollars for 1,000 calls that return an address at a catch-all domain. Such a domain takes mail for any address, so you can't check whether the person's mailbox exists, and the email may bounce. 0 when they cost nothing, or when the provider returns no such address. The same as the row's $ per 1,000 when the provider charges for any address it finds. Blank when its pages don't say.","bounceRefund":"On an email API: the credit or refund the provider gives when an address it charged you for bounces, and the conditions, in its pages' words, like \"the credit, reported from the dashboard or the API and reviewed\". \"never\" when its pages say a bounced address stays charged. Blank when they don't say.","pitch":"How the provider sells the row's call, quoted from the call's own page, or the provider's own pitch when one page covers all its calls. \"[...]\" marks a cut.","freshness":"How old the answer may be, from the provider's pages. \"live\": the provider reads LinkedIn, the company's website or its job board, or finds or checks the email or phone number, when you call. A plan is \"live\" too when the provider keeps each answer for an hour or less and gives it again to anyone who asks the same question in that time. Renidly keeps each answer for 20 minutes. \"1 month\" or \"30 days\": the provider answers from a copy it refreshes that often. \"as of 2025-11-13\": from a copy last refreshed that day. \"stored\": from a copy the provider's pages don't date. We also mark an email or phone check \"stored\" when it reads only the format, the domain's DNS and the provider's own lists. That check never asks the mail server or the carrier. We leave it blank (null in the JSON) when the provider's pages don't say how fresh the answer is, or don't agree with each other. The cached sheets are Cached LinkedIn profiles, Find cached email, Cached LinkedIn company profiles, Cached company headcount, Cached company enrichment, Cached people search, Cached company discovery, Cached company funding, Cached email validation, Cached LinkedIn people search, Find cached phone, Cached reverse email lookup, Cached LinkedIn job search, Cached LinkedIn company search, Cached LinkedIn post search, Cached company technologies, Cached phone validation, Cached LinkedIn person posts, Cached LinkedIn company posts, Cached job postings, Cached leadership changes, Cached person enrichment, Cached similar people, Cached similar companies, Cached company open jobs, Cached LinkedIn person comments and Cached job posting details. We put a plan on its API's cached sheet when the plan's Freshness says the provider answers from a copy. We put every other plan on its API's own sheet. In brackets, we list the fields whose freshness differs on the provider's pages. fieldFreshness gives each of them its own freshness. Bright Data's LinkedIn profile is \"live (current title, jobs, schools: as of 2025-11-13)\", since LinkedIn put those three behind its login wall and Bright Data serves them from its cache.","history":"How far back the answers reach, on an API whose answers are dated, such as a company's funding rounds or its open jobs. \"since 2016\": back to 2016. \"open only\": only what is open now. \"the last 7 days\": a window that ends today. \"no limit\": every one ever. \", closed only\" after it: the closed ones alone. Blank (null in the JSON) when the provider's pages don't say, or when the answers aren't dated.","keep":"How long the provider's terms let you keep its API's answers. \"no limit\" when they set none. \"no API terms\" when the provider has no API terms.","use":"What the provider's terms let you use its API's answers for, and what they ask in return, like a link back or a credit. \"any\" when they limit nothing and ask nothing. \"no API terms\" when the provider has no API terms.","pay":"The plan's price, in its currency. On a subscription, the price covers the months in termMonths. In the sheet's CSV, we write the months after the price: \"$39.00/month\", \"€99.00/month\" on a plan in euros, or \"$468.00/15 months\" on gtm-api.com's yearly plan. A pack's Pay is its price. A top-up's Pay is the smallest amount you can top up. On a top-up with no minimum from the provider, Pay is blank (null in the JSON). A free plan's Pay is $0.00. On a usage tier, Pay is what you pay each month for your calls below that tier. Each of those calls costs the price of its own tier. Some tiers have a minimum. If your calls below the tier cost less than the minimum, you pay the minimum. When a usage tier sits on a subscription, you also pay the plan's price. Crawlbase has a tier for the next 10M requests. On that tier, Pay is $583: what you pay each month for your calls below it. On Mailgun's Foundation plan, you pay $95 a month for up to 5,000 validations: the $35 plan plus $60 for the validations. On a pay-as-you-go plan, the sheet's Pay column shows Charged.","units":"What the plan gives for its price, counted in unit. On a usage tier, where the tier starts: \"from the 51st call a month\".","calls":"The number of jobs you get for the plan's price, counted in per. A call and a result are each one job. On a plan that charges by the page, calls and monthlyCap count pages. calls is the number the plan's units pay for: \"100 calls, once\" for a free trial, \"1,250 results a month\" for an allowance. Some plans limit calls per day or per month. On those plans, calls is the most calls the limit allows before the units renew. This counts each call as one job or one page. A plan with 10,000 requests a month and a limit of 200 calls a day gives you 6,000 calls a month. monthlyCap is for a call that costs 0 units, like a call on a flat fee. monthlyCap is the most jobs you get a month, or \"no limit\". On a plan that limits calls per day or per month, monthlyCap is the most calls the limit allows in 30 days: 90,000 for 3,000 calls a day. The Enough for column shows 3,000 calls a day as \"90,000 calls a month\". On a free trial shorter than 30 days, monthlyCap is the most calls the plan allows over the whole trial. The trial gives these calls one time only. A 7-day trial with 1,000 calls a day shows as \"7,000 calls, once\". Enough for shows calls, or monthlyCap when a row has no calls. On a plan with a Monthly fee, calls is the number of calls left after the provider takes one month's fee from the plan's units. We count the calls again each time the provider refills the plan's units. Enough for says \"0 calls left after the monthly fee\" when the fee uses up all the plan's units. Enough for is blank when the provider doesn't say how many jobs you get. Enough for is also blank on pay as you go plans, on top-ups, and on subscriptions that charge for each job on top of the fee. Enough for is also blank when a waterfall's average call costs nothing. calls and monthlyCap are null when Enough for is blank.","expires":"When the units you don't use lapse, in the provider's words: \"never\", \"365 days\", \"at renewal: unused credits do not carry over\". Blank when its pages don't say.","perDay":"The most calls a day.","perSecond":"The most calls a second you can keep up. When the provider counts a limit over a longer window, we divide it: a limit per minute by 60, per 5 minutes by 300, per hour by 3,600. When it sets several, we show the tightest: 25 a second and 40 a minute is 0.67. We round it to two decimals, and a rate under 0.1 to two digits past its zeros: 5 an hour is 0.0014.","concurrent":"The most calls running at once, or \"no limit\". \"n/a\" when the provider sets no cap on calls at once but limits them by the second: its \"Per second\" limits you. Blank (null) when the provider's pages don't say.","batch":"The most searches one call takes on this plan. 1 when it takes one at a time. \"no limit\" when the provider says a call takes any number. Blank (null) when a call takes a list and the provider's pages don't say how long.","answer":"The way you get the call's answer. \"in the call\" when the call's response holds the answer. \"by polling or webhook\" when the call returns a job. Once the job is done, you get the answer from another call or at your webhook. \"in the call or by polling\" when the call returns the answer if it is ready in time. If it isn't ready, the call returns a job you check later. An Apify Actor returns a job when it runs past 5 minutes. \"in the call or by webhook\" when you choose in your request. \"by polling\" when only another call gets the answer. \"by webhook\" when only a URL you give gets the answer. Blank (null) when the provider's pages don't say.","latencyMs":"The median time a call takes. If we benchmarked the row's call, we show our benchmark's median, as in its API's benchmark columns: each call's time minus the mean time of three free calls to the same provider before it. If that mean is longer than the call, we use the provider's median baseline, capped at the call's time, so no time is below zero. For other rows, it is the time the provider's pages give, or one we measured when we added the row. Blank (null) when we have neither, or when we benchmarked the call and it gave no answer we could time. Milliseconds in the JSON and datacircle.csv, seconds on the sheet and in its CSV.","send":"What you give the call: filters such as a job title, a company or a place. The call needs the inputs before \"Optional:\". The optional ones come after it, or after a semicolon in the CSV and the JSON.","method":"The call's HTTP method.","path":"We give the path from the provider's docs. When that path fails, we give the path that works. Each plan of a call has the same path. A plan the provider serves at its own address has its own path.","plan":"The plan, as the provider names it on its pricing page.","who":"Who the provider offers the plan to: \"anyone\", or the condition its pages set, like \"anyone with a work email\" or \"on approval of an application\".","readFrom":"The pages we read the row's values from. They are the sheet's last column: click a cell to see each page, or press ⌘C to copy them all."},"billed":{"free":"Free: nothing to pay","on-demand":"Nothing to buy first: you pay as you go","one-time":"You buy credit first, as a pack or any amount you like, then spend it on calls","contact":"No public price: you ask the provider for one","monthly":"A monthly subscription","quarterly":"A quarterly subscription","half-yearly":"A subscription for 6 months","yearly":"A subscription for 12 or 15 months"},"defaults":["Ignore RapidAPI and Apify","Ignore plans that need your LinkedIn","No contact us plans","No free plans","No yearly plans","$500 or less to start"],"kept":28,"paid":{"ranked":{"Job search":[0.0191,0.02,0.0229,0.0261,0.0264,0.0264,0.0298,0.0299,0.035,0.0396,0.045,0.048,0.049,0.05,0.058,0.0598,0.0632,0.0636,0.0704,0.075,0.0792,0.08,0.09,0.098,0.116,0.1307,0.148,0.15,0.18,0.1896,0.1904,0.1933,0.1977,0.2,0.2164,0.24,0.24,0.25,0.25,0.2832,0.2857,0.3332,0.4,0.5,0.5,0.5,0.5714,0.7973,0.8,0.9568,1,1,1.0101,1.144,1.144,1.2995,1.5,1.5,1.568,1.6,1.6,1.6667,1.68,1.68,1.8,1.9199,2,2,2,2,2,2.1119,2.22,2.22,2.22,2.22,2.22,2.22,2.22,2.22,2.22,2.22,2.5,2.5,3,4.7962,6,8,19.96,32.985,41.235,49.485,65.985]},"bench":{"Job search|HarvestAPI|/linkedin/job-search":{"data":0.6613,"performance":1,"median":854,"measured":854,"fastest":"HarvestAPI","fastestMedian":854,"fastestMeasured":854,"called":20,"inputs":20,"fewer":true,"days":["2026-10-20","2026-10-22","2026-10-23","2026-10-25"],"row":"HarvestAPI"},"Job search|Up2Data|/v1/search/jobs":{"data":0.825,"performance":0.09860293268675673,"median":8661,"measured":8661,"fastest":"HarvestAPI","fastestMedian":854,"fastestMeasured":854,"called":20,"inputs":20,"fewer":true,"days":["2026-10-20","2026-10-22","2026-10-23","2026-10-25"],"row":"Up2Data"},"Job search|API Direct|/v1/linkedin/jobs":{"data":0.9198,"performance":0.29156708774325707,"median":2929,"measured":2929,"fastest":"HarvestAPI","fastestMedian":854,"fastestMeasured":854,"called":20,"inputs":20,"fewer":true,"days":["2026-10-22","2026-10-23"],"row":"API Direct"},"Job search|SearchApi|/api/v1/search?engine=linkedin_jobs":{"data":0.8792,"performance":0.549903412749517,"median":1553,"measured":1553,"fastest":"HarvestAPI","fastestMedian":854,"fastestMeasured":854,"called":20,"inputs":20,"fewer":true,"days":["2026-10-22","2026-10-23","2026-10-25"],"row":"SearchApi"},"Job search|OpenWeb Ninja|/search":{"data":0.8625,"performance":0.35391628677994197,"median":2413,"measured":2413,"fastest":"HarvestAPI","fastestMedian":854,"fastestMeasured":854,"called":20,"inputs":20,"fewer":true,"days":["2026-10-22","2026-10-23"],"row":"OpenWeb Ninja"},"Job search|AnyAPI|/v1/run/linkedin.jobs":{"data":0.8558,"performance":0.09074487302093295,"median":9411,"measured":9411,"fastest":"HarvestAPI","fastestMedian":854,"fastestMeasured":854,"called":15,"inputs":20,"fewer":true,"days":["2026-10-23"],"row":"AnyAPI, LinkedIn Jobs"},"Job search|AnyAPI|/v1/run/linkedin.jobs_thin":{"data":0.87,"performance":0.27068145800316956,"median":3155,"measured":3155,"fastest":"HarvestAPI","fastestMedian":854,"fastestMeasured":854,"called":20,"inputs":20,"fewer":true,"days":["2026-10-23","2026-10-25"],"row":"AnyAPI, LinkedIn Jobs (index)"},"Job search|ChocoData|/api/v1/linkedin/jobsearch":{"data":0.875,"performance":0.7406764960971379,"median":1153,"measured":1153,"fastest":"HarvestAPI","fastestMedian":854,"fastestMeasured":854,"called":20,"inputs":20,"fewer":true,"days":["2026-10-25"],"row":"ChocoData, linkedin.jobsearch"},"Job search|ChocoData|/api/v1/linkedin/search":{"data":0.875,"performance":0.5531088082901554,"median":1544,"measured":1544,"fastest":"HarvestAPI","fastestMedian":854,"fastestMeasured":854,"called":20,"inputs":20,"fewer":true,"days":["2026-10-25"],"row":"ChocoData, linkedin.search"},"Job search|Vayne|/api/linkedin_job_searches":{"data":0.67,"performance":0.3567251461988304,"median":2394,"measured":2394,"fastest":"HarvestAPI","fastestMedian":854,"fastestMeasured":854,"called":20,"inputs":20,"fewer":true,"days":["2026-10-25"],"row":"Vayne"}}},"alert":true,"bench":{"groups":[{"name":"Jobs checked","note":"On 20, 22, 23 and 25 October 2026, we sent each provider up to 20 searches, all from the same list. Some providers offer two different calls. Some providers got the same search more than once. Time is each call minus a baseline, so the distance to the provider's servers drops out. We asked for 10 jobs per search, by a word and a country, and read each job's LinkedIn page. Match the search: still open, in that country or a region holding it, with the word where the call looks for it: in the title, or in the title or description for a call that searches the whole posting. Without the word: open and there, but the word isn't where the call looks. Another country: placed elsewhere. No longer open: closed or gone. Not confirmed: the job's page didn't load after several tries, shows no job, or names no place we could find on a map. No page: the call returned no link to a job. We leave Not confirmed jobs out of the Data score. We count No page jobs as wrong.","columns":[{"name":"Searches run","kind":"count","values":{"HarvestAPI":[20,20],"Up2Data":[20,20],"API Direct":[20,20],"SearchApi":[20,20],"OpenWeb Ninja":[20,20],"AnyAPI, LinkedIn Jobs":[15,20],"AnyAPI, LinkedIn Jobs (index)":[20,20],"ChocoData, linkedin.jobsearch":[20,20],"ChocoData, linkedin.search":[20,20],"Vayne":[20,20]}},{"name":"Returned","kind":"count","values":{"HarvestAPI":[200,200],"Up2Data":[196.6,200],"API Direct":[199.5,200],"SearchApi":[200,200],"OpenWeb Ninja":[197.5,200],"AnyAPI, LinkedIn Jobs":[150,150],"AnyAPI, LinkedIn Jobs (index)":[198,200],"ChocoData, linkedin.jobsearch":[198,200],"ChocoData, linkedin.search":[198,200],"Vayne":[190,200]}},{"name":"Match the search","kind":"count","values":{"HarvestAPI":[132,200],"Up2Data":[164.7,200],"API Direct":[183.5,200],"SearchApi":[175.8,200],"OpenWeb Ninja":[172.5,200],"AnyAPI, LinkedIn Jobs":[128,150],"AnyAPI, LinkedIn Jobs (index)":[174,200],"ChocoData, linkedin.jobsearch":[175,200],"ChocoData, linkedin.search":[175,200],"Vayne":[134,200]}},{"name":"Without the word","kind":"count","values":{"HarvestAPI":[67.6,200],"Up2Data":[31.5,200],"API Direct":[15.5,200],"SearchApi":[24.2,200],"OpenWeb Ninja":[25,200],"AnyAPI, LinkedIn Jobs":[21,150],"AnyAPI, LinkedIn Jobs (index)":[24,200],"ChocoData, linkedin.jobsearch":[23,200],"ChocoData, linkedin.search":[23,200],"Vayne":[56,200]}},{"name":"Another country","kind":"count","values":{"HarvestAPI":[0,200],"Up2Data":[0,200],"API Direct":[0,200],"SearchApi":[0,200],"OpenWeb Ninja":[0,200],"AnyAPI, LinkedIn Jobs":[0,150],"AnyAPI, LinkedIn Jobs (index)":[0,200],"ChocoData, linkedin.jobsearch":[0,200],"ChocoData, linkedin.search":[0,200],"Vayne":[0,200]}},{"name":"No longer open","kind":"count","values":{"HarvestAPI":[0,200],"Up2Data":[0,200],"API Direct":[0,200],"SearchApi":[0,200],"OpenWeb Ninja":[0,200],"AnyAPI, LinkedIn Jobs":[0,150],"AnyAPI, LinkedIn Jobs (index)":[0,200],"ChocoData, linkedin.jobsearch":[0,200],"ChocoData, linkedin.search":[0,200],"Vayne":[0,200]}},{"name":"Not confirmed","kind":"count","values":{"HarvestAPI":[0.4,200],"Up2Data":[0.4,200],"API Direct":[0.5,200],"SearchApi":[0,200],"OpenWeb Ninja":[0,200],"AnyAPI, LinkedIn Jobs":[1,150],"AnyAPI, LinkedIn Jobs (index)":[0,200],"ChocoData, linkedin.jobsearch":[0,200],"ChocoData, linkedin.search":[0,200],"Vayne":[0,200]}},{"name":"No page","kind":"count","values":{"HarvestAPI":[0,200],"Up2Data":[0,200],"API Direct":[0,200],"SearchApi":[0,200],"OpenWeb Ninja":[0,200],"AnyAPI, LinkedIn Jobs":[0,150],"AnyAPI, LinkedIn Jobs (index)":[2,200],"ChocoData, linkedin.jobsearch":[0,200],"ChocoData, linkedin.search":[0,200],"Vayne":[0,200]}}]},{"name":"Time per job search","note":"Each call's time minus its baseline, over our first call on each search, where it returned a job that matches the search: a search that returned none is no job done, however fast it came. We didn't time every provider in the same test. Some days we added a provider and tested it beside providers we had tested before, on the same searches. This sheet uses one of those tests. Each provider in it shows its time from that test. Every other provider shows its time from a test on another day. A provider's speed can change from one day to the next. Any other later call on the same search isn't timed, since the provider may answer it from what it kept. The baseline is the mean of three free calls to the same provider just before the call, on the same connection. If that mean is longer than the call, we use the provider's median baseline, capped at the call's time, so no time is below zero. Nothing to time means it returned no job that matches.","columns":[{"name":"Median","kind":"ms","values":{"HarvestAPI":854,"Up2Data":8661,"API Direct":2929,"SearchApi":1553,"OpenWeb Ninja":2413,"AnyAPI, LinkedIn Jobs":9411,"AnyAPI, LinkedIn Jobs (index)":3155,"ChocoData, linkedin.jobsearch":1153,"ChocoData, linkedin.search":1544,"Vayne":2394}},{"name":"10th percentile","kind":"ms","values":{"HarvestAPI":704,"Up2Data":8021,"API Direct":2752,"SearchApi":1075,"OpenWeb Ninja":1876,"AnyAPI, LinkedIn Jobs":7363,"AnyAPI, LinkedIn Jobs (index)":2270,"ChocoData, linkedin.jobsearch":784,"ChocoData, linkedin.search":833,"Vayne":1248}},{"name":"90th percentile","kind":"ms","values":{"HarvestAPI":2194,"Up2Data":10168,"API Direct":4428,"SearchApi":2396,"OpenWeb Ninja":4247,"AnyAPI, LinkedIn Jobs":13597,"AnyAPI, LinkedIn Jobs (index)":4299,"ChocoData, linkedin.jobsearch":2165,"ChocoData, linkedin.search":2549,"Vayne":3657}},{"name":"Fastest","kind":"ms","values":{"HarvestAPI":695,"Up2Data":7542,"API Direct":2709,"SearchApi":1015,"OpenWeb Ninja":1774,"AnyAPI, LinkedIn Jobs":5884,"AnyAPI, LinkedIn Jobs (index)":2011,"ChocoData, linkedin.jobsearch":543,"ChocoData, linkedin.search":613,"Vayne":1180}},{"name":"Slowest","kind":"ms","values":{"HarvestAPI":2576,"Up2Data":10921,"API Direct":10064,"SearchApi":2486,"OpenWeb Ninja":5958,"AnyAPI, LinkedIn Jobs":43371,"AnyAPI, LinkedIn Jobs (index)":14837,"ChocoData, linkedin.jobsearch":3522,"ChocoData, linkedin.search":7642,"Vayne":3775}},{"name":"Baseline","kind":"ms","values":{"HarvestAPI":288,"Up2Data":314,"API Direct":347,"SearchApi":325,"OpenWeb Ninja":405,"AnyAPI, LinkedIn Jobs":343,"AnyAPI, LinkedIn Jobs (index)":251,"ChocoData, linkedin.jobsearch":219,"ChocoData, linkedin.search":227,"Vayne":211}}]},{"name":"The job search call","note":"The provider's LinkedIn job search call, by a word and a country, where its docs say it looks for the word, and what one search cost on this run.","columns":[{"name":"Call","kind":"text","values":{"HarvestAPI":"GET api.harvest-api.com/linkedin/job-search?search=&geoId=","Up2Data":"POST api.up2data.ai/v1/search/jobs","API Direct":"GET apidirect.io/v1/linkedin/jobs?query=&location_id=","SearchApi":"GET searchapi.io/api/v1/search?engine=linkedin_jobs&q=&location_id=","OpenWeb Ninja":"GET api.openwebninja.com/realtime-linkedin-data/search?query=&geo_id=","AnyAPI, LinkedIn Jobs":"POST api.getanyapi.com/v1/run/linkedin.jobs","AnyAPI, LinkedIn Jobs (index)":"POST api.getanyapi.com/v1/run/linkedin.jobs_thin","ChocoData, linkedin.jobsearch":"GET api.chocodata.com/api/v1/linkedin/jobsearch?keywords=&location=","ChocoData, linkedin.search":"GET api.chocodata.com/api/v1/linkedin/search?keywords=&location=","Vayne":"POST www.vayne.io/api/linkedin_job_searches"}},{"name":"Searches the word in","kind":"text","values":{"HarvestAPI":"The job's title","Up2Data":"The job's title and description","API Direct":"The job's title and description","SearchApi":"The job's title and description","OpenWeb Ninja":"The job's title and description","AnyAPI, LinkedIn Jobs":"The job's title and description","AnyAPI, LinkedIn Jobs (index)":"The job's title and description","ChocoData, linkedin.jobsearch":"The job's title and description","ChocoData, linkedin.search":"The job's title and description","Vayne":"The job's title"}},{"name":"Charged per search","kind":"text","values":{"HarvestAPI":"$0.001","Up2Data":"$0.025 for 10 jobs, nothing when none","API Direct":"$0.006","SearchApi":"$0.004","OpenWeb Ninja":"$0.005","AnyAPI, LinkedIn Jobs":"$0.0286","AnyAPI, LinkedIn Jobs (index)":"$0.00066","ChocoData, linkedin.jobsearch":"$0.0009","ChocoData, linkedin.search":"$0.0009","Vayne":"$0.0024, nothing when none"}}]}],"inputs":{"said":"The 20 searches we called, as each provider's call took them.","keys":["keyword","place","geo_id"],"rows":[["Project","United States","103644278"],["Support","United Kingdom","101165590"],["Analyst","Germany","101282230"],["Designer","France","105015875"],["Product","Canada","101174742"],["Cloud","Australia","101452733"],["Sales","Netherlands","102890719"],["Marketing","Spain","105646813"],["Manager","Italy","103350119"],["Developer","India","102713980"],["Operations","Brazil","106057199"],["Software","Sweden","105117694"],["Consultant","Switzerland","106693272"],["Recruiter","Ireland","104738515"],["Business","Singapore","102454443"],["Engineer","Japan","101355337"],["Finance","Belgium","100565514"],["Data","Poland","105072130"],["Account","Mexico","103323778"],["Customer","South Africa","104035573"]]}},"more":"/assets/sheet-zFnxdAIr.json"}