CDNetworks Documentation Object Storage Task Notification & Query

Task Notification & Query

Last update:2025-08-18 15:32:50

Advanced Resource Management (Fmgr) tasks are executed asynchronously. The platform supports both proactive notification upon task completion as well as manual querying of task status.

Task Notification

  1. If you specify a notifyURL when submitting a task, the system will proactively send a notification to this address once the task is complete.
  2. The notification request is configured with a connection timeout of 20 seconds and a request timeout of 60 seconds.
  3. The notification content is encoded in safe Base64. Upon receiving the data, please perform Base64 decoding first, and then parse the resulting string as JSON.

Notification Security Mechanism

CDNetworks Object Storage includes an Authorization field in the callback request header.

Format:

<Accesskey>:<Urlsafe_Base64_Encode(hmac_sha1(callBackUrlWithQuery+"\n"+urlsafe_base64_encode(callbackBody),SecretKey))>

Example:
d0e56f9f4a75267eba123348f839fbedcd9464c6:OTQzNzU5YWVjOTZlNTRlMWIwYmQzZTA2ZDhjMTFhOWEyNGM1ZjIzZg==

Notification Retry Mechanism

  • If the upload callback fails, the system will retry 3 times immediately, then retry once every minute for the next 5 attempts, for a total of 8 retries.
  • If the callback succeeds upon retrying, a 200 status code will be returned.
  • If all retries fail with no valid response from the callback server, a 579 status code will be returned.

Notification Example

POST www.test-notify.com
Authorization: f4880395bc1624277f0cf1ee2d6d332fbc1ef11b:NGEyMDVjMDc1NTlkNTE3NDRhMzI3YmFjMzdlOGQ5NzRjNWUyYmE1OQ==
content-length: 652
content-type: text/plain; charset=UTF-8
host: www.test-notify.com
connection: Keep-Alive
user-agent: Apache-HttpClient/4.5.12 (Java/1.8.0_242)
accept-encoding: gzip,deflate

eyJpZCI6IjIwMTA1NDY0NTQwZjE5NzQxNGQ1MWE4NjEyNDBkOTIxZWYyMDYiLCJjb2RlIjozLCJkZXNjIjoiZmlsZU9wZXJhdGVTdWNjZWVkIiwic2VwYXJhdGUiOjAsIml0ZW1zIjpbeyJjbWQiOiJyZXNvdXJjZS9kSEpoYm5OamIyUmxNVEExT25SbGMzUmZjM0pqWDJacGJHVmZNVFk1TVRrM09ESTFNVEUyTmk1dGNEUT0vYnVja2V0L2R5MTBjbUZ1YzJOdlpHVXRjbVZuYVc5dU1UQTEva2V5L2RHVnpkRjl6Y21OZlptbHNaVjh4TmpreE9UYzRNalV4TVRZMkxtMXdOQT09IiwiY29kZSI6MywiZGVzYyI6ImZpbGVPcGVyYXRlU3VjY2VlZCIsImVycm9yIjpudWxsLCJoYXNoIjoibGo2Tkg4Q0V1dUNLZDJmQm94ZTJGSmxybDVsVCIsImZzaXplIjo2NDM3ODM2LCJrZXkiOiJ0ZXN0X3NyY19maWxlXzE2OTE5NzgyNTExNjYubXA0IiwidXJsIjoiaHR0cDovL3ctdHJhbnNjb2RlLXJlZ2lvbjEwNS5jb20vdGVzdF9zcmNfZmlsZV8xNjkxOTc4MjUxMTY2Lm1wNCJ9XX0=

Task Query

This API is used to query the execution status of Advanced Resource Management (Fmgr) tasks.

Note: The format of the notification content of the Fmgr task received by notifyURL is the same as the format of the response content of this interface.

Request Description

GET /fmgr/status?persistentId=<persistentId>
HOST: <MgrDomain>

Parameter Description

Parameter Required Description
persistentId Yes Task process ID.

Response Description

  • If the request is successful, a Jsonstring with the following content is returned:
{
  "id": "<id string>",
  "code": <code int>,
  "desc": "<desc string>",
  "separate": "<separate string>",
  "items": [
    {
      "cmd": "<cmd string>",
      "code": "<code string>",
      "desc": "<desc string>",
      "error": "<error string>",
      "hash": "<hash string>",
      "fsize": "<fsize int>",
      "key": "<key string>",
      "url": "<url string>"
      "decompresslist": "<list string>"
    }
  ]
}
Field name Type Description
id string The task process ID, that is, the persistentId of the Fmgr interface response.
code int 1. If it is the information obtained by the query interface, it indicates the task status code: 0pending, 1processing, 3processing completed, 4notifying, 5notification failure, 6notification success;
2. If it is the information obtained by the notification interface, it indicates the notification status, 1which is notified separately , if there is a task processing, 2separate notification, if there is a task processing failure, 3it means the notification is successful.
desc string A detailed description corresponding to the status code.
separate string Separate notification option, which 0means one-time notification, 1means separate notification.
items array Status information for each operation. If the processing request includes multiple operations, items contain multiple pieces of information.
cmd string Operation commands (fops).
code string Processing result status code, 0pending, 1processing, 2processing failure, 3processing success, 4processing success notification, 5processing success notification failure, 6processing success notification success, 18processing failure notification, 19processing failure notification failure, 20processing failure notification success, other ( For specific circumstances, please contact object storage staff).
Note: The deletion of m3u8 files using the “Delete m3u8 files” interface fails, and some TSs may have been deleted,There may be residual TS files. If you need to delete them completely, please initiate the m3u8 associated deletion operation again.
desc string A detailed description corresponding to the status code.
error string If processing failed, this field lists the specific reason.
fsize int The processed file size.
Note: If deleting tasks by prefix, this field is empty.
hash string The value of the processing result hash.
Note: If deleting tasks by prefix, this field is empty.
key string The value of the processing result key.
Note: If the task is to be deleted by prefix, this field is the specified output; if no output is specified, this field is empty.
url string The access path to the resource.
Note: If the task is to be deleted by prefix, this field is the specified output access URL; if no output is specified, this field is empty.
decompresslist string List file automatically generated after decompression.
Note: If there is no decompression operation, this field is empty.
  • If the request fails, a Jsonstring with the following content is returned:
{
    "code":"<httpCode  int>", 
    "message":"<errMsg string>"
}
Field name Required Description
code Yes HTTP request response code, see HTTP response status code
message Yes A message indicating that the request failed.

Query Example

curl -v http://mgrDomain/fmgr/status?persistentId=ff80808149deceff014a7090b6700000
Is the content of this document helpful to you?
Yes
I have suggestion
Submitted successfully! Thank you very much for your feedback, we will continue to strive to do better!