Get Ad Audience
LinkedIn to SHA256
The LinkedIn to SHA256 API retrieves all known SHA256 and MD5 hashed emails for a LinkedIn profile, covering both business and personal addresses.
It returns separate arrays for business and personal hashes in both formats, giving you the broadest possible coverage for audience matching across ad platforms. Use this when you need to build the widest match key set for a LinkedIn-identified contact, for example to maximise match rates when uploading customer lists to Meta, Google, or LinkedIn Ads.
Use this endpoint to:
- Maximise match rates on ad platform customer lists
- Build a complete hashed identity set for one contact
- Bridge LinkedIn-sourced contacts into advertising audiences
Fair Use Policy: This API is subject to our Fair Use Policy for Enrichment.
POST
/
linkedin_to_sha256
LinkedIn to SHA256
curl --request POST \
--url https://api.moltsets.com/api/v1/tools/linkedin_to_sha256 \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"linkedin_url": "https://linkedin.com/in/retentionadam"
}
'import requests
url = "https://api.moltsets.com/api/v1/tools/linkedin_to_sha256"
payload = { "linkedin_url": "https://linkedin.com/in/retentionadam" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({linkedin_url: 'https://linkedin.com/in/retentionadam'})
};
fetch('https://api.moltsets.com/api/v1/tools/linkedin_to_sha256', 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.moltsets.com/api/v1/tools/linkedin_to_sha256",
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([
'linkedin_url' => 'https://linkedin.com/in/retentionadam'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$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.moltsets.com/api/v1/tools/linkedin_to_sha256"
payload := strings.NewReader("{\n \"linkedin_url\": \"https://linkedin.com/in/retentionadam\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.moltsets.com/api/v1/tools/linkedin_to_sha256")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"linkedin_url\": \"https://linkedin.com/in/retentionadam\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.moltsets.com/api/v1/tools/linkedin_to_sha256")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"linkedin_url\": \"https://linkedin.com/in/retentionadam\"\n}"
response = http.request(request)
puts response.read_body{
"results": {
"linkedin_slug": "john-smith-123",
"business_SHA256_array": [
"f101da855ed67dc34c9729f04df8aeefXXXXX"
],
"business_md5_array": [
"900b89c0e5ece81f7fb0a72ef3dXXXXX"
],
"personal_SHA256_array": [
"266f422db074460bb5bf41984c3aXXXXX"
],
"personal_md5_array": [
"0c86fde3392c84d6514de378dc1XXXXX"
]
},
"status": "ok",
"metadata": {
"fair_use": {
"records_remaining_5h": 179999,
"records_reset_5h": "2026-07-15T18:53:16Z",
"records_remaining_1w": 899999,
"records_reset_1w": "2026-07-22T13:53:16Z"
}
}
}{
"error": "Bad Request",
"message": "The server cannot process the request due to a client error (400 Bad Request)."
}{
"error": "Unauthorized",
"message": "Invalid API key."
}{
"error": "Not Found",
"message": "No match was found for the data provided."
}{
"error": "Invalid Input",
"message": "Message describing the nature of the invalid input."
}{
"error": "Too Many Requests",
"message": "Rate limit exceeded. Maximum 100 requests per second."
}{
"error": {
"code": "internal_error",
"message": "Unexpected connection error."
},
"metadata": {}
}⌘I
LinkedIn to SHA256
curl --request POST \
--url https://api.moltsets.com/api/v1/tools/linkedin_to_sha256 \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"linkedin_url": "https://linkedin.com/in/retentionadam"
}
'import requests
url = "https://api.moltsets.com/api/v1/tools/linkedin_to_sha256"
payload = { "linkedin_url": "https://linkedin.com/in/retentionadam" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({linkedin_url: 'https://linkedin.com/in/retentionadam'})
};
fetch('https://api.moltsets.com/api/v1/tools/linkedin_to_sha256', 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.moltsets.com/api/v1/tools/linkedin_to_sha256",
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([
'linkedin_url' => 'https://linkedin.com/in/retentionadam'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$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.moltsets.com/api/v1/tools/linkedin_to_sha256"
payload := strings.NewReader("{\n \"linkedin_url\": \"https://linkedin.com/in/retentionadam\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.moltsets.com/api/v1/tools/linkedin_to_sha256")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"linkedin_url\": \"https://linkedin.com/in/retentionadam\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.moltsets.com/api/v1/tools/linkedin_to_sha256")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"linkedin_url\": \"https://linkedin.com/in/retentionadam\"\n}"
response = http.request(request)
puts response.read_body{
"results": {
"linkedin_slug": "john-smith-123",
"business_SHA256_array": [
"f101da855ed67dc34c9729f04df8aeefXXXXX"
],
"business_md5_array": [
"900b89c0e5ece81f7fb0a72ef3dXXXXX"
],
"personal_SHA256_array": [
"266f422db074460bb5bf41984c3aXXXXX"
],
"personal_md5_array": [
"0c86fde3392c84d6514de378dc1XXXXX"
]
},
"status": "ok",
"metadata": {
"fair_use": {
"records_remaining_5h": 179999,
"records_reset_5h": "2026-07-15T18:53:16Z",
"records_remaining_1w": 899999,
"records_reset_1w": "2026-07-22T13:53:16Z"
}
}
}{
"error": "Bad Request",
"message": "The server cannot process the request due to a client error (400 Bad Request)."
}{
"error": "Unauthorized",
"message": "Invalid API key."
}{
"error": "Not Found",
"message": "No match was found for the data provided."
}{
"error": "Invalid Input",
"message": "Message describing the nature of the invalid input."
}{
"error": "Too Many Requests",
"message": "Rate limit exceeded. Maximum 100 requests per second."
}{
"error": {
"code": "internal_error",
"message": "Unexpected connection error."
},
"metadata": {}
}