Endpoint de modelos de consulta
Exemplos de chamadas de API
As seções a seguir descrevem as várias chamadas de API que você pode fazer usando a API Query Service. Cada chamada inclui o formato da API geral, uma solicitação de amostra mostrando os cabeçalhos necessários e uma resposta de amostra.
Consulte a documentação de modelos de consulta da interface para obter informações sobre como criar modelos por meio da interface do Experience Platform.
Recuperar uma lista de modelos de consulta
Você pode recuperar uma lista de todos os modelos de consulta para sua organização fazendo uma solicitação GET para o ponto de extremidade /query-templates
.
Formato da API
GET /query-templates
GET /query-templates?{QUERY_PARAMETERS}
{QUERY_PARAMETERS}
&
). Os parâmetros disponíveis estão listados abaixo.Parâmetros de consulta
Veja a seguir uma lista de parâmetros de consulta disponíveis para listar modelos de consulta. Todos esses parâmetros são opcionais. Fazer uma chamada para esse endpoint sem parâmetros recuperará todos os modelos de consulta disponíveis para sua organização.
orderby
created
e updated
. Por exemplo, orderby=created
classificará os resultados por ordem crescente criada. Adicionar um -
antes de criar (orderby=-created
) classificará os itens por ordem decrescente.limit
start
permitem diferentes níveis de granularidade na data e hora. Os carimbos de data e hora ISO básicos assumem o formato de:
2020-09-07
para expressar a data em 7 de setembro de 2020. Um exemplo mais complexo seria escrito como 2022-11-05T08:15:30-05:00
e corresponde a 5 de novembro de 2022, às 8:15:30 am, Hora Padrão do Leste dos EUA. Um fuso horário pode ser fornecido com um deslocamento UTC e é indicado pelo sufixo "Z" (2020-01-01T01:01:01Z
). Se nenhum fuso horário for fornecido, o padrão será zero.property
name
e userId
. O único operador com suporte é ==
(igual a). Por exemplo, name==my_template
retornará todos os modelos de consulta com o nome my_template
.Solicitação
A solicitação a seguir recupera o modelo de consulta mais recente criado para sua organização.
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: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Resposta
Uma resposta bem-sucedida retorna o status HTTP 200 com uma lista de modelos de consulta para a organização especificada. A resposta a seguir retorna o modelo de consulta mais recente criado para sua organização.
{
"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
para excluir seu modelo de consulta.Criar um modelo de consulta
Você pode criar um modelo de consulta fazendo uma solicitação POST para o ponto de extremidade /query-templates
.
Formato da API
POST /query-templates
Solicitação
curl -X POST https://platform.adobe.io/data/foundation/query/query-templates
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
-d '{
"sql": "SELECT account_balance FROM user_data WHERE user_id='$user_id';",
"name": "Sample query template",
"queryParameters": {
user_id : {USER_ID}
}
}'
sql
$
à chave de parâmetro. Por exemplo, $key
e forneça os parâmetros usados no SQL como pares de valores da chave JSON no campo queryParameters
. Os valores transmitidos aqui serão os parâmetros padrão usados no modelo. Se quiser substituir esses parâmetros, você deverá substituí-los na solicitação POST.name
queryParameters
Resposta
Uma resposta bem-sucedida retorna o status HTTP 202 (Aceito) com detalhes do modelo de consulta recém-criado.
{
"sql": "SELECT account_balance FROM user_data WHERE user_id='$user_id';",
"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
para excluir seu modelo de consulta.Recuperar um modelo de consulta especificado
Você pode recuperar um modelo de consulta específico fazendo uma solicitação GET para o ponto de extremidade /query-templates/{TEMPLATE_ID}
e fornecendo a ID do modelo de consulta no caminho da solicitação.
Formato da API
GET /query-templates/{TEMPLATE_ID}
{TEMPLATE_ID}
id
do modelo de consulta que você deseja recuperar.Solicitação
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: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Resposta
Uma resposta bem-sucedida retorna o status HTTP 200 com detalhes do modelo de consulta especificado.
{
"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
para excluir seu modelo de consulta.Atualizar um modelo de consulta especificado
Você pode atualizar um modelo de consulta específico fazendo uma solicitação PUT para o ponto de extremidade /query-templates/{TEMPLATE_ID}
e fornecendo a ID do modelo de consulta no caminho da solicitação.
Formato da API
PUT /query-templates/{TEMPLATE_ID}
{TEMPLATE_ID}
id
do modelo de consulta que você deseja recuperar.Solicitação
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: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
-d '{
"sql": "SELECT account_balance FROM user_data WHERE user_id='$user_id';",
"name": "Sample query template",
"queryParameters": {
user_id : {USER_ID}
}
}'
sql
$
à chave de parâmetro. Por exemplo, $key
e forneça os parâmetros usados no SQL como pares de valores da chave JSON no campo queryParameters
. Os valores transmitidos aqui serão os parâmetros padrão usados no modelo. Se quiser substituir esses parâmetros, você deverá substituí-los na solicitação POST.name
queryParameters
Resposta
Uma resposta bem-sucedida retorna o status HTTP 202 (Aceito) com as informações atualizadas para o modelo de consulta especificado.
{
"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
para excluir seu modelo de consulta.Excluir um modelo de consulta especificado
Você pode excluir um modelo de consulta específico fazendo uma solicitação DELETE para /query-templates/{TEMPLATE_ID}
e fornecendo a ID do modelo de consulta no caminho da solicitação.
Formato da API
DELETE /query-templates/{TEMPLATE_ID}
{TEMPLATE_ID}
id
do modelo de consulta que você deseja recuperar.Solicitação
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: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Resposta
Uma resposta bem-sucedida retorna o status HTTP 202 (Aceito) com a seguinte mensagem.
{
"message": "Deleted",
"statusCode": 202
}