Guide公开了三种不同的搜索API:文章和帖子搜索API使您能够分别搜索文章和帖子,统一搜索API允许您在单个查询中搜索文章,帖子和外部内容。

您可以从帮助中心以外的域中的JavaScript客户端调用搜索api。该API实现了跨域资源共享(CORS)。CORS允许JavaScript客户端访问其他域中的资源。亚博电脑端

JSON格式

搜索被表示为具有以下属性的JSON对象:

名字 类型 只读 强制性的 描述
结果 数组 真正的 包含基本文章或社区帖子的数组
  • GET / api / v2 /指导/搜索?过滤器(地区)={过滤器(地区)}

使用统一搜索端点搜索知识库文章、社区帖子和亚博官方app外部的记录

每页返回10个结果的默认数量。

唯一的必选参数是过滤器(地区)。可以添加其他参数来缩小搜索结果集的范围。

如果您指定的语言环境无效,或者您的任何帐户的帮助中心都未启用语言环境,则不会返回任何搜索结果。您可以使用API检查有效的区域设置。看到列出所有启用的区域设置和默认区域设置

如果查询参数,则根据中描述的规则按相关性对结果进行排序关于帮助中心终端用户搜索。如果查询参数,则使用内部排序对结果进行排序。

分页

这个API只支持基于游标的分页。看到使用基于游标的分页在帮助中心API文档中。目前,这个API不支持向后分页。

每页最多返回50条记录。

允许

  • 通过身份验证的用户
  • 代理
  • 管理员

参数

名字 类型 要求 描述
过滤器(brand_ids) 字符串 查询 将搜索限制在这些品牌的文章或帖子中。如果没有指定品牌,则返回所有品牌的结果。如果您希望将搜索结果扩展到多个品牌,请使用逗号分隔每个值
过滤器(category_id添加) 字符串 查询 将搜索限制为具有这些类别id的文章。看到按类别过滤
过滤器(content_types) 字符串 查询 将搜索限制为以下内容类型之一:ARTICLE、POST。目前还无法具体说明EXTERNAL_RECORD。相反,使用过滤器(external_source_id)以上参数
过滤器(external_source_ids) 字符串 查询 使用此参数可将搜索结果限定为特定外部源或外部源。如果没有给出外部源,则跨所有源返回结果
过滤器(地区) 字符串 查询 真正的 将搜索限制在这些区域。看到按地区筛选
过滤器(section_ids) 字符串 查询 将搜索限制为具有这些节号的文章。看到按类别筛选
过滤器(topic_ids) 字符串 查询 将搜索限制在这些主题内的帖子。看到按主题过滤
页面(后) 字符串 查询 表示到下一页的光标的字符串。
页面(大小) 整数 查询 指示响应中可包含的最大项数的数值。该参数的上限为50个。缺省值为10。
查询 字符串 查询 要匹配的搜索文本或搜索字符串

代码示例

旋度
              
旋度——请求获取https://support.zendesk.亚博com/api/v2/guide/search?filterbrand_ids73% 2 c67过滤器category_id添加42% 2 c43过滤器content_types% 2条cpost过滤器external_source_ids01 ec05a5t1j4zsdjx4q8jgfrhp过滤器地区en - us % 2 cen-gb过滤器section_ids42% 2 c43过滤器topic_ids42% 2 c43页面页面大小查询胡萝卜——头“application / json内容类型:- u用户名:密码
具有密码身份验证的查询
              
#使用逗号分隔多个搜索项。#授权可以使用' email:password '来实现旋度“https://{子域名}.zendes亚博k.com/api/v2/guide/search ?查询= Printing&filter(地区)= en - us, en -”- g- v - u{email_address}{密码}
具有基本身份验证的外部源过滤
              
#如果只需要使用过滤器,可以省略查询词# Authorization头可以用来传递Base 64编码的授权令牌旋度“https://{子域名}.zendes亚博k.com/api/v2/guide/search ?过滤器(地区)= en-us&filter external_source_ids = 01 ec05a5t1j4zsdjx4q8jgfrhp”- g- h“授权:基本{token}”
具有基本身份验证的分页
              
#您可以使用page[size]和page[after]来分页您的结果集旋度“https://{子域名}.zendes亚博k.comapi / v2 /指导/搜索?过滤器(地区)= en-us&page(大小)= 2和页面(后)= WzEuMCwxNjld”- g- h“授权:基本{token}”
              
进口“fmt”“输入输出”“net/http”函数主要{url:=“https://support.亚博zendesk.com/api/v2/guide/search?filter [brand_ids] = 73% 2 c67&filter [category_id添加]= 42% 2 c43&filter [content_types] = % 2条cpost&filter [external_source_ids] = 01 ec05a5t1j4zsdjx4q8jgfrhp&filter(地区)= en - us % 2 cen-gb&filter [section_ids] = 42% 2 c43&filter [topic_ids] = 42% 2 c43&page[在]=和页面大小=查询=胡萝卜”方法:=“获得”要求的事情犯错:=httpNewRequest方法url如果犯错! ={fmtPrintln犯错返回}要求的事情添加“内容类型”“application / json”要求的事情添加“授权”“基本< auth-value >”// Base64编码的"username:password"客户端:=http客户端{}res犯错:=客户端要求的事情如果犯错! ={fmtPrintln犯错返回}推迟res身体关闭身体犯错:=ioReadAllres身体如果犯错! ={fmtPrintln犯错返回}fmtPrintln字符串身体}
Java
              
进口comsquareupokhttp*OkHttpClient客户端OkHttpClientHttpUrl构建器urlBuilderHttpUrl解析“https://support.亚博zendesk.com/api/v2/guide/search”newBuilderaddQueryParameter“过滤器(brand_ids)”“73、67”addQueryParameter“过滤器”(category_id添加)“42、43”addQueryParameter“过滤器(content_types)”“文章,帖子”addQueryParameter“过滤器(external_source_ids)”“01 ec05a5t1j4zsdjx4q8jgfrhp”addQueryParameter“过滤器”(地区)“en - us, en”addQueryParameter“过滤器(section_ids)”“42、43”addQueryParameter“过滤器(topic_ids)”“42、43”addQueryParameter“页面(后)””“addQueryParameter“页面大小””“addQueryParameter“查询”“胡萝卜”请求请求请求构建器urlurlBuilder构建方法“获得”addHeader“内容类型”“application / json”addHeader“授权”凭证基本“电子邮件”“你的密码”构建响应响应客户端newCall请求执行
javascript作为登录用户从帮助中心前端搜索外部内容
              
常量externalSourceId”“//某个源id常量响应等待获取https://$ {窗口位置主机名}/ api / v2 /指导/搜索?过滤器(地区)=en-us&filter[external_source_ids]=$ {externalSourceId}{凭证“包括”{“内容类型”“application / json”}}常量数据等待响应json数据结果forEach某物//处理结果
Nodejs
              
varaxios需要“axios”var配置{方法“得到”url“https://support.亚博zendesk.com/api/v2/guide/search”{“内容类型”“application / json”“授权”的基本< auth-value >”// Base64编码的"username:password"}参数个数{“过滤器(brand_ids)”“73% 2 c67”的过滤器(category_id添加)“42% 2 c43”“过滤器(content_types)”“% 2 cpost条”“过滤器(external_source_ids)”“01 ec05a5t1j4zsdjx4q8jgfrhp”“过滤器(地区)”“en - us % 2 cen-gb”“过滤器(section_ids)”“42% 2 c43”“过滤器(topic_ids)”“42% 2 c43”的页面(后)页面(大小)的“查询”“胡萝卜”}}axios配置然后函数响应{控制台日志JSONstringify响应数据}函数错误{控制台日志错误}
Python
              
进口请求url“https://support.亚博zendesk.com/api/v2/guide/search?filter [brand_ids] = 73% 2 c67&filter [category_id添加]= 42% 2 c43&filter [content_types] = % 2条cpost&filter [external_source_ids] = 01 ec05a5t1j4zsdjx4q8jgfrhp&filter(地区)= en - us % 2 cen-gb&filter [section_ids] = 42% 2 c43&filter [topic_ids] = 42% 2 c43&page[在]=和页面大小=查询=胡萝卜”{“内容类型”“application / json”}响应请求请求“获得”url身份验证“<用户名>”' <密码> '打印响应文本
鲁比(人名)
              
需要“net/http”uriURI“https://support.亚博zendesk.com/api/v2/guide/search”uri查询URIencode_www_form“过滤器(brand_ids)”“73、67”“过滤器”(category_id添加)“42、43”“过滤器(content_types)”“文章,帖子”“过滤器(external_source_ids)”“01 ec05a5t1j4zsdjx4q8jgfrhp”“过滤器”(地区)“en - us, en”“过滤器(section_ids)”“42、43”“过滤器(topic_ids)”“42、43”“页面(后)””““页面大小””““查询”“胡萝卜”请求HTTP得到uri“内容类型”“application / json”请求basic_auth“用户名”“密码”响应HTTP开始uri主机名uri港口use_ssl真正的|http|http请求请求结束

示例响应(年代)

200好了
              
//状态200 OK{“元”{“after_cursor”“WzEuMCwxNjld”“before_cursor”“WzEuMCwxNjhd”“has_more”真正的}“结果”{“标题”《如何做炖鱼》“类型”“文章”“updated_at”“2021 - 10 - 11 - t15:02:22z”“url”“http://example.亚博zendesk.com/hc/en-us/articles/38393937-How-to-make-fish-stew”}{“标题”“炖鱼最新消息”“类型”“EXTERNAL_RECORD”“updated_at”“2021 - 11 - 12 - t15:02:22z”“url”“http://example.com/blog/fish-stew-latest”}}

搜索文章

  • GET / api / v2 / help_center /文章/搜索

每页返回25篇文章的默认数量,最多可返回1000个结果。看到分页。的per_page参数,如果提供,必须是1到100之间的整数。

页面参数,如果提供,必须是大于0的整数。

默认情况下,搜索结果是按相关性排序的。您还可以对结果进行排序created_atupdated_at

文章的对象由搜索端点返回的包含两个附加属性:

名字 类型 只读 强制性的 评论
result_type 字符串 是的 没有 对于文章,始终使用字符串"article"
片段 字符串 是的 没有 文章中与搜索查询相关的部分,用。分隔的匹配词或短语< em > < / em >标签。例如:查询“胡萝卜土豆”可能会返回片段“…”不要混淆< em >胡萝卜< / em >< em >土豆< / em >……”

您必须在请求中至少指定以下参数之一:

  • 查询
  • 类别
  • 部分
  • label_names

分页

  • 仅偏移分页

看到分页

每页最多返回100篇文章。

允许

  • 匿名用户

按日期筛选

您可以通过创建或更新日期过滤搜索结果,参数如下:

  • created_before
  • created_after
  • created_at
  • updated_before
  • updated_after
  • updated_at

GET / api / v2 / help_center /文章/ search.json吗?查询={search_string}&updated_after=2014-01-01&updated_before=2014-02-01

过滤时updated_ *,结果可能并不总是与updated_at返回文档的时间戳。原因是并非所有更新都传播到搜索索引。只有对搜索有意义的更新(如内容更改)才会被重新编入索引。因此,一篇文章可能有一个updated_at时间戳为“2019-10-31”,但在带有过滤器的搜索中返回updated_before = 2019-08-01如果没有对文章进行有意义的内容更改。

标签过滤

如果要搜索带有特定标签的文章,请使用label_names参数,并传递一个逗号分隔的标签名称列表来过滤结果:

GET / api / v2 / help_center /文章/ search.json吗?label_names =照片,相机

一个条目必须至少有一个标签来匹配。此外,匹配不区分大小写。例如,'camera'匹配'camera'和'camera'。

此功能仅适用于专业和企业。

按地区筛选

默认情况下,使用帮助中心设置中指定的默认语言执行搜索。使用语言环境参数以搜索其他语言的文章。

GET / api / v2 / help_center /文章/ search.json吗?查询= {search_string}地区={地区}

如果您指定了无效的语言环境或未为Help Center启用的语言环境,则将使用该帐户的默认语言环境进行搜索。您可以使用API检查有效的区域设置。看到列出所有启用的区域设置和默认区域设置

如果你使用语言环境= *,在所有有效的语言环境中进行搜索,并返回匹配搜索条件的所有语言的所有文章翻译。

按类别过滤

如果要将搜索结果限定在给定的类别中,请使用类别参数。

GET / api / v2 / help_center /文章/ search.json吗?查询= {search_string}类别= {category_id添加}

如果希望将搜索结果扩展到多个类别,请使用类别参数,每个值之间用逗号分隔。

GET / api / v2 / help_center /文章/ search.json吗?查询= {search_string}类别= {category_id添加},{another_category_id}

按类别筛选

如果要将搜索结果限定在给定的部分中,请使用部分参数。

GET / api / v2 / help_center /文章/ search.json吗?查询= {search_string}全国= {id}节

如果您希望将搜索结果扩展到多个部分,请使用部分参数,每个值之间用逗号分隔。

GET / api / v2 / help_center /文章/ search.json吗?查询={search_string}§ion={section_id},{another_section_id}

按品牌筛选

使用多品牌参数搜索所有品牌,或brand_id将搜索结果定位到特定品牌。

GET / api / v2 / help_center /文章/ search.json吗?查询= {search_string} &brand_id = {brand_id}

GET / api / v2 / help_center /文章/ search.json吗?查询= {search_string} multibrand = true

如果你使用multibrand = true在你的请求和没有brand_id,搜索将返回符合查询条件的所有品牌的结果。如果你使用brand_id在您的要求下,搜索结果将被限定在指定品牌的范围内,而不考虑其使用情况多品牌参数。

参数

名字 类型 要求 描述
brand_id 整数 查询 搜索指定品牌的文章。
类别 整数 查询 将搜索限制为此类别id。看到按类别过滤
created_after 字符串 查询 将搜索限制在给定日期之后创建的文章(格式为YYYY-MM-DD)。
created_at 字符串 查询 将搜索限制在给定日期创建的文章(格式YYYY-MM-DD)。
created_before 字符串 查询 将搜索限制在给定日期之前创建的文章(格式为YYYY-MM-DD)。
label_names 字符串 查询 用逗号分隔的标签名称列表。看到标签过滤
语言环境 字符串 查询 搜索指定语言环境中的文章。看到按地区筛选
多品牌 布尔 查询 如果为真,启用所有品牌的搜索。如果省略,默认为false。
查询 字符串 查询 要匹配的搜索文本或搜索字符串。例如:“carrot potato”,“‘carrot potato’”。
部分 整数 查询 将搜索限制到此节id。看到按类别筛选
sort_by 字符串 查询 created_at或updated_at中的一个。默认为按相关性排序
sort_order 字符串 查询 asc或desc之一,默认为desc
updated_after 字符串 查询 将搜索限制在给定日期之后更新的文章(格式为YYYY-MM-DD)。
updated_at 字符串 查询 将搜索限制在给定日期更新的文章(格式YYYY-MM-DD)。
updated_before 字符串 查询 将搜索限制为在给定日期之前更新的文章(格式YYYY-MM-DD)。

代码示例

旋度
              
#如果使用命令行,使用逗号分隔多个搜索项。例子:# search.json吗?查询=打印,或ders旋度“https://{子域名}.zendes亚博k.com/api/v2/help_center/articles/search.json ?查询= Printing&updated_after = 2014 - 01 - 01 - &updated_before = 2014-02-01 "- v - u{email_address}{密码}
              
进口“fmt”“输入输出”“net/http”函数主要{url:=“https://support.亚博zendesk.com/api/v2/help_center/articles/search?brand_id=&category=&created_after=&created_at=&created_before=&label_names=&locale=&multibrand=&query=§ion=&sort_by=&sort_order=&updated_after=&updated_at=&updated_before=”方法:=“获得”要求的事情犯错:=httpNewRequest方法url如果犯错! ={fmtPrintln犯错返回}要求的事情添加“内容类型”“application / json”要求的事情添加“授权”“基本< auth-value >”// Base64编码的"username:password"客户端:=http客户端{}res犯错:=客户端要求的事情如果犯错! ={fmtPrintln犯错返回}推迟res身体关闭身体犯错:=ioReadAllres身体如果犯错! ={fmtPrintln犯错返回}fmtPrintln字符串身体}
Java
              
进口comsquareupokhttp*OkHttpClient客户端OkHttpClientHttpUrl构建器urlBuilderHttpUrl解析“https://support.亚博zendesk.com/api/v2/help_center/articles/search”newBuilderaddQueryParameter“brand_id””“addQueryParameter“类别””“addQueryParameter“created_after””“addQueryParameter“created_at””“addQueryParameter“created_before””“addQueryParameter“label_names””“addQueryParameter“场所””“addQueryParameter“多品牌””“addQueryParameter“查询””“addQueryParameter“节””“addQueryParameter“sort_by””“addQueryParameter“sort_order””“addQueryParameter“updated_after””“addQueryParameter“updated_at””“addQueryParameter“updated_before””“请求请求请求构建器urlurlBuilder构建方法“获得”addHeader“内容类型”“application / json”addHeader“授权”凭证基本“电子邮件”“你的密码”构建响应响应客户端newCall请求执行
Nodejs
              
varaxios需要“axios”var配置{方法“得到”url“https://support.亚博zendesk.com/api/v2/help_center/articles/search”{“内容类型”“application / json”“授权”的基本< auth-value >”// Base64编码的"username:password"}参数个数{“brand_id”“类别”“created_after”“created_at”“created_before”“label_names”“场所”“多品牌”“查询”“节”“sort_by”“sort_order”“updated_after”“updated_at”“updated_before”}}axios配置然后函数响应{控制台日志JSONstringify响应数据}函数错误{控制台日志错误}
Python
              
进口请求url“https://support.亚博zendesk.com/api/v2/help_center/articles/search?brand_id=&category=&created_after=&created_at=&created_before=&label_names=&locale=&multibrand=&query=§ion=&sort_by=&sort_order=&updated_after=&updated_at=&updated_before=”{“内容类型”“application / json”}响应请求请求“获得”url身份验证“<用户名>”' <密码> '打印响应文本
鲁比(人名)
              
需要“net/http”uriURI“https://support.亚博zendesk.com/api/v2/help_center/articles/search”uri查询URIencode_www_form“brand_id””““类别””““created_after””““created_at””““created_before””““label_names””““场所””““多品牌””““查询””““节””““sort_by””““sort_order””““updated_after””““updated_at””““updated_before””“请求HTTP得到uri“内容类型”“application / json”请求basic_auth“用户名”“密码”响应HTTP开始uri主机名uri港口use_ssl真正的|http|http请求请求结束

示例响应(年代)

200好了
              
//状态200 OK{“结果”{“author_id”888887“草案”“id”35467“场所”“en”“permission_group_id”123“标题”“打印订单”“user_segment_id”12}}

搜索帖子

  • GET / api / v2 / help_center community_posts /搜索?查询查询= {}

每页最多返回25篇文章,最多返回1000个结果。看到分页

默认情况下,搜索结果是按相关性排序的。您还可以对结果进行排序created_atupdated_at

分页

  • 仅偏移分页

看到分页

每页最多返回100篇文章。

允许

  • 最终用户

按日期筛选

您可以通过创建或更新日期过滤搜索结果,参数如下:

  • created_before
  • created_after
  • created_at
  • updated_before
  • updated_after
  • updated_at

获得社区/ api / v2 / /文章/ search.json吗?查询={search_string}&updated_after=2014-01-01&updated_before=2014-02-01

按主题过滤

如果要在给定主题中限定搜索结果的范围,请使用主题参数。

获得社区/ api / v2 / /文章/ search.json吗?查询= {search_string}主题= {id}话题

参数

名字 类型 要求 描述
created_after 字符串 查询 搜索在给定日期之后创建的帖子(格式为YYYY-MM-DD)
created_at 字符串 查询 搜索在给定日期创建的帖子(格式为YYYY-MM-DD)
created_before 字符串 查询 搜索在给定日期之前创建的帖子(格式为YYYY-MM-DD)
查询 字符串 查询 真正的 要匹配的搜索文本或搜索字符串。例如:“胡萝卜土豆”,“胡萝卜土豆”。
sort_by 字符串 查询 排序created_atupdated_at。默认为按相关性排序
sort_order 字符串 查询 按升序或降序排序。默认为降序排列。
主题 整数 查询 按主题ID搜索。看到按主题过滤
updated_after 字符串 查询 搜索指定日期之后更新的帖子(格式为YYYY-MM-DD)
updated_at 字符串 查询 搜索指定日期更新的帖子(格式为YYYY-MM-DD)
updated_before 字符串 查询 搜索在指定日期之前更新的帖子(格式为YYYY-MM-DD)

代码示例

旋度
              
#如果使用命令行,使用逗号分隔多个搜索项。例子:# search.json吗?查询=打印,或ders旋度“https://{子域名}.zendes亚博k.com/api/v2/help_center/community_posts/search.json ?查询= {search_string} "- v - u{email_address}{密码}
              
进口“fmt”“输入输出”“net/http”函数主要{url:=“https://support.亚博zendesk.com/api/v2/help_center/community_posts/search?created_after=&created_at=&created_before=&query=help + center&sort_by = &sort_order =主题= &updated_after = &updated_at = &updated_before = "方法:=“获得”要求的事情犯错:=httpNewRequest方法url如果犯错! ={fmtPrintln犯错返回}要求的事情添加“内容类型”“application / json”要求的事情添加“授权”“基本< auth-value >”// Base64编码的"username:password"客户端:=http客户端{}res犯错:=客户端要求的事情如果犯错! ={fmtPrintln犯错返回}推迟res身体关闭身体犯错:=ioReadAllres身体如果犯错! ={fmtPrintln犯错返回}fmtPrintln字符串身体}
Java
              
进口comsquareupokhttp*OkHttpClient客户端OkHttpClientHttpUrl构建器urlBuilderHttpUrl解析“https://support.亚博zendesk.com/api/v2/help_center/community_posts/search”newBuilderaddQueryParameter“created_after””“addQueryParameter“created_at””“addQueryParameter“created_before””“addQueryParameter“查询”“帮助中心”addQueryParameter“sort_by””“addQueryParameter“sort_order””“addQueryParameter“主题””“addQueryParameter“updated_after””“addQueryParameter“updated_at””“addQueryParameter“updated_before””“请求请求请求构建器urlurlBuilder构建方法“获得”addHeader“内容类型”“application / json”addHeader“授权”凭证基本“电子邮件”“你的密码”构建响应响应客户端newCall请求执行
Nodejs
              
varaxios需要“axios”var配置{方法“得到”url“https://support.亚博zendesk.com/api/v2/help_center/community_posts/search”{“内容类型”“application / json”“授权”的基本< auth-value >”// Base64编码的"username:password"}参数个数{“created_after”“created_at”“created_before”“查询”“帮助+中心”“sort_by”“sort_order”“主题”“updated_after”“updated_at”“updated_before”}}axios配置然后函数响应{控制台日志JSONstringify响应数据}函数错误{控制台日志错误}
Python
              
进口请求url“https://support.亚博zendesk.com/api/v2/help_center/community_posts/search?created_after=&created_at=&created_before=&query=help + center&sort_by = &sort_order =主题= &updated_after = &updated_at = &updated_before = "{“内容类型”“application / json”}响应请求请求“获得”url身份验证“<用户名>”' <密码> '打印响应文本
鲁比(人名)
              
需要“net/http”uriURI“https://support.亚博zendesk.com/api/v2/help_center/community_posts/search”uri查询URIencode_www_form“created_after””““created_at””““created_before””““查询”“帮助中心”“sort_by””““sort_order””““主题””““updated_after””““updated_at””““updated_before””“请求HTTP得到uri“内容类型”“application / json”请求basic_auth“用户名”“密码”响应HTTP开始uri主机名uri港口use_ssl真正的|http|http请求请求结束

示例响应(年代)

200好了
              
//状态200 OK{“结果”{“author_id”4333787“id”4212256“标题”“我怎样才能回报呢?”}}