---
title: "Create Asset"
method: POST
path: "/video/assets"
tags: ["API Endpoints"]
---

# Create Asset

`POST /video/assets`

An asset refers to a media content/video that is processed, stored, and delivered through Gumlet. This endpoint creates an asset allowing users to ingest media content into the Gumlet system for processing and delivery.

## Request body

- object
  - `input` string, required — URL or web address of a file that Gumlet should download to create a new asset.
  - `collection_id` string, required — Gumlet video workspace id.
  - `profile_id` string — Provide `profile_id` of the previously created video profile. This parameter will override all the parameters (except `input` and `collection_id`) from the video profile.
  - `format` 'ABR' | 'MP4', required — Transcode and deliver the asset in the requested format. The options can be one of `ABR` (HLS + DASH) and`MP4`.
  - `tag` string — Specify a text string or identifier which can identify an asset or bunch of assets later.
  - `title` string — Specify a text string or identifier which can be used for filtering or searching the asset.
  - `description` string — Attach some textual data with the asset. This field is neither searchable nor filterable.
  - `metadata` string, json — Add your metadata you want to associate with this asset.<br/> Example: <br/> <code> { "internal_video_id" : "123Abc" } </code>
  - `width` string — Resize video with the given width. Can be an absolute value in pixels or a percentage value with the `%` suffix. Specified values greater than the original asset width will be ignored. Applicable only when specified format is `MP4`.
  - `height` string — Resize video with the given height. Can be an absolute value in pixels or a percentage value with the `%` suffix. Specified values greater than the original asset height will be ignored. Applicable only when specified format is `MP4`.
  - `resolution` string — Required resolutions of the transformed asset in case of HLS or MPEG-DASH delivery format. Can be a comma separated string out of the following values: `240p`, `360p`, `480p`, `540p`, `720p`, and `1080p`. Re-sized rendition will retain the input aspect ratio.
  - `crop` object — This transformation can be used to crop the video by defining a rectangular area within the dimensions of the output video.
    - `horizontal_margin` string — This parameter defines the horizontal coordinate value of the upper-left corner of the cropping area. Values can be an absolute number of pixels or a percentage value relative to the video width. **Default: `0`**
    - `vertical_margin` string — This parameter defines the vertical coordinate value of the upper-left corner of the cropping area. Values can be an absolute number of pixels or a percentage value relative to the video height. **Default: `0`**
    - `width` string, required — Width of the cropping area in pixels.
    - `height` string, required — Height of the cropping area in pixels.
  - `pad` object — This transformation can be used to add padding to the video.
    - `top` string — Width of padding on the top side. Values can be an absolute number of pixels or a percentage value relative to the video height. **Default: `%5`**
    - `left` string — Width of padding on the left side. Values can be an absolute number of pixels or a percentage value relative to the video width. **Default: `0`**
    - `bottom` string — Width of padding on the bottom side. Values can be an absolute number of pixels or a percentage value relative to the video height. **Default: `%5`**
    - `right` string — Width of padding on the right side. Values can be an absolute number of pixels or a percentage value relative to the video width. **Default: `0`**
    - `color` string — Color of padding area. **Default: `black`**
  - `trim` object — Trim transformation can be used to trim videos based on time duration.
    - `start_offset` number, float, required — Start offset in number of seconds or in `HH:MM:SS` format.
    - `end_offset` number, float, required — End offset in number of seconds or in `HH:MM:SS` format.
    - `duration` number, float — Duration can be used in conjunction with `start_offset` parameter, can be specified in number of seconds.
  - `image_overlay` object — Image overlay can be used to brand a video or add a visual label in the form of an image.
    - `url` string, required — This is the required parameter for image overlay, it can be a URL to an image that needs to be overlayed.
    - `horizontal_margin` string — This parameter defines the horizontal coordinate value of the corner (determined by `horizontal_align`) of the overlay area. Values can be an absolute number of pixels or a percentage value relative to the video width. **Default: `0`**
    - `vertical_margin` string — This parameter defines the vertical coordinate value of the corner (determined by `vertical_align`) of the overlay area. Values can be an absolute number of pixels or a percentage value relative to the video height. **Default: `0`**
    - `horizontal_align` string — This parameter specifies the horizontal alignment of the overlayed image and can be either `left` or `right`. **Default: `right`**
    - `vertical_align` string — This parameter specifies the vertical alignment of the overlayed image and can be either `top` or `bottom`. **Default: `bottom`**
    - `width` string — Width of the overlayed image. **Default: `image width`**
    - `height` string — Height of the overlayed image. **Default: `image height`**
  - `text_overlay` object — Text overlay can be used to brand a video or add a label in the form of text.
    - `text` string, required — Text to be overlayed on video.
    - `horizontal_align` string — This parameter specifies the horizontal alignment of the overlayed image and can be either `left` or `right`. **Default: `right`**
    - `vertical_align` string — This parameter specifies the vertical alignment of the overlayed image and can be either `top` or `bottom`. **Default: `bottom`**
    - `horizontal_margin` string — This parameter defines the horizontal coordinate value of the corner (determined by `horizontal_align`) of the overlay area. Values can be an absolute number of pixels relative to the video width. **Default: `0`**
    - `vertical_margin` string — This parameter defines the vertical coordinate value of the corner (determined by vertical_align) of the overlay area. Values can be an absolute number of pixels relative to the video height. **Default: `0`**
    - `color` string — Font color for text. **Default: `black`**
    - `font` string — Font family type for text. **Default: `sans`**
    - `font_size` string — Font size in pixels. **Default: `16`**
    - `opacity` string — Overlay text opacity can be specified with opacity parameter where value can be between `0` and `100` where `0` is considered completely transparent and `100` is considered completely opaque. **Default: `100`**
    - `box` boolean — This parameter allows rectangular drawing a box over the overlayed text. **Default: `false`**
    - `box_color` string — Box color can be specified with this parameter. **Default: `white`**
    - `box_opacity` string — Box opacity can be specified with this parameter. **Default: `100`**
    - `box_border` string — Padding between the box border and the text can be specified with this parameter in pixels. **Default: `0`**
  - `animated_gif` object — Create an animated GIF from the video.
    - `start_offset` string — The time (in seconds or `HH:MM:SS` format) of the video timeline where the animated gif should begin. **Default: `0`**
    - `end_offset` string — The time (in seconds or `HH:MM:SS` format) of the video timeline where the GIF ends. Defaults to `10` seconds after the start_offset. Maximum duration of GIF is limited to `10` seconds.
    - `width` string — The width in pixels (or in percentage value of asset width) of the animated GIF. Max width is `640px`.
    - `height` string — The height in pixels (or in percentage value of asset height) of the animated GIF. Max height is `640px`.
    - `fps` string — The frame rate of the generated GIF. Defaults to `15` fps. Max `30` fps.
  - `additional_tracks` object[] — Add additional Audio / Subtitle tracks to Gumlet for transcoding and delivery along with video asset track.
    - `url` string, required — URL or web address of a file that Gumlet should download to add a stream.
    - `type` string, required — Type of additional track. Value can be either audio or subtitle.
    - `language_code` string, required — The language code value represents BCP 47 specification compliant value. For example, en for English.
    - `name` string — The name of the track containing a human-readable description.
  - `generate_subtitles` object — Gumlet allows to generate subtitles from the audio stream (use <a href='https://en.wikipedia.org/wiki/List_of_ISO_639_language_codes'> ISO 639-1 </a> Language Codes)
    - `audio_language` string — Language code for native language of the audio.
    - `subtitle_languages` string — Comma separated string of language codes for which subtitle needs to be generated. Maximum four language codes are allowed.
  - `mp4_access` boolean — Creates `MP4` version for download purpose in case of `MPEG-DASH` or `HLS` delivery format. **Default: `false`**
  - `per_title_encoding` boolean — Gumlet analyzes each input video on a wide range of visual aspects. Based on the analysis, it chooses a unique set of transcoding options for processing the video. This ensures that the output video is of optimal size and best quality. **Default: `true`**
  - `process_low_resolution_input` boolean — Currently, the minimum supported frame size is `57600` (`240x240`) pixels for `HLS/DASH` and `21025` (`145x145`) pixels for `MP4` format. However, enabling this flag will allow Gumlet to simply put your video asset into the specified delivery format without transcoding and optimization. Enabling this flag will cause any kind of specified video transformation to be ignored if you input video asset frame size is lower than the minimum supported frame size for the specified format. **Default: `false`**
  - `audio_only` boolean — This flag allows Gumlet to transcode and deliver audio-only in the specified format. In this case, video transformation and thumbnails/animated GIFs would not be created. **Default: `false`**
  - `enable_drm` boolean — Enable DRM encryption for transcoded videos. Gumlet supports Widevine and Fairplay DRMs.
  - `call_to_actions` object[] — CTA, is an explicit prompt within the video content encouraging viewers to take a particular action.
    - `text` string
    - `url` string
    - `start_time` integer
    - `end_time` integer
    - `font_color` string — hex value of color
    - `background_color` string — hex code of color
    - `position_from_top` integer — number of pixels from top
    - `position_from_right` string — number of pixels from right
  - `playlist_id` string — Add this asset to a playlist.
  - `folder` string — Add this asset to an existing folder by `folder_id`.

## Response `200`

200

- object
  - `asset_id` string
  - `progress` integer
  - `created_at` integer
  - `updated_at` integer
  - `status` string
  - `tag` string[]
  - `source_id` string
  - `collection_id` string
  - `input` object
    - `transformations` object
      - `format` string
      - `resolution` string[]
      - `audio_codec` string[]
      - `video_codec` string[]
      - `thumbnail` string[]
      - `thumbnail_format` string
      - `mp4_access` boolean
      - `per_title_encoding` boolean
    - `profile_id` string
    - `title` string
    - `description` string
    - `metadata` object
      - `headermeta` string
    - `source_url` string
    - `call_to_actions` object[]
      - `start_time` integer
      - `end_time` integer
      - `text` string
      - `url` string
      - `position_from_top` integer
      - `position_from_right` integer
      - `border_radius` integer
      - `font_color` string
      - `background_color` string
      - `html_target` string
  - `output` object
    - `format` string
    - `status_url` string
    - `playback_url` string
    - `thumbnail_url` string[]
  - `playlists` string[]

## Other responses

- `400` — 400
- `401` — 401

---

[API](https://skmtc.net/gumlet/apis/gumlet-rest-apis.md) · [All operations](https://skmtc.net/gumlet/apis/gumlet-rest-apis/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/gumlet/gumlet-rest-apis/versions/b1f7ac2aeeec/schema)
