# Response

After sending a request, you will receive a response, including the status code, response header, and response body.

#### Status Code

A status code is a group of digits, ranging from 1xx to 5xx. It indicates the status of a request. For more information, see Status Code.

For example, if status code 201 is returned for calling the API used to obtain a user token, the request is successful.

#### Response Header

Similar to a request, a response also has a header, for example, Content-type.

Table 1 Common response header fields
Header | Description | Mandatory
--- | --- | ---
Content-Type | Media type of the message body sent to a receiver Type: string Default value: application/json; charset=UTF-8 | Yes
X-request-id | This field carries the request ID for task tracing. Type: string request_id-timestamp-hostname (request_id is the UUID generated on the server, timestamp indicates the current timestamp, and hostname is the name of the server that processes the current API.) Default value: none | No
X-ratelimit | This field carries the total number of flow control requests. Type: integer Default value: none | No
X-ratelimit-used | This field carries the number of remaining requests. Type: integer Default value: none | No
X-ratelimit-window | This field carries the flow control unit. Type: string The unit is minute, hour, or day. Default value: hour | No

Figure 1 shows the response header fields for the API used to obtain a user token.

x-subject-token is the desired user token. This token can then be used to authenticate the calling of other APIs.

Figure 1 Header fields of the response to the request for obtaining a user token

#### Response Body

The body of a response is often returned in structured format as specified in the Content-Type header field. The response body transfers content except the response header.

The following is part of the response body for the API used to obtain a user token.

    {
        "token": {
            "expires_at": "2019-02-13T06:52:13.855000Z",
            "methods": [
                "password"
            ],
            "catalog": [
                {
                    "endpoints": [
                        {
                            "region_id": "aaa",
    ......

If an error occurs during API calling, an error code and a message will be displayed. The following shows an error response body.

    {
        "error_message": "The format of message is error",
        "error_code": "AS.0001"
    }

In the error response body, error_code is an error code, and error_message provides information about the error. For more details, see Error Codes.

Parent topic: Calling APIs