Typeahead (Filter Suggestions)
curl --request POST \
--url https://api.linkupapi.com/v2/typeahead \
--header 'Content-Type: application/json' \
--header 'x-api-key: <x-api-key>' \
--data '
{
"account_id": "<string>",
"keyword": "<string>",
"type": "<string>",
"category": "<string>",
"limit": 123
}
'import requests
url = "https://api.linkupapi.com/v2/typeahead"
payload = {
"account_id": "<string>",
"keyword": "<string>",
"type": "<string>",
"category": "<string>",
"limit": 123
}
headers = {
"x-api-key": "<x-api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<x-api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
account_id: '<string>',
keyword: '<string>',
type: '<string>',
category: '<string>',
limit: 123
})
};
fetch('https://api.linkupapi.com/v2/typeahead', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.linkupapi.com/v2/typeahead",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'account_id' => '<string>',
'keyword' => '<string>',
'type' => '<string>',
'category' => '<string>',
'limit' => 123
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <x-api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.linkupapi.com/v2/typeahead"
payload := strings.NewReader("{\n \"account_id\": \"<string>\",\n \"keyword\": \"<string>\",\n \"type\": \"<string>\",\n \"category\": \"<string>\",\n \"limit\": 123\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<x-api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.linkupapi.com/v2/typeahead")
.header("x-api-key", "<x-api-key>")
.header("Content-Type", "application/json")
.body("{\n \"account_id\": \"<string>\",\n \"keyword\": \"<string>\",\n \"type\": \"<string>\",\n \"category\": \"<string>\",\n \"limit\": 123\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.linkupapi.com/v2/typeahead")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<x-api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"account_id\": \"<string>\",\n \"keyword\": \"<string>\",\n \"type\": \"<string>\",\n \"category\": \"<string>\",\n \"limit\": 123\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"keyword": "Goog",
"type": "company",
"category": "classic",
"count": 2,
"items": [
{ "id": "1441", "name": "Google", "description": "Software Development", "image": "https://media.licdn.com/dms/image/v2/…/company-logo_200_200/…" },
{ "id": "1594050", "name": "Google DeepMind", "description": "Research Services", "image": "https://media.licdn.com/dms/image/v2/…/company-logo_200_200/…" }
]
},
"metadata": {
"action": "typeahead",
"account_id": "69c127c37cae0494dd827286",
"credits_consumed": 0.1,
"timestamp": "2025-01-15T10:30:00.000000"
}
}
{
"success": true,
"data": {
"keyword": "",
"type": "seniority",
"category": "sales_nav",
"count": 3,
"items": [
{ "id": "320", "name": "Owner / Partner", "description": null, "image": null },
{ "id": "310", "name": "CXO", "description": null, "image": null },
{ "id": "300", "name": "Vice President", "description": null, "image": null }
]
},
"metadata": {
"action": "typeahead",
"account_id": "69c127c37cae0494dd827286",
"credits_consumed": 0.1,
"timestamp": "2025-01-15T10:30:00.000000"
}
}
{
"success": false,
"error": {
"code": "INVALID_PARAMS",
"message": "type 'skill' is not available for classic search; one of: location, company, current_company, past_company, school, industry, service_category, title, people"
},
"metadata": {
"action": "typeahead",
"account_id": "69c127c37cae0494dd827286",
"credits_consumed": 0,
"timestamp": "2025-01-15T10:30:00.000000"
}
}
Profiles
Typeahead (Filter Suggestions)
Autocomplete a search filter value and get the ids LinkedIn expects
POST
/
v2
/
typeahead
Typeahead (Filter Suggestions)
curl --request POST \
--url https://api.linkupapi.com/v2/typeahead \
--header 'Content-Type: application/json' \
--header 'x-api-key: <x-api-key>' \
--data '
{
"account_id": "<string>",
"keyword": "<string>",
"type": "<string>",
"category": "<string>",
"limit": 123
}
'import requests
url = "https://api.linkupapi.com/v2/typeahead"
payload = {
"account_id": "<string>",
"keyword": "<string>",
"type": "<string>",
"category": "<string>",
"limit": 123
}
headers = {
"x-api-key": "<x-api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<x-api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
account_id: '<string>',
keyword: '<string>',
type: '<string>',
category: '<string>',
limit: 123
})
};
fetch('https://api.linkupapi.com/v2/typeahead', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.linkupapi.com/v2/typeahead",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'account_id' => '<string>',
'keyword' => '<string>',
'type' => '<string>',
'category' => '<string>',
'limit' => 123
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <x-api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.linkupapi.com/v2/typeahead"
payload := strings.NewReader("{\n \"account_id\": \"<string>\",\n \"keyword\": \"<string>\",\n \"type\": \"<string>\",\n \"category\": \"<string>\",\n \"limit\": 123\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<x-api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.linkupapi.com/v2/typeahead")
.header("x-api-key", "<x-api-key>")
.header("Content-Type", "application/json")
.body("{\n \"account_id\": \"<string>\",\n \"keyword\": \"<string>\",\n \"type\": \"<string>\",\n \"category\": \"<string>\",\n \"limit\": 123\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.linkupapi.com/v2/typeahead")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<x-api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"account_id\": \"<string>\",\n \"keyword\": \"<string>\",\n \"type\": \"<string>\",\n \"category\": \"<string>\",\n \"limit\": 123\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"keyword": "Goog",
"type": "company",
"category": "classic",
"count": 2,
"items": [
{ "id": "1441", "name": "Google", "description": "Software Development", "image": "https://media.licdn.com/dms/image/v2/…/company-logo_200_200/…" },
{ "id": "1594050", "name": "Google DeepMind", "description": "Research Services", "image": "https://media.licdn.com/dms/image/v2/…/company-logo_200_200/…" }
]
},
"metadata": {
"action": "typeahead",
"account_id": "69c127c37cae0494dd827286",
"credits_consumed": 0.1,
"timestamp": "2025-01-15T10:30:00.000000"
}
}
{
"success": true,
"data": {
"keyword": "",
"type": "seniority",
"category": "sales_nav",
"count": 3,
"items": [
{ "id": "320", "name": "Owner / Partner", "description": null, "image": null },
{ "id": "310", "name": "CXO", "description": null, "image": null },
{ "id": "300", "name": "Vice President", "description": null, "image": null }
]
},
"metadata": {
"action": "typeahead",
"account_id": "69c127c37cae0494dd827286",
"credits_consumed": 0.1,
"timestamp": "2025-01-15T10:30:00.000000"
}
}
{
"success": false,
"error": {
"code": "INVALID_PARAMS",
"message": "type 'skill' is not available for classic search; one of: location, company, current_company, past_company, school, industry, service_category, title, people"
},
"metadata": {
"action": "typeahead",
"account_id": "69c127c37cae0494dd827286",
"credits_consumed": 0,
"timestamp": "2025-01-15T10:30:00.000000"
}
}
Returns the suggestions LinkedIn shows while typing in a search filter (companies, locations, schools, industries, titles, people…), with the
id to pass in Search People or Search People (Sales Navigator) filters.
This endpoint consumes 0.1 credit per request. Ignore this if you’re on per-seat pricing: usage is unlimited.
Header Parameters
string
required
Your API key
Body Parameters
string
required
A connected LinkedIn account.
string
The text typed so far, e.g.
"Goog". Required for classic. With sales_nav, leave it empty to list every value of a fixed facet (function, seniority, company_type, profile_language, relationship, lead_interactions, account_list, lead_list).string
required
The filter to complete.
- classic:
location,company,current_company,past_company,school,industry,service_category,title,people - sales_nav:
company,current_company,past_company,industry,school,location,title,function,seniority,company_type,profile_language,relationship,lead_interactions,persona,people,account_list,lead_list
string
default:"classic"
classic for LinkedIn search filters, sales_nav for Sales Navigator facets (the account must hold a Sales Navigator seat).integer
default:"10"
Maximum number of suggestions. LinkedIn returns at most 10 for
classic and 100 for sales_nav.Response
object
Show Properties
Show Properties
string
The keyword as searched
string
The filter type
string
classic or sales_navinteger
Number of suggestions returned
array
Suggestions, most relevant first. Each item has
id (the value to use in search filters), name, an optional description (company industry, person headline…) and image (logo or profile photo URL, 200 px, null when LinkedIn provides none — e.g. locations, industries).{
"success": true,
"data": {
"keyword": "Goog",
"type": "company",
"category": "classic",
"count": 2,
"items": [
{ "id": "1441", "name": "Google", "description": "Software Development", "image": "https://media.licdn.com/dms/image/v2/…/company-logo_200_200/…" },
{ "id": "1594050", "name": "Google DeepMind", "description": "Research Services", "image": "https://media.licdn.com/dms/image/v2/…/company-logo_200_200/…" }
]
},
"metadata": {
"action": "typeahead",
"account_id": "69c127c37cae0494dd827286",
"credits_consumed": 0.1,
"timestamp": "2025-01-15T10:30:00.000000"
}
}
{
"success": true,
"data": {
"keyword": "",
"type": "seniority",
"category": "sales_nav",
"count": 3,
"items": [
{ "id": "320", "name": "Owner / Partner", "description": null, "image": null },
{ "id": "310", "name": "CXO", "description": null, "image": null },
{ "id": "300", "name": "Vice President", "description": null, "image": null }
]
},
"metadata": {
"action": "typeahead",
"account_id": "69c127c37cae0494dd827286",
"credits_consumed": 0.1,
"timestamp": "2025-01-15T10:30:00.000000"
}
}
{
"success": false,
"error": {
"code": "INVALID_PARAMS",
"message": "type 'skill' is not available for classic search; one of: location, company, current_company, past_company, school, industry, service_category, title, people"
},
"metadata": {
"action": "typeahead",
"account_id": "69c127c37cae0494dd827286",
"credits_consumed": 0,
"timestamp": "2025-01-15T10:30:00.000000"
}
}
Was this page helpful?