Skip to main content

Data API Documentation

Data API lets you retrieve real-time LinkedIn data through an API interface, even if you don't have or don't want to connect your own LinkedIn account. Here, you’ll find an explanation of the API design philosophy and implementation details.

RPC-style

Instead of the commonly used REST approach, Data API follows an RPC-style design:

  • All requests are POST requests structured as action calls, such as companies.search, combining a domain and a function name.
  • Each function accepts a specific body JSON, depending on the API endpoint, which is treated as the function's parameter.

This approach provides greater flexibility in defining actions, as the API is action-oriented rather than resource-oriented.

Request timing

Data API requests are not executed instantly. For example, simple actions like retrieving basic information about a person might take around 20 seconds, while more complex operations, such as fetching all company employees, can take several minutes. To handle this, we use a special approach for result handling which ensures reliable data delivery.

Array requests

All endpoints in Data API are designed to support array requests. For instance, people.get accepts an array of LinkedIn profile URLs to retrieve information about multiple people, and companies.search allows searching multiple companies in a single API call.

Whenever possible, prefer array requests with multiple elements instead of multiple requests with a single element. This approach reduces execution time.

For example, retrieving information about one person using people.get takes around 20 seconds. Making 10 separate requests for 10 different people would take approximately 200 seconds in total. However, combining all 10 profiles into a single array request reduces the total execution time to about 150 seconds.

URL normalization

Data API normalizes all LinkedIn URLs in responses, regardless of the format provided in the request body. Normalized URLs consistently follow these rules:

  • Use https protocol.
  • Include www subdomain.
  • Exclude trailing slash (/).

For example, if a request body includes a URL like http://linkedin.com/in/person1/, the response will return it as https://www.linkedin.com/in/person1. Consider this behavior when implementing URL comparisons or storage in your integration.

Handling missing values

When certain data is unavailable on LinkedIn, some fields in the API response may return as null or empty array ([]). Missing fields are always explicitly included in the response rather than being omitted.