Make API Requests

Last update:2026-07-15 17:45:09

This section provides detailed information on how to structure and send API requests to the Atomile Media Processing Service. Before proceeding, ensure that the Media Processing Service is enabled for your account and that you have a valid AccessKey and AccessKey Secret pair.

Request Structure

All API requests to the Media Processing Service follow a consistent structure, including a specific HTTP method, a defined URI, required headers, and a request body containing the processing parameters.

Request Method

Currently, the Media Processing Service API supports only the POST HTTP method for processing requests.

Request URI

The base URI for accessing the Media Processing Service API is as follows:

http://<API Address>/fops

The URI components are described in the table below:

Parameter Description
Communication Protocol Currently, only HTTP is supported for requests to the Media Processing Service API.
API Address This is also referred to as the Manage Domain in the Object Storage console. You can find this information by navigating to Object Storage > Bucket > Overview > Manage Domain.
Resource Path Unless otherwise specified for a particular API function, the resource path for media processing requests is always /fops.

Request Header

Each API request to the Media Processing Service must include authentication information in the request header to verify the identity of the requester. This information is provided in the Authorization header, which consists of your AccessKey and a generated EncodeSign.

Authorization: <AccessKey>:<EncodeSign>

For detailed instructions on how to generate the authentication token (EncodeSign), refer to the Authentication documentation.

Request Body

The request body tells the Media Processing Service which media file to process and what type of processing to perform. The request body should be formatted as application/x-www-form-urlencoded and contain the following parameters:

bucket=[Bucket]&key=[Key]&fops=[Fops]&notifyURL=[NotifyURL]&force=[Force]&separate=[Separate]

The following table describes each parameter in detail:

Parameter Required Description
bucket Yes The name of the bucket in Object Storage that contains the target file to be processed.
key Yes The name of the file to be processed.
fops Yes The fops parameter specifies the type of media processing to perform on your video or audio files. You should configure fops based on the required processing task. For detailed instructions on how to structure fops for different tasks, refer to the following sections: Transcoding, Transmuxing, Video Encryption, and Editing.
notifyURL No Also known as the callback address. When a media processing task fails or completes, a notification is sent to this address. The notifyURL value should be URL-safe Base64 encoded when included in the request body.
For more information about callbacks, refer to Callback Notification.
force No Specifies whether to overwrite existing files. This helps avoid unnecessary processing if the file has already been processed.
0 - Do not overwrite the target file if it already exists.
1 - Process the file and overwrite the target file even if it already exists.
The default value is 0.
separate No Specifies the notification method.
0 - Send a notification to your callback server only after all processing tasks are complete.
1 - Send notifications to your callback server separately.
The default value is 0.