Updated on 2025-07-02 GMT+08:00

Querying a Video Moderation Job

  1. This section describes how to query a video moderation job using the video moderation SDK and AK/SK.

    In the sample code, you can use withJobId of the RunQueryVideoModerationJobRequest class to configure the ID of the review task. After the configuration is complete, run the code.

    const core = require('@huaweicloud/huaweicloud-sdk-core');
    const moderation = require("@huaweicloud/huaweicloud-sdk-moderation");
    // Hard-coded or plaintext AK and SK are risky. For security purposes, encrypt your AK and SK and store them in the configuration file or environment variables.
    // In this example, the AK and SK are stored in environment variables for identity authentication. Before running this example, configure environment variables HUAWEICLOUD_SDK_AK, HUAWEICLOUD_SDK_SK, and HUAWEICLOUD_SDK_PROJECT_ID.
    const ak = process.env.HUAWEICLOUD_SDK_AK;
    const sk = process.env.HUAWEICLOUD_SDK_SK;
    const projectId = process.env.HUAWEICLOUD_SDK_PROJECT_ID;
    
    const endpoint = "https://moderation.ap-southeast-3.myhuaweicloud.com"; //Replace ap-southeast-3 with the region where the service is located.
    const credentials = new core.BasicCredentials()
                         .withAk(ak)
                         .withSk(sk)
    const client = moderation.v3.ModerationClient.newBuilder()
                                .withCredential(credentials)
                                .withEndpoint(endpoint)
                                .build();
    const request = new moderation.v3.RunQueryVideoModerationJobRequest();
    request.jobId = "xxxxx";   //Enter your job ID.
    const result = client.runQueryVideoModerationJob(request);
    result.then(result => {
        console.log("JSON.stringify(result)::" + JSON.stringify(result));
    }).catch(ex => {
        console.log("exception:" + JSON.stringify(ex));
    });
  2. The console returns the submission result of the query request and the video moderation job query result.
    JSON.stringify(result)::{"request_id":"xxxx","job_id":"xxx","status":"succeeded","request_params":{"data":{"url":"xxxx","frame_interval":5},"event_type":"default","image_categories":["porn","terrorism","image_text"],"audio_categories":["porn","ad","moan","abuse"],"callback":"xxx"},"create_time":"2022-07-30T08:57:11.011Z","update_time":"2022-07-30T08:57:14.014Z","result":{"suggestion":"block","image_detail":[{"suggestion":"block","category":"porn","ocr_text":"123","time":0,"detail":[{"confidence":0.676015138626099,"category":"porn","suggestion":"block","label":"pornography"},{"confidence":0.666015138626099,"category":"porn","suggestion":"review","label":"sexy_female"},{"confidence":0.666015138626099,"category":"xxx","suggestion":"block","label":"leader"},{"confidence":0.691423773765564,"category":"xxx","suggestion":"block","face_location":{"top_left_x":12,"top_left_y":13,"bottom_right_x":200,"bottom_right_y":240},"label":"leader"},{"confidence":0.691423773765564,"category":"porn","suggestion":"block","face_location":{"top_left_x":12,"top_left_y":13,"bottom_right_x":100,"bottom_right_y":2000},"label":"leader"},{"confidence":0.891423773765564,"category":"image_text","suggestion":"block","label":"qr_code"},{"confidence":0.891423773765564,"category":"image_text","suggestion":"block","label":"qr_code","qr_content":"xxxxxxxxx","qr_location":{"top_left_x":12,"top_left_y":13,"bottom_right_x":100,"bottom_right_y":2000}},{"confidence":0.891423773765564,"category":"image_text","suggestion":"block","label":"porn","segments":[{"segment":"xxx"},{"segment":"xx"}]}]}],"audio_detail":[{"suggestion":"block","label":"porn","audio_text":"xxxxx","end_time":10,"start_time":0,"detail":[{"confidence":0.999117187582349,"label":"porn","suggestion":"block","segments":[{"segment":"xxx"}]},{"confidence":0.885117187582349,"label":"porn","suggestion":"block"}]}]}}