Get Fresh Data in Real Time
We don't store data; we scrape it in real time, enabling you to get the freshest possible profile and company data.
Real-time data for name, location, followers, company size & many more using our Profile Scraper API. Scrape both company & individual profiles at scale without the hassle of getting blocked.
{
"fullName": "Richard Branson",
"first_name": "Richard",
"last_name": "Branson",
"public_identifier": "rbranson",
"headline": "Founder at Virgin Group",
"location": "United Kingdom",
"followers": "20M followers",
"connections": "500+ connections",
"about": "Tie-loathing adventurer, philanthropist & troublemaker, who believes in turning ideas into reality. Otherwise known as Dr Yes at Virgin!",
"experience": [
{
"position": "Founder",
"company_name": "Virgin Group",
"company_url": "https://www.linkedin.com/company/virgin/",
"location": "United Kingdom",
"starts_at": "1970",
"ends_at": "Present",
"duration": "55 years"
}
],
"education": [
{
"school": "Stowe School",
"degree": "",
"field_of_study": "",
"starts_at": "1964",
"ends_at": "1967"
}
],
"certification": [],
"awards": []
}{
"company_name": "Amazon",
"universal_name_id": "amazon",
"tagline": "Smile, you're at Amazon",
"industry": "Software Development",
"company_size": "10,001+ employees",
"headquarters": "Seattle, WA",
"type": "Public Company",
"founded": "1994",
"specialties": "e-Commerce, Retail, Operations, Internet",
"website": "https://www.amazon.com",
"followers": "31,000,000 followers",
"employee_count": "631745",
"description": "Amazon is guided by four principles: customer obsession rather than competitor focus, passion for invention, commitment to operational excellence, and long-term thinking."
}import requests
url = "https://api.scrapingdog.com/profile/"
params = {
"api_key": "5eaa61a6e562fc52fe763tr516e4653",
"type": "profile",
"id": "rbranson"
}
response = requests.get(url, params=params)
if response.status_code == 200:
data = response.json()
print(data)
else:
print(f"Request failed with status code: {response.status_code}")import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
public class Main {
public static void main(String[] args) {
try {
String apiUrl = "https://api.scrapingdog.com/profile/?api_key=5eaa61a6e562fc52fe763tr516e4653&type=profile&id=rbranson";
URL url = new URL(apiUrl);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
int responseCode = connection.getResponseCode();
if (responseCode == 200) {
BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
String inputLine;
StringBuilder response = new StringBuilder();
while ((inputLine = reader.readLine()) != null) {
response.append(inputLine);
}
reader.close();
System.out.println(response.toString());
} else {
System.out.println("HTTP request failed: " + responseCode);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}<?php
// URL and parameters
$url = 'https://api.scrapingdog.com/profile/';
$params = array(
'api_key' => '5eaa61a6e562fc52fe763tr516e4653',
'type' => 'profile',
'id' => 'rbranson'
);
// Initialize cURL session
$ch = curl_init();
// Set cURL options
curl_setopt($ch, CURLOPT_URL, $url . '?' . http_build_query($params));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// Execute the cURL request
$response = curl_exec($ch);
// Check for errors
if ($response === false) {
echo 'cURL error: ' . curl_error($ch);
} else {
// Process the response
echo $response;
}
// Close the cURL session
curl_close($ch);
?>require 'net/http'
url = URI.parse('https://api.scrapingdog.com/profile/')
params = {
api_key: '5eaa61a6e562fc52fe763tr516e4653',
type: 'profile',
id: 'rbranson'
}
url.query = URI.encode_www_form(params)
response = Net::HTTP.get_response(url)
if response.is_a?(Net::HTTPSuccess)
puts response.body
else
puts "HTTP request failed: #{response.code} #{response.message}"
endconst axios = require('axios');
const url = 'https://api.scrapingdog.com/profile/';
const params = {
api_key: '5eaa61a6e562fc52fe763tr516e4653',
type: 'profile',
id: 'rbranson'
};
axios.get(url, { params: params })
.then(response => {
if (response.status === 200) {
const data = response.data;
console.log(data);
} else {
console.log('Request failed with status code: ' + response.status);
}
})
.catch(error => {
console.error('An error occurred:', error);
});fullNamefirst_namelast_namepublic_identifierheadlinelocationfollowersconnectionsaboutpositioncompany_namecompany_urlstarts_atends_atdurationschooldegreefield_of_studycertificationawardscompany_nameindustrycompany_sizeheadquartersfoundedspecialtiesuniversal_name_idtaglinetypewebsiteemployee_countdescriptionScraping profiles by hand means fighting login walls, rotating burner accounts, and rebuilding parsers every time the DOM shifts.
LinkedIn gates profiles behind sign-in, security checkpoints, and captchas that throttle or ban accounts within a few hundred views.
Cookie-based scraping needs logged-in accounts that LinkedIn detects, restricts, and bans, killing your pipeline mid-run.
Experience, education, and company-size sections render dynamically and change layout often, so parsers silently return empty fields.
Caching profiles to dodge blocks leaves you with outdated headlines, and risks scraping non-public data you should not touch.
One GET request with a profile id returns clean, public profile or company JSON, with no accounts, cookies, or parsing.
Names, headlines, locations, follower counts, experience, and company size come back structured and field-mapped every call.
Feed fresh talent and firmographic signals into your CRM, ATS, or enrichment model to power sourcing and ABM decisions.
No cookies and no account pool means you can enrich profiles in the millions per day with stable performance.
Only publicly available profile and company data is extracted, returned as ready-to-use JSON that drops into your stack.
We don't store data; we scrape it in real time, enabling you to get the freshest possible profile and company data.
We don't use your cookies or any LinkedIn account, so you can extract profiles in the millions per day.
All data is extracted ethically from public profiles and is compliant with privacy laws.
Set premium to true and we route through residential proxies to bypass captchas and security checkpoints.
Use the webhook parameter to defer a scrape by minutes, raising the success rate on protected profiles.
Switch type between profile and company to pull individual or organization data from the same endpoint and key.
Recruiters find and analyze candidates by job title, interests, and work history to streamline hiring.
Gather competitive intelligence and industry trends by scraping detailed company profiles for strategic decisions.
Sales teams target leads by extracting profiles of decision-makers and key personnel at relevant companies.
Build business networks by identifying partners, clients, and stakeholders through profiles and company data.
Update existing datasets with the latest profile and company information to keep your records accurate.
Collect data on professionals and organizations for studies on employment trends and industry analysis.
Sign up and get 200 free credits to start testing the API.
Access your unique API key from the dashboard to authenticate every request.
Call /profile with type=profile and a profile id, or type=company with a company id.
Get clean JSON with name, headline, location, followers, experience, and company firmographics.
Start your web scraping journey with 200 free credits. Test our service and upgrade to one of the plans below. Cancel anytime.

Profile Scraper API from Scrapingdog is great. We've tried various other APIs but they failed to reach our expectations and caused problems. But with ScrapingDog scraping seems like a piece of cake.
India
I searched for a product like this to scrape data from Amazon and profile. The interface and the API they provide are easy to use.
Italy
Great for scraping public profiles of both people and companies.
India
Reliable, and simple to use! Itβs also inexpensive and has packaged solutions for every need (Google, LinkedIn). Highly recommend.
France
The API can be used to extract data from profiles, both individual & company.
Scraping publicly available data is legal. However, if you scrape private information using a dedicated account, it would be considered illegal. Scrapingdog's Profile Scraper API only scrapes publicly available information.
Yes, however, the process is not scalable. We have built a guide wherein we have scraped profiles using Python.
No, this API cannot extract jobs data. However, we have a Jobs Search API which can help you scrape jobs.
Each API request consumes a certain number of credits based on the dedicated API you're using. For example, each Profile Scraper request costs 50 credits (100 if the profile is protected).
No, Scrapingdog's Profile Scraper doesn't use Sales Navigator, and it doesn't use your account or anybody's account for that matter.
Get 200 free credits to spin the API. No credit card required!