Skip to main content
POST
/
v1
/
resume
Create Resume
curl --request POST \
  --url https://api.mokaru.ai/v1/resume \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "<string>",
  "jobTitle": "<string>",
  "template": "<string>",
  "isDefault": true,
  "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 Create Resume endpoint lets you create a new resume in Mokaru. A resume is a view on the user’s career profile: experiences, education, skills, certificates, projects, awards, publications and interests come from the profile and are filtered per-CV via hiddenItems. Use this endpoint for the CV-level shell (name, template, design) and to hide profile items on the CV. Common use cases:
  • AI agent resume creation - create a tailored resume for a specific job by hiding profile items that aren’t relevant.
  • Bulk resume generation - create multiple resume variants with different hiddenItems selections.
  • Set defaults - create the user’s first resume from profile data.
Reference-based model: sections (experiences, education, skills, certificates, projects, awards, publications, interests, customSections) are read from the user’s profile, not from cvData. Arrays under these keys in cvData are silently dropped to prevent the resume thumbnail from drifting from what the builder shows. To edit the underlying items, use the dedicated profile endpoints (e.g. POST /v1/experience). To hide items on a specific CV, use hiddenItems.
Scope required: resume:write | Rate limit: 10 requests/min

Request

POST /v1/resume

Body Parameters

name
string
required
Resume name (max 200 characters)
jobTitle
string
CV-level job title shown in the header (max 150 chars). Overrides the profile job title for this CV. Pass null to clear and fall back to the profile value.
template
string
default:"classic"
Template ID (e.g. “classic”, “modern”, “minimal”)
isDefault
boolean
default:"false"
Set as the default resume (unsets any existing default)
cvData
object
CV-level overrides for personal info and summary. Section arrays (experiences, education, skills, certificates, projects, awards, publications, interests, customSections) are reference-based and silently ignored - use the profile endpoints to manage them, and hiddenItems to hide them per-CV.
hiddenItems
object
Per-section blacklist of profile item IDs to hide on this CV. Items not listed are visible. Keys: experiences, education, skills, certificates, projects, awards, publications, interests, or customSection:<definitionId>. Each value is an array of profile item IDs.
personalOverrides
object
Per-CV personal-info overrides. Provided keys (firstName, lastName, email, phone, address, jobTitle, seniority, summary, website, linkedin, portfolio, birthDate, driverLicense, profilePhoto) replace the profile value for this CV only. Pass null for a key to clear that override.
itemOrder
object
Per-section ordering map. Keys are section names (experiences, education, skills, certificates, projects, awards, publications, interests, skillCategories); values are arrays of profile item IDs in the desired order. Items not listed fall back to the default profile order.
selectedSummaryId
string
ID of the profile summary to render on this CV (from GET /v1/summaries). Set to null to render no summary.
designSettings
object
Visual styling: colors, fonts, spacing, margins
optionalFields
object
Show/hide toggles for optional fields like phone, address, photo
sectionOrder
array
Order of resume sections (e.g. [“summary”, “experiences”, “education”, “skills”])

Example

Create a resume that hides two of the user’s profile experiences and one project:
curl -X POST "https://api.mokaru.ai/v1/resume" \
  -H "Authorization: Bearer mk_your_key" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Backend Engineer Resume",
    "template": "classic",
    "isDefault": false,
    "cvData": {
      "jobTitle": "Backend Engineer"
    },
    "hiddenItems": {
      "experiences": ["clx_exp_oldjob1", "clx_exp_oldjob2"],
      "projects": ["clx_proj_sidegig"]
    }
  }'

Response

success
boolean
Whether the resume was created
id
string
The new resume’s unique ID
{
  "success": true,
  "id": "clx1234..."
}