# 开始

Qlik NPrinting API 为 REST API，供您用于以编程方式管理自己的 Qlik NPrinting 对象。通过 API 可使用在 Qlik NPrinting Web 控制台中提供的一部分功能。

您在 Qlik NPrinting Web 控制台中操纵的对象在 API 中表示为 JSON 实体。这些实体具有和您在 Qlik NPrinting Web 控制台中找到的设置对应的属性。API 具有一组端点，让您可以为应用程序、用户、组、报表等创建、检索、更新以及删除实体。对于所有请求，返回的数据基于用户权限筛选，即如果用户未得到访问特定实体的授权，则不会在响应中返回该实体。

用户必须具备相关的域帐户方可作为已验证的 Windows 用户登录 API。有关配置域帐户的更多信息，请参见[创建用户](https://help.qlik.com/zh-CN/nprinting/May2026/Content/NPrinting/Recipients&Users/Create-users-filters-groups.htm)。

为了帮助您熟悉 API，我们将使用名为 Postman 的 REST 客户端概览一些简单的示例。您将学习如何：

* 连接并验证您的用户凭据
* 检索应用程序列表
* 更新实体
* 创建过滤器

在开始之前，您将需要：

* 通过下列网址安装 Postman：

  http://www.getpostman.com/

* 知道安装了 Qlik NPrinting Server 的计算机的 URL。

信息注释根据您的环境，您可能需要配置 Chrome 以让其接受自签署的证书。有关其他信息和说明，请参见 Chrome 文档。

## Windows 身份验证

必须打开 Windows 身份验证才能允许外部连接（如 GET 和 POST REST 连接）正常工作。该设置可以打开和关闭，路径为 Qlik NPrinting web 控制台 中的管理员 &gt; 设置 &gt; 身份验证。

## 连接至 Qlik NPrinting API

默认设置下，Qlik NPrinting Server 在端口 4993 上监听 REST 请求，因此 URL 为：

```
https://NPrinting.server.name:4993/api/v1/<path>
```

## 验证您的用户凭据

在通过 NPrinting API 进行任何操作之前，必须验证您的用户凭据。

在后面的示例中，我们将通过当前的 Windows 用户名进行验证。

打开 Postman 并填写如下所示的字段。将 `NPrinting.server.name` 替换为您在其中安装 Qlik NPrinting Server 的计算机的 URL。

```
{
```

```
"result": "ae2f7261-7a1c-4f2f-8b5f-bf4247940dd5",
```

```
"code":0,
```

"message":null

}

![邮递员表格](https://help.qlik.com/zh-CN/nprinting/May2026/Content/Resources/Images/PostmanConnect.png)

## 检索应用程序列表

以下端点返回当前用户有权限查看的 Qlik NPrinting 应用程序的完整列表。

打开 Postman 并如下所示填写字段，将 NPrinting.server.name 替换为您在其中安装 Qlik NPrinting Server 的计算机的 URL：

{

"data": {

"items": [

{

"id": "270f21ea-98eb-471c-8338-5e2ad2c39e",

"name": "Global Sales Report",

"description": null,

"created": "2018-03-05T18:50:16z",

"lastUpdate": "2018-03-05T18:50:16z"

},

{

"id": "450f21ea-78eh-432c-8338-5e233p9e",

"name": Sales&Shipping",

"description": null,

"created": "2018-04-05T18:50:16z",

"lastUpdate": "2019-04-05T18:50:16z"

}

],

"totalItems": 2,

"offset": 0,

"limit": 50

}

}

![邮递员表格字段](https://help.qlik.com/zh-CN/nprinting/May2026/Content/Resources/Images/PostmanListApps.png)

响应包括 ID、标题和其他有关每个应用程序的详细信息。

## 更新实体

您可使用 PUT 方法通过 API 更新特定实体。在您更新实体时，Qlik NPrinting Server 可能替代已省略属性的默认值，因此我们建议您在执行更新时务必包括整个实体。

在该示例中，我们将更新 users 实体的 email 属性。

要更新实体，请如下操作：

1. 如果您不知道自己要更新的用户的 ID，则在 Postman 中输入以下路径并发送 GET 请求：

   /users

   在响应中搜索用户 ID。

2. 将用户 ID 附加至 Postman 中的 users 路径并发送 GET 请求：

   /users/{id}

   响应形式应和以下所列类似：

   ```
   { "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. 从返回的实体复制内部括号之间的内容，并将其粘贴至新的 PUT 请求的主体中。

4. 更改 email 的值。

5. 向实体添加密码属性和相应的值。请求的主体应和以下所列类似：

   ```
   { "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. 对于主体中更新的实体，使用以下路径发送 PUT 请求：

   users/{id}

   在该示例中，{id} 将为 113ac265-163e-4feb-854e-ade3cdafc837。

7. 使用相同的路径发送 GET 请求以验证更改。

## 创建过滤器

您可使用 POST 方法通过 API 为任务、报表、用户和对象创建过滤器。在该示例中，我们为 CategoryName 创建了简单的过滤器，其为销售额应用程序的数据源中的字段。

1. 要创建过滤器，您需要了解应用程序的 ID 以及您希望对其应用过滤器的连接。

   要检索 ID，可使用 Postman 发送 GET 请求至以下每个路径：

   /apps

   /connections

   例如，要获取应用程序 ID，可将 GET 请求发送至 NPrinting.server.name:4993/api/v1/apps。

   搜索响应中的 ID。

2. 下面是 POST /filters 请求主体中包含应用程序和连接 ID 的示例代码：

   ```
   { "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" }] }] }
   ```

   响应包括新创建的过滤器的 ID，该 ID 在 location 标头中返回。

## 后续操作

现在您已经在 Qlik NPrinting API 中看到了一些请求，可尝试其他一些 API 端点，例如开始新的任务执行。

以下是可为您提供帮助的其他资源：

[Qlik 社区](https://community.qlik.com/)

[Qlik 支持知识库](https://qliksupport.force.com/QS_CoveoSearch)