清单参考
清单参考
的manifest.json该文件用于配置应用程序。
{
“名称”:“我的应用”,
“作者”:{
“名称”:“琼·汤普森”,
“电子邮件”:"(电子邮件保护)",
“url”:“https://www.omniwear.com/profiles/jthompson”
},
“defaultLocale”:“en”,
“私人”:假,
“位置”:{
“支持”:{
“背景”:“资产/ iframe.html”,
“ticket_sidebar”:{
“自动”:假,
“灵活”的:真正的
},
“top_bar”:{
“自动隐藏”:真正的,
“url”:“资产/ top_bar.html”,
“大小”:{
“宽度”:“450 px”,
“高度”:“500 px”
}
}
}
},
“domainWhitelist”:[“omniwear.com”],
“参数”:[
{
“名称”:“令牌”,
“类型”:“文本”,
“安全”:真正的,
“要求”:真正的
}
],
“版本”:“1.0”,
“frameworkVersion”:“2.0”
}
清单属性
- 的名字
- 作者
- 版本
- frameworkVersion
- 位置
- 导游
- defaultLocale
- 参数
- domainWhitelist
- 私人
- requirementsOnly
- singleInstall
- signedUrls
- termsConditionsURL
- 实验
- marketingOnly
- oauth
的名字
指定应用程序的名称。当在ZCLI服务器上本地运行应用程序时,该名称在应用程序的头部中使用。
作者
必需的。指定应用程序的作者。该属性包含一个JSON对象,值为“名称”
,“电子邮件”
,“url”
.
“作者”:{
“名称”:“导师”,
“电子邮件”:"(电子邮件保护)",
“url”:“http://www.company.com/profiles/mentor”
},
的的名字
可以是个人名称,也可以是公司名称。的电子邮件
应该是应用程序用户可以发送支持请求的地址。的url
可以指向关于作者或应用程序的页面。
版本
指定应用程序的版本号。该版本号将在Zendesk市场中与您的应用程序详细信息一起显示。亚博
frameworkVersion
必需的。指定用于构建应用程序的框架版本。请参阅理解框架版本.
“frameworkVersion”:“2.0”,
位置
必需的。指定应用程序出现在产品界面中的位置,以及每个位置的选项。看到设置应用程序位置.地点因产品而异。有关Zendesk Support中的位置亚博,请参见:
你可以为一个应用程序指定多个位置。另外,一些框架api只对特定位置的应用程序可用。例如,只有出现在Zendesk Support票务页面上的应用程序才能获取和设置票务属性,并侦听对票务的更改。亚博
可以为每个位置指定的属性:
自动隐藏
指定应用程序在第一次加载时是否以隐藏状态启动自动装载
指定是否自动加载iframe(默认为true)灵活的
指定iframe是否响应。属性中的应用程序ticket_sidebar
而且new_ticket_sidebar
的位置。如果为真,iframe自动调整大小以匹配应用托盘宽度的变化。如果为false, iframe保持默认宽度320px。默认为true。签署
指定是否使用签署的urlurl
指定要在iframe中该位置显示的页面的URL大小
指定应用程序在iframe中该位置显示的初始大小。某些位置具有覆盖此属性的大小限制。例如,票务边栏中应用程序的宽度限制为320px,不能更改。
例子:
“位置”:{
“支持”:{
“ticket_sidebar”:{
“自动隐藏”:真正的,
“灵活”的:真正的,
“签署”:真正的,
“url”:“https://myapp.example.org/”,
“大小”:{
“高度”:“220 px”
}
}
}
},
如果要保留所有其他选项的默认值,可以将url属性指定为字符串。例子:
“位置”:{
“支持”:{
“ticket_sidebar”:“资产/ iframe.html”
}
},
您还可以在清单文件中跨Zendesk产品指定多个位置(目前只支持Zendesk Support亚博和Zendesk Chat)。例子:
“位置”:{
“支持”:{
“ticket_sidebar”:“资产/ iframe.html”
},
“聊天”:{
“chat_sidebar”:“资产/ chat_iframe.html”
}
},
也可以使用url中的任何设置(安全设置除外)。
“位置”:{
“支持”:{
“ticket_sidebar”:“http:// {{setting.domain}} .my_server.com/iframe.html”
},
“聊天”:{
“chat_sidebar”:{
“url”:“{{setting.url}}”
}
}
},
导游
指定一个谷歌分析跟踪ID,如果你想分析有多少访问者在Zendesk市场上查看你的应用程序的详细页面。亚博
“导游”:“ua - 123456”,
defaultLocale
必需的。设置应用程序的默认语言环境。虽然仍然是必需的,但这个值在Zendesk Apps框架v2中没有积极使用。亚博由您决定如何实现和管理国际化任务。
取值范围为2 ~ 3个字母ISO 639语言代码.
“defaultLocale”:“en”,
该应用程序可以支持任意数量的其他语言。如果代理选择了应用程序不支持的语言,则应用程序将以默认地区显示。详细信息请参见国际化.
参数
定义您希望用户在安装期间为应用程序设置的设置。看到定义安装设置.例子:
“参数”:[
{
“名称”:“子域名”,
“类型”:“文本”,
“要求”:真正的
},
{
“名称”:“useSSL”,
“类型”:“复选框”
}
]
domainWhitelist
如果您使一个或多个应用程序设置安全,则指定域白名单。详细信息请参见使用安全设置.
“domainWhitelist”:[“www.example.com”,“api.example.com”],
该设置可防止攻击者劫持安全设置以将其重新路由到另一个域并劫持令牌或密码。
如果不进行安全请求,则省略此属性。
domain白名单条目还支持插值设置值,以便在每次安装的基础上自定义白名单。若要在域白名单表项中指定设置值,请使用双花括号。例子:
“domainWhitelist”:[“.example.com {{setting.subdomain}}”],
私人
设置应用程序是否是私有的。默认情况下,没有此属性的应用程序将被视为私有,因此只能安装在应用程序开发人员的帐户中。
“私人”:真正的,
当向Zendesk Marketplace提交应用程序时,此亚博属性必须为false。
requirementsOnly
指定应用程序的唯一任务是在Zendesk Support实例中创建资源。亚博电脑端亚博看到创建一个只满足需求的应用程序.
“requirementsOnly”:真正的,
singleInstall
指定每个帐户一次只能安装一个应用程序。
“singleInstall”:真正的,
如果有疑问,省略此属性或将其设置为false。
signedUrls
当为true时,Zen亚博desk在它为服务器端应用程序的初始页面发出的HTTP请求中包含JWT令牌位置对象。看到在服务器端应用程序中验证Zen亚博desk.此属性不适用于客户端应用程序。
你可以添加“signedUrls”:真的
到顶级清单对象:
{
“名称”:“我的应用”,
“signedUrls”:真正的,
...
}
该属性适用于清单中所有位置的应用程序位置
对象。如果您希望仅在特定位置启用该特性,请添加“签署”:真的
控件中的指定位置位置
对象:
...
“位置”:{
“支持”:{
“ticket_sidebar”:{
“签署”:真正的,
“url”:“https://myapp.example.org/”
}
}
},
termsConditionsURL
如果你打算在Zendesk市场上列出付费应用亚博,您必须提供您的条款和条件的链接。
“termsConditionsURL”:“https://www.mycompany.com/terms.html”
实验
允许应用程序选择加入各种应用程序框架实验,可能会不时可用。这些特性都是实验性的,它们的API、用法或定义可能会改变。
可用的实验:
hashParams
-设置为true,使用哈希url将参数发送到ZAF SDK,以提高缓存能力
“实验”:{
“hashParams”:真正的
}
marketingOnly
集成应用程序是为第三方产品构建的。这些应用程序可以在Zendesk市场上找到,但不能像常规应用程序那样安亚博装。如果你打算在Zendesk市场上提交集成应用程序亚博,您将需要提供一个压缩文件营销资产以及一个简单的清单,它指定{"marketingOnly": true}
.清单文件不需要frameworkVersion
财产。
您还可以选择集成应用程序可用于哪些Zendesk产品亚博{"location": {}}
对象。
注意:如果不指定{"location": {}}
对象,默认产品是Zendesk Support。亚博
有关更多信息,请参阅提交集成应用程序.
Zendesk支亚博持集成应用:
{
“名称”:“博客”,
“作者”:{
“名称”:“亚博Zendesk”,
“电子邮件”:"(电子邮件保护)",
“url”:“https://www.亚博zendesk.com”
},
“位置”:{
“支持”:{
}
},
“defaultLocale”:“en”,
“marketingOnly”:真正的,
“私人”:假
}
Zendesk聊亚博天集成应用示例:
{
“名称”:“博客”,
“作者”:{
“名称”:“亚博Zendesk”,
“电子邮件”:"(电子邮件保护)",
“url”:“https://www.亚博zendesk.com”
},
“位置”:{
“聊天”:{
}
},
“defaultLocale”:“en”,
“marketingOnly”:真正的,
“私人”:假
}
Zendesk销亚博售集成应用:
{
“名称”:“博客”,
“作者”:{
“名称”:“亚博Zendesk”,
“电子邮件”:"(电子邮件保护)",
“url”:“https://www.亚博zendesk.com”
},
“位置”:{
“卖出”:{
}
},
“defaultLocale”:“en”,
“marketingOnly”:真正的,
“私人”:假
}
示例多产品集成应用程序:
{
“名称”:“博客”,
“作者”:{
“名称”:“亚博Zendesk”,
“电子邮件”:"(电子邮件保护)",
“url”:“https://www.亚博zendesk.com”
},
“位置”:{
“支持”:{
},
“聊天”:{
}
},
“defaultLocale”:“en”,
“marketingOnly”:真正的,
“私人”:假
}
oauth
如果你的应用程序使用OAuth向第三方产品发出API请求,你必须使用这个属性指定详细信息,并添加一个类型为“OAuth”的参数。
如果指定了此属性,用户将在安装应用程序时经历OAuth身份验证流程。
然后,您可以使用该参数在应用程序代码中访问OAuth访问令牌。看到管理第三方OAuth访问令牌.
client_id
——需要。client_secret
——需要。authorize_uri
——需要。你可以使用{{oauth_url_subdomain}}
如果需要用户的子域,则作为占位符。在OAuth身份验证流程中,用户将被要求输入一个子域。access_token_uri
——需要。你可以使用{{oauth_url_subdomain}}
如果需要用户的子域,则作为占位符。在OAuth身份验证流程中,用户将被要求输入一个子域。范围
-可选的。
注意:此特性不能用于使用OAuth向其他Zendesk Support实例或实例内的其他品牌发出API请求。亚博代理层不允许访问其他Zendesk实例。亚博