Logotrimoji
Kokeile ilmaiseksi

API Trimoji Resume - Dokumentaatio

Trimoji Resume API - Dokumentaatio

Viimeksi päivitetty: 22. toukokuuta 2024

Tämä API mahdollistaa CV:iden analysoinnin (jäsentämisen), ihanteellisten kandidaattiprofiilien (ns. "Personi") luomisen ja CV:iden pisteyttämisen näitä profiileja vastaan rekrytointiprosessin optimoimiseksi.

Konfiguraatio

Muuttujiesi konfigurointi

Ennen tämän API:n käyttöä, määritä seuraavat muuttujat:

  • base_url: API:n perusosoite (esim. https://integration.trimoji.fr/api/v1/resume).
  • partner_token: Ainutlaatuinen kumppanisi todennustunnuksesi.
  • customer_token: Asiakaskohtainen API-avaimesi. Voit hankkia sen Trimoji Panelista klikkaamalla "Kopioi API-avaimeni" -painiketta.

Turvallisuus

Autentikointi

Kaikissa API-pyynnöissä tulee olla mukana Authorization-otsake (header), joka sisältää partner_token.

Authorization: oma_partner_token_tähän

Asynkroninen

Takaisinkutsu-mekanismi (Webhook)

Useat toiminnot, kuten CV:n lataus, ovat asynkronisia. Kun käsittely on valmis, Trimoji lähettää tulokset antamaasi callback_url-osoitteeseen.

Takaisinkutsu onnistuneessa tapauksessa

Onnistuneen jäsennyksen yhteydessä callback_url-osoitteeseen lähetettävät tiedot noudattavat tätä JSON-rakennetta:


{
  "metadatas": {
    "oma_avaimesi": "muokattavissa_oleva_arvo"
  },
  "resumeData": {
    "firstname": "string",
    "lastname": "string",
    "email": "string",
    "phone": "string",
    "sex": "string ('f', 'm', tai '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_koodi)", "level": "string" }
  ],
  "hobbies": ["string"],
  "telework": "string | null ('Flexible', 'Full time', ...)"
}

Takaisinkutsu epäonnistuneessa tapauksessa

Jos CV:n käsittely epäonnistuu, lähetetään takaisinkutsu, joka sisältää virheen yksityiskohdat ja käsittelylokit.


{
  "metadatas": {
    "uid": "user123",
    "source": "webapp"
  },
  "error": {
    "code": "PROCESSING_FAILED",
    "message": "Datan poiminta annetusta tiedostosta epäonnistui virheellisen muodon vuoksi."
  },
  "logs": [
    "[2024-05-21T10:00:05.123Z] [FILE_UPLOAD] [OK] Tiedosto ladattu onnistuneesti.",
    "[2024-05-21T10:00:06.456Z] [PROCESS_STARTED] [OK] Käsittely aloitettu.",
    "[2024-05-21T10:00:15.789Z] [DATA_STRUCTURE_GENERATION] [ERROR] Tekoälymalli palautti virheellisen rakenteen."
  ]
}

CV-jäsentäminen

CV:n jäsennyksen API

1. Lataa CV

Lähetä CV-tiedosto asynkronista jäsennyksen käsittelyä varten. Tulokset toimitetaan callback_url-osoitteeseen.

POST /upload

Body-parametrit (form-data)

Avain Tyyppi Kuvaus
customer_token * Teksti Asiakas-API-avaimesi.
uploaded_file * Tiedosto CV-tiedosto. Maksimikoko: 5MB. Sallitut tiedostopäätteet: pdf, docx, png, jpg, jpeg, txt, webp, doc, rtf, pptx, otp, odp, odt.
callback_url Teksti URL tulosten vastaanottamiseen asynkronisesti.
metadatas Teksti Muokattavissa oleva JSON-merkkijono seurantaa varten (tracking).
personi_id Teksti Valinnainen Personi ID CV:n linkittämiseksi.
Vastausesimerkki

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

2. Hae CV:n tiedot

Hae jäsennetyt tiedot CV:stä käyttämällä sen resume_id.

GET /get/{customer_token}/{resume_id}

Vastausesimerkki

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

3. Hae prosessilokit

Hae tietyn CV:n käsittelylokit, hyödyllinen jäsennyongelmien vianmäärityksessä.

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

4. Poista CV

Merkitsee CV:n poistetuksi (pehmeä poisto).

DELETE /delete/{customer_token}/{resume_id}

Personi & Pisteytys

Personi & Pisteytys API

"Personi" on ihanteellinen kandidaattiprofiili, joka määritellään JSON-muodossa. CV:t voidaan pisteyttää tätä profiilia vasten.

1. Luo Personi

Luo uusi ihanteellinen kandidaattiprofiili. Voit antaa yksityiskohtaiset kriteerit manuaalisesti tai käyttää auto_weights ja auto_keywords -lipukkeita, jotta tekoälymme voi luoda ne tehtävänkuvauksen perusteella.

POST /personi/create

Body-parametrit (JSON)

Avain Tyyppi Kuvaus
customer_token * String Asiakas-API-avaimesi.
custom_id * String Ainutlaatuinen tunniste Personille omassa järjestelmässäsi.
position * String Tehtävänimike.
position_description * String Roolin yksityiskohtainen kuvaus.
company_description * String Yrityksen kuvaus.
sector * String Tehtävän toimiala.
company String Yrityksen nimi.
diploma String Vaadittu vähimmäistutkintotaso.
telework String Etätyökäytäntö. Arvot: FLEXIBLE, FULLTIME, HYBRID, NEVER, OCCASIONAL, ONDEMAND, PARTTIME, ROTATION.
education_weight Number Paino koulutuspisteille (0-100).
experience_weight Number Paino kokemuspisteille (0-100).
skills_weight Number Paino taitopisteille (0-100).
knowledge_weight Number Paino tietopisteille (0-100).
keywords_weight Number Paino avainsanapisteille (0-100).
geolocation Object Sijaintikriteerit: {"address": "string", "radius": number}. Säteily kilometreinä (oletus 10).
keywords Array Manuaaliset avainsanat: [{"word": "string", "is_mandatory": boolean}].
languages Array Kielivaatimukset: [{"id": "iso_code", "level": "A1-C2"}]. Tasot: A1, A2, B1, B2, C1, C2.
driving_licenses Array Vaaditut ajokortit, esim: ["B", "C1"].
auto_keywords Boolean Aseta true generoidaksesi avainsanat automaattisesti.
auto_weights Boolean Aseta true määritelläksesi painoarvot automaattisesti.

Huomautus painoarvoista: Jos käytät manuaalisia painoarvoja, kaikkien *_weight-kenttien summan tulee olla tasan 100. Jos mitään painoarvoja ei anneta ja auto_weights on epätosi, käytetään oletusjakaumaa.

Esimerkkipyyntöjä

Automaattinen generointi (tekoäly)


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

Manuaalinen konfiguraatio


{
    "custom_id": "SENIOR_DEV_002",
    "customer_token": "oma_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 }
}
Vastausesimerkki

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

2. Hae kaikki Personit

Hae luettelon kaikista aktiivisista Personi-profiileista asiakastilillesi. Jos usealla Personilla on sama custom_id, palautetaan vain uusin päivitetty.

GET /get/{customer_token}/personi/all

Vastausesimerkki

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

3. Hae Personin tiedot

Hae täydelliset asetukset ja tiedot tietystä Personista.

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

Vastausesimerkki

{
    "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": "Anglais", "is_mandatory": true } ],
            "skills": [ { "skill": "active_listening", "value": 72 } ]
        }
    }
}

4. Pisteytä CV Personia vastaan

Laske tietyn CV:n pistemäärä suhteessa tiettyyn Personiin. Palauttaa valinnaisesti HTML-selityksen pistemäärästä.

POST /matching

Body-parametrit (JSON)

Avain Tyyppi Kuvaus
resume_id * String Pisteytettävän CV:n tunniste.
personi_id * String tai Array Pisteytettävän Personin/Personien tunniste(t).
explainer String Palauttaa pisteytysselityksen. Arvot: 'en', 'fr', 'es'.
Vastausesimerkki (Standard)

{
    "success": true,
    "message": "Success",
    "data": {
        "score": 60,
        "personi_name": "Kehittäjä Trimojilla"
    }
}

5. Pisteytä kaikki CV:t Personia vastaan

Laske kaikkien tilisi aktiivisten CV:iden pistemäärä yhden Personin suhteessa, palauttaen lajitellun luettelon parhaista vastaavuuksista.

POST /matchingAll

Body-parametrit (JSON)

Avain Tyyppi Kuvaus
resume_id * String Pisteytettävän CV:n tunniste.
customer_token * String Asiakas-API-avaimesi.
limit Integer Tulosten enimmäismäärä (oletus 100).
Vastausesimerkki

{
    "success": true,
    "message": "Success",
    "data": [
        {
            "personi_id": "839d2953...",
            "personi_name": "SENIOR HR BUSINESS PARTNER...",
            "score": 100
        }
    ]
}

6. Pisteytä kaikki CV:t yhden Personin vastaan

Laske kaikkien tilisi aktiivisten CV:iden pistemäärä yhtä Personia vastaan.

POST /matchingAllResumes

Body-parametrit (JSON)

Avain Tyyppi Kuvaus
customer_token * String Asiakas-API-avaimesi.
personi_id * String Pisteytettävän Personin tunniste.
limit Integer Pisteytettävien CV:iden enimmäismäärä.
Vastausesimerkki

{
    "success": true,
    "message": "Success",
    "data": [
        {
            "resume_id": "ac4d685e-c8e4-474d-a92a-16758009fafe",
            "score": 100
        },
        {
            "resume_id": "602d7fc9-2b85-4064-9ae6-ad5be08d5bcb",
            "score": 95
        }
    ]
}

7. Poista Personi

Merkitsee Personin poistetuksi (pehmeä poisto).

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

Top