Inhalt
v1 · BetaPartner-API
Candidate Intelligence API-Integration
Mehr Sicherheit für Recruiter vor dem Interview
Führen Sie Candidate Intelligence-Berichte direkt in Ihrem ATS aus, um Kandidateninformationen zu prüfen, unerwartete Signale aufzudecken und Interviewfragen in Sekunden zu generieren.
API-Zugang anfordernIdeal für
Applicant Tracking Systems (ATS)
Recruiting-CRMs
Jobbörsen
Interne Talentplattformen
Executive-Search-Unternehmen
HR-Tech-Anbieter
Partnervorteile
Warum Candidate Intelligence integrieren?
Bieten Sie Ihren Kunden zusätzlichen Kontext vor Interviews und schaffen Sie gleichzeitig neuen Mehrwert in Ihrer Plattform.
Recruiter-Engagement steigern
Halten Sie Recruiter in Ihrem ATS, indem Sie Kandidatenverifizierung, Interviewvorbereitung und zusätzliche Hiring-Insights direkt in den Profilen bereitstellen.
Neue Einnahmequelle schaffen
Bieten Sie Candidate Intelligence-Berichte Ihren Kunden an und erzielen Sie wiederkehrende Einnahmen über das Partnerprogramm.
Ihre Plattform differenzieren
Heben Sie sich von konkurrierenden ATS- und Recruiting-Lösungen mit integrierten Candidate Intelligence-Funktionen ab.
Keine zusätzliche Recherche nötig
Helfen Sie Recruitern, relevante Informationen über den Lebenslauf hinaus zu finden, ohne ihren Workflow zu verlassen.
Einstellungsqualität verbessern
Unterstützen Sie Recruiter und Hiring Manager mit zusätzlichem Kontext über den Lebenslauf hinaus, verifizierten Erkenntnissen, potenziellen Risiken und Punkten zur Validierung.
Schnelle Integration
Die typische Implementierung erfordert nur wenige API-Endpunkte und kann in weniger als einem Tag abgeschlossen werden.
Integrationsablauf
Genehmigung erhalten und API-Schlüssel bekommen
Fordern Sie Zugang bei TieTalent an. Nach der Freigabe erhalten Sie einen API-Schlüssel (Präfix ats_) für Ihre Integration.
Schaltfläche in Kandidatenprofilen hinzufügen
Fügen Sie eine Schaltfläche „Candidate Intelligence-Bericht starten“ in Kandidatenprofilen hinzu. Beim Klick wechselt sie zu „Bericht wird erstellt...“ während der Generierung. Sobald der Bericht fertig ist, öffnet er sich automatisch und die Schaltfläche wird zu „✕ Bericht schließen“. Nach dem Schließen wechselt sie zu „Intelligence-Bericht ansehen“, um einen bereits erstellten Bericht erneut zu öffnen.
TieTalent-API beim Klick aufrufen
POST an /api/v1/analyses mit Kandidat, Client (Recruiter) und Sprache. Verwenden Sie Ihre eigenen externen IDs für client.id und candidate.id.
TieTalent generiert den Bericht
Die Analyse läuft im Hintergrund. Rufen Sie GET /api/v1/analyses/'{'id'}' mit der zurückgegebenen ID ab — warten Sie mindestens 10 Sekunden zwischen Anfragen, solange der Status queued oder processing ist (siehe Retry-After-Header). Rufen Sie DELETE auf demselben Pfad auf, um abzubrechen, wenn der Recruiter das Profil verlässt.
Bericht im Kandidatenprofil anzeigen
Rendern Sie das Bericht-JSON in Ihrer Oberfläche (siehe Referenz des Berichtsobjekts) oder öffnen Sie den vollständigen gehosteten Bericht über den signierten Link in metadata.pdf_download_url — die gehostete Ansicht bietet auch den PDF-Export.
Leistung und Latenz
Candidate Intelligence ist darauf ausgelegt, Recruitern ein reaktionsschnelles Erlebnis direkt in ihren Workflows zu bieten.
Aktion
Typische Antwortzeit
Vorhandener Bericht gefunden
< 1 Sekunde
Neue Berichtserstellung
30–60 Sekunden
Logik zur Berichtswiederverwendung
Berichte werden eindeutig über Plattform + Unternehmen + Kandidat identifiziert.
Der Cache gilt pro Recruiter: Ihr API-Schlüssel identifiziert die Partnerintegration, client.id identifiziert den Recruiter (Benutzer) in Ihrer Plattform. Unterschiedliche client.id-Werte teilen keinen Cache, auch nicht unter demselben API-Schlüssel.
Cache-Schlüsselfelder
candidate.idIhre externe Kandidaten-IDcandidate.first_name + candidate.last_nameKandidatenname (normalisiert)candidate.companyAktuelles Unternehmen (normalisiert)candidate.locationStandort (normalisiert)candidate.roleRolle oder Jobtitel (normalisiert)Nicht Teil des Cache-Schlüssels
candidate.cvOptionaler CV-Text — nur bei frischen Läufen verwendet. Eine alleinige CV-Änderung invalidiert den Cache nicht.languageAngeforderte Berichtssprache. Verwenden Sie force_refresh: true, wenn Sie einen Bericht in einer anderen Sprache benötigen.Zwischengespeicherte Berichte werden bis zu 6 Monate wiederverwendet. Ältere abgeschlossene Analysen werden nicht aus dem Cache zurückgegeben.
Aktualisierung erzwingen
Setzen Sie force_refresh: true bei POST /api/v1/analyses, um die Cache-Suche zu überspringen und die vollständige Analyse-Pipeline auszuführen — Anreicherung, Live-Signale und LLM-Berichtserstellung.
Lassen Sie force_refresh weg oder setzen Sie es auf false, um Cache-Wiederverwendung zuzulassen (Standard).
Wann force_refresh: true setzen
Der Recruiter fordert ausdrücklich aktualisierte oder erneuerte Intelligence an
Nur der CV-Text hat sich geändert, die Profilfelder blieben gleich
Sie benötigen einen Bericht in einer anderen Sprache als ein vorheriger Cache-Treffer
Sie möchten Live-Signale und Anreicherung unabhängig vom Cache erneut ausführen
Anfrage für frische Analyse
{
"language": "en",
"client": {
"id": "client_company_123",
"first_name": "Jane",
"last_name": "Smith",
"company": "Acme Recruiting"
},
"candidate": {
"id": "candidate_456",
"first_name": "John",
"last_name": "Doe",
"company": "Example Company",
"location": "London, UK",
"role": "Software Engineer"
},
"force_refresh": true
}Authentifizierung
HTTP-Header
X-API-Key: ats_your_api_key_here Content-Type: application/json
Analyse erstellen
Optionale Body-Felder: candidate.cv (Klartext-CV, nur bei frischen Läufen) und force_refresh (Boolean, Standard false — siehe Aktualisierung erzwingen).
{
"language": "en",
"client": {
"id": "client_company_123",
"first_name": "Jane",
"last_name": "Smith",
"company": "Acme Recruiting"
},
"candidate": {
"id": "candidate_456",
"first_name": "John",
"last_name": "Doe",
"company": "Example Company",
"location": "London, UK",
"role": "Software Engineer",
"cv": "Optional plain-text CV content…"
},
"force_refresh": false
}force_refresh (optional, Standard false) überspringt die Berichtswiederverwendung und erstellt immer einen neuen Bericht — der neue Bericht wird abgerechnet. Lassen Sie das Feld weg, sofern der Recruiter nicht ausdrücklich eine Aktualisierung anfordert.
202 Accepted
Der Location-Header verweist auf GET /api/v1/analyses/'{'id'}'. Retry-After: 10 gibt an, wann das nächste Polling erfolgen soll.
{
"id": "cmqp23kgg00067gk0rh6jol5o",
"status": "queued",
"candidate_id": "candidate_456",
"created_at": "2026-06-29T12:00:00.000Z"
}Polling und progressive Ergebnisse
Nach einem POST mit 202 Accepted rufen Sie GET /api/v1/analyses/'{'id'}' mit demselben X-API-Key-Header ab. Verwenden Sie die ID aus der Erstellungsantwort.
Solange der Status queued oder processing ist, enthält jede GET-Antwort Retry-After: 10 — warten Sie mindestens 10 Sekunden vor der nächsten Anfrage.
Beenden Sie das Polling, wenn der Status completed, failed oder canceled ist.
{
"id": "cmqp23kgg00067gk0rh6jol5o",
"status": "processing",
"candidate_id": "candidate_456",
"stage": "enrichment",
"created_at": "2026-06-29T12:00:00.000Z",
"updated_at": "2026-06-29T12:00:20.000Z",
"quick_signal": {
"level": "Green",
"reason": "Identity supported by multiple matching signals.",
"identityConfidence": "Medium"
},
"signals": [
{
"statement": "Senior engineer at Example Company since 2021.",
"sourceType": "web",
"sourceUrl": "https://example.com/…",
"reliability": "High"
}
],
"report": null,
"metadata": null,
"error": null
}Felder, die während der Verarbeitung befüllt werden
quick_signalVorläufiges Identitätssignal (Green, Orange oder Red) mit kurzer Begründung — verfügbar, sobald die Anreicherung beginnt.signalsLive-Web-Signale, die während der Anreicherung gefunden werden. Das Array wächst, sobald externe Suchen abgeschlossen sind.stageAktuelle Pipeline-Phase: identity → enrichment → report → done.reportVollständiger Candidate Intelligence-Bericht — nur befüllt, wenn der Status completed ist.metadataBerichtsmetadaten — nur befüllt, wenn der Status completed ist. Enthält den signierten Link zum gehosteten Bericht (pdf_download_url) sowie die Wiederverwendungsfelder cached / cached_at.Statuswerte
queuedAngenommen und wartet auf den Start.processingIn Bearbeitung — abfragen für Updates zu quick_signal, signals und stage.completedBericht bereit — report und metadata sind befüllt.failedAnalyse fehlgeschlagen — error ist befüllt.canceledAnalyse wurde über DELETE /api/v1/analyses/'{'id'}' abgebrochen oder hat einen terminalen Abbruchstatus erreicht.Analyse abbrechen
DELETE /api/v1/analyses/'{'id'}' stoppt eine wartende oder laufende Analyse, wenn ein Recruiter das Kandidatenprofil verlässt oder einen laufenden Bericht verwirft. Verwenden Sie denselben X-API-Key-Header wie bei POST und GET.
Ist die Analyse bereits completed, failed oder canceled, gibt der Endpunkt die aktuelle Ressource unverändert zurück — keine zusätzlichen Kosten oder Nebenwirkungen.
// Kein Request-Body — nur X-API-Key-Header
200 OK
Gibt die Analyse-Ressource mit Status canceled zurück. Teilweise quick_signal oder signals können vorhanden sein, wenn der Abbruch mitten in der Pipeline erfolgte. Beenden Sie das Polling, sobald der Status canceled ist.
{
"id": "cmqp23kgg00067gk0rh6jol5o",
"status": "canceled",
"candidate_id": "candidate_456",
"stage": "enrichment",
"created_at": "2026-06-29T12:00:00.000Z",
"updated_at": "2026-06-29T12:00:25.000Z",
"quick_signal": null,
"signals": [],
"report": null,
"metadata": null,
"error": null
}Abgeschlossene Analyse
Wird zurückgegeben, wenn der Status completed ist. Der Bericht unten ist gekürzt — die vollständige Feldliste finden Sie in der Referenz des Berichtsobjekts.
Frischer Bericht (metadata.cached: false)
{
"id": "clx_analysis_id",
"status": "completed",
"candidate_id": "candidate_456",
"stage": "done",
"created_at": "2026-06-29T12:00:00.000Z",
"updated_at": "2026-06-29T12:00:45.000Z",
"quick_signal": {
"level": "Green",
"reason": "Identity supported by multiple matching signals.",
"identityConfidence": "Medium"
},
"signals": [
{
"statement": "…",
"sourceType": "web",
"sourceUrl": "https://example.com/…",
"reliability": "High"
}
],
"report": {
"candidateName": "John Doe",
"profileHeadline": "Software Engineer",
"profileCompany": "Example Company",
"profileLocation": "London, UK",
"identity": {
"status": "Confirmed",
"confidence": "High",
"confidenceReason": "…",
"risk": { "level": "Low", "reason": "…" }
},
"sourcesCheckedCount": 24,
"recommendation": {
"decision": "Go with validation",
"confidence": "Medium",
"confidenceNote": "Identity verified · signals consistent",
"reason": "…",
"evidence": ["…"],
"nextStepPills": [
{ "variant": "confirmed", "label": "Role and tenure verified" },
{ "variant": "validate", "label": "Validate team leadership scope" }
]
},
"summary": "…",
"externalProfileSummary": "…",
"externalProfileTags": [
{ "kind": "catalog", "id": "linkedin_verified" },
{ "kind": "catalog", "id": "signals_highly_consistent" },
{ "kind": "custom", "group": "source_presence", "label": "Open-source contributor" }
],
"strengths": ["…"],
"signals": {
"verified": [
{
"statement": "…",
"sourceType": "web",
"sourceReference": "…",
"reliability": "High"
}
],
"weak": [],
"unverifiedClaims": [],
"noSignificantExternalData": false
},
"highImpactFindings": [
{
"type": "Career",
"title": "…",
"summary": "…",
"evidenceBadge": "validate",
"confidence": "Medium",
"polarity": "Concern"
}
],
"topDecisionDrivers": ["…"],
"expectationGap": {
"expectedSignals": ["…"],
"missingOrWeaker": ["…"],
"assessment": "…"
},
"impactAssessment": {
"summary": "…",
"riskLevel": "Low",
"overallRiskLabel": "Low validation needed",
"implications": ["…"]
},
"whatToValidate": ["…"],
"nextStep": {
"action": "…",
"focusAreas": ["…"],
"reasoning": "…"
},
"alertLevel": "Green",
"externalDataConfidence": "Medium"
},
"metadata": {
"report_id": "clx_analysis_id",
"candidate_id": "candidate_456",
"language": "en",
"generated_at": "2026-06-29T12:00:45.000Z",
"pdf_download_url": "https://intelligence.tietalent.com/api/ats/reports/{id}/pdf?sig=…",
"cached": false,
"cached_at": null
},
"error": null
}Zwischengespeicherter Bericht (metadata.cached: true)
{
"id": "clx_new_analysis_id",
"status": "completed",
"candidate_id": "candidate_456",
"stage": "done",
"created_at": "2026-07-15T12:00:00.000Z",
"updated_at": "2026-07-15T12:00:00.500Z",
"quick_signal": { "…": "…" },
"signals": [{ "…": "…" }],
"report": { "…": "…" },
"metadata": {
"report_id": "clx_new_analysis_id",
"candidate_id": "candidate_456",
"language": "en",
"generated_at": "2026-07-15T12:00:00.500Z",
"pdf_download_url": "https://intelligence.tietalent.com/api/ats/reports/{id}/pdf?sig=…",
"cached": true,
"cached_at": "2026-07-15T12:00:00.500Z"
},
"error": null
}Das metadata-Objekt
metadata.pdf_download_url ist ein signierter Link, der den vollständigen gehosteten TieTalent-Bericht öffnet (dasselbe Berichtsdesign wie in der Web-App); der PDF-Export kann aus dieser Ansicht heruntergeladen werden. Behandeln Sie den Link vertraulich — jeder, der ihn besitzt, kann den Bericht öffnen.
metadata.cached ist true, wenn ein vorhandener Bericht wiederverwendet wurde, anstatt einen neuen zu erstellen (siehe Logik zur Berichtswiederverwendung); cached_at enthält dann den Zeitstempel der Wiederverwendung, andernfalls ist es null.
Verdicts und Kompatibilität
report.recommendation.decision ist das zentrale Urteil des Berichts. Es ist immer einer der vier folgenden Werte.
recommendation.decision — mögliche Werte
"Proceed with confidence" "Go with validation" "Requires Validation (Signals flagged)" "Requires Validation (Insufficient data)"
Ordnen Sie jedes Verdict einem von drei UI-Zuständen zu:
Empfohlenes Mapping (JavaScript)
function toUiState(decision) {
switch (decision) {
case "Proceed with confidence":
return "proceed";
case "Go with validation":
return "validation";
case "Requires Validation (Signals flagged)":
case "Requires Validation (Insufficient data)":
return "requires_validation";
default:
return "requires_validation";
}
}Referenz des Berichtsobjekts
report wird nur befüllt, wenn der Status completed ist. Feldnamen sind in camelCase. Die Struktur entspricht dem aktuellen Berichtsdesign, das auf allen TieTalent Intelligence-Oberflächen verwendet wird (Web-App, Extension und gehosteter Bericht).
Kernfelder (immer vorhanden)
candidateNameName des Kandidaten, wie von der Analyse aufgelöst.identityIdentitätsauflösung — status (Confirmed, Likely, Ambiguous, Unknown), confidence, confidenceReason und risk (level, reason).recommendationDas Verdict — decision (siehe Verdicts und Kompatibilität), confidence, reason, evidence[], confidenceNote (kurze Evidenz-Überschrift) und nextStepPills[] (Evidenzstatus-Pills mit variant und label).summaryZusammenfassender Absatz (Executive Summary).externalProfileSummaryNarrative Zusammenfassung des externen Profils des Kandidaten.strengthsZentrale Stärken (Array von Strings).signalsSignalübersicht — verified[], weak[], unverifiedClaims[] und noSignificantExternalData.highImpactFindingsEntscheidungskritische Erkenntnisse. Jede hat type, summary und confidence sowie optional title, evidenceBadge, polarity und sourceReference.topDecisionDriversDie Signale mit dem größten Einfluss auf das Verdict (Array von Strings).expectationGapErwartete vs. gefundene Signale — expectedSignals[], missingOrWeaker[] und assessment.impactAssessmentHiring-Impact — summary, riskLevel und implications[] sowie optional overallRiskLabel, bestSuited[] und considerCarefully[].whatToValidateKonkrete Punkte zur Validierung im Interview (Array von Strings).nextStepEmpfohlener nächster Schritt — action, focusAreas[] und reasoning.alertLevelGesamtwarnstufe — Green, Yellow, Orange oder Red.externalDataConfidenceVertrauen in die externen Daten des Berichts — High, Medium oder Low.Optionale Felder
Diese Felder können fehlen. Behandeln Sie sie als nullable und ignorieren Sie Felder, die Ihre Oberfläche nicht nutzt.
profileHeadline / profileCompany / profileLocationKopfzeilen für die Anzeige — Rolle/Titel, aktuelles Unternehmen und Standort.sourcesCheckedCountAnzahl der für den Bericht konsultierten externen Suchergebnisse (von der Pipeline gesetzt).externalProfileTagsTags zum externen Profil des Kandidaten — siehe Tags unten.bestFitContext / bestFitTagsBest-Fit-Beschreibung und Tags — siehe Tags unten.surprisingInsightsInsight-Karten (title, text, source, notOnCV?).keyTakeawaysListen standsOut[] und needsChecking[] mit (label, detail)-Einträgen.claimsVsSignalsPrüfung einzelner Aussagen — (claim, confirmed, assessment).interviewQuestionsVorgeschlagene Interviewfragen — (question, hint).technicalIntelligenceTechnisches Profil für technische Rollen — profileFound, signalStrength, observations[], repositories[], risks[] und impactAssessment.sensitiveUnverifiedSignalsSensible Signale mit Attributionsstatus. Mit Sorgfalt behandeln und niemals als gesicherte Tatsache darstellen.Feedback zu einem Bericht senden
POST /api/v1/analyses/'{'id'}'/feedback ermöglicht es Ihren Recruitern, einen abgeschlossenen Bericht zu bewerten — 1 bis 5 Sterne, optionale Tags und optionaler Freitext — damit TieTalent die Berichtsqualität auf Ihrer Seite der Integration nachverfolgen kann.
Der Endpunkt führt ein Upsert auf client.id plus die Bericht-id durch: Ein erneutes Senden für denselben Client und Bericht überschreibt die vorherige Bewertung, Tags und den Text — es gibt keinen Versionsverlauf.
{
"client": {
"id": "client_company_123",
"first_name": "Jane",
"last_name": "Smith",
"company": "Acme Recruiting"
},
"rating": 4,
"feedback": "Helped me shortlist quickly, would have liked more sourcing links.",
"tags": ["saved_me_time", "good_signal_quality"]
}Anfragefelder
clientErforderlich. Dasselbe client-Objekt wie bei POST /api/v1/analyses — identifiziert, welcher Ihrer Nutzer das Feedback gibt.ratingErforderlich. Ganzzahl von 1 bis 5.feedbackOptional. Freitext-Kommentar, bis zu 2000 Zeichen.tagsOptional. Bis zu 5 kanonische Tag-Ids aus dem Katalog unten — ungültige Werte oder eine Bewertung außerhalb des Bereichs liefern einen 4xx-Fehler mit klarer Meldung.Feedback-Tag-Katalog
Tags sind nach Bewertungsband gruppiert und ändern sich je nach gesendeter Bewertung — gestalten Sie Ihre eigene Oberfläche, senden Sie aber nur die kanonischen Ids, damit Feedback sprachübergreifend analysierbar bleibt.
Kanonische Tag-Ids nach Bewertungsband
// 1-2 stars missing_info · something_was_wrong · signals_felt_weak too_generic · hard_to_trust // 3 stars useful_but_missing_detail · right_idea_wrong_emphasis some_signals_felt_off · wanted_more_sources // 4-5 stars saved_me_time · helped_me_decide · good_signal_quality easy_to_read · trustworthy
200 OK
Gibt das gespeicherte Feedback zurück und spiegelt die aktuelle Bewertung, Tags und den Text für diesen Client und Bericht wider.
{
"report_id": "cmqp23kgg00067gk0rh6jol5o",
"rating": 4,
"feedback": "Helped me shortlist quickly, would have liked more sourcing links.",
"tags": ["saved_me_time", "good_signal_quality"],
"updated_at": "2026-07-21T12:00:00.000Z"
}Empfohlene Partner-Oberfläche
Schaltfläche in Kandidatenprofilen hinzufügen
Fügen Sie eine Schaltfläche „Candidate Intelligence-Bericht starten“ in Kandidatenprofilen hinzu. Beim Klick wechselt sie zu „Bericht wird erstellt...“ während der Generierung. Sobald der Bericht fertig ist, öffnet er sich automatisch und die Schaltfläche wird zu „✕ Bericht schließen“. Nach dem Schließen wechselt sie zu „Intelligence-Bericht ansehen“, um einen bereits gespeicherten Bericht erneut zu öffnen — ohne erneut POST aufzurufen.
Kein Bericht vorhanden
Bericht wird erstellt
Bericht ist geöffnet
Bericht geschlossen / vorhanden
Datenschutz und Sicherheit
⚖️ Hinweis zur KI-Konformität
Candidate Intelligence unterstützt die Entscheidungsfindung von Recruitern, ersetzt sie aber nicht. Einstellungsentscheidungen bleiben in der Verantwortung des Arbeitgebers und sollten stets eine angemessene menschliche Prüfung und Aufsicht einschließen.
Partnerprogramm
Candidate Intelligence integrieren
Fordern Sie Zugang an und wir aktivieren Ihre Partner-API-Zugangsdaten. Die Integration dauert in der Regel weniger als einen Tag.