This topic describes the request and response parameters that are required for all Message Queue for MQTT API operations.

Common request parameters

Table 1. Common request parameters
Parameter Type Required Description
Format String No The format in which to return the response. Valid values:

JSON and XML. Default value: JSON.

Version String Yes The version number of the API. The value is in the YYYY-MM-DD format. Set the value to

2020-04-20

.
AccessKeyId String Yes The AccessKey ID provided to you by Alibaba Cloud.
Signature String Yes The signature string of the current request.
SignatureMethod String Yes The encryption method of the signature string. Set the value to

HMAC-SHA1

.
Timestamp String Yes The timestamp of the request. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.

For example, 20:00:00 on January 10, 2013 (UTC+8) is written as 2013-01-10T12:00:00Z.

SignatureVersion String Yes The version of the signature encryption algorithm. Set the value to

1.0

.
SignatureNonce String Yes A unique, random number used to prevent replay attacks.

You must use different numbers for different requests.

ResourceOwnerAccount String No The account of the owner of the requested resource. Set the value to the logon username.
Sample requests
http://onsmqtt.[regionId].aliyuncs.com/?Action=[ApiName]
&TimeStamp=2020-05-19T10%3A33%3A56Z
&Format=xml
&AccessKeyId=testid
&SignatureMethod=Hmac-SHA1
&SignatureNonce=NwDAxvLU6tFE0DVb
&Version=2020-04-20
&SignatureVersion=1.0
&Signature=[Signature]

Common response parameters

Responses can be returned in either the JSON or XML format. You can specify the response format in the request. The default response format is XML. Each response returns a unique RequestId regardless of whether the call is successful.
  • A 2xx HTTP status code indicates a successful call.
  • A 4xx or 5xx HTTP status code indicates a failed call.
  • Sample success responses

    Each response returns response parameters and a request ID if a call is successful. In this case, the HTTP status code is 2xx.

    • XML format
      <? xml version="1.0" encoding="utf-8"? > 
          <!—Result Root Node-->
          <Interface Name+Response>
              <!—Return Request Tag-->
              <RequestId>4C467B38-3910-447D-87BC-AC049166F216</RequestId>
              <!—Return Result Data-->
          </Interface Name+Response>
                                  
    • JSON format
      {
          "RequestId":"4C467B38-3910-447D-87BC-AC049166F216",
          /*Return Result Data*/
          }
  • Sample error responses

    If an error occurs when you call an operation, an error response that consists of an error code, an error message, and a request ID is returned. In this case, the HTTP status code is 4xx or 5xx. You can fix errors based on the error codes. For more information, see Error codes. If you fail to locate the error, submit a ticket and provide the value of the RequestId parameter in the ticket to request Customer Services.

    • XML format
      <? xml version="1.0" encoding="UTF-8"? ><! --Result Root Node-->
      <Error>
          <RequestId>540CFF28-407A-40B5-B6A5-74Bxxxxxxxxx</RequestId> <! --Request ID-->
          <Code>MissingParameter.CommandId</Code> <! --Error code-->
          <Message>The input parameter "CommandId" that is required for processing this request is not supplied. </Message> <! --Error message-->
      </Error>
    • JSON format
      {
          "RequestId": "540CFF28-407A-40B5-B6A5-74Bxxxxxxxxx", /* Request ID */
          "Code": "MissingParameter.CommandId", /* Error code */
          "Message": "The input parameter "CommandId" that is required for processing this request is not supplied." /* Error message */
      }