curl --request POST \
--url https://partner-api.taptalent.io/v1/partner/pipelines \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "Engineering Pipeline"
}
'import requests
url = "https://partner-api.taptalent.io/v1/partner/pipelines"
payload = { "name": "Engineering Pipeline" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({name: 'Engineering Pipeline'})
};
fetch('https://partner-api.taptalent.io/v1/partner/pipelines', 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",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'name' => 'Engineering Pipeline'
]),
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"
payload := strings.NewReader("{\n \"name\": \"Engineering Pipeline\"\n}")
req, _ := http.NewRequest("POST", 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.post("https://partner-api.taptalent.io/v1/partner/pipelines")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"Engineering Pipeline\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://partner-api.taptalent.io/v1/partner/pipelines")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"Engineering Pipeline\"\n}"
response = http.request(request)
puts response.read_body{
"status": "success",
"data": {
"id": 123,
"name": "Engineering Pipeline"
}
}Create a pipeline
Creates a new job pipeline for your company. A new pipeline automatically includes three default system stages:
SOURCED— candidates who have been sourced but haven’t appliedAPPLIED— candidates who have applied to the jobHIRED— candidates who have been hired
These system stages cannot be deleted and cannot have their type
changed (only their name is editable); the SOURCED stage’s order is
locked. The response returns only the new pipeline’s id and name —
fetch GET /pipelines/{pipelineId} to see the auto-created stages.
curl --request POST \
--url https://partner-api.taptalent.io/v1/partner/pipelines \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "Engineering Pipeline"
}
'import requests
url = "https://partner-api.taptalent.io/v1/partner/pipelines"
payload = { "name": "Engineering Pipeline" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({name: 'Engineering Pipeline'})
};
fetch('https://partner-api.taptalent.io/v1/partner/pipelines', 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",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'name' => 'Engineering Pipeline'
]),
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"
payload := strings.NewReader("{\n \"name\": \"Engineering Pipeline\"\n}")
req, _ := http.NewRequest("POST", 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.post("https://partner-api.taptalent.io/v1/partner/pipelines")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"Engineering Pipeline\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://partner-api.taptalent.io/v1/partner/pipelines")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"Engineering Pipeline\"\n}"
response = http.request(request)
puts response.read_body{
"status": "success",
"data": {
"id": 123,
"name": "Engineering Pipeline"
}
}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.
Body
Pipeline name. Must be non-empty after trimming — a whitespace-only
name is rejected with INVALID_REQUEST.
1"Engineering Pipeline"
Was this page helpful?
.png?fit=max&auto=format&n=lKy84_BssSCy2hcz&q=85&s=ac7c949427cc2893306f6036415f087e)