curl --request DELETE \
--url https://partner-api.taptalent.io/v1/partner/pipelines/stages/{stageId} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"pipelineId": 123,
"newStageId": 790
}
'import requests
url = "https://partner-api.taptalent.io/v1/partner/pipelines/stages/{stageId}"
payload = {
"pipelineId": 123,
"newStageId": 790
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.delete(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'DELETE',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({pipelineId: 123, newStageId: 790})
};
fetch('https://partner-api.taptalent.io/v1/partner/pipelines/stages/{stageId}', 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://partner-api.taptalent.io/v1/partner/pipelines/stages/{stageId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_POSTFIELDS => json_encode([
'pipelineId' => 123,
'newStageId' => 790
]),
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://partner-api.taptalent.io/v1/partner/pipelines/stages/{stageId}"
payload := strings.NewReader("{\n \"pipelineId\": 123,\n \"newStageId\": 790\n}")
req, _ := http.NewRequest("DELETE", 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.delete("https://partner-api.taptalent.io/v1/partner/pipelines/stages/{stageId}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"pipelineId\": 123,\n \"newStageId\": 790\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://partner-api.taptalent.io/v1/partner/pipelines/stages/{stageId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"pipelineId\": 123,\n \"newStageId\": 790\n}"
response = http.request(request)
puts response.read_body{
"status": "success",
"message": "Stage deleted successfully"
}Delete a pipeline stage
Deletes a custom stage from a pipeline. All candidates in the deleted
stage are moved to the stage identified by newStageId, and the
remaining stages are automatically reordered sequentially. System
stages (SOURCED, APPLIED, HIRED) cannot be deleted.
This endpoint REQUIRES a JSON request body on a DELETE request (legal per the HTTP specification and OpenAPI 3.1, but unusual): some HTTP clients and proxies silently strip bodies from DELETE requests — make sure your client actually transmits the body, or the request will fail validation.
curl --request DELETE \
--url https://partner-api.taptalent.io/v1/partner/pipelines/stages/{stageId} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"pipelineId": 123,
"newStageId": 790
}
'import requests
url = "https://partner-api.taptalent.io/v1/partner/pipelines/stages/{stageId}"
payload = {
"pipelineId": 123,
"newStageId": 790
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.delete(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'DELETE',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({pipelineId: 123, newStageId: 790})
};
fetch('https://partner-api.taptalent.io/v1/partner/pipelines/stages/{stageId}', 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://partner-api.taptalent.io/v1/partner/pipelines/stages/{stageId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_POSTFIELDS => json_encode([
'pipelineId' => 123,
'newStageId' => 790
]),
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://partner-api.taptalent.io/v1/partner/pipelines/stages/{stageId}"
payload := strings.NewReader("{\n \"pipelineId\": 123,\n \"newStageId\": 790\n}")
req, _ := http.NewRequest("DELETE", 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.delete("https://partner-api.taptalent.io/v1/partner/pipelines/stages/{stageId}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"pipelineId\": 123,\n \"newStageId\": 790\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://partner-api.taptalent.io/v1/partner/pipelines/stages/{stageId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"pipelineId\": 123,\n \"newStageId\": 790\n}"
response = http.request(request)
puts response.read_body{
"status": "success",
"message": "Stage deleted successfully"
}Authorizations
Company-scoped API key. Production keys are prefixed sk_live_,
sandbox keys sk_test_, each followed by 22 base62 characters
(pattern ^sk_(live|test)_[0-9A-Za-z]{22}$). Generate keys in the
TapTalent dashboard under Account Settings → Developers → API Key
Management; a key is shown once at generation and old keys are
invalidated immediately on regeneration.
Path Parameters
The unique identifier of the stage to delete.
Body
Request body for deleting a pipeline stage. Note this body is carried on a DELETE request; some HTTP clients strip DELETE bodies — verify your client transmits it.
Was this page helpful?
.png?fit=max&auto=format&n=lKy84_BssSCy2hcz&q=85&s=ac7c949427cc2893306f6036415f087e)