GTM API · Schema
ScrapeLinkedinBuildSearchUrlRequest
Request body of `scrape_linkedin_build_search_url`.
CompanyAPILinkedInAIAutomation
Properties
| Name | Type | Description |
|---|---|---|
| linkedin_account_sid | stringnull | Executor account (ln_ac_...). OPTIONAL everywhere on this surface. Given: the call runs on that account ONLY; a saturated or held scraping bucket refuses 429 bucket_saturated (with retry_after). Omitt |
| idempotency_key | stringnull | Ledger replay guard: a repeat call with the same (team, key) returns the stored outcome; no re-execution. Recommended on every search run. The KEY ALONE decides: the probe does not compare arguments, |
| people | objectnull | The scrape_linkedin_search_people filters. A text the typeahead offers nothing for is a 422 naming it: these members take ids only. |
| sales_nav_people | objectnull | The scrape_linkedin_search_sales_nav_people filters; resolution through the Sales Navigator typeahead, which needs an SN seat. |
| companies | objectnull | The scrape_linkedin_search_companies filters. A text the typeahead offers nothing for is a 422 naming it. |
| sales_nav_companies | objectnull | The scrape_linkedin_search_sales_nav_companies filters; resolution through the Sales Navigator typeahead, which needs an SN seat. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/gtm-api/main/json-schema/gtm-api-scrape-linkedin-build-search-url-request-schema.json",
"title": "ScrapeLinkedinBuildSearchUrlRequest",
"description": "Request body of `scrape_linkedin_build_search_url`.",
"x-generated": "2026-10-18",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/_original/gtm-api-openapi-openapi.yml#/components/schemas/ScrapeLinkedinBuildSearchUrlRequest",
"type": "object",
"properties": {
"linkedin_account_sid": {
"type": [
"string",
"null"
],
"minLength": 18,
"maxLength": 18,
"pattern": "^ln_ac_",
"description": "Executor account (ln_ac_...). OPTIONAL everywhere on this surface. Given: the call runs on that account ONLY; a saturated or held scraping bucket refuses 429 bucket_saturated (with retry_after). Omitted: the service auto-picks one of your connected accounts with remaining capacity (SN verbs pick only Sales-Navigator seats; 422 no_connected_accounts when none is ready, 429 when all are at capacity)."
},
"idempotency_key": {
"type": [
"string",
"null"
],
"maxLength": 128,
"description": "Ledger replay guard: a repeat call with the same (team, key) returns the stored outcome; no re-execution. Recommended on every search run. The KEY ALONE decides: the probe does not compare arguments, so reusing one key after changing the arguments hands back the FIRST result. On the twelve search verbs that matters twice over, because switching a call from filters to url (or back) under one key replays instead of running the new search. New search, new key."
},
"people": {
"type": [
"object",
"null"
],
"properties": {
"keywords": {
"type": [
"string",
"null"
],
"maxLength": 256,
"description": "Free-text query."
},
"first_name": {
"type": [
"string",
"null"
],
"maxLength": 100
},
"last_name": {
"type": [
"string",
"null"
],
"maxLength": 100
},
"title": {
"type": [
"string",
"null"
],
"maxLength": 256,
"description": "Current-title keywords."
},
"company": {
"type": [
"string",
"null"
],
"maxLength": 256,
"description": "Current-company keywords (free text; prefer current_companies)."
},
"school": {
"type": [
"string",
"null"
],
"maxLength": 256,
"description": "School free-text: this engine has no school-id facet, so lookup(type: \"school\") ids fit nowhere here."
},
"network": {
"type": [
"array",
"null"
],
"items": {
"type": "string",
"enum": [
"1st",
"2nd",
"3rd_plus"
]
},
"maxItems": 3,
"description": "Relationship-degree facet; the node maps each degree onto the LinkedIn wire code (F/S/O) itself."
},
"locations": {
"type": [
"array",
"null"
],
"items": {
"type": "object",
"properties": {
"id": {
"type": [
"string",
"null"
],
"maxLength": 64,
"pattern": "^\\d+$",
"description": "A numeric id, as the search takes it; rides as it is."
},
"text": {
"type": [
"string",
"null"
],
"maxLength": 100,
"description": "Human text to resolve (\"Berlin\", \"Acme\"): typed into the typeahead, which picks the option labelled exactly so, else LinkedIn's first."
}
},
"description": "One value: an id, or a text to resolve (at least one of the two)."
},
"maxItems": 10,
"description": "Geography (location typeahead)."
},
"industries": {
"type": [
"array",
"null"
],
"items": {
"type": "object",
"properties": {
"id": {
"type": [
"string",
"null"
],
"maxLength": 64,
"pattern": "^\\d+$",
"description": "A numeric id, as the search takes it; rides as it is."
},
"text": {
"type": [
"string",
"null"
],
"maxLength": 100,
"description": "Human text to resolve (\"Berlin\", \"Acme\"): typed into the typeahead, which picks the option labelled exactly so, else LinkedIn's first."
}
},
"description": "One value: an id, or a text to resolve (at least one of the two)."
},
"maxItems": 10,
"description": "Industries (industry typeahead)."
},
"current_companies": {
"type": [
"array",
"null"
],
"items": {
"type": "object",
"properties": {
"id": {
"type": [
"string",
"null"
],
"maxLength": 64,
"pattern": "^\\d+$",
"description": "A numeric id, as the search takes it; rides as it is."
},
"text": {
"type": [
"string",
"null"
],
"maxLength": 100,
"description": "Human text to resolve (\"Berlin\", \"Acme\"): typed into the typeahead, which picks the option labelled exactly so, else LinkedIn's first."
}
},
"description": "One value: an id, or a text to resolve (at least one of the two)."
},
"maxItems": 10,
"description": "Current employer (company typeahead)."
},
"past_companies": {
"type": [
"array",
"null"
],
"items": {
"type": "object",
"properties": {
"id": {
"type": [
"string",
"null"
],
"maxLength": 64,
"pattern": "^\\d+$",
"description": "A numeric id, as the search takes it; rides as it is."
},
"text": {
"type": [
"string",
"null"
],
"maxLength": 100,
"description": "Human text to resolve (\"Berlin\", \"Acme\"): typed into the typeahead, which picks the option labelled exactly so, else LinkedIn's first."
}
},
"description": "One value: an id, or a text to resolve (at least one of the two)."
},
"maxItems": 10,
"description": "Past employer (company typeahead)."
},
"service_categories": {
"type": [
"array",
"null"
],
"items": {
"type": "object",
"properties": {
"id": {
"type": [
"string",
"null"
],
"maxLength": 64,
"pattern": "^\\d+$",
"description": "A numeric id, as the search takes it; rides as it is."
},
"text": {
"type": [
"string",
"null"
],
"maxLength": 100,
"description": "Human text to resolve (\"Berlin\", \"Acme\"): typed into the typeahead, which picks the option labelled exactly so, else LinkedIn's first."
}
},
"description": "One value: an id, or a text to resolve (at least one of the two)."
},
"maxItems": 10,
"description": "Service categories (service_category typeahead)."
},
"connections_of": {
"type": [
"array",
"null"
],
"items": {
"type": "object",
"properties": {
"id": {
"type": [
"string",
"null"
],
"maxLength": 128,
"pattern": "^[\\w-]+$",
"description": "A profile id (ACoA…), as the search takes it; rides as it is."
},
"text": {
"type": [
"string",
"null"
],
"maxLength": 100,
"description": "Human text to resolve (\"Berlin\", \"Acme\"): typed into the typeahead, which picks the option labelled exactly so, else LinkedIn's first."
}
},
"description": "One value: an id, or a text to resolve (at least one of the two)."
},
"maxItems": 10,
"description": "People connected to these members: a name resolves through the connections typeahead."
},
"followers_of": {
"type": [
"array",
"null"
],
"items": {
"type": "object",
"properties": {
"id": {
"type": [
"string",
"null"
],
"maxLength": 128,
"pattern": "^[\\w-]+$",
"description": "A profile id (ACoA…), as the search takes it; rides as it is."
},
"text": {
"type": [
"string",
"null"
],
"maxLength": 100,
"description": "Human text to resolve (\"Berlin\", \"Acme\"): typed into the typeahead, which picks the option labelled exactly so, else LinkedIn's first."
}
},
"description": "One value: an id, or a text to resolve (at least one of the two)."
},
"maxItems": 10,
"description": "People following these members: a name resolves through the people typeahead."
},
"profile_languages": {
"type": [
"array",
"null"
],
"items": {
"type": "string"
},
"maxItems": 10,
"description": "ISO 639-1 language codes."
},
"open_to_volunteer": {
"type": [
"boolean",
"null"
]
}
},
"description": "The scrape_linkedin_search_people filters. A text the typeahead offers nothing for is a 422 naming it: these members take ids only."
},
"sales_nav_people": {
"type": [
"object",
"null"
],
"properties": {
"keywords": {
"type": [
"string",
"null"
],
"maxLength": 256
},
"first_name": {
"type": [
"string",
"null"
],
"maxLength": 100,
"description": "Text-only wire facet (no id space)."
},
"last_name": {
"type": [
"string",
"null"
],
"maxLength": 100,
"description": "Text-only wire facet (no id space)."
},
"current_titles": {
"type": [
"array",
"null"
],
"items": {
"type": "object",
"properties": {
"id": {
"type": [
"string",
"null"
],
"maxLength": 128,
"description": "Opaque SN facet id, VERBATIM from scrape_linkedin_sales_nav_param_id_lookup."
},
"text": {
"type": [
"string",
"null"
],
"maxLength": 256,
"description": "Text to resolve into an id plus LinkedIn's label; one the typeahead offers nothing for stays a free-text chip, which SN matches on this facet."
},
"exclude": {
"type": [
"boolean",
"null"
],
"description": "true → EXCLUDED (negative filter); omitted/false → INCLUDED."
},
"free_text": {
"type": [
"boolean",
"null"
],
"description": "true → send the text as a free-text chip, unresolved."
}
},
"description": "One chip: an id, or a text (at least one of the two)."
},
"maxItems": 10,
"description": "Current job titles (TITLE)."
},
"past_titles": {
"type": [
"array",
"null"
],
"items": {
"type": "object",
"properties": {
"id": {
"type": [
"string",
"null"
],
"maxLength": 128,
"description": "Opaque SN facet id, VERBATIM from scrape_linkedin_sales_nav_param_id_lookup."
},
"text": {
"type": [
"string",
"null"
],
"maxLength": 256,
"description": "Text to resolve into an id plus LinkedIn's label; one the typeahead offers nothing for stays a free-text chip, which SN matches on this facet."
},
"exclude": {
"type": [
"boolean",
"null"
],
"description": "true → EXCLUDED (negative filter); omitted/false → INCLUDED."
},
"free_text": {
"type": [
"boolean",
"null"
],
"description": "true → send the text as a free-text chip, unresolved."
}
},
"description": "One chip: an id, or a text (at least one of the two)."
},
"maxItems": 10,
"description": "Past job titles (TITLE)."
},
"locations": {
"type": [
"array",
"null"
],
"items": {
"type": "object",
"properties": {
"id": {
"type": [
"string",
"null"
],
"maxLength": 128,
"description": "Opaque SN facet id, VERBATIM from scrape_linkedin_sales_nav_param_id_lookup."
},
"text": {
"type": [
"string",
"null"
],
"maxLength": 256,
"description": "Text to resolve into an id plus LinkedIn's label; one the typeahead offers nothing for is a 422 naming the closest options."
},
"exclude": {
"type": [
"boolean",
"null"
],
"description": "true → EXCLUDED (negative filter); omitted/false → INCLUDED."
}
},
"description": "One chip: an id, or a text (at least one of the two)."
},
"maxItems": 10,
"description": "Person geography (BING_GEO)."
},
"company_headquarters": {
"type": [
"array",
"null"
],
"items": {
"type": "object",
"properties": {
"id": {
"type": [
"string",
"null"
],
"maxLength": 128,
"description": "Opaque SN facet id, VERBATIM from scrape_linkedin_sales_nav_param_id_lookup."
},
"text": {
"type": [
"string",
"null"
],
"maxLength": 256,
"description": "Text to resolve into an id plus LinkedIn's label; one the typeahead offers nothing for is a 422 naming the closest options."
},
"exclude": {
"type": [
"boolean",
"null"
],
"description": "true → EXCLUDED (negative filter); omitted/false → INCLUDED."
}
},
"description": "One chip: an id, or a text (at least one of the two)."
},
"maxItems": 10,
"description": "Current company HQ region (BING_GEO)."
},
"industries": {
"type": [
"array",
"null"
],
"items": {
"type": "object",
"properties": {
"id": {
"type": [
"string",
"null"
],
"maxLength": 128,
"description": "Opaque SN facet id, VERBATIM from scrape_linkedin_sales_nav_param_id_lookup."
},
"text": {
"type": [
"string",
"null"
],
"maxLength": 256,
"description": "Text to resolve into an id plus LinkedIn's label; one the typeahead offers nothing for is a 422 naming the closest options."
},
"exclude": {
"type": [
"boolean",
"null"
],
"description": "true → EXCLUDED (negative filter); omitted/false → INCLUDED."
}
},
"description": "One chip: an id, or a text (at least one of the two)."
},
"maxItems": 10,
"description": "Industries (INDUSTRY)."
},
"current_companies": {
"type": [
"array",
"null"
],
"items": {
"type": "object",
"properties": {
"id": {
"type": [
"string",
"null"
],
"maxLength": 128,
"description": "Opaque SN facet id, VERBATIM from scrape_linkedin_sales_nav_param_id_lookup."
},
"text": {
"type": [
"string",
"null"
],
"maxLength": 256,
"description": "Text to resolve into an id plus LinkedIn's label; one the typeahead offers nothing for stays a free-text chip, which SN matches on this facet."
},
"exclude": {
"type": [
"boolean",
"null"
],
"description": "true → EXCLUDED (negative filter); omitted/false → INCLUDED."
},
"free_text": {
"type": [
"boolean",
"null"
],
"description": "true → send the text as a free-text chip, unresolved."
}
},
"description": "One chip: an id, or a text (at least one of the two)."
},
"maxItems": 10,
"description": "Current employer (COMPANY_WITH_LIST)."
},
"past_companies": {
"type": [
"array",
"null"
],
"items": {
"type": "object",
"properties": {
"id": {
"type": [
"string",
"null"
],
"maxLength": 128,
"description": "Opaque SN facet id, VERBATIM from scrape_linkedin_sales_nav_param_id_lookup."
},
"text": {
"type": [
"string",
"null"
],
"maxLength": 256,
"description": "Text to resolve into an id plus LinkedIn's label; one the typeahead offers nothing for stays a free-text chip, which SN matches on this facet."
},
"exclude": {
"type": [
"boolean",
"null"
],
"description": "true → EXCLUDED (negative filter); omitted/false → INCLUDED."
},
"free_text": {
"type": [
"boolean",
"null"
],
"description": "true → send the text as a free-text chip, unresolved."
}
},
"description": "One chip: an id, or a text (at least one of the two)."
},
"maxItems": 10,
"description": "Past employer (COMPANY_WITH_LIST)."
},
"groups": {
"type": [
"array",
"null"
],
"items": {
"type": "object",
"properties": {
"id": {
"type": [
"string",
"null"
],
"maxLength": 128,
"description": "Opaque SN facet id, VERBATIM from scrape_linkedin_sales_nav_param_id_lookup."
},
"text": {
"type": [
"string",
"null"
],
"maxLength": 256,
"description": "Text to resolve into an id plus LinkedIn's label; one the typeahead offers nothing for is a 422 naming the closest options."
},
"exclude": {
"type": [
"boolean",
"null"
],
"description": "true → EXCLUDED (negative filter); omitted/false → INCLUDED."
}
},
"description": "One chip: an id, or a text (at least one of the two)."
},
"maxItems": 10,
"description": "Group membership (GROUP)."
},
"schools": {
"type": [
"array",
"null"
],
"items": {
"type": "object",
"properties": {
"id": {
"type": [
"string",
"null"
],
"maxLength": 128,
"description": "Opaque SN facet id, VERBATIM from scrape_linkedin_sales_nav_param_id_lookup."
},
"text": {
"type": [
"string",
"null"
],
"maxLength": 256,
"description": "Text to resolve into an id plus LinkedIn's label; one the typeahead offers nothing for is a 422 naming the closest options."
},
"exclude": {
"type": [
"boolean",
"null"
],
"description": "true → EXCLUDED (negative filter); omitted/false → INCLUDED."
}
},
"description": "One chip: an id, or a text (at least one of the two)."
},
"maxItems": 10,
"description": "Schools (SCHOOL)."
},
"seniority_levels": {
"type": [
"array",
"null"
],
"items": {
"type": "string",
"enum": [
"100",
"110",
"120",
"130",
"200",
"210",
"220",
"300",
"310",
"320"
]
},
"maxItems": 10,
"description": "SENIORITY_V2: '100' In Training, '110' Entry Level, '120' Senior, '130' Strategic, '200' Entry Level Manager, '210' Experienced Manager, '220' Director, '300' Vice President, '310' CXO, '320' Owner/Partner."
},
"functions": {
"type": [
"array",
"null"
],
"items": {
"type": "string",
"enum": [
"1",
"2",
"3",
"4",
"5",
"6",
"7",
"8",
"9",
"10",
"11",
"12",
"13",
"14",
"15",
"16",
"17",
"18",
"19",
"20",
"21",
"22",
"23",
"24",
"25",
"26"
]
},
"maxItems": 10,
"description": "Job function: '1' Accounting, '2' Administrative, '3' Arts and Design, '4' Business Development, '5' Community and Social Services, '6' Consulting, '7' Education, '8' Engineering, '9' Entrepreneurship, '10' Finance, '11' Healthcare Services, '12' Human Resources, '13' Information Technology, '14' Legal, '15' Marketing, '16' Media and Communication, '17' Military and Protective Services, '18' Operations, '19' Product Management, '20' Program and Project Management, '21' Purchasing, '22' Quality Assurance, '23' Real Estate, '24' Research, '25' Sales, '26' Customer Success and Support."
},
"years_in_current_company": {
"type": [
"array",
"null"
],
"items": {
"type": "string",
"enum": [
"1",
"2",
"3",
"4",
"5"
]
},
"maxItems": 5,
"description": "Tenure at current company: '1' <1 year, '2' 1-2, '3' 3-5, '4' 6-10, '5' 10+ years."
},
"years_in_current_position": {
"type": [
"array",
"null"
],
"items": {
"type": "string",
"enum": [
"1",
"2",
"3",
"4",
"5"
]
},
"maxItems": 5,
"description": "Tenure in current position: '1' <1 year, '2' 1-2, '3' 3-5, '4' 6-10, '5' 10+ years."
},
"years_of_experience": {
"type": [
"array",
"null"
],
"items": {
"type": "string",
"enum": [
"1",
"2",
"3",
"4",
"5"
]
},
"maxItems": 5,
"description": "Total career length: '1' <1 year, '2' 1-2, '3' 3-5, '4' 6-10, '5' 10+ years."
},
"company_headcounts": {
"type": [
"array",
"null"
],
"items": {
"type": "string",
"enum": [
"A",
"B",
"C",
"D",
"E",
"F",
"G",
"H",
"I"
]
},
"maxItems": 10,
"description": "Company size: 'A' Self-employed, 'B' 1-10, 'C' 11-50, 'D' 51-200, 'E' 201-500, 'F' 501-1000, 'G' 1001-5000, 'H' 5001-10000, 'I' 10001+."
},
"company_types": {
"type": [
"array",
"null"
],
"items": {
"type": "string",
"enum": [
"C",
"P",
"N",
"D",
"S",
"E",
"O",
"G"
]
},
"maxItems": 10,
"description": "Company type: 'C' Public, 'P' Privately Held, 'N' Non-profit, 'D' Educational, 'S' Partnership, 'E' Self-Employed, 'O' Self-Owned, 'G' Government."
},
"profile_languages": {
"type": [
"array",
"null"
],
"items": {
"type": "string",
"enum": [
"ar",
"en",
"es",
"pt",
"zh",
"fr",
"it",
"ru",
"de",
"nl",
"tr",
"tl",
"pl",
"ko",
"ja",
"ms",
false,
"da",
"ro",
"sv",
"in",
"cs"
]
},
"maxItems": 10,
"description": "Profile language, ISO 639-1."
},
"network": {
"type": [
"array",
"null"
],
"items": {
"type": "string",
"enum": [
"F",
"S",
"A",
"O"
]
},
"maxItems": 4,
"description": "Relationship degree: 'F' 1st, 'S' 2nd, 'A' group members, 'O' 3rd+."
},
"connections_of": {
"type": [
"array",
"null"
],
"items": {
"type": "object",
"properties": {
"id": {
"type": [
"string",
"null"
],
"maxLength": 64,
"description": "A member token (ACwA…), as the search takes it."
},
"text": {
"type": [
"string",
"null"
],
"maxLength": 100,
"description": "Human text to resolve (\"Berlin\", \"Acme\"): typed into the typeahead, which picks the option labelled exactly so, else LinkedIn's first."
}
},
"description": "One value: an id, or a text to resolve (at least one of the two)."
},
"maxItems": 10,
"description": "People connected to these members: a name resolves through CONNECTION_OF; a miss is a 422."
}
},
"description": "The scrape_linkedin_search_sales_nav_people filters; resolution through the Sales Navigator typeahead, which needs an SN seat."
},
"companies": {
"type": [
"object",
"null"
],
"properties": {
"keywords": {
"type": [
"string",
"null"
],
"maxLength": 256
},
"geo_ids": {
"type": [
"array",
"null"
],
"items": {
"type": "object",
"properties": {
"id": {
"type": [
"string",
"null"
],
"maxLength": 64,
"pattern": "^\\d+$",
"description": "A numeric id, as the search takes it; rides as it is."
},
"text": {
"type": [
"string",
"null"
],
"maxLength": 100,
"description": "Human text to resolve (\"Berlin\", \"Acme\"): typed into the typeahead, which picks the option labelled exactly so, else LinkedIn's first."
}
},
"description": "One value: an id, or a text to resolve (at least one of the two)."
},
"maxItems": 10,
"description": "HQ geography (location typeahead)."
},
"industry_ids": {
"type": [
"array",
"null"
],
"items": {
"type": "object",
"properties": {
"id": {
"type": [
"string",
"null"
],
"maxLength": 64,
"pattern": "^\\d+$",
"description": "A numeric id, as the search takes it; rides as it is."
},
"text": {
# --- truncated at 32 KB (44 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/gtm-api/refs/heads/main/json-schema/gtm-api-scrape-linkedin-build-search-url-request-schema.json
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/gtm-api-scrape-linkedin-build-search-url-request"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.