TypeScript
import { Kombo } from "@kombo-api/sdk";
const kombo = new Kombo({
integration_id: "workday:HWUTwvyx2wLoSUHphiWVrp28",
api_key: "<YOUR_BEARER_TOKEN_HERE>",
});
async function run() {
const result = await kombo.ats.addCandidateTag({
candidate_id: "8Xi6iZrwusZqJmDGXs49GBmJ",
body: {
tag: {
name: "Excellent Fit",
},
},
});
console.log(result);
}
run();require 'kombo'
Models = ::Kombo::Models
s = ::Kombo::Kombo.new(
integration_id: 'workday:HWUTwvyx2wLoSUHphiWVrp28',
security: Models::Shared::Security.new(
api_key: '<YOUR_BEARER_TOKEN_HERE>'
)
)
res = s.ats.add_candidate_tag(candidate_id: '8Xi6iZrwusZqJmDGXs49GBmJ', body: Models::Shared::PostAtsCandidatesCandidateIdTagsRequestBody.new(
tag: Models::Shared::PostAtsCandidatesCandidateIdTagsRequestBodyTag.new(
name: 'Excellent Fit'
)
))
unless res.post_ats_candidates_candidate_id_tags_positive_response.nil?
# handle response
endfrom kombo import Kombo
with Kombo(
integration_id="workday:HWUTwvyx2wLoSUHphiWVrp28",
api_key="<YOUR_BEARER_TOKEN_HERE>",
) as k_client:
res = k_client.ats.add_candidate_tag(candidate_id="8Xi6iZrwusZqJmDGXs49GBmJ", tag={
"name": "Excellent Fit",
})
# Handle response
print(res)curl --request POST \
--url https://api.kombo.dev/v1/ats/candidates/{candidate_id}/tags \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'X-Integration-Id: <x-integration-id>' \
--data '
{
"tag": {
"name": "Excellent Fit"
}
}
'const options = {
method: 'POST',
headers: {
'X-Integration-Id': '<x-integration-id>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({tag: {name: 'Excellent Fit'}})
};
fetch('https://api.kombo.dev/v1/ats/candidates/{candidate_id}/tags', 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://api.kombo.dev/v1/ats/candidates/{candidate_id}/tags",
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([
'tag' => [
'name' => 'Excellent Fit'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"X-Integration-Id: <x-integration-id>"
],
]);
$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://api.kombo.dev/v1/ats/candidates/{candidate_id}/tags"
payload := strings.NewReader("{\n \"tag\": {\n \"name\": \"Excellent Fit\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-Integration-Id", "<x-integration-id>")
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://api.kombo.dev/v1/ats/candidates/{candidate_id}/tags")
.header("X-Integration-Id", "<x-integration-id>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"tag\": {\n \"name\": \"Excellent Fit\"\n }\n}")
.asString();{
"status": "success",
"data": {},
"warnings": [
{
"message": "This is an example warning!"
}
]
}Tags
Add tag to candidate
Add a tag to a candidate.
POST
/
ats
/
candidates
/
{candidate_id}
/
tags
TypeScript
import { Kombo } from "@kombo-api/sdk";
const kombo = new Kombo({
integration_id: "workday:HWUTwvyx2wLoSUHphiWVrp28",
api_key: "<YOUR_BEARER_TOKEN_HERE>",
});
async function run() {
const result = await kombo.ats.addCandidateTag({
candidate_id: "8Xi6iZrwusZqJmDGXs49GBmJ",
body: {
tag: {
name: "Excellent Fit",
},
},
});
console.log(result);
}
run();require 'kombo'
Models = ::Kombo::Models
s = ::Kombo::Kombo.new(
integration_id: 'workday:HWUTwvyx2wLoSUHphiWVrp28',
security: Models::Shared::Security.new(
api_key: '<YOUR_BEARER_TOKEN_HERE>'
)
)
res = s.ats.add_candidate_tag(candidate_id: '8Xi6iZrwusZqJmDGXs49GBmJ', body: Models::Shared::PostAtsCandidatesCandidateIdTagsRequestBody.new(
tag: Models::Shared::PostAtsCandidatesCandidateIdTagsRequestBodyTag.new(
name: 'Excellent Fit'
)
))
unless res.post_ats_candidates_candidate_id_tags_positive_response.nil?
# handle response
endfrom kombo import Kombo
with Kombo(
integration_id="workday:HWUTwvyx2wLoSUHphiWVrp28",
api_key="<YOUR_BEARER_TOKEN_HERE>",
) as k_client:
res = k_client.ats.add_candidate_tag(candidate_id="8Xi6iZrwusZqJmDGXs49GBmJ", tag={
"name": "Excellent Fit",
})
# Handle response
print(res)curl --request POST \
--url https://api.kombo.dev/v1/ats/candidates/{candidate_id}/tags \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'X-Integration-Id: <x-integration-id>' \
--data '
{
"tag": {
"name": "Excellent Fit"
}
}
'const options = {
method: 'POST',
headers: {
'X-Integration-Id': '<x-integration-id>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({tag: {name: 'Excellent Fit'}})
};
fetch('https://api.kombo.dev/v1/ats/candidates/{candidate_id}/tags', 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://api.kombo.dev/v1/ats/candidates/{candidate_id}/tags",
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([
'tag' => [
'name' => 'Excellent Fit'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"X-Integration-Id: <x-integration-id>"
],
]);
$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://api.kombo.dev/v1/ats/candidates/{candidate_id}/tags"
payload := strings.NewReader("{\n \"tag\": {\n \"name\": \"Excellent Fit\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-Integration-Id", "<x-integration-id>")
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://api.kombo.dev/v1/ats/candidates/{candidate_id}/tags")
.header("X-Integration-Id", "<x-integration-id>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"tag\": {\n \"name\": \"Excellent Fit\"\n }\n}")
.asString();{
"status": "success",
"data": {},
"warnings": [
{
"message": "This is an example warning!"
}
]
}Supported integrations
Supported integrations
This feature is currently available for the following integrations:
Workday
SAP SuccessFactors
SmartRecruiters
Lever
Tellent Recruitee
Greenhouse (V1)
Greenhouse (V3)
Teamtailor
Ashby
Onlyfy
Workable
Welcome to the Jungle
eRecruiter
Zoho Recruit
RECRU
Odoo
Avionté
Kombo Sandbox
TrackerRMS
This endpoint requires the permission Manage tags to be enabled in your scope config.
Example Request Body
{
"tag": {
"name": "Excellent Fit"
}
}
Authorizations
Headers
ID of the integration you want to interact with.
Path Parameters
The Kombo ID of the candidate you want to add the tag to.
Body
application/json
POST /ats/candidates/:candidate_id/tags Request body
Response
POST /ats/candidates/:candidate_id/tags Positive response
Was this page helpful?