curl --request GET \
--url https://partner-api.taptalent.io/v1/partner/candidates/{candidateId} \
--header 'Authorization: Bearer <token>'import requests
url = "https://partner-api.taptalent.io/v1/partner/candidates/{candidateId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://partner-api.taptalent.io/v1/partner/candidates/{candidateId}', 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/candidates/{candidateId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://partner-api.taptalent.io/v1/partner/candidates/{candidateId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://partner-api.taptalent.io/v1/partner/candidates/{candidateId}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://partner-api.taptalent.io/v1/partner/candidates/{candidateId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"status": "success",
"data": {
"id": 12345,
"firstName": "John",
"lastName": "Doe",
"email": "john.doe@example.com",
"phone": "+1234567890",
"currentJobTitle": "Software Engineer",
"currentCompany": "Tech Corp",
"city": "San Francisco",
"state": "California",
"country": "United States",
"skills": [
"JavaScript",
"React",
"Node.js"
],
"resume": "https://storage.example.com/resumes/john-doe.pdf",
"coverLetter": "I am interested in...",
"majors": [
"Computer Science"
],
"summary": "Experienced software engineer with 5+ years...",
"languages": [
"English",
"Spanish"
],
"educations": [
{
"degree": "Bachelor's",
"field": "Computer Science",
"institution": "University of California",
"startDate": "2015-09-01",
"endDate": "2019-06-01"
}
],
"workExperiences": [
{
"title": "Senior Software Engineer",
"company": "Tech Corp",
"location": "San Francisco, CA",
"startDate": "2020-01-01",
"endDate": null,
"description": "Led development of..."
}
],
"projectExperiences": [
{
"name": "E-commerce Platform",
"description": "Built a full-stack e-commerce platform...",
"technologies": [
"React",
"Node.js",
"PostgreSQL"
]
}
],
"certifications": [
{
"name": "AWS Certified Solutions Architect",
"issuer": "Amazon Web Services",
"issueDate": "2022-03-15",
"expiryDate": "2025-03-15"
}
],
"githubUrl": "https://github.com/johndoe",
"linkedin": "https://linkedin.com/in/johndoe",
"gender": "Male",
"dateOfBirth": "1995-05-15",
"nationality": "American",
"industry": "Technology",
"category": "Engineering"
}
}Get candidate details
Retrieve detailed information about a specific candidate, including their associated jobs. The response includes all candidate fields with a flattened structure (miscellaneous fields such as educations and workExperiences are extracted to the top level).
Always handle 404 errors for candidates that may have been deleted.
curl --request GET \
--url https://partner-api.taptalent.io/v1/partner/candidates/{candidateId} \
--header 'Authorization: Bearer <token>'import requests
url = "https://partner-api.taptalent.io/v1/partner/candidates/{candidateId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://partner-api.taptalent.io/v1/partner/candidates/{candidateId}', 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/candidates/{candidateId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://partner-api.taptalent.io/v1/partner/candidates/{candidateId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://partner-api.taptalent.io/v1/partner/candidates/{candidateId}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://partner-api.taptalent.io/v1/partner/candidates/{candidateId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"status": "success",
"data": {
"id": 12345,
"firstName": "John",
"lastName": "Doe",
"email": "john.doe@example.com",
"phone": "+1234567890",
"currentJobTitle": "Software Engineer",
"currentCompany": "Tech Corp",
"city": "San Francisco",
"state": "California",
"country": "United States",
"skills": [
"JavaScript",
"React",
"Node.js"
],
"resume": "https://storage.example.com/resumes/john-doe.pdf",
"coverLetter": "I am interested in...",
"majors": [
"Computer Science"
],
"summary": "Experienced software engineer with 5+ years...",
"languages": [
"English",
"Spanish"
],
"educations": [
{
"degree": "Bachelor's",
"field": "Computer Science",
"institution": "University of California",
"startDate": "2015-09-01",
"endDate": "2019-06-01"
}
],
"workExperiences": [
{
"title": "Senior Software Engineer",
"company": "Tech Corp",
"location": "San Francisco, CA",
"startDate": "2020-01-01",
"endDate": null,
"description": "Led development of..."
}
],
"projectExperiences": [
{
"name": "E-commerce Platform",
"description": "Built a full-stack e-commerce platform...",
"technologies": [
"React",
"Node.js",
"PostgreSQL"
]
}
],
"certifications": [
{
"name": "AWS Certified Solutions Architect",
"issuer": "Amazon Web Services",
"issueDate": "2022-03-15",
"expiryDate": "2025-03-15"
}
],
"githubUrl": "https://github.com/johndoe",
"linkedin": "https://linkedin.com/in/johndoe",
"gender": "Male",
"dateOfBirth": "1995-05-15",
"nationality": "American",
"industry": "Technology",
"category": "Engineering"
}
}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 candidate.
Response
Full candidate details.
Success envelope for the get-candidate-details endpoint.
Was this page helpful?
.png?fit=max&auto=format&n=lKy84_BssSCy2hcz&q=85&s=ac7c949427cc2893306f6036415f087e)