# 员工免审安装应用

商店应用发布后，支持企业员工免审安装应用进行试用。相较于需要企业管理员审核才能安装应用的模式，免审安装可以增加 ISV 开发的商店应用的安装量，从而使 ISV 获取更多的商机线索。

## 使用限制

暂不支持通过测试企业测试该功能。建议使用灰度企业测试，使用说明参见[添加灰度企业](https://open.feishu.cn/document/uMzNwEjLzcDMx4yM3ATM/uYjMyUjL2IjM14iNyITN#42b07d65)。

## 功能简介

为商店应用配置免审安装功能后，非管理员身份的员工无需等待企业管理员的审核，可以直接安装该应用进行试用。你可以通过以下场景对比了解员工免审安装应用的优势。

场景类型 | 说明
---|---
商店应用支持员工免审安装 | 该场景下，无论当前员工是否为企业管理员，都可以在应用中心内免审安装应用，体验应用的部分或全部功能。降低了试用应用的门槛，同时，在员工试用阶段 ISV 即可获取相应商机线索，便于 ISV 及时跟进商机。
商店应用不支持员工免审安装 | 该场景下，只能由企业管理员安装应用，即便企业管理员在管理后台允许企业成员申请安装应用，普通员工也需要先经过审核才能安装应用，这种方式一定程度影响了对商店应用有实际需求的业务负责人去试用应用，进而可能影响商店应用的安装量。

warning
强烈推荐你配置商店应用的免审安装功能。应用中心的推荐流量会倾向于配置了免审安装的应用，帮助你获取更多的应用安装量。

在配置免审安装应用功能前，你需要先了解“免审”的实现逻辑：
1. 开发商店应用时，如需调用开放平台服务端 OpenAPI，则需要先为应用授予相应的 [API 权限](https://open.feishu.cn/document/ukTMukTMukTM/uQjN3QjL0YzN04CN2cDN)。API 权限分为 **免审** 和 **需要审核** 两种类型，需要审核的权限表示该权限安全风险高，需要经过企业管理员审核后才能授权给应用使用。免审的权限安全风险低，允许免审授权给应用使用。
2. 当员工免审安装应用时，系统默认为应用授予的是免审权限，其他需要审核的权限会在试用期间按需向管理员提交授权审核（会一次性提交所有未授权的权限）。例如，应用的某一功能依赖需要审核的权限，当员工试用该功能时需要先向管理员申请授权，通过后才可以试用该功能。如果是企业管理员安装应用，会一次授予应用所需的全部 API 权限（包括免审和需要审核的权限）。

基于以上“免审”的实现逻辑，你需要在开发商店应用时，评估免审安装应用后可以试用的功能范围，在该范围内的功能尽可能避免使用开放平台的需要审核的权限。

## 开发流程

商店应用的完整开发流程参见[商店应用上架流程](https://open.feishu.cn/document/uMzNwEjLzcDMx4yM3ATM/ugzNwEjL4cDMx4CO3ATM)，本文不做详细介绍。本文主要介绍开发商店应用时如何配置员工免审安装应用，通过员工免审安装应用来获取更多的商机线索。

### 步骤一：梳理应用所需的 API 权限

应用调用开放平台 OpenAPI 时，需要为应用[申请 API 权限](https://open.feishu.cn/document/ukTMukTMukTM/uQjN3QjL0YzN04CN2cDN)。你需要梳理应用所需的 API 权限，同时尽可能让应用使用免审权限，让试用应用的员工尽可能体验到应用的更多功能。商店应用所需权限是否免审，你可以在[开发者后台](https://open.feishu.cn/app) > **应用详情页** > **权限管理** 功能页内开通权限时，在权限列表中查看。

![image.png](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/6ef80b67062282d64b4079dfa67918a5_Bx6wOwvqik.png?height=1532&lazyload=true&maxWidth=600&width=2860)

### 步骤二：在应用试用的主体功能中避免调用需要审核的权限

员工免审安装应用后，应用可以直接获取免审权限，但需要审核的权限会打断员工试用，员工需要向企业管理员申请权限后才可以继续试用。为了使企业员工免审安装应用后可以体验到更多的功能，你在开发应用过程中，需要尽可能避免在主体功能中使用需要审核的权限，或者在未获得授权时仅提供功能演示。
**说明**：如果应用必须申请使用需要审核的权限来调用 OpenAPI，则建议你在开发应用时调整调用这些需要审核权限的 API 的时机，尽可能将这些功能后置，不阻塞员工试用应用的主体功能。

如下图所示：
- 如果把需要审核的权限前置到应用主体功能，则用户打开应用便可能需要申请授权，阻塞用户试用应用。
- 如果不使用或者后置需要审核的权限，则用户打开应用后可以直接试用一定范围内的功能，当遇到需要审核权限的功能时再选择是否申请授权。

![](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/7a5ce057a4e3726f5a24fe188e206d7c_nRENt7shCk.png?height=1170&lazyload=true&maxWidth=600&width=1402)

### 步骤三：针对需要审核的权限做未授权适配

当应用服务端调用某个 OpenAPI 时，如果应用没有获得接口所需权限的授权，则调用接口会返回统一的错误码（[99991672](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-fix-the-99991672-error)）。你在开发应用时，需要针对该错误码进行未授权适配操作。可选择的操作方式如下：

- 方式一：应用服务端调用[向管理员申请授权](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/application-v6/scope/apply)接口，以应用身份直接向管理员申请授权，同时需要提示用户等待管理员处理审核。

- 方式二：应用服务端通知前端展示 **开通完整功能** 的页面，以用户的身份向管理员发起申请。该方式对应的前端展示形式有两种：

- 飞书客户端内：调用客户端 API [applyTenantAppScope](https://open.feishu.cn/document/uYjL24iN/uczMx4yNzEjL3MTM/applytenantappscope)，以弹框的形式进行展示。

![](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/abd83812272be04b6b2442622a2b0040_nwaf8PIHe8.png?height=1084&lazyload=true&maxWidth=600&width=1844)
    - 飞书客户端外（浏览器或者机器人场景）：重定向到申请授权页面 `https://app.feishu.cn/napi/app-apply/advanced-permissions?appId=cli_xxxx`（其中 URL 的 Query 参数 `appId` 的值需要替换为商店应用的 App ID，获取方式参考[通用参数](https://open.feishu.cn/document/ukTMukTMukTM/uYTM5UjL2ETO14iNxkTN/terminology)），以 Web 页面的形式展示。

![](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/f2d3c4b7cc4c65522e97619e2d947e2c_J97m6x4HIh.png?height=1200&lazyload=true&maxWidth=600&width=1994)

管理员通过权限审批后，如果是以应用身份（tenant_access_token）调用 API 则不需要重新获取 API 权限；如果是以用户身份（user_access_token） 调用 API 则需要重新通过用户授权获取 API 权限。更多信息参考[终端用户授权概述](https://open.feishu.cn/document/common-capabilities/sso/end-user-consent-overview)。

### 步骤四：为应用开启普通成员可免审核安装应用的开关

开发完成应用功能后，你需要登录[开发者后台](https://open.feishu.cn/app)，在应用详情页开启 **普通成员可免审核安装应用** 开关。
1. 在应用详情页左侧导航栏，选择 **开发配置** > **权限管理**。
2. 在 **权限管理** 页面的 **普通成员可免审核安装应用** 区域，打开开关。

![](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/d222dd9320df397b4c6168435fb9ddd5_4daGWWjMT7.png?height=1064&lazyload=true&maxWidth=600&width=2882)

### 步骤五：配置应用信息并发布应用

商店应用完整发布流程参考[发布商店应用](https://open.larkoffice.com/document/isv-guides/publish-your-app/step7-publish-the-store-application)，其中你需要注意配置发布所需的付费信息时，在付费方案中设置应用的 **试用周期**，如下图所示，支持设置为 **不提供试用**、**7 天免费试用**、**15 天免费试用**。

![](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/71a795d35a0261b21568a02adfd5bc5b_PM3E3aeo6M.png?height=1446&lazyload=true&maxWidth=600&width=2882)

## 员工免审安装应用

### 前提条件

企业员工是否可以安装商店应用，依赖于企业管理员在 [管理后台](https://feishu.cn/admin) > **工作台** > **应用管理** > **应用管理规则** 中配置的规则。如下图所示，表示管理员允许员工安装应用。

![](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/faf47f0ccdc59bb18759e837c03abeab_w1POrerQQb.png?height=672&lazyload=true&maxWidth=600&width=2738)

### 操作说明

支持员工免审安装的应用发布上架应用中心后，企业员工可以在[应用中心](https://app.feishu.cn/)搜索并试用该应用，当员工获取该应用后，会被添加至应用的[可用范围](https://open.feishu.cn/document/home/introduction-to-scope-and-authorization/availability)内。

![](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/97e6f317ba970ac4f9d3374eeaff9420_kvQcyi9JLH.png?height=1322&lazyload=true&maxWidth=600&width=1736)

安装成功后会出现如下图所示的弹窗提示，你可以选择邀请其他员工，最多可邀请 100 个人。

![](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/595a42877a833e6b0e23df0031115852_WsFVJHJmM9.png?height=246&lazyload=true&maxWidth=400&width=834)

## 常见问题

### 应用中心的应用，企业管理员安装和普通员工免审安装有什么区别？

企业管理员安装或普通员工免审安装都是为企业安装了应用（普通员工免审安装也是给企业安装该应用，不是仅给自己安装）。区别在于：
- 企业管理员安装应用时，应用会直接开通所有所需的 API 权限，包括免审权限和需要审核的权限。
- 普通员工免审安装应用时，应用默认只开通免审的 API 权限，后续员工试用应用过程中，如果功能用到了需要审核的权限，才会向企业管理员申请授权，待授权通过后才可以使用功能。

### 在调用申请授权接口之前，如何判断应用是否已获得授权？

可通过以下 API 获取当前应用的权限授权状态（这些接口无权限要求，可直接调用）。

- 服务端 API：[查询租户授权状态](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/application-v6/scope/list)
- 客户端 API：[getTenantAppScopes](https://open.feishu.cn/document/uYjL24iN/uczMx4yNzEjL3MTM/gettenantappscopes)
