tencent cloud

Feedback

Querying Audio Moderation Job Result

Last updated: 2024-02-19 14:59:07

    Overview

    This API is used to query the status or result of an audio moderation job.
    Note:
    Audio moderation results are retained for one month, so you can query moderation results in the past month through this API.

    SDK Recommendation

    COS SDK provides complete capabilities of demo, automatic integration, and signature calculation. You can easily and quickly call APIs through the SDK. For more information, see SDK Overview.

    Request

    Sample request

    GET /audio/auditing/<jobId> HTTP/1.1
    Host: <BucketName-APPID>.ci.<Region>.myqcloud.com
    Date: <GMT Date>
    Authorization: <Auth String>
    Note:
    Authorization: Auth String (See Request Signature for details.)
    When this feature is used by a sub-account, relevant permissions must be granted as instructed in Authorization Granularity Details.

    Request headers

    This API only uses Common Request Headers.

    Request body

    This request does not have a request body.

    Response

    Response headers

    This API only returns Common Response Headers.

    Response body

    The response body returns application/xml data. The following contains all the nodes:
    <Response>
    <JobsDetail>
    <Code>Success</Code>
    <Message>Success</Message>
    <DataId></DataId>
    <JobId></JobId>
    <State></State>
    <CreationTime></CreationTime>
    <Object></Object>
    <Result>1</Result>
    <AudioText></AudioText>
    <PornInfo>
    <HitFlag></HitFlag>
    <Score></Score>
    <Label></Label>
    </PornInfo>
    <Section>
    <Url>https://cos.ap-guangzhou.myqcloud.com/0.mp3</Url>
    <OffsetTime>0</OffsetTime>
    <Duration>3000</Duration>
    <Text>Haha</Text>
    <PornInfo>
    <HitFlag></HitFlag>
    <Score></Score>
    <Keywords></Keywords>
    </PornInfo>
    </Section>
    </JobsDetail>
    <RequestId></RequestId>
    </Response>
    The nodes are described as follows:
    Node Name (Keyword)
    Parent Node
    Description
    Type
    Response
    None
    Audio moderation job result.
    Container
    Response has the following sub-nodes:
    Node Name (Keyword)
    Parent Node
    Description
    Type
    JobsDetail
    Response
    Details of the audio moderation job.
    Container
    RequestId
    Response
    The ID automatically generated by the server for a request when the request is sent, which can help locate problems faster.
    String
    JobsDetail has the following sub-nodes:
    Node Name (Keyword)
    Parent Node
    Description
    Type
    Code
    Response.JobsDetail
    Error code, which will be returned only if State is Failed. For more information, see Error Codes.
    String
    Message
    Response.JobsDetail
    Error message, which will be returned only if State is Failed.
    String
    DataId
    Response.JobsDetail
    This field will return the original content in the moderation result, which can contain up to 512 bytes. You can use this field to uniquely identify the data to be moderated in your business.
    String
    JobId
    Response.JobsDetail
    ID of the audio moderation job.
    String
    State
    Response.JobsDetail
    Status of the audio moderation job. Valid values: Submitted, Success, Failed, Auditing.
    String
    CreationTime
    Response.JobsDetail
    Creation time of the audio moderation job.
    String
    Object
    Response.JobsDetail
    If the moderated audio file is a file stored in COS, this field indicates its filename.
    String
    Url
    Response.JobsDetail
    If the moderated audio file is at a URL, this field indicates the URL.
    String
    Label
    Response.JobsDetail
    This field is used to return the maliciousness tag with the highest priority in the detection result, which represents the moderation result suggested by the model. We recommend you handle different types of violations and suggestions based on your business needs. Return values: Normal, Porn, Ads, and other types of unsafe or inappropriate content.
    String
    Result
    Response.JobsDetail
    This field indicates the moderation result. You can perform subsequent operations based on the result. We recommend you handle different results based on your business needs. Valid values: 0 (normal), 1 (sensitive), and 2 (suspiciously sensitive, with human review recommended).
    Integer
    AudioText
    Response.JobsDetail
    This field is used to return the recognized text content of the audio file.
    String
    PornInfo
    Response.JobsDetail
    The moderation result of the pornographic information moderation scene.
    Container
    AdsInfo
    Response.JobsDetail
    The moderation result of the advertising information moderation scene.
    Container
    Section
    Response.JobsDetail
    When the audio is too long, it will be segmented. This field is used to return the moderation result of an audio segment, mainly including the start time and audio moderation result.
    Container Array
    UserInfo
    Response.JobsDetail
    Business field. This field will not exist if UserInfo is not set during job creation.
    Container
    ListInfo
    Response.JobsDetail
    Blocklist/Allowlist status of the account.
    Container
    ForbidState
    Response.JobsDetail
    If you set automatic freezing, this field indicates the status of the audio file. 0: not frozen; 1: frozen, 2: file moved.
    Integer
    PornInfo and AdsInfo have the following sub-nodes:
    Node Name (Keyword)
    Parent Node
    Description
    Type
    HitFlag
    Response.JobsDetail.*Info
    The moderation result returned for the moderation scene. Return values: 0 (normal); 1 (confirmed as a violation of the current scene); 2 (suspected as a violation of the current scene).
    Integer
    Score
    Response.JobsDetail.*Info
    The confidence the moderation result hits the moderation scene. Value range: 0–100. The higher the value, the more likely the content hits the currently returned moderation scene. For example, Porn 99 means that the content is very likely to be pornographic.
    Integer
    Label
    Response.JobsDetail.*Info
    Overall result tag of this moderation job. If a sensitive keyword is hit, the keyword will be returned in this field.
    String
    Category
    Response.JobsDetail.*Info
    The specific hit moderation type. Note: This field may return null.
    String
    SubLabel
    Response.JobsDetail.*Info
    The specific sub-tag hit by the moderation job. Note: This field may return null.
    String
    Section has the following sub-nodes:
    Node Name (Keyword)
    Parent Node
    Description
    Type
    Url
    Response.JobsDetail.Section
    URL of the current audio segment, at which you can get the content of the segment. It must be a standard URL. Note: Each URL is valid for 2 hours. If you need to view the data after 2 hours, initiate a new query request.
    String
    Text
    Response.JobsDetail.Section
    This field is used to return the ASR text recognition result of the current audio segment.
    String
    OffsetTime
    Response.JobsDetail.Section
    This field is used to return the time where the current audio segment is in the entire audio in milliseconds, such as 5000 (i.e., 5000 milliseconds after the audio starts).
    Integer
    Duration
    Response.JobsDetail.Section
    Duration of the current audio segment in milliseconds.
    Integer
    Label
    Response.JobsDetail.Section
    This field is used to return the maliciousness tag with the highest priority in the detection result, which represents the moderation result suggested by the model. We recommend you handle different types of violations and suggestions based on your business needs. Return values: Normal, Porn, Ads, and other types of unsafe or inappropriate content.
    String
    SubLabel
    Response.JobsDetail
    The specific sub-tag hit by the moderation job. Note: This field may return null.
    String
    Result
    Response.JobsDetail.Section
    This field indicates the moderation result. You can perform subsequent operations based on the result. We recommend you handle different results based on your business needs. Valid values: 0 (normal), 1 (sensitive), and 2 (suspiciously sensitive, with human review recommended).
    Integer
    PornInfo
    Response.JobsDetail.Section
    The moderation result of the pornographic information moderation scene.
    Container
    AdsInfo
    Response.JobsDetail.Section
    The moderation result of the advertising information moderation scene.
    Container
    PornInfo and AdsInfo have the following sub-nodes:
    Node Name (Keyword)
    Parent Node
    Description
    Type
    HitFlag
    Response.JobsDetail.Section.*Info
    The moderation result returned for the moderation scene. Return values: 0 (normal); 1 (confirmed as a violation of the current scene); 2 (suspected as a violation of the current scene).
    Integer
    Score
    Response.JobsDetail.Section.*Info
    The confidence the moderation result hits the moderation scene. Value range: 0–100. The higher the value, the more likely the content hits the currently returned moderation scene. For example, Porn 99 means that the content is very likely to be pornographic.
    Integer
    Category
    Response.JobsDetail.Section.*Info
    This field is a subset of Label, indicating the specific moderation category hit; for example, Sexy represents the sexy category in the Porn tag.
    String
    Keywords
    Response.JobsDetail.Section.*Info
    The sensitive keyword hit by the moderation job. Nothing will be returned if there is none.
    String Array
    LibResults
    Response.JobsDetail.Section.*Info
    This field returns results based on recognition against the risk library. Note: This field will not be returned if no samples in the risk library are hit.
    Container Array
    LibResults has the following sub-nodes:
    Node Name (Keyword)
    Parent Node
    Description
    Type
    LibType
    Response.JobsDetail.Section.*Info.LibResults
    Type of the hit risk library. Valid values: 1 (preset risk library); 2 (custom risk library).
    Integer
    LibName
    Response.JobsDetail.Section.*Info.LibResults
    Name of the hit risk library.
    String
    Keywords
    Response.JobsDetail.Section.*Info.LibResults
    Keywords hit in the library. There may be multiple return values representing multiple hit keywords.
    String Array
    UserInfo has the following sub-nodes:
    Node Name (Keyword)
    Description
    Type
    Required
    TokenId
    Account information, which can contain up to 128 bytes.
    String
    No
    Nickname
    Nickname information, which can contain up to 128 bytes.
    String
    No
    DeviceId
    Device information, which can contain up to 128 bytes.
    String
    No
    AppId
    Unique app ID, which can contain up to 128 bytes.
    String
    No
    Room
    Room ID information, which can contain up to 128 bytes.
    String
    No
    IP
    IP address information, which can contain up to 128 bytes.
    String
    No
    Type
    Business type, which can contain up to 128 bytes.
    String
    No
    ReceiveTokenId
    User account to receive messages, which can contain up to 128 bytes.
    String
    No
    Gender
    Gender information, which can contain up to 128 bytes.
    String
    No
    Level
    Level information, which can contain up to 128 bytes.
    String
    No
    Role
    Role information, which can contain up to 128 bytes.
    String
    No
    ListInfo has the following sub-nodes:
    Node Name (Keyword)
    Parent Node
    Description
    Type
    ListResults
    Response.JobsDetail.ListInfo
    Results in all hit lists.
    Container Array
    ListResults has the following sub-nodes:
    Node Name (Keyword)
    Parent Node
    Description
    Type
    ListType
    Response.JobsDetail.ListInfo.ListResults
    Type of the hit list. Valid values: 0 (allowlist), 1 (blocklist).
    Integer
    ListName
    Response.JobsDetail.ListInfo.ListResults
    Name of the hit list.
    String
    Entity
    Response.JobsDetail.ListInfo.ListResults
    Entity hit in the list.
    String

    Error codes

    No special error message will be returned for this request. For the common error messages, please see Error Codes.

    Examples

    Request

    GET /audio/auditing/vab1ca9fc8a3ed11ea834c525400863904 HTTP/1.1
    Accept: */*
    Authorization: q-sign-algorithm=sha1&q-ak=AKIDZfbOAo7cllgPvF9cXFrJD0a1ICvR****&q-sign-time=1497530202;1497610202&q-key-time=1497530202;1497610202&q-header-list=&q-url-param-list=&q-signature=28e9a4986df11bed0255e97ff90500557e0e****
    Host: examplebucket-1250000000.ci.ap-beijing.myqcloud.com

    Response

    HTTP/1.1 200 OK
    Content-Type: application/xml
    Content-Length: 666
    Connection: keep-alive
    Date: Thu, 15 Jun 2017 12:37:29 GMT
    Server: tencent-ci
    x-ci-request-id: NTk0MjdmODlfMjQ4OGY3XzYzYzhf****
    
    <Response>
    <JobsDetail>
    <JobId>aab1ca9fc8a3ed11ea834c525400863904</JobId>
    <State>Success</State>
    <CreationTime>2019-07-07T12:12:12+0800</CreationTime>
    <Object>a.mp3</Object>
    <Result>1</Result>
    <AudioText>wc xx</AudioText>
    <PornInfo>
    <HitFlag>1</HitFlag>
    <Score>91</Score>
    <Label>xx</Label>
    </PornInfo>
    <AdsInfo>
    <HitFlag>0</HitFlag>
    <Score>0</Score>
    <Label></Label>
    </AdsInfo>
    <Section>
    <AdsInfo>
    <HitFlag>0</HitFlag>
    <Score>0</Score>
    </AdsInfo>
    <Duration>30000</Duration>
    <OffsetTime>0</OffsetTime>
    <PornInfo>
    <HitFlag>1</HitFlag>
    <Score>91</Score>
    <Keywords>xx</Keywords>
    <Keywords>wc</Keywords>
    </PornInfo>
    <Text>wc xx</Text>
    <Url>https://auditing-1250000000.cos.ap-guangzhou.myqcloud.com/q9MhdztF/0.mp3</Url>
    </Section>
    </JobsDetail>
    <RequestId>xxxxxxxxxxxxxx</RequestId>
    </Response>