使用Flow Builder中的Make API调用步骤

回到顶端

38岁的评论

  • 佩德罗·罗德里格斯
    社区的主持人

    这太棒了艾梅Spanier!是否有可能向用户请求信息,以便使用他们的输入作为API请求的参数(例如,在外部CRM上验证电子邮件地址)?

    4
  • 克里斯·汤姆金斯
    亚博Zendesk产品经理

    是的佩德罗·罗德里格斯这是在未来几个月发布的路线图上。

    1
  • 佩德罗·罗德里格斯
    社区的主持人

    太棒了,谢谢你的跟进!

    0
  • 杰森seattle_gov

    这太棒了。我们可以使用它从我们自己的ZD实例中获取信息吗?我想要得到消息票数,并显示给客户。这将有助于设置等待时间预期,因为我们无法在本地做到这一点。我尝试了,但一直得到未经授权的401错误。我还尝试设置用户和pwd键和值。

    0
  • 爱德华多·桑托斯

    你好@Jason,目前还不可能收集这些信息,因为我们无法在新请求中使用其他请求的参数。

    遵循示例图像

    我将userid保存为一个变量,我不能在另一个API调用中使用这个变量。

    对于401错误,你需要创建一个全局令牌,或者使用Base64令牌和你的用户名和密码,你需要在Zendesk中启用它。亚博

    你可以按照这个说明来做https://developer.亚博zendesk.com/api-reference/ticketing/introduction/#security-and-authentication

    1
  • okean123

    嘿!我目前正致力于将一个外部API包含到我们的机器人中。我试图做一个POST请求,但有问题的请求体。

    我为请求体输入的格式是普通的JSON,例如

    {“测试”:“你好”}

    现在我遇到的问题是,我使用的外部API返回请求无效。当手动发送完全相同的请求时(例如通过浏览器控制台),请求将被正确处理。

    所以我的问题是,我是否必须以任何特定的方式格式化JSON主体,以便Zendesk正确地将请求转发到外部API?亚博

    我已经检查了集成日志,它似乎是请求主体被发送到Zendesk服务器作为一个字符串。亚博当稍后将JSON字符串解析为JSON时,是否可能在您这边发生一些错误?

    上面的情况似乎就是我在这里遇到的情况,因为当我检查我试图使用该工具调用的一个api的日志时,请求体中包含的不是实际的JSON,而是JSON的字符串化版本(带有转义的引号)。

    任何想法吗?

    0
  • 埃里克·纳尔逊
    亚博Zendesk开发者倡导
    嘿,亚历山大,

    你能提供一段请求的代码片段让我们看一看吗?

    谢谢!
    0
  • Edu巴罗斯

    我如何做API调用与数据库json和重定向到específic组?

    0
  • okean123

    埃里克·纳尔逊

    抱歉回复晚了,我举个例子。在这个例子中,我调用了一个托管在AWS上的API,我将共享请求日志来演示这个问题。

    让我们从Zendesk请求开始。亚博这是我放入Zendesk的内容(注意,我添加亚博了所有隐式要求的标题,它们只是不在截图中,它们与问题无关)

    上述请求导致这被记录在我们的API:

    “身体”:“{\ \ "你好\ \ ":\ \ "测试\ \”}“\ n”

    可以看到引号是双转义的。我也不太确定结尾的\n来自哪里,我不认为我已经进入了一个新的行,但它可能是不相关的。

    现在,当我直接使用Javascript发送请求时,结果是不同的。请求示例:

    fetch (API_URL, {
    方法:“文章”,
    标题:{
    “内容类型”:“application / json”
    },
    身体:JSON.stringify ({
    你好:“测试”
    })
    });

    这将产生以下日志:

    “身体”:“{“你好”:“测试”}’

    在这里,它只是将JSON记录为字符串,记录它的发送方式。这也是我们所期望和正确的。

    所以我的问题是,我是否在流构建器中使用了错误的API调用,JSON应该以不同的格式输入?或者在发送HTTP请求时,软件中是否存在破坏JSON的问题?

    如果您对我提供的示例有任何其他问题,请让我知道。

    2
  • Yext索引器

    你好,

    如何将聊天中存储的变量传递给API请求URL?

    例如,是否有可能将客户问题存储为变量,以便在URL中作为参数传递?

    先谢谢你

    2
  • 扎Moussawi

    不幸的是,目前有一个错误,我们存储的变量在文本中使用时没有翻译。

    这对最终用户体验非常不利。

    0
  • Raphaël Péguet - Officers.fr

    大家好亚博,Zendesk团队,

    你能补充信息吗:

    如何对Zendesk实例进行API调用:亚博

    1 .获取信息

    2-更新机票吗?

    -我们应该把什么作为键和值能够连接到我们适当的Zendesk实例?亚博

    谢谢你!

    0
  • 奈良
    嗨,Raphael,如果你想了解更多关于如何调用API来获取信息/更新ZD中的门票,请查看我们的Tickets端点上的API文档.屏幕截图中的Key和Header字段用于您想要添加到请求中的任何参数,以及在每个相关端点的文档中找到的有关参数的更多信息。干杯!
    0
  • 迭戈比利亚雷亚尔

    我们试图对服务器上的端点使用GET调用,该端点接收用户的电子邮件并返回包含关于用户的几个数据点的json。然而,当我们尝试测试它时,我们得到一个错误,说API调用不能包括一个句号,因此在调用中作为变量发送电子邮件似乎不起作用。

    0
  • Tipene休斯
    亚博Zendesk开发者倡导
    你好,

    您能否提供一个端点URL的示例,包括任何查询参数(确保编辑任何敏感信息)。此外,您是否可以包括您在发出请求时看到的完整错误。

    谢谢!

    Tipene
    0
  • 迭戈比利亚雷亚尔

    嗨,Tipene,当然,这里是在Bot Flow Builder中复制的步骤:

    —添加步骤

    -进行API调用

    -在API详细信息中,包括GET请求方法与这种类型的请求https://XXXXXXX.XXXXX.XXXXX/api/admin/users/ {{sf.requester.email}} /

    —选中“Add Variable”,选中“Responses from Customers: Email”,添加“{{sf.requester”。如上所示的Email}}

    -按下Make API Call,然后被要求在电子邮件中包含测试数据。我写了我的电子邮件XXXXXX@gmail.com并得到一个错误“在URL路径中添加的变量不能包含句点。”

    0
  • Tipene休斯
    亚博Zendesk开发者倡导
    你好,

    谢谢你为我提供这个澄清!

    不幸的是,正如您在前面的评论中提到的,您所看到的错误是变量中有句号的结果。这是一个系统规则,不能被覆盖。带有额外符号或标点符号的变量应该在PUT或POST请求中作为有效负载体发送。

    有任何问题请随时联系我!

    Tipene
    0
  • Gabriele Sannicandro

    你好

    我有一个头部键的问题:我需要使用“授权”键与承载令牌,但字段值它很短!

    所以我的承载令牌被截断,我有一个授权错误....

    0
  • Tipene休斯
    亚博Zendesk开发者倡导
    嗨Gabriele,

    谢谢你的联系!

    值字段的字符限制是256个,包括空格。通常,您不应该看到oAuth令牌超过这个长度。您能否确保值字段中没有可能导致问题的额外空格?

    谢谢!

    Tipene
    0
  • Gabriele Sannicandro

    我的web服务使用JWT令牌左372 c。

    “eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJodHRwOi8vc2NoZW1hcy54bWxzb2FwLm9yZy93cy8yMDA1LzA1L2lkZW50aXR5L2NsYWltcy9uYW1lIjoicGFwZXJpbm8iLCJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL3dzLzIwMDgvMDYvaWRlbnRpdHkvY2xhaW1zL2V4cGlyYXRpb24iOiIwMi8wNi8yMDI2IDEzOjU5OjM1IiwiZXhwIjoxNzgwNDA4Nzc1LCJpc3MiOiJJc3N1ZXIiLCJhdWQiOiJBdWRpZW5jZSJ9.VG7qHYzzojd2HwVteMrm4gDOFN8KGUsP2F24DtTgX7E”

    有很多web服务使用长令牌…

    0
  • 羽朱
    亚博Zendesk产品经理

    okean123
    谢谢你的反馈。这个问题已经解决了,如果你能确认就太好了。

    0
  • 迭戈比利亚雷亚尔

    Tipene休斯我们注意到我们可以用post发送有效载荷体,但不能用GET请求。有可能让我们在GET中发送有效载荷吗?这将解决不允许在原始GET请求的URL中包含电子邮件,而是在主体中包含电子邮件的问题。

    0
  • 羽朱
    亚博Zendesk产品经理

    Gabriele Sannicandro
    谢谢,我已经捕捉到您的反馈,以便我们修复。

    1
  • Tipene休斯
    亚博Zendesk开发者倡导

    迭戈比利亚雷亚尔

    不幸的是,它不可能通过GET请求发送数据作为有效负载;您将需要使用适当的POST或PUT请求方法。

    我已经将此作为反馈记录给我们的产品团队,他们可能会根据需求在未来的更新中添加此额外功能。

    抱歉我帮不上什么忙!

    Tipene

    0
  • 吉奥莉•Sanil

    是否有一种方法可以在变量的帮助下将当前用户上下文发送到make a api调用步骤?我想在流构建器中为经过身份验证的用户和匿名用户提供不同的流…你能告诉我细节吗?

    1
  • 羽朱
    亚博Zendesk产品经理

    吉奥莉•Sanil

    这是不可能的,但这个用例已在我们的路线图中优先考虑,以解决2023年上半年的问题。谢谢

    0
  • 卡尔顿

    是否可以访问用户的external_id值?

    0
  • 羽朱
    亚博Zendesk产品经理

    我们计划在2023年第一季度将external_id作为一个系统变量公开。

    0
  • 卡尔顿

    除了external_id,还有其他变量可以用来识别用户吗?例如ZenDesk 亚博ID,我们可以同步到我们的数据库

    1
  • 柯克

    羽朱我也很好奇卡尔顿的问题,如果你有什么想法。我们如何通过FlowBuilder的API调用插入特定于客户的变量?

    0

登录留下评论。

提供:Zendesk亚博