PUT, you send a list of JSON Patch operations that describe exactly what to change.
This is based on the JSON Patch (RFC 6902) standard.
When to Use PATCH vs PUT
The PATCH endpoint only modifies the resume
data (the JSONB column). To update top-level resume properties like
name, slug, tags, or isPublic, use the existing PUT /resume/{id} endpoint.Authentication
All requests require your API key in thex-api-key header. See Using the API for how to create one.
If you’re self-hosting, replace
https://rxresu.me with your instance URL. The API is served under /api/openapi.Endpoint
Request Body
The resume ID is taken from the URL path, so the request body only requires theoperations array:
Examples
Replace a Basic Field
Update the resume holder’s name and headline:Add an Experience Entry
Append a new item to the experience section:Remove an Item from a Section
Remove the second skill (index1) from the skills section:
Update Metadata (Template, Colors, Fonts)
Switch the template and update the primary color:Test-Then-Replace (Optimistic Concurrency)
Thetest operation checks that a value matches before proceeding. If the test fails, the entire patch is rejected. This is useful to avoid overwriting changes made by another client:
/basics/name is not "Albert Einstein" at the time of the request, the entire patch will fail with a 400 error and no changes will be applied.
Move an Item Within a Section
Move the first experience item to the third position:Error Handling
Tips
- Fetch first, then patch. Use
GET /resume/{id}to inspect the current structure before crafting your operations. This helps you target the correct paths and array indices. - Use
testfor safety. When updating a value you expect to be a specific value, combinetest+replaceto avoid accidentally overwriting concurrent changes. - Batch related changes. You can send multiple operations in a single request. They are applied in order, so later operations can depend on earlier ones.
- The
-index appends. When adding items to arrays, use-as the index (e.g.,/sections/skills/items/-) to append to the end.