接口文档SDK业务专题开发者工具

接收应答

本节将为您介绍 Marketing API 的应答内容以及建议的通用处理流程。

HTTP 状态码

应答 Headers 中支持 HTTP 标准状态码,具体如下:

状态码 名称 描述
200 成功 当 Marketing API 请求被正确处理,且能按设计获取结果时,返回该状态码
3xx 跳转 在特定情况下,Marketing API 可能会返回这些状态码,建议调用方按照HTTP标准来处理
4xx 客户端错误 由客户端原因造成的错误
5xx 服务器端错误 Marketing API 或其下层服务发生内部错误

响应头结构

X-TSA-Trace-Id:全局唯一id,通过该id可帮助技术支持快速定位问题,所以反馈问题时,请告知该id。 X-RateLimit-Remaining:当前应用对于当前请求接口的频次余量百分比,以“,”分割,顺序为“天,分钟”,可以此作为依据调整接口调用频率。

响应数据结构

响应数据中的结构定义如下表所示:

名称 类型 是否一定返回 限制 描述
code int64 等于0表示成功,不等于0表示错误,具体见文档附录返回码定义 返回码
message string code不等于0时,message为错误描述 错误描述
message_cn string code不等于0时,message_cn为错误情况的中文描述 中文错误描述
data object 具体返回内容见各接口定义,只在code等于0时可能返回 资源数据
errors object 只在code不等于0时可能返回 详细错误信息

以查询广告主信息(campaigns/get)接口的应答为例,正常调用返回的结果如下:

HTTP/1.1 200 OK
Date: Fri, 06 Mar 2020 06:31:22 GMT
Content-Type: application/json;charset=utf-8
Transfer-Encoding: chunked
Connection: keep-alive
Server: nginx
X-TSA-Trace-Id: 94eff22c95ede3a34b942ae041bf2db6
X-RateLimit-Remaining: 50%,50%

{
    code: 0,
    message: ,
    message_cn: ,
    data: {
        list: [
            {
                campaign_id: ,
                campaign_name: 五一节大促推广计划,
                configured_status: AD_STATUS_SUSPEND,
                campaign_type: CAMPAIGN_TYPE_NORMAL,
                promoted_object_type: PROMOTED_OBJECT_TYPE_APP_IOS,
                daily_budget: 50000,
                budget_reach_date: 20170501,
                created_time: 1491019858,
                last_modified_time: 1491098468,
                speed_mode: SPEED_MODE_STANDARD
            }
        ],
        page_info: {
            page: 1,
            page_size: 10,
            total_number: 1,
            total_page: 1
        }
    }
}   

如果调用参数不正确,则会在应答数据正文中返回具体的业务错误信息。例如传递的TOKEN参数过期时,返回结果如下:

HTTP/1.1 200 OK
Date: Fri, 06 Mar 2020 06:31:22 GMT
Content-Type: application/json;charset=utf-8
Transfer-Encoding: chunked
Connection: keep-alive
Server: nginx
X-TSA-Trace-Id: 94eff22c95ede3a34b942ae041bf2db7
X-RateLimit-Remaining: 50%,50%

{
    code: 30102,
    message: token is expired,
    message_cn: token已过期
}

应答处理流程

建议您按照如下流程图所示对应答进行处理: