API Job Search

Job Search Theirstack API

Ищет в индексе вакансий TheirStack по компании, технологии, ключевому слову, должности, seniority, зарплате, местоположению и давности публикации и возвращает полную фирмографическую запись нанимающей компании со всеми публикациями. Оплата за каждую возвращённую вакансию.

67,20 USD/1 тыс. результатов, оплата за запрос, без подписки.

Job Search - TheirStack
app.theirstack.com/jobs
TheirStack
DataJob SearchCompaniesSignals
Search job title, company, or domain
Filters:data analystUSPosted ≤ 14d
Job titleCompanyLocationPostedSalary
Senior Data Analyst, Revenue OperationsBBrightloop AnalyticsAustin, TXSep 22, 2026$110,000 - $140,000
Data Analyst - Supply ChainFFernwood LogisticsColumbus, OHSep 18, 2026$85,000 - $105,000
Junior Data AnalystCCobalt Peak SystemsRemoteSep 25, 2026$65,000 - $80,000
Что вернул APIjobs[0]
{
"jobId": "ts_88213945",
"title": "Senior Data Analyst, Revenue Operations",
"normalizedTitle": "Data Analyst",
"url": "https://www.brightloopanalytics.com/careers/senior-data-analyst-revops",
"sourceUrl": "https://boards.greenhouse.io/brightloop/jobs/6621394",
"finalUrl": "https://www.brightloopanalytics.com/careers/senior-data-analyst-revops",
"companyName": "Brightloop Analytics",
"companyDomain": "brightloopanalytics.com",
+31 ещё
}
Доступность
100,00%
30d · 1 вызов
Запросы
1
30d
Ответ
9,7s
медиана · 30d

Вызвать

Получите Job Search Theirstack одним запросом

import os, requests

res = requests.post(
    "https://api.getanyapi.com/v1/run/job_search.theirstack",
    headers={"Authorization": f"Bearer {os.environ['ANYAPI_KEY']}"},
    json={},
)
print(res.json())
Открыть в
Пример ответа
{
  "found": true,
  "data": {
    "jobs": [
      {
        "jobId": "ts_88213945",
        "title": "Senior Data Analyst, Revenue Operations",
        "normalizedTitle": "Data Analyst",
        "url": "https://www.brightloopanalytics.com/careers/senior-data-analyst-revops",
        "sourceUrl": "https://boards.greenhouse.io/brightloop/jobs/6621394",
        "finalUrl": "https://www.brightloopanalytics.com/careers/senior-data-analyst-revops",
        "companyName": "Brightloop Analytics",
        "companyDomain": "brightloopanalytics.com",
        "postedUtc": 1790085600,
        "discoveredUtc": 1790128800,
        "remote": true,
        "hybrid": false,
        "seniority": "senior",
        "employmentStatuses": [
          "full_time"
        ],
        "easyApply": false,
        "salaryString": "$110,000 - $140,000",
        "salaryCurrency": "USD",
        "minAnnualSalary": 110000,
        "maxAnnualSalary": 140000,
        "minAnnualSalaryUsd": 110000,
        "maxAnnualSalaryUsd": 140000,
        "avgAnnualSalaryUsd": 125000,
        "technologySlugs": [
          "sql",
          "looker",
          "snowflake"
        ],
        "keywordSlugs": [
          "revenue-operations",
          "forecasting"
        ],
        "location": "Austin, TX, United States",
        "shortLocation": "Austin, TX",
        "longLocation": "Austin, Texas, United States",
        "stateCode": "TX",
        "postalCode": "78701",
        "country": "United States",
        "countryCode": "US",
        "countryCodes": [
          "US"
        ],
        "countries": [
          "United States"
        ],
        "cities": [
          "Austin"
        ],
        "continents": [
          "NA"
        ],
        "latitude": 30.2672,
        "longitude": -97.7431,
        "company": {
          "companyId": "cmp_51029",
          "name": "Brightloop Analytics",
          "domain": "brightloopanalytics.com",
          "url": "https://www.brightloopanalytics.com",
          "image": "https://logo.clearbit.com/brightloopanalytics.com",
          "industry": "Data Infrastructure & Analytics",
          "industryId": "ind_0142",
          "employeeCount": 210,
          "employeeCountRange": "201-500",
          "foundedYear": 2018,
          "city": "Austin",
          "postalCode": "78701",
          "country": "United States",
          "countryCode": "US",
          "linkedinUrl": "https://www.linkedin.com/company/brightloop-analytics",
          "fundingStage": "series_b",
          "totalFundingUsd": 42000000,
          "annualRevenueUsd": 18000000,
          "annualRevenueReadable": "18M"
        },
        "locations": [
          {
            "name": "Austin, TX",
            "locationId": "loc_78701",
            "type": "city",
            "displayName": "Austin, Texas, United States",
            "city": "Austin",
            "state": "Texas",
            "stateCode": "TX",
            "country": "United States",
            "countryCode": "US",
            "continent": "NA",
            "postalCode": "78701",
            "latitude": 30.2672,
            "longitude": -97.7431
          }
        ]
      },
      {
        "jobId": "ts_88214102",
        "title": "Data Analyst - Supply Chain",
        "normalizedTitle": "Data Analyst",
        "url": "https://jobs.fernwoodlogistics.com/positions/4471",
        "sourceUrl": "https://jobs.lever.co/fernwoodlogistics/9a12bc",
        "companyName": "Fernwood Logistics",
        "companyDomain": "fernwoodlogistics.com",
        "postedUtc": 1789725600,
        "discoveredUtc": 1789790400,
        "remote": false,
        "hybrid": true,
        "seniority": "mid_level",
        "employmentStatuses": [
          "full_time"
        ],
        "easyApply": true,
        "salaryString": "$85,000 - $105,000",
        "salaryCurrency": "USD",
        "minAnnualSalary": 85000,
        "maxAnnualSalary": 105000,
        "minAnnualSalaryUsd": 85000,
        "maxAnnualSalaryUsd": 105000,
        "avgAnnualSalaryUsd": 95000,
        "technologySlugs": [
          "python",
          "tableau"
        ],
        "keywordSlugs": [
          "supply-chain",
          "logistics"
        ],
        "location": "Columbus, OH, United States",
        "shortLocation": "Columbus, OH",
        "stateCode": "OH",
        "country": "United States",
        "countryCode": "US",
        "countryCodes": [
          "US"
        ],
        "countries": [
          "United States"
        ],
        "cities": [
          "Columbus"
        ],
        "continents": [
          "NA"
        ],
        "company": {
          "companyId": "cmp_60217",
          "name": "Fernwood Logistics",
          "domain": "fernwoodlogistics.com",
          "url": "https://www.fernwoodlogistics.com",
          "industry": "Freight & Logistics",
          "employeeCount": 640,
          "employeeCountRange": "501-1000",
          "foundedYear": 2011,
          "city": "Columbus",
          "country": "United States",
          "countryCode": "US"
        }
      },
      {
        "jobId": "ts_88214288",
        "title": "Junior Data Analyst",
        "normalizedTitle": "Data Analyst",
        "url": "https://cobaltpeak.com/careers/junior-data-analyst",
        "sourceUrl": "https://boards.greenhouse.io/cobaltpeak/jobs/6688201",
        "companyName": "Cobalt Peak Systems",
        "companyDomain": "cobaltpeak.com",
        "postedUtc": 1790323200,
        "discoveredUtc": 1790366400,
        "remote": true,
        "hybrid": false,
        "seniority": "entry_level",
        "employmentStatuses": [
          "full_time"
        ],
        "easyApply": false,
        "salaryString": "$65,000 - $80,000",
        "salaryCurrency": "USD",
        "minAnnualSalary": 65000,
        "maxAnnualSalary": 80000,
        "minAnnualSalaryUsd": 65000,
        "maxAnnualSalaryUsd": 80000,
        "avgAnnualSalaryUsd": 72500,
        "technologySlugs": [
          "sql",
          "excel"
        ],
        "location": "Remote, United States",
        "shortLocation": "Remote",
        "country": "United States",
        "countryCode": "US",
        "countryCodes": [
          "US"
        ],
        "countries": [
          "United States"
        ],
        "continents": [
          "NA"
        ],
        "company": {
          "companyId": "cmp_71440",
          "name": "Cobalt Peak Systems",
          "domain": "cobaltpeak.com",
          "url": "https://www.cobaltpeak.com",
          "industry": "Industrial Software",
          "employeeCount": 95,
          "employeeCountRange": "51-200",
          "foundedYear": 2020,
          "country": "United States",
          "countryCode": "US"
        }
      }
    ],
    "totalResults": 412,
    "totalCompanies": 288
  }
}

Полный справочник по параметрам и ответу: каждое поле, тип и пример для этого эндпоинта.

Справочник

Один запрос, один формат ответа.

Каждое поле, которое вы отправляете, и каждое поле, которое получаете, с реальным примером.

Проверено 2026-10-07 · доступность и задержка измерены за 30d

Тело запроса

JSON, отправляется на этот эндпоинт.

  • companyCountryCodeNotarray

    Возвращать компании, у которых код страны штаб-квартиры не совпадает ни с одним из переданных здесь, с учётом регистра. Передавайте коды стран ISO2.

  • companyCountryCodeOrarray

    Возвращать компании, у которых код страны штаб-квартиры совпадает с любым из переданных здесь, с учётом регистра. Передавайте коды стран ISO2.

  • companyDescriptionPatternAccentInsensitiveboolean

    Передайте True, чтобы поиск по описанию компании не учитывал диакритику. Например, "á" совпадёт и с "a".

  • companyDescriptionPatternNotarray

    Шаблоны без учёта регистра для поиска в описании компании. Возвращает компании, подходящие под любой из шаблонов.

  • companyDescriptionPatternOrarray

    Шаблоны без учёта регистра для поиска в описании компании. Возвращает компании, подходящие под любой из шаблонов.

  • companyDomainNotarray

    Возвращать только компании, которые не совпадают точно с этими доменами. Принимает полные URL (https://www.google.com/) и адреса почты (john.polo@gmail.com).

  • companyDomainOrarray

    Возвращать только компании, которые точно совпадают с этими доменами. Принимает полные URL (https://www.google.com/) и адреса почты (john.polo@gmail.com). Этот фильтр работает как ИЛИ: если передать несколько доменов компаний, вернутся компании, совпавшие с любым из доменов.

  • companyIdOrarray

    Возвращать только компании, которые точно совпадают с этими ID. Этот фильтр работает как ИЛИ: если передать несколько ID компаний, вернутся компании, совпавшие с любым из ID.

  • companyInvestorsOrarray

    Инвесторы компании

  • companyInvestorsPartialMatchOrarray

    Инвесторы компании. Вернёт компании, у которых любой из инвесторов содержит любую из переданных подстрок. Например, если передать 'andree', найдутся все подходящие фонды (такие как 'Andreessen Horowitz', 'Andreessen Horowitz LLC' и т. д.).

  • companyKeywordSlugAndarray

    Возвращать результаты по компаниям, упоминавшим в своих вакансиях все эти ключевые слова. С учётом регистра. Передавайте slug. Все ключевые слова, которые мы отслеживаем, смотрите в GET /v0/catalog/keywords

  • companyKeywordSlugNotarray

    Возвращать результаты по компаниям, не упоминавшим в своих вакансиях ни одного из этих ключевых слов. С учётом регистра. Передавайте slug. Все ключевые слова, которые мы отслеживаем, смотрите в GET /v0/catalog/keywords

  • companyKeywordSlugOrarray

    Возвращать результаты по компаниям, упоминавшим в своих вакансиях любое из этих ключевых слов. С учётом регистра. Передавайте slug. Все ключевые слова, которые мы отслеживаем, смотрите в GET /v0/catalog/keywords

  • companyLinkedinUrlExistsboolean

    (Вместо этого используйте `property_exists_or / property_exists_and`) Возвращает только компании с URL LinkedIn

  • companyLinkedinUrlOrarray

    Возвращать компании, чей URL LinkedIn совпадает с любым из переданных здесь slug. Можно передавать и полные URL компаний в LinkedIn.

  • companyListIdNotarray

    Возвращать компании, не входящие ни в один из переданных здесь списков компаний

  • companyListIdOrarray

    Возвращать компании, входящие в любой из переданных здесь списков компаний

  • companyLocationPatternOrarray

    Возвращать компании, чей город совпадает с любым из переданных здесь шаблонов. Без учёта регистра. Например, если передать 'san francisco', вернутся компании, чей город 'San Francisco', 'San Francisco Bay Area' и так далее.

  • companyNameCaseInsensitiveOrarray

    Возвращать только компании, которые точно совпадают с этими названиями, без учёта регистра.

  • companyNameNotarray

    Возвращать только компании, которые не совпадают точно с этими названиями, с учётом регистра.

  • companyNameOrarray

    Возвращать только компании, которые точно совпадают с этими названиями, с учётом регистра. Этот фильтр работает как ИЛИ: если передать несколько названий компаний, вернутся компании, совпавшие с любым из названий.

  • companyNamePartialMatchNotarray

    Названия компаний. Вернёт компании, в названии которых нет ни одной из переданных подстрок, без учёта регистра. Например, если передать 'google', будут исключены 'Google', 'Google LLC', 'Google Inc' и т. д.

  • companyNamePartialMatchOrarray

    Названия компаний. Вернёт компании, в названии которых есть любая из переданных подстрок, без учёта регистра. Например, если передать "google", вернутся "Google", "Google LLC", "Google Inc" и т. д.

  • companyTagsOrarray

    Возвращать компании, совпадающие с любым из этих ключевых слов

  • companyTechnologySlugAndarray

    Вернёт вакансии компаний, упоминавших в своих вакансиях все эти технологии (необязательно в возвращаемых вакансиях). С учётом регистра. Передавайте slug. Все технологии, которые мы отслеживаем, смотрите в GET /v0/catalog/technologies. Устарело: используйте вместо этого company_keyword_slug_and.

  • companyTechnologySlugNotarray

    Вернёт вакансии компаний, не упоминавших в своих вакансиях ни одной из этих технологий. С учётом регистра. Передавайте slug. Все технологии, которые мы отслеживаем, смотрите в GET /v0/catalog/technologies. Устарело: используйте вместо этого company_keyword_slug_not.

  • companyTechnologySlugOrarray

    Вернёт вакансии компаний, упоминавших в своих вакансиях любую из этих технологий (необязательно в возвращаемых вакансиях). С учётом регистра. Передавайте slug. Все технологии, которые мы отслеживаем, смотрите в GET /v0/catalog/technologies. Устарело: используйте вместо этого company_keyword_slug_or.

  • companyTypestring

    Фильтр по типу компании.

  • discoveredAtGtestring

    Возвращаются только вакансии, обнаруженные TheirStack в эту дату или время или позже. В часовом поясе UTC.

  • discoveredAtLtestring

    Возвращаются только вакансии, обнаруженные TheirStack в эту дату или время или раньше. В часовом поясе UTC.

  • discoveredAtMaxAgeDaysinteger

    Если 0, возвращаются только вакансии, добавленные в нашу базу в текущий день. Если 1, сегодняшние и вчерашние и так далее.

  • discoveredAtMinAgeDaysinteger

    Если 1, возвращаются только вакансии, обнаруженные TheirStack до вчерашнего дня. Если 2, до позавчерашнего и так далее.

  • easyApplyboolean

    Если True, возвращаются только вакансии, на которые можно откликнуться прямо на сайте с вакансиями. Если False, только вакансии, требующие перехода на сайт компании.

  • employmentStatusesOrarray

    Фильтр вакансий по типу занятости. Возвращает вакансии, подходящие под любой из указанных типов занятости. Если значения не переданы или передан пустой список, возвращаются все вакансии независимо от типа занятости.

  • finalUrlExistsboolean

    (Вместо этого используйте `property_exists_or / property_exists_and`) Возвращает только вакансии с итоговым URL. Обычно это вакансии, изначально размещённые в ATS. Если True, возвращает только вакансии с итоговым URL. Если False, только вакансии без итогового URL. Если None, возвращает все вакансии.

  • fundingStageOrarray

    Стадии финансирования возвращаемых компаний. Возможные значения: ['angel', 'convertible_note', 'debt_financing', 'equity_crowdfunding', 'other', 'private_equity', 'seed', 'series_a', 'series_b', 'series_c', 'series_d', 'series_e', 'series_f', 'series_g', 'series_h', 'venture_round_not_specified', 'series_i', 'series_j', 'undisclosed', 'series_unknown', 'pre_seed', 'post_ipo_secondary', 'post_ipo_equity', 'post_ipo_debt', 'non_equity_assistance', 'late_vc', 'initial_coin_offering', 'growth_equity_vc', 'grant', 'early_vc', 'corporate_round', 'secondary_market', 'product_crowdfunding']

  • hiringManagersExistsboolean

    (Вместо этого используйте `property_exists_or / property_exists_and`) Если True, возвращает только вакансии с нанимающим менеджером. Если False, только вакансии без нанимающего менеджера. Если None, возвращает все вакансии.

  • includeTotalResultsboolean

    Если включено, считает и возвращает в ответе поля `total_results` и `total_companies`. ВНИМАНИЕ: это значительно замедляет ответы, потому что требует прочитать весь набор данных. Рекомендация: включайте только для первого запроса, чтобы получить итоги, и отключайте для следующих запросов постраничной выдачи.

  • industryIdNotarray

    ID отраслей для исключения. Можно использовать любые из LinkedIn Industry Codes V2 или GET /v0/catalog/industries

  • industryIdOrarray

    Коды отраслей. Можно использовать любые из LinkedIn Industry Codes V2 или GET /v0/catalog/industries

  • industryNotarray

    Названия отраслей без учёта регистра. Результаты исключают компании, относящиеся к любой из указанных в этом параметре отраслей. Доступные значения: GET /v0/catalog/industries ВНИМАНИЕ: устаревший параметр. Используйте вместо него поле industry_id_not.

  • industryOrarray

    Названия отраслей без учёта регистра. Результаты включают только компании, относящиеся к любой из указанных в этом параметре отраслей. Доступные значения: GET /v0/catalog/industries ВНИМАНИЕ: устаревший параметр. Используйте вместо него поле industry_id_or.

  • jobCountryCodeNotarray

    Двухбуквенный код страны по ISO для местоположения вакансии. Можно передать несколько. Вакансии из этих стран будут исключены

  • jobCountryCodeOrarray

    ["US"]

    Двухбуквенный код страны по ISO для местоположения вакансии. Можно передать несколько

  • jobDescriptionContainsNotarray

    Исключает вакансии, в описании которых есть любое из этих слов целиком, по границам слов (\b). По умолчанию без учёта регистра, кроме шаблонов в верхнем регистре: их регистр учитывается. Находит только слова целиком (например, поиск 'quality' не совпадёт с 'inequality'). Из результатов исключаются вакансии, в описании которых есть любое из этих слов.

  • jobDescriptionContainsOrarray

    Ищет целые слова в описаниях вакансий по границам слов (\b). По умолчанию без учёта регистра, кроме шаблонов в верхнем регистре: их регистр учитывается. Находит только слова целиком (например, поиск 'quality' не совпадёт с 'inequality'). В результаты попадут вакансии, в описании которых есть любое из этих слов.

  • jobDescriptionPatternAndarray

    Регулярные выражения, которым должны соответствовать ВСЕ описания вакансий (логика И). Поставьте (?i) в начале шаблона, чтобы он не учитывал регистр. В результаты попадут только вакансии, описание которых совпадает с каждым шаблоном из этого списка.

  • jobDescriptionPatternCaseSensitiveOrarray

    Устарело. Вместо этого используйте job_description_pattern_or, который теперь ведёт себя так же.

  • jobDescriptionPatternIsCaseInsensitiveboolean

    Устарело. Не влияет ни на что.

  • jobDescriptionPatternNotarray

    Регулярные выражения для поиска в описаниях вакансий. С учётом регистра. В результаты попадут вакансии, описание которых не совпадает ни с одним из этих шаблонов. Поставьте (?i) в начале шаблона, чтобы он не учитывал регистр. Можно передать несколько.

  • jobDescriptionPatternOrarray

    Регулярные выражения для поиска в описаниях вакансий. С учётом регистра. В результаты попадут вакансии, описание которых совпадает с любым из этих шаблонов. Поставьте (?i) в начале шаблона, чтобы он не учитывал регистр. Можно передать несколько.

  • jobIdNotarray

    Исключить вакансии с этими ID.

  • jobIdOrarray

    Только вакансии с этими ID.

  • jobIdsarray

    Только вакансии с этими ID. Устаревший параметр, используйте вместо него job_id_or.

  • jobKeywordSlugAndarray

    Вернёт вакансии, где встречаются все эти slug ключевых слов. С учётом регистра. Все ключевые слова, которые мы отслеживаем, смотрите в GET /v0/catalog/keywords

  • jobKeywordSlugNotarray

    Вернёт вакансии, где не встречается ни один из этих slug ключевых слов. С учётом регистра. Все ключевые слова, которые мы отслеживаем, смотрите в GET /v0/catalog/keywords

  • jobKeywordSlugOrarray

    Вернёт вакансии, где встречается любой из этих slug ключевых слов. С учётом регистра. Все ключевые слова, которые мы отслеживаем, смотрите в GET /v0/catalog/keywords

  • jobLocationNotarray

    Фильтр вакансий по местоположению. Возвращает вакансии, местоположения которых НЕ совпадают НИ С ОДНИМ из указанных критериев. Каждый критерий местоположения задаётся объектом JobLocationFilter. (ID местоположений можно найти через эндпоинт каталога местоположений)

  • jobLocationOrarray

    Фильтр вакансий по местоположению. Возвращает вакансии, местоположения которых совпадают С ЛЮБЫМ из указанных критериев. Каждый критерий местоположения задаётся объектом JobLocationFilter. (ID местоположений можно найти через эндпоинт каталога местоположений)

  • jobLocationPatternNotarray

    Регулярные выражения для исключения местоположений вакансий. Без учёта регистра. Ищет и в поле location, и в расширенном массиве locations (по нормализованным полям названий города и штата в каждом элементе местоположения). Вакансии, совпавшие с ЛЮБЫМ из переданных шаблонов, будут ИСКЛЮЧЕНЫ из результатов. Используйте, чтобы отфильтровать конкретные местоположения.

  • jobLocationPatternOrarray

    Регулярные выражения для сопоставления местоположений вакансий. Без учёта регистра. Ищет и в поле location, и в расширенном массиве locations (по нормализованным полям названий города и штата в каждом элементе местоположения). Будут возвращены вакансии, совпавшие с ЛЮБЫМ из переданных шаблонов. Используйте, чтобы найти вакансии в конкретных городах, штатах или регионах.

  • jobSeniorityOrarray

    Вернёт вакансии, где уровень seniority совпадает с любым из переданных здесь

  • jobTechnologySlugAndarray

    Вернёт вакансии, где встречаются все эти технологии. С учётом регистра. Передавайте slug. Все технологии, которые мы отслеживаем, смотрите через эндпоинт technologies.

  • jobTechnologySlugNotarray

    Вернёт вакансии, где не встречается ни одна из этих технологий. С учётом регистра. Передавайте slug. Все технологии, которые мы отслеживаем, смотрите через эндпоинт technologies.

  • jobTechnologySlugOrarray

    Вернёт вакансии, где встречается любая из этих технологий. С учётом регистра. Передавайте slug. Все технологии, которые мы отслеживаем, смотрите через эндпоинт technologies. Если передать больше одной технологии, вернутся вакансии, упоминающие все технологии.

  • jobTitleNotarray

    Шаблоны на естественном языке для сопоставления с должностями вакансий. Без учёта регистра. Возвращаются только вакансии, должность которых не совпадает ни с одним из этих шаблонов. Использует полнотекстовый поиск Postgres.

  • jobTitleOrarray

    ["data analyst"]

    Шаблоны на естественном языке для сопоставления с должностями вакансий. Без учёта регистра. Возвращаются только вакансии, должность которых совпадает с любым из этих шаблонов. Использует полнотекстовый поиск Postgres.

  • jobTitlePatternAndarray

    Регулярные выражения для сопоставления должностей вакансий. Без учёта регистра. Будут возвращены только вакансии, должность которых совпадает со всеми этими шаблонами.

  • jobTitlePatternNotarray

    Регулярные выражения для сопоставления должностей вакансий. Без учёта регистра. Будут возвращены вакансии, должность которых не совпадает ни с одним из шаблонов.

  • jobTitlePatternOrarray

    Регулярные выражения для сопоставления должностей вакансий. Без учёта регистра. Будут возвращены вакансии, должность которых совпадает с любым из фильтров.

  • lastFundingRoundDateGtestring

    Возвращать только компании, у которых дата последнего раунда финансирования в эту дату или позже. Формат: 'YYYY-MM-DD'

  • lastFundingRoundDateLtestring

    Возвращать только компании, у которых дата последнего раунда финансирования в эту дату или раньше. Формат: 'YYYY-MM-DD'

  • limitinteger

    3

    Число строк на этой странице, до максимума TheirStack в 500. Каждая возвращённая строка оплачивается.

  • maxEmployeeCountinteger

    Максимальное число сотрудников в компании

  • maxEmployeeCountOrNullinteger

    Максимальное число сотрудников в компании. Если у нас нет данных о размере компании, она тоже будет возвращена.

  • maxFundingUsdinteger

    Максимальное финансирование компании, в долларах США

  • maxRevenueUsdinteger

    Максимальная выручка компании, в долларах США

  • maxSalaryUsdnumber

    Максимальная годовая зарплата в долларах США. Например, 150000 означает 150 000 $ США.

  • minEmployeeCountinteger

    Минимальное число сотрудников в компании

  • minEmployeeCountOrNullinteger

    Минимальное число сотрудников в компании. Если у нас нет данных о размере компании, она тоже будет возвращена.

  • minFundingUsdinteger

    Минимальное финансирование компании, в долларах США

  • minRevenueUsdinteger

    Минимальная выручка компании, в долларах США

  • minSalaryUsdnumber

    Минимальная годовая зарплата в долларах США. Например, 100000 означает 100 000 $ США.

  • offsetinteger

    Число результатов, которые нужно пропустить. Обязательно для постраничной выдачи со смещением.

  • onlyJobsWithHiringManagersboolean

    Возвращать только вакансии с нанимающим менеджером. Если True, только вакансии с нанимающим менеджером. Если False, только вакансии без нанимающего менеджера. Если None, все вакансии.

  • onlyJobsWithReportsToboolean

    Возвращать только вакансии, где мы определили роль, которой будет подчиняться нанятый человек. Устаревшее поле, используйте вместо него reports_to_exists.

  • onlyYcCompaniesboolean

    Возвращать только компании YC

  • orderByarray

    Список объектов столбцов. Можно передать несколько столбцов для сортировки, в порядке приоритета. Обязательно только `field`, `desc` по умолчанию True.

  • pageinteger

    Номер страницы. Обязателен при постраничной выдаче по номерам страниц.

  • postedAtGtestring

    Дата в формате ISO 8601 (yyyy-mm-dd). Будут возвращены только вакансии, опубликованные в эту дату или позже.

  • postedAtLtestring

    Дата в формате ISO 8601 (yyyy-mm-dd). Будут возвращены только вакансии, опубликованные в эту дату или раньше.

  • postedAtMaxAgeDaysinteger

    14

    Максимальный возраст публикации в днях. Если 0, возвращаются только вакансии, опубликованные сегодня. Если 1, сегодняшние и вчерашние и так далее.

  • propertyExistsAndarray
  • propertyExistsOrarray

    Возвращать вакансии, у которых любое из этих полей не null. Например, если передать ['final_url'], вернутся вакансии, у которых задан final_url. Поле также поддерживает цепочки полей. Например, если передать ['company_object.domain', 'company_object.linkedin_url'], вернутся вакансии, у которых задан домен компании или linkedin_url компании.

  • remoteboolean

    True: показывать только удалённые вакансии. False: только неудалённые. None: показывать все вакансии.

  • reportsToExistsboolean

    Возвращать только вакансии, где мы определили роль, которой будет подчиняться нанятый человек. Если True, только вакансии, где мы определили эту роль. Если False, только вакансии, где мы её не определили. Если None, все вакансии.

  • scraperNamePatternOrarray

    Регулярные выражения для сопоставления источников вакансий. Без учёта регистра.

  • urlDomainNotarray

    Исключает вакансии, если домен их URL (из `url` или `source_url`) входит в переданный список без учёта регистра. Например, ['greenhouse.io', 'workable.com'] исключит URL, содержащие 'greenhouse.io' или 'workable.com'. Список наших источников смотрите по адресу https://theirstack.com/en/docs/data/job/sources.

  • urlDomainOrarray

    Включать вакансии, только если домен их URL (из `url` или `source_url`) входит в переданный список без учёта регистра. Например, ['greenhouse.io', 'workable.com'] совпадёт с URL, содержащими 'greenhouse.io' или 'workable.com'. Список наших источников смотрите по адресу https://theirstack.com/en/docs/data/job/sources.

Вы отправляете. Небольшое тело JSON. Показанные значения это примеры, замените их своими.

Ответ

JSON, по одному примеру значения на поле.

  • foundboolean

    true

each jobdata.jobs[]
  • jobIdstring

    ts_88213945

  • titlestring

    Senior Data Analyst, Revenue Operations

  • normalizedTitlestring

    Data Analyst

  • urlstring

    https://www.brightloopanalytics.com/careers/senior-data-analyst-revops

  • sourceUrlstring

    https://boards.greenhouse.io/brightloop/jobs/6621394

  • finalUrlstring

    https://www.brightloopanalytics.com/careers/senior-data-analyst-revops

  • companyNamestring

    Brightloop Analytics

  • companyDomainstring

    brightloopanalytics.com

  • postedUtcnumber

    1790085600

  • discoveredUtcnumber

    1790128800

  • remoteboolean

    true

  • hybridboolean

    false

  • senioritystring

    senior

  • employmentStatuses[]string

    full_time

  • easyApplyboolean

    false

  • salaryStringstring

    $110,000 - $140,000

  • salaryCurrencystring

    USD

  • minAnnualSalarynumber

    110000

  • maxAnnualSalarynumber

    140000

  • minAnnualSalaryUsdnumber

    110000

  • maxAnnualSalaryUsdnumber

    140000

  • avgAnnualSalaryUsdnumber

    125000

  • technologySlugs[]string

    sql

  • keywordSlugs[]string

    revenue-operations

  • locationstring

    Austin, TX, United States

  • shortLocationstring

    Austin, TX

  • longLocationstring

    Austin, Texas, United States

  • stateCodestring

    TX

  • postalCodestring

    78701

  • countrystring

    United States

  • countryCodestring

    US

  • countryCodes[]string

    US

  • countries[]string

    United States

  • cities[]string

    Austin

  • continents[]string

    NA

  • latitudenumber

    30.2672

  • longitudenumber

    -97.7431

companydata.jobs[].company
  • companyIdstring

    cmp_51029

  • namestring

    Brightloop Analytics

  • domainstring

    brightloopanalytics.com

  • urlstring

    https://www.brightloopanalytics.com

  • imagestring

    https://logo.clearbit.com/brightloopanalytics.com

  • industrystring

    Data Infrastructure & Analytics

  • industryIdstring

    ind_0142

  • employeeCountnumber

    210

  • employeeCountRangestring

    201-500

  • foundedYearnumber

    2018

  • citystring

    Austin

  • postalCodestring

    78701

  • countrystring

    United States

  • countryCodestring

    US

  • linkedinUrlstring

    https://www.linkedin.com/company/brightloop-analytics

  • fundingStagestring

    series_b

  • totalFundingUsdnumber

    42000000

  • annualRevenueUsdnumber

    18000000

  • annualRevenueReadablestring

    18M

each locationdata.jobs[].locations[]
  • namestring

    Austin, TX

  • locationIdstring

    loc_78701

  • typestring

    city

  • displayNamestring

    Austin, Texas, United States

  • citystring

    Austin

  • statestring

    Texas

  • stateCodestring

    TX

  • countrystring

    United States

  • countryCodestring

    US

  • continentstring

    NA

  • postalCodestring

    78701

  • latitudenumber

    30.2672

  • longitudenumber

    -97.7431

datadata
  • totalResultsnumber

    412

  • totalCompaniesnumber

    288

Вы получаете. Именованные типизированные поля в одном формате, какой бы источник ни ответил.

Вопросы и ответы

Об API Job Search Theirstack

AnyAPI Job Search Theirstack API возвращает данные Job Search в виде нормализованного JSON одним вызовом POST к /v1/run/job_search.theirstack. Ищет в индексе вакансий TheirStack по компании, технологии, ключевому слову, должности, seniority, зарплате, местоположению и давности публикации и возвращает полную фирмографическую запись нанимающей компании со всеми публикациями. Оплата за каждую возвращённую вакансию. AnyAPI возвращает одну нормализованную схему, какой бы источник ни ответил. Это стоит 67,20 USD за 1000 результатов, и никогда не больше 9,95 USD за один запрос, в долларах США, без подписки и без ежемесячного минимума. За последние 30 дней 100,0% вызовов Job Search Theirstack через AnyAPI завершились успешно, медианное время ответа 9,7 с, измерено вызовов: 1.

Это стоит 67,20 USD за 1000 результатов, и никогда не больше 9,95 USD за один запрос, в долларах США, без подписки и без ежемесячного минимума. Вы пополняете один кошелёк в долларах США, и каждый вызов списывает с него. По некоторым неудавшимся запросам, оплаченным из кошелька, возникают расходы на обработку; мы передаём их по себестоимости, без наценки, а сумма списания указана в ответе с ошибкой.

Ищет в индексе вакансий TheirStack по компании, технологии, ключевому слову, должности, seniority, зарплате, местоположению и давности публикации и возвращает полную фирмографическую запись нанимающей компании со всеми публикациями. Оплата за каждую возвращённую вакансию. Ответ это нормализованный JSON с тем же конвертом, что возвращает каждый эндпоинт AnyAPI, поэтому разбор второго эндпоинта это смена URL и ничего больше.

За последние 30 дней 100,0% вызовов Job Search Theirstack через AnyAPI завершились успешно, медианное время ответа 9,7 с, измерено вызовов: 1. Это собственные измерения AnyAPI по трафику через шлюз, пересчитываемые непрерывно, а не опубликованный целевой уровень обслуживания.

Да. Новый аккаунт AnyAPI стартует с бесплатным балансом 0,10 USD, карта не нужна.

Отправьте запрос POST на https://api.getanyapi.com/v1/run/job_search.theirstack с вашим ключом AnyAPI в заголовке "Authorization: Bearer" и входными данными в теле JSON. Один и тот же ключ и один и тот же кошелёк работают на каждом эндпоинте AnyAPI.

Нет. Вы пополняете один предоплаченный баланс AnyAPI в долларах США, и каждый запрос списывает с него. Ежемесячного тарифа и минимума нет, а один и тот же баланс оплачивает каждый эндпоинт AnyAPI.

Да. Установите @getanyapi/sdk из npm для TypeScript или getanyapi из pip для Python. Оба вызывают любой эндпоинт AnyAPI с одним и тем же ключом, а ещё подойдёт любой HTTP-клиент.

Да. Агент может подключиться к MCP-серверу AnyAPI по адресу https://api.getanyapi.com/mcp или создать собственный бесплатный пробный ключ одним POST без аутентификации на https://api.getanyapi.com/agent/signup и вызывать этот эндпоинт по HTTP.