You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从Google Cloud外部调用Dialogflow CX Analytics API及相关配置?

问题描述

我正在使用Dialogflow CX,需要从Google Cloud外部(如Postman或后端服务)访问分析数据。通过查看Dialogflow CX控制台的网络请求,发现了以下请求:

https://europe-west3-dialogflow.clients6.google.com/v3alpha1/projects/{projectId}/locations/{location}/agents/{agentId}/analytics?endTime=2025-05-18T07%3A00%3A00.000Z&pageSize=1680&startTime=2025-05-06T07%3A00%3A00.000Z&trimOutputFields=true&key={key}

尝试通过生成服务账号并使用其凭证获取访问令牌来复制该请求,但在请求中包含API key时收到以下错误:

{
"error": {
"code": 400,
"message": "The API key and the authentication credential are from different projects"
}
}

看起来问题与key参数有关,该端点可能仅限Dialogflow CX控制台使用。我的问题如下:

  1. 是否有受支持的方式从Google Cloud外部以编程方式访问Dialogflow CX Analytics(例如使用服务账号凭证)?
  2. 能否从BigQuery获取相同的分析数据?如果可以,该如何配置?
  3. 需要调整哪些配置(如权限)才能实现这一需求?
解答

1. 受支持的外部编程访问方式

有官方支持的方式,无需使用API Key,直接通过Dialogflow CX的v3 REST API的projects.locations.agents.analytics.reports.list端点访问,用服务账号的OAuth2访问令牌做身份认证:

  • 正确调用端点:https://dialogflow.googleapis.com/v3/projects/{projectId}/locations/{location}/agents/{agentId}/analytics/reports:list
  • 请求方式为POST,请求体中需指定时间范围、所需指标(如会话数、意图触发数)、维度(如时间、意图名称)等参数
  • 身份认证:在请求头添加Authorization: Bearer {access-token},其中access-token可通过服务账号凭证生成(比如用gcloud auth application-default print-access-token命令快速获取,或通过各语言SDK生成)

2. 从BigQuery获取分析数据的配置方法

可以通过导出Dialogflow CX会话日志到BigQuery,再用SQL查询生成等价分析数据,步骤如下:

  1. 进入Dialogflow CX控制台,打开目标代理的监控 > 日志页面
  2. 点击设置导出,选择创建新导出
  3. 配置导出目标:选择现有BigQuery数据集或新建一个;指定导出日志类型为会话日志(可覆盖大部分分析所需数据)
  4. 保存配置后,新会话数据会自动同步到BigQuery对应表中,表结构包含会话ID、触发意图、对话时长、会话结束原因、参数值等字段
  5. 编写SQL查询即可统计类似CX Analytics的指标,比如每日会话总数、各意图触发次数等

3. 所需的权限配置

服务账号访问API的权限

给用于访问Analytics API的服务账号分配Dialogflow Analytics Reader(roles/dialogflow.analyticsReader)角色,该角色允许只读访问分析数据;若需创建自定义报告,可分配Dialogflow Analytics Writer(roles/dialogflow.analyticsWriter)角色。

BigQuery导出及查询的权限

  • 给Dialogflow CX内置服务账号(格式为service-{project-number}@gcp-sa-dialogflow.iam.gserviceaccount.com)分配BigQuery数据集的BigQuery Data Editor角色,确保它能将日志写入BigQuery
  • 给需要查询BigQuery日志表的账号分配BigQuery Data Viewer角色,允许读取日志数据进行分析

内容的提问来源于stack exchange,提问作者EagleCode

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 02:42:04