Linked In
LinkedIn is where B2B identities live—make sure the URLs you store truly point to the right people and companies. Delpha's LinkedIn Finder and LinkedIn Validator keep your CRM aligned with canonical LinkedIn profiles by normalizing URLs, checking format quality, and surfacing the most relevant matches.
What we assess:
Completeness: Is a LinkedIn URL provided?
Validity: Does the URL follow LinkedIn's accepted format (no existence check)?
Consistency: Does the input equal the normalized canonical form (e.g., people →
.../in/, companies →.../company/)?Accuracy: Does the URL appear to match the provided context (person: first & last name, optional company; company: company name, optional website)?
What you get back:
A normalized LinkedIn URL and quality scores for the checks above.
When context suggests a mismatch or uncertainty, AI-powered recommendations: candidate profiles/pages with confidence scores, rank, and helpful details (name, title, location, description). If a company website is provided, we can use it to help identify the official LinkedIn page.
With LinkedIn Finder and LinkedIn Validator, your records stay clean, standardized, and tied to the right LinkedIn identities—boosting routing accuracy and downstream engagement.
Deprecated. Use POST /v1/linkedin-profile for people and POST /v1/linkedin-company-page for companies — they take the same body, are priced and permissioned separately, and tell the backend which kind of page to look for instead of inferring it. This route keeps working unchanged.
- : Access to the public API
OAuth2 client credentials flow for API access
Payload to submit a new LinkedIn quality job.
The LinkedIn URL to assess.
https://www.linkedin.com/in/victorgoubet/The website URL associated with the LinkedIn entity.
https://delpha.io/The name of the company.
DelphaThe first name of the entity if it's a profile.
VictorThe last name of the entity if it's a profile.
GoubetThe email address.
victor@delpha.ioOptional country of the LinkedIn entity, used to disambiguate the search. Accepts an ISO 3166-1 alpha-2 code (e.g. FR) or a plain country name (e.g. France); it is normalized downstream.
FranceJob submitted to assess_social_network_v16
Response after submitting a new LinkedIn quality job.
The job ID. Required if status <= 300.
21014abc65004d2781d2e0ef4c9fbb46The message to return
Job submitted to assess_social_network_v16The status of the process
SUCCESSPossible values: The status code to return
202Invalid linkedin format or missing required fields
Authentication failed - invalid or missing OAuth 2.0 token
Payment Required
Internal server error
Service unavailable
POST /v1/linkedin HTTP/1.1
Host: api.delpha.io
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 195
{
"url": "https://www.linkedin.com/in/victorgoubet/",
"website": "https://delpha.io/",
"company_name": "Delpha",
"first_name": "Victor",
"last_name": "Goubet",
"email": "victor@delpha.io",
"country": "France"
}{
"job_id": "21014abc65004d2781d2e0ef4c9fbb46",
"message": "Job submitted to assess_social_network_v16",
"status": "SUCCESS",
"status_code": 202
}Deprecated. Poll GET /v1/linkedin-profile/{job_id} or GET /v1/linkedin-company-page/{job_id} instead. Retrieve the result and status of a previously submitted linkedin job.
- : Access to the public API
OAuth2 client credentials flow for API access
The unique identifier of the linkedin job
{"summary":"Sample job ID","value":"21014abc65004d2781d2e0ef4c9fbb46"}Job succeeded.
Response after retrieving the status and result of an linkedin quality job.
A human-readable message describing the current state or outcome of the job.
Job succeeded.The status of the process
SUCCESSPossible values: The HTTP status code representing the job's current state.
200The total time taken to process the job, in seconds.
0.123Job is still running.
Input validation failed.
Authentication failed - invalid or missing OAuth 2.0 token
Failed to retrieve job.
Job timed out.
GET /v1/linkedin/{job_id} HTTP/1.1
Host: api.delpha.io
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
{
"message": "Job succeeded.",
"status": "SUCCESS",
"status_code": 200,
"result": {
"data_type": "social_network",
"normalized_value": "https://www.linkedin.com/in/victorgoubet/",
"label": "Ok",
"scores": {
"accuracy": 0.8711710601954503,
"completeness": 1,
"consistency": 1,
"validity": 1
},
"recommendations": [
{
"url": "https://www.linkedin.com/in/victorgoubet/",
"score": 0.8711710601954503,
"title": "Victor Goubet - Delpha",
"rank": 1,
"desc": "Data Engineer & Cloud specialist - AWS · Experience: Delpha · Education: ESILV - Ecole Supérieure d'Ingénieurs Léonard de Vinci · Location: Paris · 500+ ...",
"company_name": "Delpha",
"location": "Paris",
"profile_name": "Victor Goubet",
"position": "Data Engineer & Cloud specialist",
"match_score": 0.8711710601954503,
"ambiguity_n": 1
}
],
"recommendation_status": "confident",
"fallback_used": false
},
"process_time": 0.123
}Deprecated. Use /v1/linkedin-profile/batch or /v1/linkedin-company-page/batch instead. Submit 1..100 LinkedIn items for asynchronous batch processing as ONE job (never a per-item fan-out). Returns a job_id immediately (202); poll GET /v1/linkedin/batch/{job_id} for status and results. Each item is validated identically to the single-route POST /v1/linkedin payload; a payload with 0 items or more than 100 is rejected with 422.
- : Access to the public API
OAuth2 client credentials flow for API access
Batch envelope for POST /v1/linkedin/batch: {"items": [...]} (1..100 items, 422 beyond); each item is shaped exactly like the single-route POST /v1/linkedin payload (reused here by $ref as LinkedInSubmitInput).
Batch submitted
Response after submitting a batch quality job.
The job ID. Required if status <= 300.
21014abc65004d2781d2e0ef4c9fbb46Number of items accepted in the batch (present on success).
100The message to return
Batch submittedThe status of the process
SUCCESSPossible values: The status code to return
202Authentication failed - invalid or missing OAuth 2.0 token
Payment Required
Invalid batch payload or size (1..100)
Internal server error
Service unavailable
POST /v1/linkedin/batch HTTP/1.1
Host: api.delpha.io
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 207
{
"items": [
{
"url": "https://www.linkedin.com/in/victorgoubet/",
"website": "https://delpha.io/",
"company_name": "Delpha",
"first_name": "Victor",
"last_name": "Goubet",
"email": "victor@delpha.io",
"country": "France"
}
]
}{
"job_id": "21014abc65004d2781d2e0ef4c9fbb46",
"item_count": 100,
"message": "Batch submitted",
"status": "SUCCESS",
"status_code": 202
}Deprecated. Use /v1/linkedin-profile/batch or /v1/linkedin-company-page/batch instead. Poll a batch of LinkedIn items submitted via POST /v1/linkedin/batch. 202 while running (with item_count/processed_count progress); 200 once SUCCEEDED (with counts, a presigned result_url, and result_data inlined when <=1MB); 409 if the credit reservation expired before delivery (resubmit); 500 if the job failed; 504 past the 24h ceiling (batch jobs run on Batch/Vertex timescales, hours not minutes).
- : Access to the public API
OAuth2 client credentials flow for API access
The unique identifier of the LinkedIn batch job.
{"summary":"Sample job ID","value":"21014abc65004d2781d2e0ef4c9fbb46"}97/100 items succeeded
Response for GET /v1/linkedin/batch/{job_id}. Each result_data.items[] entry is keyed to its request item by dispatch_key ({"record_id": "<job_id>#<index>"}). On success its result is the SAME object GET /v1/linkedin/{job_id} returns for a single item. On failure it carries an error string instead of result.
A human-readable message describing the current state or outcome of the job.
97/100 items succeededThe status of the process
SUCCESSPossible values: The HTTP status code representing the job's current state.
200Presigned URL (1h expiry) to download the full batch result JSON from S3.
https://delpha-api-batch-dev.s3.amazonaws.com/batch-results/<job_id>.json?...Total number of items in the batch (present while the job is running).
Number of items processed so far (present while the job is running; may be absent early in the job's lifecycle).
The total time taken to process the job, in seconds.
12.3Job is still running.
Missing job_id in path parameters
Authentication failed - invalid or missing OAuth 2.0 token
No job found for job_id: ...
Reservation expired; please resubmit the job.
Job failed.
Job timed out.
GET /v1/linkedin/batch/{job_id} HTTP/1.1
Host: api.delpha.io
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
{
"message": "97/100 items succeeded",
"status": "SUCCESS",
"status_code": 200,
"counts": {
"total": 100,
"succeeded": 97,
"failed": 3
},
"result_url": "https://delpha-api-batch-dev.s3.amazonaws.com/batch-results/<job_id>.json?...",
"result_data": {
"job_id": "21014abc65004d2781d2e0ef4c9fbb46",
"usecase": "linkedin",
"counts": {
"total": 2,
"succeeded": 1,
"failed": 1
},
"items": [
{
"dispatch_key": {
"record_id": "21014abc65004d2781d2e0ef4c9fbb46#0"
},
"result": {
"data_type": "social_network",
"normalized_value": "https://www.linkedin.com/in/victorgoubet/",
"label": "Ok",
"scores": {
"accuracy": 0.8711710601954503,
"completeness": 1,
"consistency": 1,
"validity": 1
},
"recommendations": [
{
"url": "https://www.linkedin.com/in/victorgoubet/",
"score": 0.8711710601954503,
"title": "Victor Goubet - Delpha",
"rank": 1,
"desc": "Data Engineer & Cloud specialist - AWS · Experience: Delpha · Education: ESILV - Ecole Supérieure d'Ingénieurs Léonard de Vinci · Location: Paris · 500+ ...",
"company_name": "Delpha",
"location": "Paris",
"profile_name": "Victor Goubet",
"position": "Data Engineer & Cloud specialist",
"match_score": 0.8711710601954503,
"ambiguity_n": 1
}
],
"recommendation_status": "confident",
"fallback_used": false
}
},
{
"dispatch_key": {
"record_id": "21014abc65004d2781d2e0ef4c9fbb46#1"
},
"error": "Processing failed for this item."
}
]
},
"item_count": null,
"processed_count": null,
"process_time": 12.3
}Last updated
Was this helpful?