Skip to main content
PATCH
/
v1
/
resume
/
{id}
Update Resume
curl --request PATCH \
  --url https://api.mokaru.ai/v1/resume/{id} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "<string>",
  "template": "<string>",
  "isDefault": true,
  "jobTitle": "<string>",
  "cvData": {},
  "hiddenItems": {},
  "personalOverrides": {},
  "itemOrder": {},
  "selectedSummaryId": "<string>",
  "designSettings": {},
  "optionalFields": {},
  "sectionOrder": [
    {}
  ]
}
'
{
  "success": true,
  "id": "<string>"
}

Documentation Index

Fetch the complete documentation index at: https://docs.mokaru.ai/llms.txt

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

Overview

The Update Resume endpoint lets you modify any aspect of a resume. Only fields you include in the request are updated - everything else stays unchanged. Common use cases:
  • AI agent resume tailoring - update jobTitle, summary or hiddenItems to match a specific job description.
  • Rename or reorganize - change the resume name, switch templates, or reorder sections.
  • Set as default - promote a resume to be the default for auto-prepare applications.
Reference-based model: experiences, education, skills, certificates, projects, awards, publications, interests and customSections are read from the user’s profile, not from cvData. Arrays under these keys in cvData are silently dropped. Use the dedicated profile endpoints (e.g. PATCH /v1/experience/:id) to edit the underlying items, and hiddenItems to hide profile items on this CV.
Scope required: resume:write | Rate limit: 20 requests/min

Request

PATCH /v1/resume/{id}

Body Parameters

All fields are optional. At least one must be provided.
name
string
Resume name (max 200 characters)
template
string
Template ID
isDefault
boolean
Set as the default resume (unsets any existing default)
jobTitle
string
CV-level job title override (max 150 chars). Pass null to clear and fall back to the profile job title.
cvData
object
CV-level overrides (personal info, summary). Replaces the stored cvData. Reference-based section arrays (experiences, education, skills, certificates, projects, awards, publications, interests, customSections) are silently dropped - use the profile endpoints + hiddenItems instead.
hiddenItems
object
Per-section blacklist of profile item IDs to hide on this CV. Replaces any existing value. Pass null to clear. Keys: experiences, education, skills, certificates, projects, awards, publications, interests, or customSection:<definitionId>.
personalOverrides
object
Per-CV personal-info overrides. Replaces any existing value. Pass null to clear all. Keys: firstName, lastName, email, phone, address, jobTitle, seniority, summary, website, linkedin, portfolio, birthDate, driverLicense, profilePhoto. Set a key to null inside the object to clear just that one.
itemOrder
object
Per-section ordering map. Replaces any existing value. Pass null to clear and fall back to profile order. Keys: experiences, education, skills, certificates, projects, awards, publications, interests, skillCategories; values are arrays of profile item IDs.
selectedSummaryId
string
Profile summary ID to show on this CV. Pass null to clear.
designSettings
object
Visual styling
optionalFields
object
Show/hide toggles
sectionOrder
array
Section order

Example

Tailor the CV for a specific role by hiding off-topic experiences and adjusting the headline:
curl -X PATCH "https://api.mokaru.ai/v1/resume/clx1234" \
  -H "Authorization: Bearer mk_your_key" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Backend Engineer - Stripe",
    "cvData": { "jobTitle": "Senior Backend Engineer" },
    "hiddenItems": {
      "experiences": ["clx_exp_internship", "clx_exp_unrelated"],
      "skills": ["clx_skill_photoshop"]
    }
  }'

Response

success
boolean
Whether the resume was updated
id
string
The resume ID
{
  "success": true,
  "id": "clx1234..."
}