/
GA
ganjoor
Search skmtc…
⌘K
Docs
Sign in
Docs
History
Schema
Generate
Filter operations
AppUser
36
Artifact
86
AuditLog
1
ContributionStats
4
DonationAccounting
13
ExternalFTP
3
FAQ
14
Ganjoor
214
GanjoorLiterary
14
GanjoorLiteraryConceptAdmin
2
GanjoorLiteraryStats
3
GanjoorLiteraryTagSource
3
GanjoorPoetSuggestedPhotos
7
GanjoorPoetSuggestedSpecLines
7
GanjoorRelatedPerson
25
GeoLocation
5
Image
5
MusicCatalogue
2
Notification
10
Numbering
9
Recitation
41
get
/api/audio/published
returns paginated published recitations (if poetId or catId is non-zero its ordered by poemId ascending if not it is ordered by publish date descending)
get
/api/audio/published/{id}
get published recitation by id
get
/api/audio/published/rss
creates an RSS file from recent published recitations
get
/api/audio
Gets audio narrations, user must have recitation::moderate permission to be able to see all users narrations (Auth)
post
/api/audio
Reciation Upload (Auth)
get
/api/audio/file/{id}.mp3
get the corresponding mp3 file for the narration
get
/api/audio/xml/{id}
get the corresponding xml file contents (xml) for the narration
get
/api/audio/file/{id}.xml
get the corresponding xml file for the recitation
get
/api/audio/verses/{id}
Gets Verse Sync Information
put
/api/audio/{id}
updates narration metadata (Auth)
delete
/api/audio/{id}
Delete a recitation (Auth)
put
/api/audio/moderate/{id}
Moderate pending narration (for moderating other users' recitations you also need recitation:moderate permission) (Auth policies: recitation:publish)
post
/api/audio/{id}/xml
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)
get
/api/audio/uploads
Get User Uploads (Auth)
get
/api/audio/uploadenabled
upload, update, moderate and delete operations on recitations might temporarily become disabled, this method gets the current status remarks: the value of this flag is provided as a custom header called audio-upload-enabled in some common GET methods in order to reduce the need for a separate query (Auth)
get
/api/audio/profile
Get User Profiles (Auth)
put
/api/audio/profile
Update a narration profile (Auth)
post
/api/audio/profile
Add a narration profile (Auth)
get
/api/audio/profile/def
Get User Default Profile (Auth)
delete
/api/audio/profile/{id}
Delete a narration profile (Auth)
get
/api/audio/publishqueue
publishing tracker data (Auth)
put
/api/audio/chown
Transfer Recitations Ownership (for recitations owned by current user) (Auth)
get
/api/audio/syncqueue
Synchronization Queue (Auth)
get
/api/audio/errors/report
get errors reported for recitations (Auth policies: recitation:moderate)
post
/api/audio/errors/report
report an error in a recitation (Auth)
delete
/api/audio/errors/report/{id}
reject a reported error for recitations and notify the reporter (and deletes the report) (Auth policies: recitation:moderate)
delete
/api/audio/errors/report/accept/{id}
accepts a reported error for recitations, change status of the recitation to rejected and notify the reporter and recitation owner (and deletes the report) (Auth policies: recitation:moderate)
put
/api/audio/errors/report/save
accepts a reported error for recitations, add mistake to approve the mistake and notify the reporter and recitation owner (and deletes the report) (Auth policies: recitation:moderate)
put
/api/audio/errors/report/edit
edit approved mistake of a recitation text (Auth policies: recitation:moderate)
delete
/api/audio/errors/approved/{id}
remove approved mistake (Auth policies: recitation:moderate)
post
/api/audio/vote/{id}
up vote a recitation (Auth)
delete
/api/audio/vote/{id}
revoke recitaion up vote (Auth)
put
/api/audio/vote/switch/{id}
revoke recitaion up vote (Auth)
get
/api/audio/votes
get user upvoted recitations (Auth)
get
/api/audio/votes/{poemId}/scores
compute poem recitations order (no update)
post
/api/audio/healthcheck
starts checking recitaions with missing files and add them to reported errors list job (Auth policies: recitation:moderate)
post
/api/audio/retrypublish
retry publish unpublished narrations
put
/api/audio/ff
Makes recitations of فریدون فرحاندوز first recitations (Auth policies: recitation:import)
get
/api/audio/cattop1/{catId}
get category top one recitations
get
/api/audio/catany/{catId}
check if a category has any recitations
get
/api/audio/cattop1/{catId}/rss
rss for category top one recitations
RGenericOptions
8
RImage
2
RLongRunningJobs
3
Role
8
SemanticSearch
2
SiteBanners
5
Translation
5
UserVisitsTracking
4
Recitation
Copy
Copy Markdown
Copy Markdown
Copying…
Copied
Copy failed
Changes to get published recitation by id
get
/api/audio/published/{id}
Oct 27, 2026
143b912b1085
Revision changes
info
added the optional property
xmlUrl
to the response with the
200
status