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.

  1. Delete Candidates
  2. Delete Candidate Notes
  3. Delete Applications
  4. Delete Application Notes
  5. Delete Application Interview Feedback
  6. 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={organization URN}&ids[1].atsJobApplicationId=APPL456&ids[1].dataProvider=ATS&ids[1].integrationContext=urn:li:organization:axQ23fJ’

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:axQ23fJ": {
            "status": 204
        },
        "atsJobApplicationId=APPL456&dataProvider=ATS&integrationContext=urn:li:organization:axQ23fJ": {
            "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.