Skip to main content
PUT
/
cvs
/
{id}
Update a CV
curl --request PUT \
  --url https://api-service.fribl.co/api/v1/cvs/{id} \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '
{
  "information": {
    "first_name": "John",
    "last_name": "Doe",
    "email": [
      "john@example.com"
    ],
    "phone": [
      "+31612345678"
    ],
    "linkedin": "https://linkedin.com/in/johndoe",
    "github": "https://github.com/johndoe",
    "website": "https://johndoe.com",
    "address": {
      "city": "Amsterdam",
      "country": "Netherlands"
    }
  },
  "content_language": "<string>",
  "experience": [
    {
      "title": "Senior Software Engineer",
      "activity_sector": "Technology",
      "description": "Led development of microservices architecture",
      "duration": 36,
      "start_date": "2020-01",
      "end_date": "2023-01"
    }
  ],
  "education": [
    {
      "degree": "Master of Science",
      "major": "Computer Science",
      "score": "Cum Laude",
      "institution_name": "University of Amsterdam",
      "start_date": "2015-09",
      "end_date": "2017-06"
    }
  ],
  "hard_skills": [
    {
      "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "skill": "JavaScript",
      "explanation": "Candidate demonstrates strong JavaScript proficiency"
    }
  ],
  "soft_skills": [
    {
      "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "skill": "JavaScript",
      "explanation": "Candidate demonstrates strong JavaScript proficiency"
    }
  ]
}
'
{
  "message": "Successfully updated CV with ID: 550e8400-e29b-41d4-a716-446655440000",
  "data": {
    "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "information": {
      "first_name": "John",
      "last_name": "Doe",
      "email": [
        "john@example.com"
      ],
      "phone": [
        "+31612345678"
      ],
      "linkedin": "https://linkedin.com/in/johndoe",
      "github": "https://github.com/johndoe",
      "website": "https://johndoe.com",
      "address": {
        "city": "Amsterdam",
        "country": "Netherlands"
      }
    },
    "experience": [
      {
        "title": "Senior Software Engineer",
        "activity_sector": "Technology",
        "description": "Led development of microservices architecture",
        "duration": 36,
        "start_date": "2020-01",
        "end_date": "2023-01"
      }
    ],
    "education": [
      {
        "degree": "Master of Science",
        "major": "Computer Science",
        "score": "Cum Laude",
        "institution_name": "University of Amsterdam",
        "start_date": "2015-09",
        "end_date": "2017-06"
      }
    ],
    "skill_descriptions": [
      "<string>"
    ],
    "source_language": "<string>",
    "hard_skills": [
      {
        "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "skill": "JavaScript",
        "explanation": "Candidate demonstrates strong JavaScript proficiency"
      }
    ],
    "soft_skills": [
      {
        "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "skill": "JavaScript",
        "explanation": "Candidate demonstrates strong JavaScript proficiency"
      }
    ],
    "created_at": "2024-01-01T00:00:00.000Z",
    "updated_at": "2024-01-01T00:00:00.000Z"
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.fribl.co/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

x-api-key
string
header
required

API key in UUID format. Include this header with every authenticated request.

Path Parameters

id
string<uuid>
required

Unique identifier of the CV to update.

Body

application/json

Partial (dimension-scoped) update for a CV. Submit any non-empty subset of the allowed dimensions — information, experience, education, hard_skills, soft_skills — and only those will be processed and persisted. Unspecified dimensions are left untouched. content_language is required on every patch (text or skills dimensions); it can also be supplied via the Accept-Language request header, in which case the body field can be omitted.

information
object
required

Personal and contact information extracted from a CV.

content_language
string

ISO 639-1 language code of the submitted update payload. Required on every patch unless the Accept-Language header is set — the API forwards that header automatically. Without either, the request is rejected with 400.

experience
object[]

Updated list of work experience entries.

education
object[]

Updated list of education entries.

hard_skills
object[]

Updated hard skills. Skill IDs must already exist in the canonical taxonomy.

soft_skills
object[]

Updated soft skills. Skill IDs must already exist in the canonical taxonomy.

Response

CV updated successfully. data contains the full merged CV entity (the patch applied on top of the existing record), with created_at and updated_at populated from the local task row.

message
string
required
Example:

"Successfully updated CV with ID: 550e8400-e29b-41d4-a716-446655440000"

data
object
required

A fully analyzed CV with extracted structured data.