既然您了解了要使用哪些标头,就可以开始调用Query Service API。 以下各节将介绍您可以使用Query Service API进行的各种API调用。 每个调用都包括常规API格式、显示所需标头的示例请求和示例响应。
您可以通过向/query-templates
端点发出列表请求,检索IMS组织的所有查询模板的GET。
API格式
GET /query-templates
GET /query-templates?{QUERY_PARAMETERS}
属性 | 描述 |
---|---|
{QUERY_PARAMETERS} |
(可选)添加到请求路径的参数,这些参数配置在响应中返回的结果。 可以包括多个参数,用和符(& )分隔。 以下列出了可用参数。 |
查询参数
以下是列出列表模板的可用查询参数的查询。 所有这些参数都是可选的。 调用此端点时,无参数将检索组织可用的所有查询模板。
参数 | 描述 |
---|---|
orderby |
指定对结果进行排序的字段。 支持的字段为created 和updated 。 例如,orderby=created 将按升序创建结果。 在创建前添加- (orderby=-created )将按降序创建项目。 |
limit |
指定页面大小限制以控制页面中包含的结果数。 (默认值:20) |
start |
使用从零开始的编号,偏移响应列表。 例如,start=2 将返回从第三个列出的列表开始的查询。 (默认值:0 |
property |
根据字段筛选结果。 过滤器必须为HTML转义。 逗号用于组合多组过滤器。 支持的字段为name 和userId 。 唯一支持的运算符是== (等于)。 例如,name==my_template 将返回名为my_template 的所有查询模板。 |
请求
以下请求将检索为您的IMS组织创建的最新查询模板。
curl -X GET https://platform.adobe.io/data/foundation/query/query-templates?limit=1
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-gw-ims-org-id: {IMS_ORG}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
响应
成功的响应返回HTTP状态200,具有指定IMS组织的列表查询模板。 以下响应会返回为您的IMS组织创建的最新查询模板。
{
"templates": [
{
"sql": "SELECT *\nFROM\n accounts\nLIMIT 10\n",
"name": "Test",
"id": "f7cb5155-29da-4b95-8131-8c5deadfbe7f",
"updated": "2019-11-21T21:50:01.469Z",
"userId": "{USER_ID}",
"created": "2019-11-21T21:50:01.469Z",
"_links": {
"self": {
"href": "https://platform.adobe.io/data/foundation/query/query-templates/f7cb5155-29da-4b95-8131-8c5deadfbe7f",
"method": "GET"
},
"delete": {
"href": "https://platform.adobe.io/data/foundation/query/query-templates/f7cb5155-29da-4b95-8131-8c5deadfbe7f",
"method": "DELETE"
},
"update": {
"href": "https://platform.adobe.io/data/foundation/query/query-templates/f7cb5155-29da-4b95-8131-8c5deadfbe7f",
"method": "PUT",
"body": "{\"sql\" : \"new sql \", \"name\" : \"new name\"}"
}
}
}
],
"_page": {
"orderby": "-created",
"start": "2019-11-21T21:50:01.469Z",
"next": "2019-11-21T21:50:01.469Z",
"count": 1
},
"_links": {
"next": {
"href": "https://platform.adobe.io/data/foundation/query/query-templates?orderby=-created&start=2019-11-21T21:50:01.469Z"
},
"prev": {
"href": "https://platform.adobe.io/data/foundation/query/query-templates?orderby=-created&start=2019-11-21T21:50:01.469Z&isPrevLink=true"
}
},
"version": 1
}
可以使用_links.delete
的值删除您的查询模板](#delete-a-specified-query-template)。[
您可以通过向/query-templates
端点发出查询请求来创建POST模板。
API格式
POST /query-templates
请求
curl -X POST https://platform.adobe.io/data/foundation/query/query-templates
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-gw-ims-org-id: {IMS_ORG}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
-d '{
"sql": "SELECT * FROM accounts;",
"name": "Sample query template"
}'
属性 | 描述 |
---|---|
sql |
要创建的SQL查询。 |
name |
查询模板的名称。 |
响应
成功的响应会返回HTTP状态202(已接受),其中包含新创建的查询模板的详细信息。
{
"sql": "SELECT * FROM accounts;",
"name": "Sample query template",
"id": "0094d000-9062-4e6a-8fdb-05606805f08f",
"updated": "2020-01-09T00:20:09.670Z",
"userId": "{USER_ID}",
"created": "2020-01-09T00:20:09.670Z",
"_links": {
"self": {
"href": "https://platform.adobe.io/data/foundation/query/query-templates/0094d000-9062-4e6a-8fdb-05606805f08f",
"method": "GET"
},
"delete": {
"href": "https://platform.adobe.io/data/foundation/query/query-templates/0094d000-9062-4e6a-8fdb-05606805f08f",
"method": "DELETE"
},
"update": {
"href": "https://platform.adobe.io/data/foundation/query/query-templates/0094d000-9062-4e6a-8fdb-05606805f08f",
"method": "PUT",
"body": "{\"sql\" : \"new sql \", \"name\" : \"new name\"}"
}
}
}
可以使用_links.delete
的值删除您的查询模板](#delete-a-specified-query-template)。[
您可以通过向/query-templates/{TEMPLATE_ID}
端点发出GET请求并在请求路径中提供查询模板的ID来检索特定查询模板。
API格式
GET /query-templates/{TEMPLATE_ID}
属性 | 描述 |
---|---|
{TEMPLATE_ID} |
要检索的查询模板的id 值。 |
请求
curl -X GET https://platform.adobe.io/data/foundation/query/query-templates/0094d000-9062-4e6a-8fdb-05606805f08f
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-gw-ims-org-id: {IMS_ORG}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
响应
成功的响应会返回HTTP状态200,其中包含您指定的查询模板的详细信息。
{
"sql": "SELECT * FROM accounts;",
"name": "Sample query template",
"id": "0094d000-9062-4e6a-8fdb-05606805f08f",
"updated": "2020-01-09T00:20:09.670Z",
"userId": "A5A562D15E1645480A495CE1@techacct.adobe.com",
"created": "2020-01-09T00:20:09.670Z",
"_links": {
"self": {
"href": "https://platform.adobe.io/data/foundation/query/query-templates/0094d000-9062-4e6a-8fdb-05606805f08f",
"method": "GET"
},
"delete": {
"href": "https://platform.adobe.io/data/foundation/query/query-templates/0094d000-9062-4e6a-8fdb-05606805f08f",
"method": "DELETE"
},
"update": {
"href": "https://platform.adobe.io/data/foundation/query/query-templates/0094d000-9062-4e6a-8fdb-05606805f08f",
"method": "PUT",
"body": "{\"sql\" : \"new sql \", \"name\" : \"new name\"}"
}
}
}
可以使用_links.delete
的值删除您的查询模板](#delete-a-specified-query-template)。[
您可以通过向/query-templates/{TEMPLATE_ID}
端点发出查询请求并在请求路径中提供查询模板的ID来更新特定的PUT模板。
API格式
PUT /query-templates/{TEMPLATE_ID}
属性 | 描述 |
---|---|
{TEMPLATE_ID} |
要检索的查询模板的id 值。 |
请求
PUT请求需要填写sql和name字段,并将覆盖该查询模板的当前内容。
curl -X PUT https://platform.adobe.io/data/foundation/query/query-templates/0094d000-9062-4e6a-8fdb-05606805f08f
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-gw-ims-org-id: {IMS_ORG}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
-d '{
"sql": "SELECT * FROM accounts LIMIT 20;",
"name": "Sample query template"
}'
属性 | 描述 |
---|---|
sql |
要更新的SQL查询。 |
name |
计划查询的名称。 |
响应
成功的响应会返回HTTP状态202(已接受),其中包含指定查询模板的更新信息。
{
"sql": "SELECT * FROM accounts LIMIT 20;",
"name": "Sample query template",
"id": "0094d000-9062-4e6a-8fdb-05606805f08f",
"updated": "2020-01-09T00:29:20.028Z",
"lastUpdatedBy": "{USER_ID}",
"userId": "{USER_ID}",
"created": "2020-01-09T00:20:09.670Z",
"_links": {
"self": {
"href": "https://platform.adobe.io/data/foundation/query/query_templates/0094d000-9062-4e6a-8fdb-05606805f08f",
"method": "GET"
},
"delete": {
"href": "https://platform.adobe.io/data/foundation/query/query_templates/0094d000-9062-4e6a-8fdb-05606805f08f",
"method": "DELETE"
},
"update": {
"href": "https://platform.adobe.io/data/foundation/query/query_templates/0094d000-9062-4e6a-8fdb-05606805f08f",
"method": "PUT",
"body": "{\"sql\" : \"new sql \", \"name\" : \"new name\"}"
}
}
}
可以使用_links.delete
的值删除您的查询模板](#delete-a-specified-query-template)。[
您可以通过向/query-templates/{TEMPLATE_ID}
发出查询请求并在请求路径中提供查询模板的ID来删除特定的DELETE模板。
API格式
DELETE /query-templates/{TEMPLATE_ID}
属性 | 描述 |
---|---|
{TEMPLATE_ID} |
要检索的查询模板的id 值。 |
请求
curl -X DELETE https://platform.adobe.io/data/foundation/query/query-templates/0094d000-9062-4e6a-8fdb-05606805f08f
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-gw-ims-org-id: {IMS_ORG}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
响应
成功的响应会返回HTTP状态202(已接受),并显示以下消息。
{
"message": "Deleted",
"statusCode": 202
}