Important
New shipment package stream endpoint is available

For large-scale scanning and synchronization flows, please prefer getShipmentPackagesStream.

HomeGuidesAPI ReferenceChangelogSupport Request
Guides

Video Upload / Listing Services

You can use this service to create video content for products and retrieve videos through integration services for sellers/integrators.

  • You need to send "storeFrontCode" as Header Parameter.
  • A seller can create only 1 active (not deleted and not rejected) video for the same productContentId.
  • The video will not be shown to the end user until isApproved: true.
  • All config values (file size limit, duration limits, timeout) are dynamically managed and can be changed.
  • After a video is successfully downloaded (SUCCESS) and optimized, the product association is automatically removed from older videos with the same productContentId.
❗️

BATCH OPERATION CHECK

After the video creation process, you need to check the status of your videos using the videoId in the response through the Video Listing / Query service.

1. POST Create Video

Initiates the video content creation process. The video is downloaded from the given URL and processed in the background. A rate limit of 200 req/min is set.

Request Body

FieldTypeRequiredDescription
titlestringYesVideo title. Must be between 3-50 characters.
descriptionstringNoVideo description. Maximum 500 characters.
videoUrlstringYesURL of the video file to be downloaded. Must start with http:// or https://. Must be in a valid URL format.
productContentIdsstring[]YesA single content IDs can be associated with maximum 1 video and 1 video can be uploaded to maximum 100 different content ids.
videoContentTypestringNoVideo content type. If not provided, it will be assigned as PRODUCT_PROMOTION.

Valid videoContentType values:

ValueDescription
PRODUCT_PROMOTIONProduct Promotion (default)
ASSEMBLY_AND_INSTALLATIONAssembly & Installation
PACKAGINGOperations (Packaging)
STORE_PROMOTIONStore Promotion
ADVERTISEMENTAdvertisement
PRODUCT_USAGE_AND_EXPERIENCEProduct Usage & Experience

Example Request - Create Video

{
    "title": "Product Promotion Video",
    "description": "New season product promotion",
    "videoUrl": "https://cdn.example.com/video.mp4",
    "productContentIds": ["123456", "789012"],
    "videoContentType": "PRODUCT_PROMOTION"
  }

Successful Response (200)

The video content is created and a videoId is returned. The video download and processing continues in the background.

{
  "videoId": "627b8a1b-7bad-4eaf-9abb-99a9958540c2"
}
FieldTypeDescription
videoIdstringUUID of the created video content. The status can be queried using this ID via the GET endpoint.

Error Codes

Errors caused by request validations. HTTP Status: 400

CodeMessage
seller.integration.title.requiredTitle is required.
seller.integration.title.lengthTitle must be between 3 and 50 characters.
seller.integration.description.lengthDescription must be a maximum of 500 characters.
seller.integration.video.url.requiredVideo URL is required.
seller.integration.video.url.invalidVideo URL must start with http:// or https://.
seller.integration.product.content.ids.requiredAt least one product content ID is required.
seller.integration.product.content.ids.maxProduct content ID list can contain a maximum of 100 elements.
seller.integration.body.requiredRequired fields are missing.
seller.integration.invalid.statusInvalid sellerIntegrationStatus value. Valid values: IN_PROGRESS, SUCCESS, FAILED.
seller.integration.invalid.store.front.codeInvalid storeFrontCode value.

1. GET List / Query Videos

Lists the seller's integration videos. Specific video ID or status-based queries can be made with optional filters. A rate limit of 1000 req/min is set.

Query Parameters

ParameterTypeRequiredDefaultDescription
idstringNo-Query by a specific video ID
sellerIntegrationStatusstringNo-Filter by integration status
pagenumberNo0Page number (starts from 0)
sizenumberNo10Number of records per page

Valid sellerIntegrationStatus values:

ValueDescription
IN_PROGRESSVideo is being downloaded or processed
SUCCESSVideo was successfully downloaded
FAILEDVideo download failed

Example Response - List Videos

{
  "meta": {
    "page": 0,
    "total": 2,
    "totalPage": 1,
    "size": 10
  },
  "data": [
    {
      "id": "627b8a1b-7bad-4eaf-9abb-99a9958540c2",
      "title": "Product Promotion Video",
      "description": "New season product promotion",
      "status": "SUCCESS",
      "videoUrl": "https://cdn.example.com/video.mp4",
      "productContentIds": ["123456"],
      "optimizedVideoUrl": "https://video-content.dsmcdn.com/.../video_hd.mp4",
      "isApproved": true
    },
    {
      "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "title": "Assembly Video",
      "description": "",
      "status": "FAILED",
      "videoUrl": "https://cdn.example.com/montaj.avi",
      "productContentIds": ["789012"],
      "errorCode": "video.content.api.seller.integration.video.format.invalid",
      "isApproved": false
    }
  ]
}

Response Fields

FieldTypeDescription
idstringVideo content ID (UUID)
titlestringVideo title
descriptionstringVideo description
statusstringIntegration status: IN_PROGRESS, SUCCESS, FAILED
videoUrlstringThe original video URL provided
productContentIdsstring[]Associated product content IDs
errorCodestringError code in case of failure (only in FAILED status)
optimizedVideoUrlstring \ nullOptimized video URL (only when SUCCESS and processing is complete)
isApprovedbooleanVideo approval status. If true, the video is live; if false, it is not yet approved or is being processed.

status and isApproved relationship:

statusisApprovedMeaning
IN_PROGRESSfalseVideo is being downloaded or processed
SUCCESSfalseVideo downloaded, optimization/approval process continues
SUCCESStrueVideo is fully ready and live
FAILEDfalseVideo processing failed

Video File Requirements

RuleValue
Supported formats.mp4, .mov
Maximum file size500 MB
Minimum duration8 seconds
Maximum duration120 seconds (2 minutes)

The video file extension and content (magic bytes) are verified. A file with a .mp4 extension must also have actual content in MP4 format.

Error Codes

Errors that occur during the video download and processing. Returned in the errorCode field.

CodeMessage
seller.integration.video.url.invalidVideo URL is invalid or empty.
seller.integration.video.format.invalidVideo format is invalid. Only .mp4 and .mov formats are supported.
seller.integration.video.size.exceededVideo size exceeds the maximum allowed limit.
seller.integration.video.download.timeoutVideo download timed out.
seller.integration.video.download.failedVideo download failed.
seller.integration.video.duration.invalidVideo duration must be between 8 and 120 seconds.