media_subtitles_get
# media_subtitles_get
Read VOD subtitle tracks and, optionally, validate a staged file for creating a track in OTT (`C00002`), serial (`C00006`) or courses (`C00007`).
## Inputs and result
Provide channelCode, exact pAppCode, positive integer postId and optional assetId (8–160 letters, digits, underscores or hyphens). Include the trusted staged asset when preparing creation; omit it for deletion. The adapter resolves vid from the selected VOD post. Post, VOD and subtitle IDs are distinct.
`MEDIA_SUBTITLES` returns post identity, isSampleData, subtitles, available languages, remainingSlots, optional asset metadata, revision, `playbackVerified:false` and `writesPerformed:false`. Track fields include id, name, language, isDefault, createdAt and state (`PROGRESS`, `DONE`, `ERROR`, `UNKNOWN`). It does not expose cue text, subtitle file URLs or playback credentials. Sample posts skip the subtitle-list fetch and cannot be changed by this workflow.
Use revision with [media_subtitle_apply](media_subtitle_apply.md) for the same post and asset choice. Creation revisions include the staged file and storage snapshot; deletion revisions are read without an asset. Returned languages are the unused choices from the 63 source language keys, including their exact region/numeric variants. Do not synthesize language names.
## Input example
Illustrative input only. Replace the channel, installed app, identifiers and revision with values obtained for the selected target.
```json
{
"channelCode": "selected-channel",
"pAppCode": "C00002",
"postId": 1,
"assetId": "example-asset-001"
}
```