---
title: "Create an original"
method: POST
path: "/v2/sites/{site_id}/media/{media_id}/originals/"
tags: ["originals"]
---

# Create an original

`POST /v2/sites/{site_id}/media/{media_id}/originals/`

## Request

- Base URL: `https://api.jwplayer.com`
- URL: `https://api.jwplayer.com/v2/sites/{site_id}/media/{media_id}/originals/`
- Auth: API key in header `Authorization`

Creates an original resource for an additional file for the media, such as [alternate audio tracks](https://docs.jwplayer.com/jwplayer/docs/stream-manage-alternate-audio-tracks)

## Path parameters

- `site_id` string, required: Unique identifier for a resource
- `media_id` string, required: Unique identifier for a resource

## Request body

- object
  - `upload` object
    - `method` 'direct' | 'multipart' | 'fetch'
    - `mime_type` string: MIME type for the uploaded media
    - `download_url` string: URL of the media to fetch, required for the `fetch` upload method
  - `metadata` OriginalMetadata
    - `name` string: Name of the original and fallback name of associated audio tracks.
    - `type` 'audio-description' | 'commentary' | 'language' | 'music' | 'other': ([Alternate audio tracks](https://docs.jwplayer.com/jwplayer/docs/stream-manage-alternate-audio-tracks) only) Represents the purpose or content of the audio track and is the fallback type of associated audio tracks. **Possible values**: - `audio-description`: Audio descriptions of what is happening in the video - `commentary`: Commentary to accompany the video - `language`: Alternate language option than the one already present in the video - `music`: Alternate music selection - `other`: Anything else
    - `language` string: Language dialect of the original resource and fallback language of associated audio tracks. When a `name` is not provided, `language` is used as the audio label Set to `English` as default on non-music type resources
    - `language_code` string: [ISO 639-1 language code](https://id.loc.gov/vocabulary/iso639-1.html) of the original and fallback language code of associated audio tracks. This is set to `en` as default for non-music type resources

## Response `201`

Object successfully created

- union
  - object
    - `schema` string
    - `id` string: Unique identifier for a resource
    - `created` string: Date and time at which the resource was created
    - `last_modified` string: Date and time at which the resource was most recently modified
    - `type` string: Name of the type of resource.
    - `relationships` object: Ancilliary resources associated to the primary resource being read
    - `status` 'created' | 'failed' | 'processing' | 'ready' | 'updating': Original status
    - `error_message` string: Human-readable message explaining an issue uploading or processing an original This property is only displayed when `"status": "failed"`.
    - `size` string: Size of the original in bytes
    - `container_format` string: File format containing the media compressed by means of standardized audio/video codecs
    - `md5` string: MD5 hash of the asset, stored as 32-character hexadecimal string
    - `original_type` 'primary' | 'secondary': Identifies if the uploaded file is a video file (`primary`) or an alternate audio track file (`secondary`)
    - `metadata` OriginalMetadata
      - `name` string: Name of the original and fallback name of associated audio tracks.
      - `type` 'audio-description' | 'commentary' | 'language' | 'music' | 'other': ([Alternate audio tracks](https://docs.jwplayer.com/jwplayer/docs/stream-manage-alternate-audio-tracks) only) Represents the purpose or content of the audio track and is the fallback type of associated audio tracks. **Possible values**: - `audio-description`: Audio descriptions of what is happening in the video - `commentary`: Commentary to accompany the video - `language`: Alternate language option than the one already present in the video - `music`: Alternate music selection - `other`: Anything else
      - `language` string: Language dialect of the original resource and fallback language of associated audio tracks. When a `name` is not provided, `language` is used as the audio label Set to `English` as default on non-music type resources
      - `language_code` string: [ISO 639-1 language code](https://id.loc.gov/vocabulary/iso639-1.html) of the original and fallback language code of associated audio tracks. This is set to `en` as default for non-music type resources
    - `upload_token` string: Authentication used for multipart upload endpoints Only returned when `upload.method` is `multipart`
    - `upload_id` string: Unique identifier for the upload Only returned when `"upload.method": "multipart"`.
  - object
    - `schema` string
    - `id` string: Unique identifier for a resource
    - `created` string: Date and time at which the resource was created
    - `last_modified` string: Date and time at which the resource was most recently modified
    - `type` string: Name of the type of resource.
    - `relationships` object: Ancilliary resources associated to the primary resource being read
    - `status` 'created' | 'failed' | 'processing' | 'ready' | 'updating': Original status
    - `error_message` string: Human-readable message explaining an issue uploading or processing an original This property is only displayed when `"status": "failed"`.
    - `size` string: Size of the original in bytes
    - `container_format` string: File format containing the media compressed by means of standardized audio/video codecs
    - `md5` string: MD5 hash of the asset, stored as 32-character hexadecimal string
    - `original_type` 'primary' | 'secondary': Identifies if the uploaded file is a video file (`primary`) or an alternate audio track file (`secondary`)
    - `metadata` OriginalMetadata
      - `name` string: Name of the original and fallback name of associated audio tracks.
      - `type` 'audio-description' | 'commentary' | 'language' | 'music' | 'other': ([Alternate audio tracks](https://docs.jwplayer.com/jwplayer/docs/stream-manage-alternate-audio-tracks) only) Represents the purpose or content of the audio track and is the fallback type of associated audio tracks. **Possible values**: - `audio-description`: Audio descriptions of what is happening in the video - `commentary`: Commentary to accompany the video - `language`: Alternate language option than the one already present in the video - `music`: Alternate music selection - `other`: Anything else
      - `language` string: Language dialect of the original resource and fallback language of associated audio tracks. When a `name` is not provided, `language` is used as the audio label Set to `English` as default on non-music type resources
      - `language_code` string: [ISO 639-1 language code](https://id.loc.gov/vocabulary/iso639-1.html) of the original and fallback language code of associated audio tracks. This is set to `en` as default for non-music type resources
    - `upload_link` string: URL to be used for S3 uploads Only returned when `upload.method` is `direct`

## Other responses

- `400`: Invalid JSON request body
- `404`: Resource with ID supplied does not exist in account and object namespace
- `412`: Pre-condition Failed

## Changes

- **2026-11-03** `9fad6bd5872e`: 2 info
  - added the media type `application/json` for the response with the status `400`
  - added the media type `application/json` for the response with the status `404`

[Operation history](https://skmtc.dev/jwplayer/apis/management-api-v2/changes/v2/sites/:site_id/media/:media_id/originals/post.md)

---

[API](https://skmtc.dev/jwplayer/apis/management-api-v2.md) - [All operations](https://skmtc.dev/jwplayer/apis/management-api-v2/llms.txt) - [OpenAPI document](https://skmtc.dev/jwplayer/apis/management-api-v2/revisions/9fad6bd5872e?raw)
