如何为 Matomo 构建正确的 HTTP API 调用
How to build a proper HTTP API call for Matomo
我刚开始使用 API,但一直在阅读它。我的任务是将数据从 API 导入到 CSV 文件中。我创建了一个有效的导入字符串(来自一个示例)。尽管阅读了 documentation 页面和一个工作示例,但我还没有得到我需要工作的实际报告。
这是有效的字符串:
myURL = "https://admin.metrics.mysite.com/?module=API" _
& "&method=API.get&idSite=9&period=day&date=last30&format=tsv&translateColumnNames=1" _
& "&token_auth=" & myToken
我需要的是所有已下载文件的月度报告。
这是我最后一次尝试(已经尝试过许多变体):
Dim myToken As String
myToken = "secrettokenhere"
myURL = "https://admin.metrics.mysite.com/?module=API" _
& "&method=API.getDownloads" _
& "&idSite=9" _
& "&period=day" _
& "&date=2018-11-05" _
& "&segement=''" _
& "&expanded=''" _
& "&idSubtable=''" _
& "&flat=''" _
& "&format=tsv" _
& "&filter_limit=10" _
& "&token_auth=" & myToken
当我运行这个时,我返回的错误消息是这样的:
Error: The method 'getDownloads' does not exist or is not available in
the module '\Piwik\Plugins\API\API'.
我被困在最基本的事情上...我使用的 get
方法是否正确?我缺少参数吗?我做错了什么?
感谢任何指点!
如您在 API reference 中所见,该方法未被调用 API.getDownloads
,而是 Actions.getDownloads
.
现在我更了解您的问题,可以提供更多详细信息:
您正在使用的 API 端点 (API.get
) 为您提供了每天的下载量,我认为这不是您想要的。
获得正确端点的最简单方法(除了阅读 API reference)是在 Matomo UI 中打开您需要的报告。
如果您想要所有下载的列表,这将是 Behaviour
-> Downloads
报告。之后您可以单击 table 下方的导出图标,它会显示正确的 API url.
在你的情况下现在是 ?module=API&method=Actions.getDownloads
如果你不想要一个目录,而是一个简单的列表,你可以添加 &flat=1
: ?module=API&method=Actions.getDownloads&flat=1
.
这应该 return 您想要的(也许还添加 &filter_limit=-1
以获得无限结果)。
我刚开始使用 API,但一直在阅读它。我的任务是将数据从 API 导入到 CSV 文件中。我创建了一个有效的导入字符串(来自一个示例)。尽管阅读了 documentation 页面和一个工作示例,但我还没有得到我需要工作的实际报告。
这是有效的字符串:
myURL = "https://admin.metrics.mysite.com/?module=API" _
& "&method=API.get&idSite=9&period=day&date=last30&format=tsv&translateColumnNames=1" _
& "&token_auth=" & myToken
我需要的是所有已下载文件的月度报告。
这是我最后一次尝试(已经尝试过许多变体):
Dim myToken As String
myToken = "secrettokenhere"
myURL = "https://admin.metrics.mysite.com/?module=API" _
& "&method=API.getDownloads" _
& "&idSite=9" _
& "&period=day" _
& "&date=2018-11-05" _
& "&segement=''" _
& "&expanded=''" _
& "&idSubtable=''" _
& "&flat=''" _
& "&format=tsv" _
& "&filter_limit=10" _
& "&token_auth=" & myToken
当我运行这个时,我返回的错误消息是这样的:
Error: The method 'getDownloads' does not exist or is not available in the module '\Piwik\Plugins\API\API'.
我被困在最基本的事情上...我使用的 get
方法是否正确?我缺少参数吗?我做错了什么?
感谢任何指点!
如您在 API reference 中所见,该方法未被调用 API.getDownloads
,而是 Actions.getDownloads
.
现在我更了解您的问题,可以提供更多详细信息:
您正在使用的 API 端点 (API.get
) 为您提供了每天的下载量,我认为这不是您想要的。
获得正确端点的最简单方法(除了阅读 API reference)是在 Matomo UI 中打开您需要的报告。
如果您想要所有下载的列表,这将是 Behaviour
-> Downloads
报告。之后您可以单击 table 下方的导出图标,它会显示正确的 API url.
在你的情况下现在是 ?module=API&method=Actions.getDownloads
如果你不想要一个目录,而是一个简单的列表,你可以添加 &flat=1
: ?module=API&method=Actions.getDownloads&flat=1
.
这应该 return 您想要的(也许还添加 &filter_limit=-1
以获得无限结果)。