Logotrimoji
Kostenlos testen

API Hardskills

Trimoji Resume API Dokumentation

Letzte Aktualisierung: 22. Mai 2024

Diese API ermöglicht Ihnen das Analysieren (Parsen) von Lebensläufen, das Erstellen von idealen Kandidatenprofilen (genannt "Personi") und das Bewerten von Lebensläufen anhand dieser Profile, um Ihren Recruiting-Prozess zu optimieren.

Konfiguration

Konfigurieren Sie Ihre Variablen

Bevor Sie diese API verwenden, konfigurieren Sie bitte die folgenden Variablen:

  • base_url: Die Basis-URL der API (z.B. https://integration.trimoji.fr/api/v1/resume).
  • partner_token: Ihr eindeutiger Partner-Authentifizierungsschlüssel.
  • customer_token: Ihr kundenspezifischer API-Schlüssel. Sie können ihn im Trimoji Panel erhalten, indem Sie auf die Schaltfläche "meinen API-Schlüssel kopieren" klicken.

Sicherheit

Authentifizierung

Alle API-Anfragen müssen einen Authorization-Header enthalten, der Ihren partner_token enthält.

Authorization: Ihr_partner_token_hier

Asynchron

Callback-Mechanismus (Webhook)

Mehrere Operationen, wie das Hochladen von Lebensläufen, sind asynchron. Wenn die Verarbeitung abgeschlossen ist, sendet Trimoji die Ergebnisse an die von Ihnen angegebene callback_url.

Callback bei Erfolg

Die an Ihre callback_url gesendeten Daten bei erfolgreichem Parsen folgen dieser JSON-Struktur:


{
  "metadatas": {
    "ihr_schluessel": "benutzerdefinierter_wert"
  },
  "resumeData": {
    "firstname": "string",
    "lastname": "string",
    "email": "string",
    "phone": "string",
    "sex": "string ('f', 'm', oder 'other')",
    "age": "integer | null",
    "introduction": "string | null",
    "address": "string | null",
    "lat": "number | null",
    "lon": "number | null",
    "processed_at": "datetime_string"
  },
  "experiences": [
    {
      "poste": "string",
      "company": "string",
      "size": "string | null ('AE', 'MIE', 'TPE', ...)",
      "start_date": "integer | null",
      "end_date": "integer | null",
      "duration": "integer | null",
      "tasks": ["string"]
    }
  ],
  "diplomas": [
    { "name": "string", "date": "integer | null" }
  ],
  "licenses": [
    { "name": "string", "desc": "string" }
  ],
  "languages": [
    { "name": "string (iso_code)", "level": "string" }
  ],
  "hobbies": ["string"],
  "telework": "string | null ('Flexible', 'Full time', ...)"
}

Callback bei Fehler

Wenn die Verarbeitung des Lebenslaufs fehlschlt, wird ein Callback gesendet, der die Fehlerdetails und die Verarbeitungsprotokolle (Logs) enthlt.


{
  "metadatas": {
    "uid": "user123",
    "source": "webapp"
  },
  "error": {
    "code": "PROCESSING_FAILED",
    "message": "Fehler beim Extrahieren der Daten aus der bereitgestellten Datei aufgrund eines ungltigen Formats."
  },
  "logs": [
    "[2024-05-21T10:00:05.123Z] [FILE_UPLOAD] [OK] Datei erfolgreich hochgeladen.",
    "[2024-05-21T10:00:06.456Z] [PROCESS_STARTED] [OK] Verarbeitung gestartet.",
    "[2024-05-21T10:00:15.789Z] [DATA_STRUCTURE_GENERATION] [ERROR] KI-Modell gab eine ungltige Struktur zurck."
  ]
}

CV Parsing

API zum Parsen von Lebensläufen

1. Lebenslauf hochladen

Senden Sie eine Lebenslaufdatei fr das asynchrone Parsen. Die Ergebnisse werden an die callback_url gesendet.

POST /upload

Body-Parameter (form-data)

Schlüssel Typ Beschreibung
customer_token * Text Ihr Kunden-API-Schlüssel.
uploaded_file * Datei Lebenslaufdatei. Maximale Gre: 5 MB. Zulssige Erweiterungen: pdf, docx, png, jpg, jpeg, txt, webp, doc, rtf, pptx, otp, odp, odt.
callback_url Text URL zum Empfangen asynchroner Ergebnisse.
metadatas Text Benutzerdefinierte JSON-Zeichenfolge zur Nachverfolgung (Tracking).
personi_id Text ID eines optionalen Personi zur Verknpfung des Lebenslaufs.
Beispielantwort

{
    "success": true,
    "message": "Success",
    "data": {
        "resume_id": "6ff7d7fe-8e53-4ddf-b68a-f9d4658f5bc8"
    }
}

2. Lebenslaufinformationen abrufen

Ruft die geparsten Informationen eines Lebenslaufs anhand seiner resume_id ab.

GET /get/{customer_token}/{resume_id}

Beispielantwort

{
    "success": true,
    "message": "Success",
    "data": {
        "resumeData": {
            "firstname": "Lou",
            "lastname": "Pagès",
            "email": "[email protected]",
            "age": 22
        },
        "experiences": [ ... ],
        "diplomas": [ ... ]
    }
}

3. Prozessprotokolle des Lebenslaufs abrufen

Ruft die Verarbeitungsprotokolle fr einen bestimmten Lebenslauf ab, ntzlich zur Fehlerbehebung bei Parsing-Problemen.

GET /get/{customer_token}/{resume_id}/logs

4. Lebenslauf löschen

Markiert einen Lebenslauf als geloscht (logische Lschung / Soft Delete).

DELETE /delete/{customer_token}/{resume_id}

Personi & Scoring

API Personi & Scoring

Ein "Personi" ist ein ideales Kandidatenprofil, das im JSON-Format definiert wird und mit dem Lebensläufe bewertet werden können.

1. Personi erstellen

Erstellt ein neues ideales Kandidatenprofil. Sie knnen detaillierte Kriterien manuell angeben oder die Flags auto_weights und auto_keywords verwenden, damit unsere KI diese basierend auf der Stellenbeschreibung generiert.

POST /personi/create

Body-Parameter (JSON)

Schlüssel Typ Beschreibung
customer_token * String Ihr Kunden-API-Schlüssel.
custom_id * String Eine eindeutige ID fr den Personi in Ihrem System.
position * String Die Stellenbezeichnung.
position_description * String Detaillierte Beschreibung der Rolle.
company_description * String Beschreibung des Unternehmens.
sector * String Der Sektor der Stelle.
company String Der Name des Unternehmens.
diploma String Mindesterforderlicher Bildungsabschluss.
telework String Richtlinie fr Fernarbeit. Werte: FLEXIBLE, FULLTIME, HYBRID, NEVER, OCCASIONAL, ONDEMAND, PARTTIME, ROTATION.
education_weight Number Gewichtung fr den Bildungsscore (0-100).
experience_weight Number Gewichtung fr den Erfahrungs-Score (0-100).
skills_weight Number Gewichtung fr den Kompetenz-Score (0-100).
knowledge_weight Number Gewichtung fr den Wissens-Score (0-100).
keywords_weight Number Gewichtung fr den Stichwort-Score (0-100).
geolocation Object Ortskriterien: {"address": "string", "radius": number}. Radius in km (Standard 10).
keywords Array Manuelle Stichwrter: [{"word": "string", "is_mandatory": boolean}].
languages Array Sprachanforderungen: [{"id": "iso_code", "level": "A1-C2"}]. Stufen: A1, A2, B1, B2, C1, C2.
driving_licenses Array Erforderliche Fhrerscheine, z.B. ["B", "C1"].
auto_keywords Boolean Auf true setzen, um Stichwrter automatisch zu generieren.
auto_weights Boolean Auf true setzen, um Gewichtungen automatisch festzulegen.

Hinweis zu Gewichtungen: Wenn Sie manuelle Gewichtungen verwenden, muss die Summe aller Felder *_weight genau 100 ergeben. Wenn keine Gewichtungen angegeben werden und auto_weights falsch ist, wird eine Standardverteilung verwendet.

Beispielanfragen

Automatische Generierung (KI)


{
    "custom_id": "MKT_ASSIST_001",
    "customer_token": "ihr_token",
    "position": "Junior Marketing Assistant",
    "position_description": "We are looking for...",
    "company_description": "Innovate Corp...",
    "sector": "Marketing",
    "auto_keywords": true,
    "auto_weights": true
}

Manuelle Konfiguration


{
    "custom_id": "SENIOR_DEV_002",
    "customer_token": "ihr_token",
    "position": "Senior Software Engineer",
    "position_description": "Seeking experienced...",
    "company": "Tech Solutions",
    "telework": "HYBRID",
    "education_weight": 10,
    "experience_weight": 40,
    "skills_weight": 20,
    "knowledge_weight": 10,
    "keywords_weight": 20,
    "keywords": [
        {"word": "Spring Boot", "is_mandatory": true}
    ],
    "geolocation": { "address": "Paris", "radius": 20 }
}
Beispielantwort

{
    "success": true,
    "message": "Success",
    "data": {
        "personi_id": "f8e1e2c3-6337-4644-9fbf-7e382d089e3d"
    }
}

2. Alle Personis abrufen

Ruft die Liste aller aktiven Personis fr Ihr Kundenkonto ab. Wenn mehrere Personis dieselbe custom_id teilen, wird nur das zuletzt aktualisierte zurckgegeben.

GET /get/{customer_token}/personi/all

Beispielantwort
{
    "success": true,
    "message": "Success",
    "data": [
        {
            "id": "f8e1e2c3...",
            "custom_id": "SENIOR_DEV_002",
            "name": "Senior Software Engineer Profil",
            "created_at": "2024-05-15T10:00:00.000Z"
        }
    ]
}

3. Personi-Details abrufen

Ruft die vollstndige Konfiguration und Details eines bestimmten Personi ab.

GET /get/{customer_token}/personi/details/{personi_id}

Beispielantwort
{
    "success": true,
    "message": "Success",
    "data": {
        "id": "5e0273f8-8cfd-4673-9a89-3f4c934d3391",
        "name": "Associate Product Manager | London",
        "matching_settings": {
            "weights": { "percent_experience": 44, "percent_hardskills": 19 },
            "languages": [ { "lang": "English", "is_mandatory": true } ],
            "skills": [ { "skill": "active_listening", "value": 72 } ]
        }
    }
}

4. Lebenslauf gegen einen Personi bewerten

Berechnet den Score eines bestimmten Lebenslaufs gegen einen bestimmten Personi. Gibt optional eine HTML-Erklrung des Scores zurck.

POST /matching

Body-Parameter (JSON)

Schlüssel Typ Beschreibung
resume_id * String ID des zu bewertenden Lebenslaufs.
personi_id * String oder Array ID des/der Personi(s), gegen den/die bewertet werden soll.
explainer String Gibt die Erklrung des Scores zurck. Werte: 'en', 'fr', 'es'.
Beispielantwort (Standard)
{
    "success": true,
    "message": "Success",
    "data": {
        "score": 60,
        "personi_name": "Entwickler bei Trimoji"
    }
}

5. Alle Lebensläufe gegen einen Personi bewerten

Berechnet den Score aller aktiven Lebensläufe Ihres Kontos gegen einen einzelnen Personi und gibt eine sortierte Liste der besten Treffer zurck.

POST /matchingAll

Body-Parameter (JSON)

Schlüssel Typ Beschreibung
resume_id * String ID des zu bewertenden Lebenslaufs.
customer_token * String Ihr Kunden-API-Schlüssel.
limit Integer Maximale Anzahl der Ergebnisse (Standard 100).
Beispielantwort
{
    "success": true,
    "message": "Success",
    "data": [
        {
            "personi_id": "839d2953...",
            "personi_name": "SENIOR HR BUSINESS PARTNER...",
            "score": 100
        }
    ]
}

6. Alle Lebensläufe gegen alle Personis bewerten

Berechnet den Score aller aktiven Lebensläufe Ihres Kontos gegen einen einzelnen Personi.

POST /matchingAllResumes

Body-Parameter (JSON)

Schlüssel Typ Beschreibung
customer_token * String Ihr Kunden-API-Schlüssel.
personi_id * String ID des Personi, gegen den bewertet werden soll.
limit Integer Maximale Anzahl der zu bewertenden Lebensläufe.
Beispielantwort
{
    "success": true,
    "message": "Success",
    "data": [
        {
            "resume_id": "ac4d685e-c8e4-474d-a92a-16758009fafe",
            "score": 100
        },
        {
            "resume_id": "602d7fc9-2b85-4064-9ae6-ad5be08d5bcb",
            "score": 95
        }
    ]
}

7. Personi löschen

Markiert einen Personi als geloscht (logische Lschung / Soft Delete).

DELETE /delete/{customer_token}/personi/{personi_id}

Top