Get Connections
curl --request POST \
--url https://api.linkupapi.com/v1/network/connections \
--header 'Content-Type: application/json' \
--header 'x-api-key: <x-api-key>' \
--data '
{
"login_token": "<string>",
"country": "<string>",
"start_page": 123,
"end_page": 123,
"total_results": 123
}
'import requests
url = "https://api.linkupapi.com/v1/network/connections"
payload = {
"login_token": "<string>",
"country": "<string>",
"start_page": 123,
"end_page": 123,
"total_results": 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({
login_token: '<string>',
country: '<string>',
start_page: 123,
end_page: 123,
total_results: 123
})
};
fetch('https://api.linkupapi.com/v1/network/connections', 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/v1/network/connections",
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([
'login_token' => '<string>',
'country' => '<string>',
'start_page' => 123,
'end_page' => 123,
'total_results' => 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/v1/network/connections"
payload := strings.NewReader("{\n \"login_token\": \"<string>\",\n \"country\": \"<string>\",\n \"start_page\": 123,\n \"end_page\": 123,\n \"total_results\": 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/v1/network/connections")
.header("x-api-key", "<x-api-key>")
.header("Content-Type", "application/json")
.body("{\n \"login_token\": \"<string>\",\n \"country\": \"<string>\",\n \"start_page\": 123,\n \"end_page\": 123,\n \"total_results\": 123\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.linkupapi.com/v1/network/connections")
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 \"login_token\": \"<string>\",\n \"country\": \"<string>\",\n \"start_page\": 123,\n \"end_page\": 123,\n \"total_results\": 123\n}"
response = http.request(request)
puts response.read_body{
"status": "success",
"data": {
"total_results": 20,
"total_available_results": 839,
"connections": [
{
"name": "Linda Källqvist",
"job_title": "Planhat - VP Customer Success",
"profile_url": "https://www.linkedin.com/in/lindakallqvist/",
"profile_picture": "https://media.licdn.com/dms/image/v2/100_100/profile-displayphoto-shrink_100_100/0/1692692323766?e=1753920000&v=beta&t=HQ7CjvtZvsf7oq-tCtgJ82p5Px_oVf0HZlQtQLLjdMA"
}
],
"pagination": {
"start_page": 1,
"end_page": 2,
"results_per_page": 10,
"pages_fetched": 2
}
}
}
Network Management
Get Connections
Retrieve your LinkedIn connections list with pagination support
POST
/
v1
/
network
/
connections
Get Connections
curl --request POST \
--url https://api.linkupapi.com/v1/network/connections \
--header 'Content-Type: application/json' \
--header 'x-api-key: <x-api-key>' \
--data '
{
"login_token": "<string>",
"country": "<string>",
"start_page": 123,
"end_page": 123,
"total_results": 123
}
'import requests
url = "https://api.linkupapi.com/v1/network/connections"
payload = {
"login_token": "<string>",
"country": "<string>",
"start_page": 123,
"end_page": 123,
"total_results": 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({
login_token: '<string>',
country: '<string>',
start_page: 123,
end_page: 123,
total_results: 123
})
};
fetch('https://api.linkupapi.com/v1/network/connections', 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/v1/network/connections",
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([
'login_token' => '<string>',
'country' => '<string>',
'start_page' => 123,
'end_page' => 123,
'total_results' => 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/v1/network/connections"
payload := strings.NewReader("{\n \"login_token\": \"<string>\",\n \"country\": \"<string>\",\n \"start_page\": 123,\n \"end_page\": 123,\n \"total_results\": 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/v1/network/connections")
.header("x-api-key", "<x-api-key>")
.header("Content-Type", "application/json")
.body("{\n \"login_token\": \"<string>\",\n \"country\": \"<string>\",\n \"start_page\": 123,\n \"end_page\": 123,\n \"total_results\": 123\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.linkupapi.com/v1/network/connections")
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 \"login_token\": \"<string>\",\n \"country\": \"<string>\",\n \"start_page\": 123,\n \"end_page\": 123,\n \"total_results\": 123\n}"
response = http.request(request)
puts response.read_body{
"status": "success",
"data": {
"total_results": 20,
"total_available_results": 839,
"connections": [
{
"name": "Linda Källqvist",
"job_title": "Planhat - VP Customer Success",
"profile_url": "https://www.linkedin.com/in/lindakallqvist/",
"profile_picture": "https://media.licdn.com/dms/image/v2/100_100/profile-displayphoto-shrink_100_100/0/1692692323766?e=1753920000&v=beta&t=HQ7CjvtZvsf7oq-tCtgJ82p5Px_oVf0HZlQtQLLjdMA"
}
],
"pagination": {
"start_page": 1,
"end_page": 2,
"results_per_page": 10,
"pages_fetched": 2
}
}
}
Get a list of your LinkedIn connections with their basic information including name, job title, profile URL, and profile picture. Supports both pagination and total results modes.
Credit cost varies based on usage mode:
- Pagination mode: 1 credit per page
- Total results mode: 1 credit per 10 connections (rounded up)
Header Parameters
string
required
Your API key
Body Parameters
string
required
LinkedIn authentication cookie obtained from the login/verify process
string
default:"FR"
Country code for proxy selection. Available: US, CA, MX, CR, BR, AR, CL, CO, FR, UK, DE, NL, ES, IT, PT, BE, CH, AT, IE, SE, DK, FI, LT, LV, EE, PL, CZ, SK, HU, RO, UA, SI, HR, RS, AL, GR, CY, TR, IL, AE, EG, ZA, IN, PK, BD, JP, SG, MY, ID, TH, PH, AU
integer
Starting page number for pagination mode
integer
Ending page number for pagination mode
integer
default:"10"
Number of connections to retrieve (used when not in pagination mode)
Response
string
Request status (success/error)
object
Show Properties
Show Properties
integer
Number of connections returned in this response
integer
Total number of connections available in your network
array
{
"status": "success",
"data": {
"total_results": 20,
"total_available_results": 839,
"connections": [
{
"name": "Linda Källqvist",
"job_title": "Planhat - VP Customer Success",
"profile_url": "https://www.linkedin.com/in/lindakallqvist/",
"profile_picture": "https://media.licdn.com/dms/image/v2/100_100/profile-displayphoto-shrink_100_100/0/1692692323766?e=1753920000&v=beta&t=HQ7CjvtZvsf7oq-tCtgJ82p5Px_oVf0HZlQtQLLjdMA"
}
],
"pagination": {
"start_page": 1,
"end_page": 2,
"results_per_page": 10,
"pages_fetched": 2
}
}
}
Error Responses
{
"status": "error",
"message": "Insufficient credits available"
}
{
"status": "error",
"message": "Invalid or expired LinkedIn cookie"
}
Notes
- The endpoint supports two modes of operation:
- Pagination mode: Specify both
start_pageandend_pageto fetch specific pages - Total results mode: Use
total_resultsto specify the number of connections to fetch
- Pagination mode: Specify both
- The profile picture URL may be ‘N/A’ if not available or if the connection has no profile picture
- The job title may be ‘N/A’ if the connection hasn’t specified their current position
- When using pagination,
end_pagemust be greater than or equal tostart_page
Was this page helpful?