Iniciando

A API do Qlik NPrinting é uma API REST usada para gerenciar objetos do Qlik NPrinting programaticamente. Um subconjunto da funcionalidade que você encontra no Console da Web do Qlik NPrinting está disponível por meio da API.

Os objetos que você manipula no Console da Web do Qlik NPrinting são representados na API como entidades JSON. Essas entidades têm propriedades que correspondem às configurações encontradas no Console da Web do Qlik NPrinting. A API tem um conjunto de pontos de extremidade que permitem criar, recuperar, atualizar e excluir entidades de aplicativos, usuários, grupos, relatórios e assim por diante. Para todas as solicitações, os dados retornados são filtrados com base em permissões de usuário. Isso significa que, se um usuário não estiver autorizado a acessar uma determinada entidade, esta não será retornada na resposta.

Um usuário deve ter uma conta de domínio associada para fazer login na API como um usuário autenticado do Windows. Para obter mais informações sobre como configurar uma conta de domínio, consulte Criando usuários.

Para ajudar você a se familiarizar com a API, analisaremos passo a passo alguns exemplos simples usando um cliente REST chamado Postman. Você aprenderá a:

  • Conectar-se e autenticar suas credenciais de usuário
  • Recuperar uma lista de aplicativos
  • Atualizar uma entidade
  • Criar um filtro

Antes de começar, você precisará fazer o seguinte:

  • Instalar o Postman, disponível em

    http://www.getpostman.com/

  • Conhecer a URL do computador no qual o Qlik NPrinting Server está instalado
Nota: Dependendo do seu ambiente, talvez seja necessário configurar o Chrome para aceitar certificados autoassinados. Consulte a documentação do Chrome para obter instruções e informações adicionais.

Conectando-se a APIs do Qlik NPrinting

Por padrão, o Qlik NPrinting Server escuta solicitações REST na porta 4993 e, portanto, a URL é:

https://nome.servidor.NPrinting:4993/api/v1/<caminho>

Autenticando suas credenciais de usuário

Antes de fazer qualquer coisa com a API do NPrinting, você deve autenticar suas credenciais de usuário.

No exemplo a seguir, autenticaremos com o nome de usuário atual do Windows.

Abra o Postman e preencha os campos conforme mostrado a seguir, substituindo nome.servidor.NPrinting pela URL do computador no qual o Qlik NPrinting Server está instalado:

Recuperando uma lista de aplicativos

O ponto de extremidade a seguir retorna uma lista completa de aplicativos do Qlik NPrinting que o usuário atual tem permissão para visualizar.

Abra o Postman e preencha os campos conforme mostrado a seguir, substituindo nome.servidor.NPrinting pela URL do computador no qual o Qlik NPrinting Server está instalado:

A resposta inclui o ID, o título e outros detalhes sobre cada aplicativo.

Atualizando uma entidade

Você pode atualizar certas entidades por meio da API usando o método PUT. Quando você atualiza uma entidade, o Qlik NPrinting Server pode substituir valores padrão de propriedades omitidas. Por isso, ao fazer uma atualização, recomendamos que você sempre inclua a entidade inteira.

Neste exemplo, atualizaremos a propriedade email da entidade users.

Para atualizar a entidade:

  1. Se você não souber o ID do usuário que deseja atualizar, insira o seguinte caminho no Postman e envie uma solicitação GET:

     /users

    Procure o ID do usuário na resposta.

  2. Acrescente o ID do usuário ao caminho de users no Postman e envie uma solicitação GET:

    /users/{id}

    A resposta deve ser semelhante à seguinte:

    { "data": { "id": "113ac265-163e-4feb-854e-ade3cdafc837", "email": "abc@example.com", "created": "2018-02-22T16:17:18Z", "lastUpdate": "2018-02-28T18:20:57Z", "enabled": true, "userName": "Test", "domainAccount": "domain\\test", "timezone": "Europe/Rome", "locale": "En", "folder": "test folder", "subFolder": "test subFolder" }

    }
  3. Copie o conteúdo entre os parênteses internos da entidade retornada e cole-o no corpo de uma nova solicitação PUT.
  4. Altere o valor de email.
  5. Adicione a propriedade password e o valor correspondente à entidade. O corpo da solicitação deve ser semelhante ao seguinte:

    { "password": "test", "id": "113ac265-163e-4feb-854e-ade3cdafc837", "email": "xyz@example.com", "created": "2018-02-22T16:17:18Z", "lastUpdate": "2018-02-28T18:20:57Z", "enabled": true, "userName": "Test", "domainAccount": "domain\\test", "timezone": "Europe/Rome", "locale": "En", "folder": "test folder", "subFolder": "test subFolder" }

  6. Com a entidade atualizada no corpo, envie uma solicitação PUT usando o seguinte caminho:

    /users/{id}

    Neste exemplo, {id} seria 113ac265-163e-4feb-854e-ade3cdafc837.

  7. Envie uma solicitação GET usando o mesmo caminho para verificar a alteração.

Criando um filtro

É possível criar filtros para tarefas, relatórios, usuários e objetos por meio da API usando o método POST. Neste exemplo, criamos um filtro simples para CategoryName, que é um campo na fonte de dados de um aplicativo de vendas.

  1. Para criar um filtro, você precisa conhecer os IDs do aplicativo e a conexão à qual deseja aplicar esse filtro.

    Para recuperar os IDs, envie uma solicitação GET usando o Postman para cada um dos seguintes caminhos:

    /apps

    /connections

    Por exemplo, para obter o ID do aplicativo, envie uma solicitação GET para nome.servidor.NPrinting:4993/api/v1/apps.

    Procure os IDs nas respostas.

  2. Aqui está um exemplo do código que inclui os IDs do aplicativo e da conexão no corpo de uma solicitação POST /filters:

    { "appId": "de867383-3d6a-4f37-8fe5-387552c60d3f", "enabled": true, "name": "AverageSaleByCategory", "description": null, "fields": [ { "connectionId": "9a7b1016-8d22-46ac-a384-158f715547a7", "name": "CategoryName", "overrideValues": false, "values": [ { "value": "Bath Clothes", "type": "text" }, { "value": "Men´s Clothes", "type": "text" }] }] }

    A resposta inclui o ID do filtro recém-criado, que é retornado no header location.

O que fazer em seguida

Agora que você viu algumas solicitações na API do Qlik NPrinting, tente alguns dos outros pontos de extremidade da API, por exemplo, para iniciar uma nova execução de tarefa.

Veja a seguir alguns recursos adicionais que podem ajudá-lo: