接口规范

请求头域内容(HTTP Request Header)

BML的API服务需要在请求的HTTP头域中包含以下信息:

  • host(必填)
  • x-bce-date (必填)
  • authorization(必填)
  • content-type(选填)
  • content-length(选填)

作为示例,以下是一个标准的用户查询算法列表时的请求头域内容:

GET /v1/algo HTTP/1.1
accept-encoding: gzip, deflate
x-bce-date: 2015-03-24T13:04:26Z
host: bml.bj.baidubce.com
connection: keep-alive
accept: */*
content-type: application/json
authorization: bce-auth-v1/46bd9968a6194b4bbdf0341f2286ccce/2015-03-24T13:04:26Z/1800/host;x-bce-date/b1ad7075b37616b846a356d1db86e73abba1aed51b4d7b0d95321f69f17250b1

请求消息体格式(HTTP Request Body)

BML的API服务要求使用JSON格式的结构体来描述一个请求的具体内容。 作为示例,以下是一个标准的用户添加数据集时的请求消息体格式:

{
    "datasetName": "TestdatasetName",
    "rawData": "bos://bucketName/object",
    "dataFormat": "SparseID"
}

请求返回格式(HTTP Response)

BML的API服务要求使用JSON格式的结构体来描述一个请求返回的具体内容。 作为示例,以下是一个标准的用户获取数据集列表时的请求返回消息体格式:

HTTP/1.1 200 OK
x-bce-request-id:73c4e74c-3101-4a00-bf44-fe246959c05e
Cache-Control: no-cache
Server: BWS
Date: Tue, 24 Mar 2015 13:02:01 GMT
Content-Type: application/json;charset=UTF-8
{
    "datasets": [
    {
        "datasetId": "dataset-c9xdfdfdmt02",
        "datasetName": "lda_dataset",
        "rawData": "bos://bucketName/lda_datasource",
        "dataFormat": "SparseID"
    },
    {
        "datasetId": "dataset-a0x532fdmt01",
        "datasetName": "kmeans_dataset",
        "rawData": "bos://bucketName/kmeans_datasource",
        "dataFormat": "SparseID"
    }],
    "truncated": false,
    "marker": "9e0c8cf1-690c-444a-8727-04241f3beaa5"
}