Data Deletion
Given below is a set of all DELETE APIs supported by the Middleware Platform. To know how to create these artifacts refer to The Middleware Platform overview.
- Delete Candidates
- Delete Candidate Notes
- Delete Applications
- Delete Application Notes
- Delete Application Interview Feedback
- Delete Application Stages
Delete Candidates
API Details
Execute Delete on the /atsCandidates endpoint when a customer deletes records:
API Endpoint
DELETE https://api.linkedin.com/v2/atsCandidates?ids[0].atsCandidateId={UniqueATSCandidateID}&ids[0].dataProvider=ATS&ids[0].integrationContext={organizationURN}&ids[1].atsCandidateId={id 2}&ids[1].dataProvider=ATS&ids[1].integrationContext={organization URN}
API Authorization
This API is governed by OAuth 2 authorization and you must pass an access token of type Bearer in your request as Authorization
header.
The access token is obtained via OAuth 2 Client Credentials flow.
OAuth Application: You must use your Customer Application's Client ID and Client Secret to obtain this access token.
API Request Headers
Name | Value |
---|---|
Authorization | Bearer {accessToken} |
API Request Parameters
Parameters | Description | Format | Required |
---|---|---|---|
ids[i].atsCandidateId | Use the unique Candidate ID in your ATS | String | Yes |
ids[i].integrationContext | Use the Customer's Organization/Company ID The format should be "urn:li:organization:{id}. |
String | Yes |
ids[i].dataProvider | Use "ATS" as the value for data provider. | String | Yes |
Sample Delete Request
curl -L -X POST 'https://api.linkedin.com/v2/atsCandidates' \
-H 'X-HTTP-Method-Override: DELETE' \
-H 'Content-Type: application/x-www-form-urlencoded' \
-H 'Authorization: Bearer {token}' \
--data 'ids[0].atsCandidateId={UniqueATSCandidateID}&ids[0].dataProvider=ATS&ids[0].integrationContext={organizationURN}&ids[1].atsCandidateId={id 2}&ids[1].dataProvider=ATS&ids[1].integrationContext={organization URN}’
Sample Response Body
A successful request will return a 200 OK
response code, and you will find the status of each entity in the response body.
{
"errors": {},
"results": {
"atsCandidateId=CAND123&dataProvider=ATS&integrationContext=urn%3Ali%3Aorganization%3A4gX03uw": {
"status": 204
},
"atsCandidateId=CAND456&dataProvider=ATS&integrationContext=urn%3Ali%3Aorganization%3A4gX03uw": {
"status": 204
}
}
}
Note
- Be sure to check the response for error statuses corresponding to individual entities you submit.
- Upon success, all copies of data will be deleted.
Delete Candidate Notes
API Details
Perform HTTP DELETE on /atsCandidates/{CandidateIdentifier}/notes endpoint to delete candidate notes.
API Endpoint
DELETE https://api.linkedin.com/v2/atsCandidates/atsCandidateId={CandidateID}&dataProvider=ATS&integrationContext={Organization URN}/notes?ids={NoteID}
Note
The combination of atsCandidateId,dataProvider & integrationContext fields in the above URL is the unique candidate identifier for your candidate record synced in LinkedIn.
API Authorization
This API is governed by OAuth 2 authorization and you must pass an access token of type Bearer in your request as Authorization
header.
The access token is obtained via OAuth 2 Client Credentials flow.
OAuth Application: You must use your Customer Application's Client ID and Client Secret to obtain this access token.
API Request Headers
Name | Value |
---|---|
Authorization | Bearer {accessToken} |
API Request Parameters
Parameters | Description | Format | Required |
---|---|---|---|
ids | Unqiue Note ID for the ATS Candidate | String | Yes |
Sample Request
DELETE https://api.linkedin.com/v2/atsCandidates/atsCandidateId=CAND123&dataProvider=ATS&integrationContext=urn:li:organization:2414183/notes?ids=CAND_NOTE123&ids=CAND_NOTE456
Sample Response Body
A successful request will return a 200 OK
response code, and you will find the status of each entity in the response body.
{
"errors": {},
"results": {
"CAND_NOTE123": {
"status": 204
},
"CAND_NOTE456": {
"status": 204
}
}
}
Note
- Be sure to check the response for error statuses corresponding to individual entities you submit.
- Upon success, all copies of data will be deleted.
Delete Applications
API Details
Perform HTTP DELETE on /atsApplications endpoint when a customer deletes records:
API Endpoint
DELETE https://api.linkedin.com/v2/atsApplications?ids[0].atsJobApplicationId={ATSJobApplicationID}&ids[0].dataProvider=ATS&ids[0].integrationContext={organization URN}
API Authorization
This API is governed by OAuth 2 authorization and you must pass an access token of type Bearer in your request as Authorization
header.
The access token is obtained via OAuth 2 Client Credentials flow.
OAuth Application: You must use your Customer Application's Client ID and Client Secret to obtain this access token.
API Request Headers
Name | Value |
---|---|
Authorization | Bearer {accessToken} |
API Request Parameters
Parameters | Description | Format | Required |
---|---|---|---|
ids[i].atsJobApplicationId | Use your ATS Job Application ID as the value | String | Yes |
ids[i].integrationContext | Use the Customer's Organization/Company ID The format should be "urn:li:organization:{id}. |
String | Yes |
ids[i].dataProvider | Use "ATS" as the value for data provider. | String | Yes |
Sample Request
curl -L -X POST 'https://api.linkedin.com/v2/atsApplications' \
-H 'X-HTTP-Method-Override: DELETE' \
-H 'Content-Type: application/x-www-form-urlencoded' \
-H 'Authorization: Bearer {token}' \
--data 'ids[0].atsJobApplicationId=APPL123&ids[0].dataProvider=ATS&ids[0].integrationContext=urn:li:organization:1000&ids[1].atsJobApplicationId=APPL456&ids[1].dataProvider=ATS&ids[1].integrationContext=urn:li:organization:1000'
Sample Response Body
A successful request will return a 200 OK
response code, and you will find the status of each entity in the response body.
{
"errors": {},
"results": {
"atsJobApplicationId=APPL123&dataProvider=ATS&integrationContext=urn:li:organization:1000": {
"status": 204
},
"atsJobApplicationId=APPL456&dataProvider=ATS&integrationContext=urn:li:organization:1000": {
"status": 204
}
}
}
Note
Be sure to check the response for error statuses corresponding to individual entities you submit. Upon success, all copies of data will be deleted.
Delete Application Notes
API Details
Perform HTTP DELETE on the endpoint /atsApplications/{JobApplicationIdentifier}/notes to delete application notes.
API Endpoint
DELETE https://api.linkedin.com/v2/atsApplications/atsJobApplicationId={ATSJobApplicationID}&dataProvider=ATS&integrationContext={organizationURN}/notes?ids={noteID}
Note
The combination of atsJobApplicationId,dataProvider & integrationContext fields in the above URL is the job application identifier for your job application synced in LinkedIn.
API Authorization
This API is governed by OAuth 2 authorization and you must pass an access token of type Bearer in your request as Authorization
header.
The access token is obtained via OAuth 2 Client Credentials flow.
OAuth Application: You must use your Customer Application's Client ID and Client Secret to obtain this access token.
API Request Headers
Name | Value |
---|---|
Authorization | Bearer {accessToken} |
API Request Parameters
Parameters | Description | Format | Required |
---|---|---|---|
ids | Unqiue Note ID for the Job Application | String | Yes |
Sample Request
DELETE https://api.linkedin.com/v2/atsApplications/atsJobApplicationId=APPL123&dataProvider=ATS&integrationContext=urn:li:organization:2414183/notes?ids=APPL_NOTE123&ids=APPL_NOTE456
Sample Response Body
A successful request will return a 200 OK
response code, and you will find the status of each entity in the response body.
{
"errors": {},
"results": {
"APPL_NOTE123": {
"status": 204
},
"APPL_NOTE456": {
"status": 204
}
}
}
Note
- Be sure to check the response for error statuses corresponding to individual entities you submit.
- Upon success, all copies of data will be deleted.
Delete Application Interview Feedback
API Details
Perform HTTP DELETE on the endpoint /atsApplications/{JobApplicationIdentifier}/interviewFeedback to delete interviews.
API Endpoint
DELETE https://api.linkedin.com/v2/atsApplications/atsJobApplicationId={ATSJobApplicationID}&dataProvider=ATS&integrationContext={organizationURN}/interviewFeedback?ids={InterviewID}
Note
The combination of atsJobApplicationId,dataProvider & integrationContext fields becomes the job application identifier for your job application synced in LinkedIn.
API Authorization
This API is governed by OAuth 2 authorization and you must pass an access token of type Bearer in your request as Authorization
header.
The access token is obtained via OAuth 2 Client Credentials flow.
OAuth Application: You must use your Customer Application's Client ID and Client Secret to obtain this access token.
API Request Headers
Name | Value |
---|---|
Authorization | Bearer {accessToken} |
API Request Parameters
Parameters | Description | Format | Required |
---|---|---|---|
ids | Unqiue Interview ID for the Job Application | String | Yes |
Sample Request
DELETE https://api.linkedin.com/v2/atsApplications/atsJobApplicationId=APPL123&dataProvider=ATS&integrationContext=urn:li:organization:2414183/interviewFeedback?ids=INTFB123&ids=INTFB456
Sample Response Body
A successful request will return a 200 OK
response code, and you will find the status of each entity in the response body.
{
"errors": {},
"results": {
"INTFB123": {
"status": 204
},
"INTFB456": {
"status": 204
}
}
}
Note
- Be sure to check the response for error statuses corresponding to individual entities you submit.
- Upon success, all copies of data will be deleted.
Delete Application Stages
API Details
Perform HTTP DELETE on the endpoint /atsApplications/{JobApplicationIdentifier}/stages to delete Job Application Stages.
API Endpoint
DELETE https://api.linkedin.com/v2/atsApplications/atsJobApplicationId={ATSJobApplicationID}&dataProvider=ATS&integrationContext={organizationURN}/stages?ids={StageID}
Note
The combination of atsJobApplicationId,dataProvider & integrationContext fields in above URL is the unique job application identifier for your job application synced in LinkedIn.
API Authorization
This API is governed by OAuth 2 authorization and you must pass an access token of type Bearer in your request as Authorization
header.
The access token is obtained via OAuth 2 Client Credentials flow.
OAuth Application: You must use your Customer Application's Client ID and Client Secret to obtain this access token.
API Request Headers
Name | Value |
---|---|
Authorization | Bearer {accessToken} |
API Request Parameters
Parameters | Description | Format | Required |
---|---|---|---|
ids | Unqiue Stage ID for the Job Application | String | Yes |
Sample Request
DELETE https://api.linkedin.com/v2/atsApplications/atsJobApplicationId=APPL123&dataProvider=ATS&integrationContext=urn:li:organization:2414183/stages?ids=APPL_STAGE123&ids=APPL_STAGE456
Sample Response Body
A successful request will return a 200 OK
response code, and you will find the status of each entity in the response body.
{
"errors": {},
"results": {
"APPL_STAGE123": {
"status": 204
},
"APPL_STAGE456": {
"status": 204
}
}
}
Note
- Be sure to check the response for error statuses corresponding to individual entities you submit.
- Upon success, all copies of data will be deleted.