Creates an import job for an uploaded LinkedIn data export file (optionally limited to some data types or conversations), marks the case's LinkedIn data source as pending, and queues the import (201). If the file was already imported into this case, the request either fails with 400 or, when incremental re-import is enabled and it would add nothing new, returns 200 with imported set to false and no job created. Not available to opposing counsel.
POST
/linkedin/{caseId}/import
curl \
--request POST 'http://api.example.com/linkedin/{caseId}/import' \
--header "Authorization: Bearer $ACCESS_TOKEN" \
--header "Content-Type: application/json" \
--data '{
"fileId": "string",
"extractionCode": "string",
"selectedDataTypes": [
"string"
],
"selectedConversationIds": [
"string"
]
}'
Request examples
{
"fileId": "string",
"extractionCode": "string",
"selectedDataTypes": [
"string"
],
"selectedConversationIds": [
"string"
]
}
Response examples (200)
{
"data": {
"imported": false,
"message": "string"
},
"statusCode": 200,
"timestamp": "2026-01-15T10:15:00.000Z"
}
Response examples (201)
{
"data": {
"createdAt": "2026-01-15T14:30:00.000Z",
"updatedAt": "2026-01-15T14:30:00.000Z",
"id": "507f1f77bcf86cd799439011",
"case": {},
"extractionCode": {},
"file": {},
"createdBy": {},
"status": "not_started",
"startedAt": "2026-01-15T14:25:00.000Z",
"completedAt": "2026-01-15T14:30:00.000Z",
"failedAt": "2026-05-04T09:42:00Z",
"message": "Import failed",
"linkedInUserProvider": {},
"selectedDataTypes": [
"messages",
"connections"
],
"selectedConversationIds": [
"2-ZGVmYXVsdA=="
],
"stats": {
"conversations": 14,
"messages": 320,
"connections": 250,
"comments": 12,
"richMedia": 3,
"savedItems": 5,
"savedJobAlerts": 1,
"savedJobs": 2,
"jobApplications": 4
}
},
"statusCode": 201,
"timestamp": "2026-01-15T10:15:00.000Z"
}