---
title: "Replace the synchronization (xml) file of an already approved recitation belonging to the logged on user, without touching its mp3 file. Send the new xml as the single file in the request's form-data. The uploaded xml is only accepted if its embedded PoemId and audio checksum match the target recitation exactly (i.e. it must be a resync of the very same mp3 already on record) - this endpoint never accepts a new mp3. On acceptance, the xml is queued for re-publishing to the external FTP server(s) in the background and you receive a notification with the final result (success or failure). (Auth)"
method: POST
path: "/api/audio/{id}/xml"
tags: ["Recitation"]
---

# Replace the synchronization (xml) file of an already approved recitation belonging to the logged on user, without touching its mp3 file. Send the new xml as the single file in the request's form-data. The uploaded xml is only accepted if its embedded PoemId and audio checksum match the target recitation exactly (i.e. it must be a resync of the very same mp3 already on record) - this endpoint never accepts a new mp3. On acceptance, the xml is queued for re-publishing to the external FTP server(s) in the background and you receive a notification with the final result (success or failure). (Auth)

`POST /api/audio/{id}/xml`

## Path parameters

- `id` integer, required

## Response `200`

OK

- boolean

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden

## Changes

- **2026-09-17** `ef792bb3d7ad` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/ganjoor/apis/rmuseum-api/changes/api/audio/:id/xml/post.md)

---

[API](https://skmtc.dev/ganjoor/apis/rmuseum-api.md) · [All operations](https://skmtc.dev/ganjoor/apis/rmuseum-api/llms.txt) · [OpenAPI document](https://skmtc.dev/ganjoor/apis/rmuseum-api/revisions/098f63370a25?raw)
