Hiresweep describes a resume’s data with a public JSON Schema. The same shape is used by Download JSON, by Hiresweep (JSON) imports, and by the resume data in the API, the Patch API and the MCP server. The endpoint needs no sign-in. It returns the schema as application/schema+json, generated from the same definitions the app validates against, so it always matches the current version of Hiresweep. It follows JSON Schema draft 2020-12.

What it covers

  • Content: the picture, basic details, the summary, twelve built-in sections and any custom sections.
  • Design: the template, page layout, page settings, colors, level style, typography and Custom Styles rules (styleRules).
  • Notes: your private notes (metadata.notes).
  • Descriptions: every field has a description explaining what it holds and its format.
Text fields that come from the rich-text editor, such as summary.content and each item’s description, are HTML strings. Colors are rgba(r, g, b, a) strings.
The schema has no version field, and a Hiresweep JSON export doesn’t include one. Validate against the live endpoint to check a file against the current shape.

Top-level structure

All six keys are required.

Sections

Every built-in section has the same outer shape. The fields inside items depend on the section, for example company, position, period and roles in experience.
An empty title prints the default heading in the resume’s language (metadata.page.locale). columns is 1 to 6. A custom section adds an id and a type, one of summary, profiles, experience, education, projects, skills, languages, interests, awards, certifications, publications, volunteer, references or cover-letter. Its items use the item shape of that type.

Metadata

Excerpt

This excerpt of metadata.properties is copied from the live schema. Template ids are internal names; the gallery shows them as Compass (slate), Beacon (azurill), Bastion (bronzor), Haven (chikorita), Summit (ditgar), Atlas (ditto), Meridian (gengar), Cardinal (glalie), Cove (kakuna), Vantage (lapras), Grove (leafish), Tide (meowth), Ridge (onyx), Drift (pikachu), Vista (rhyhorn) and Crest (scizor).
schema.json (excerpt)
For the full schema, fetch the endpoint:

Validate a file

Use a validator that supports draft 2020-12. With Ajv, import the 2020 build; the default ajv export only knows draft-07 and can’t compile this schema.
Nested objects don’t allow extra keys (additionalProperties: false), so a typo in a field name fails validation. The top level allows extra keys.

Editor autocompletion

The top level accepts extra keys, so you can add $schema to a resume file to get autocompletion and validation in editors such as VS Code:
The editor then flags missing, misspelled or out-of-range fields as you type. Because the top level allows extra keys, a file with $schema still imports.

Using the schema elsewhere

  • Edit a JSON export in another tool or with an AI assistant, then import it as Hiresweep (JSON). See Importing resumes.
  • Generate or check resume data before sending it to the API.
  • Read Hiresweep exports in your own tools without parsing a PDF.
Hiresweep JSON is a different format from the JSON Resume standard. Hiresweep imports JSON Resume files too, as the JSON Resume type.