Show Menu
TÓPICOS×

Queries

Chamadas de API de exemplo

As seções a seguir percorrem as chamadas que você pode fazer usando o /queries endpoint na API de serviço de Query. Cada chamada inclui o formato de API geral, uma solicitação de amostra mostrando os cabeçalhos necessários e uma resposta de amostra.

Recuperar uma lista de query

Você pode recuperar uma lista de todos os query para a sua Organização IMS fazendo uma solicitação GET ao /queries endpoint.
Formato da API
GET /queries
GET /queries?{QUERY_PARAMETERS}

  • {QUERY_PARAMETERS} : ( Opcional ) Parâmetros adicionados ao caminho da solicitação que configuram os resultados retornados na resposta. Vários parâmetros podem ser incluídos, separados por E comercial ( & ). Os parâmetros disponíveis estão listados abaixo.
Parâmetros do Query
A seguir está uma lista de parâmetros de query disponíveis para listar query. Todos esses parâmetros são opcionais. Efetuar uma chamada para este terminal sem parâmetros recuperará todos os query disponíveis para a sua organização.
Parâmetro
Descrição
orderby
Especifica o campo pelo qual ordenar os resultados. Os campos suportados são created e updated . Por exemplo, orderby=created classificará os resultados em ordem crescente. A adição de um item - antes de criado ( orderby=-created ) classificará os itens em ordem decrescente.
limit
Especifica o limite de tamanho de página para controlar o número de resultados que são incluídos em uma página. ( Default value: 20 )
start
Desloca a lista de resposta, usando a numeração com base em zero. Por exemplo, start=2 retornará uma lista a partir do query listado. ( Default value: 0 )
property
Filtrar resultados com base em campos. Os filtros devem ter escape de HTML. As vírgulas são usadas para combinar vários conjuntos de filtros. Os campos suportados são created , updated , state e id . A lista dos operadores suportados é > (maior que), < (menor que), >= (maior que ou igual a), <= (menor que ou igual a), == (igual a), != (diferente de) e ~ (contém). Por exemplo, id==6ebd9c2d-494d-425a-aa91-24033f3abeec retornará todos os query com a ID especificada.
excludeSoftDeleted
Indica se um query que tenha sido excluído de forma suave deve ser incluído. Por exemplo, excludeSoftDeleted=false incluirá ​query suaves excluídos. ( Booliano, valor padrão: true )
excludeHidden
Indica se query não controlados pelo usuário devem ser exibidos. Ter esse valor definido como falso incluirá query não controlados pelo usuário, como definições CURSOR, FETCH ou query de metadados. ( Booliano, valor padrão: true )
Solicitação
A solicitação a seguir recupera o query mais recente criado para sua organização IMS.
curl -X GET https://platform.adobe.io/data/foundation/query/queries?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}'

Resposta
Uma resposta bem-sucedida retorna o status HTTP 200 com uma lista de query para a Organização IMS especificada como JSON. A resposta a seguir retorna o query mais recente criado para sua organização IMS.
{
    "queries": [
        {
            "isInsertInto": false,
            "request": {
                "dbName": "prod:all",
                "sql": "SELECT *\nFROM\n  accounts\nLIMIT 10\n"
            },
            "state": "SUCCESS",
            "rowCount": 0,
            "errors": [],
            "isCTAS": false,
            "version": 1,
            "id": "9957bd7f-2244-4fd5-91bc-077d7df1d8e5",
            "elapsedTime": 28,
            "updated": "2019-12-06T22:00:17.390Z",
            "client": "Adobe Query Service UI",
            "userId": "{USER_ID}",
            "created": "2019-12-06T22:00:17.362Z",
            "_links": {
                "self": {
                    "href": "https://platform.adobe.io/data/foundation/query/queries/9957bd7f-2244-4fd5-91bc-077d7df1d8e5",
                    "method": "GET"
                },
                "soft_delete": {
                    "href": "https://platform.adobe.io/data/foundation/query/queries/9957bd7f-2244-4fd5-91bc-077d7df1d8e5",
                    "method": "PATCH",
                    "body": "{ \"op\": \"soft_delete\"}"
                },
                "referenced_datasets": [
                    {
                        "id": "5b2bdd32230d4401de87397c",
                        "href": "https://platform.adobe.io/data/foundation/catalog/dataSets/5b2bdd32230d4401de87397c"
                    }
                ]
            }
        }
    ],
    "_page": {
        "orderby": "-created",
        "start": "2019-12-06T22:00:17.362Z",
        "next": "2019-08-01T00:14:21.748Z",
        "count": 1
    },
    "_links": {
        "next": {
            "href": "https://platform.adobe.io/data/foundation/query/queries?orderby=-created&start=2019-08-01T00:14:21.748Z"
        },
        "prev": {
            "href": "https://platform.adobe.io/data/foundation/query/queries?orderby=-created&start=2019-12-06T22:00:17.362Z&isPrevLink=true"
        }
    },
    "version": 1
}

Criar um query

Você pode criar um novo query fazendo uma solicitação POST no /queries ponto de extremidade.
Formato da API
POST /queries

Solicitação
A solicitação a seguir cria um novo query, configurado pelos valores fornecidos na carga:
curl -X POST https://platform.adobe.io/data/foundation/query/queries \
 -H 'Authorization: Bearer {ACCESS_TOKEN}' \
 -H 'Content-Type: application/json' \
 -H 'x-gw-ims-org-id: {IMS_ORG}' \
 -H 'x-api-key: {API_KEY}' \
 -H 'x-sandbox-name: {SANDBOX_NAME}' \
 -d '{
        "dbName": "prod:all",
        "sql": "SELECT * FROM accounts;",
        "name": "Sample Query"
        "description": "Sample Description"
    }  

Propriedade
Descrição
dbName
O nome do banco de dados para o qual você está criando um query SQL.
sql
O query SQL que você deseja criar.
name
O nome do seu query SQL.
description
A descrição do seu query SQL.
Resposta
Uma resposta bem-sucedida retorna o status HTTP 202 (Aceito) com detalhes do query recém-criado. Quando o query terminar de ser ativado e for executado com êxito, ele state será alterado de SUBMITTED para SUCCESS .
{
    "isInsertInto": false,
    "request": {
        "dbName": "prod:all",
        "sql": "SELECT * FROM accounts;",
        "name": "Sample Query",
        "description": "Sample Description"
    },
    "state": "SUBMITTED",
    "rowCount": 0,
    "errors": [],
    "isCTAS": false,
    "version": 1,
    "id": "4d64cd49-cf8f-463a-a182-54bccb9954fc",
    "elapsedTime": 0,
    "updated": "2020-01-08T21:47:46.865Z",
    "client": "API",
    "userId": "{USER_ID}",
    "created": "2020-01-08T21:47:46.865Z",
    "_links": {
        "self": {
            "href": "https://platform.adobe.io/data/foundation/query/queries/4d64cd49-cf8f-463a-a182-54bccb9954fc",
            "method": "GET"
        },
        "soft_delete": {
            "href": "https://platform.adobe.io/data/foundation/query/queries/4d64cd49-cf8f-463a-a182-54bccb9954fc",
            "method": "PATCH",
            "body": "{ \"op\": \"soft_delete\"}"
        },
        "cancel": {
            "href": "https://platform.adobe.io/data/foundation/query/queries/4d64cd49-cf8f-463a-a182-54bccb9954fc",
            "method": "PATCH",
            "body": "{ \"op\": \"cancel\"}"
        }
    }
}

Você pode usar o valor de _links.cancel para cancelar o query criado.

Recuperar um query por ID

Você pode recuperar informações detalhadas sobre um query específico, fazendo uma solicitação GET para o /queries endpoint e fornecendo o id valor do query no caminho da solicitação.
Formato da API
GET /queries/{QUERY_ID}

Propriedade
Descrição
{QUERY_ID}
O id valor do query que você deseja recuperar.
Solicitação
curl -X GET https://platform.adobe.io/data/foundation/query/queries/4d64cd49-cf8f-463a-a182-54bccb9954fc \
 -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}'

Resposta
Uma resposta bem-sucedida retorna o status HTTP 200 com informações detalhadas sobre o query especificado.
{
    "isInsertInto": false,
    "request": {
        "dbName": "prod:all",
        "sql": "SELECT * FROM accounts;",
        "name": "Sample Query",
        "description": "Sample Description"
    },
    "state": "SUBMITTED",
    "rowCount": 0,
    "errors": [],
    "isCTAS": false,
    "version": 1,
    "id": "4d64cd49-cf8f-463a-a182-54bccb9954fc",
    "elapsedTime": 0,
    "updated": "2020-01-08T21:47:46.865Z",
    "client": "API",
    "userId": "{USER_ID}",
    "created": "2020-01-08T21:47:46.865Z",
    "_links": {
        "self": {
            "href": "https://platform.adobe.io/data/foundation/query/queries/4d64cd49-cf8f-463a-a182-54bccb9954fc",
            "method": "GET"
        },
        "soft_delete": {
            "href": "https://platform.adobe.io/data/foundation/query/queries/4d64cd49-cf8f-463a-a182-54bccb9954fc",
            "method": "PATCH",
            "body": "{ \"op\": \"soft_delete\"}"
        },
        "cancel": {
            "href": "https://platform.adobe.io/data/foundation/query/queries/4d64cd49-cf8f-463a-a182-54bccb9954fc",
            "method": "PATCH",
            "body": "{ \"op\": \"cancel\"}"
        }
    }
}

Você pode usar o valor de _links.cancel para cancelar o query criado.

Cancelar um query

Você pode solicitar a exclusão de um query especificado, fazendo uma solicitação PATCH para o ponto de extremidade /queries e fornecendo o id valor do query no caminho da solicitação.
Formato da API
PATCH /queries/{QUERY_ID}

Propriedade
Descrição
{QUERY_ID}
O id valor do query que você deseja cancelar.
Solicitação
Essa solicitação de API usa a sintaxe do Patch JSON para sua carga. Para obter mais informações sobre como a correção JSON funciona, leia o documento de fundamentos da API.
curl -X PATCH https://platform.adobe.io/data/foundation/query/queries/4d64cd49-cf8f-463a-a182-54bccb9954fc \
 -H 'Authorization: Bearer {ACCESS_TOKEN}' \
 -H 'Content-Type: application/json',
 -H 'x-gw-ims-org-id: {IMS_ORG}' \
 -H 'x-api-key: {API_KEY}' \
 -H 'x-sandbox-name: {SANDBOX_NAME}'
 -d '{
   "op": "cancel"  
 }'

Propriedade
Descrição
op
Para cancelar o query, é necessário definir o parâmetro op com o valor cancel .
Resposta
Uma resposta bem-sucedida retorna o status HTTP 202 (Aceito) com a seguinte mensagem:
{
    "message": "Query cancel request received",
    "statusCode": 202
}