调用Google Analytics用户删除API时出现以下错误
错误
null
代码:
import csv
from apiclient.discovery import build
from oauth2client.service_account import ServiceAccountCredentials
def get_service(api_name, api_version, scope, key_file_location):
credentials = ServiceAccountCredentials.from_json_keyfile_name(key_file_location,scope)
#Build the service object.
service = build(api_name, api_version, credentials=credentials)
return service
# open a list of client ids
with open('File_name.csv', 'rt') as csvfile:
reader = csv.reader(csvfile, dialect='excel')
reader_list = list(reader)
def delete_users(service):
for row in reader_list:
for row in reader_list:
service.management().accountUserLinks().delete(
accountId ='XXXXXX',
linkId = row[0]
).execute()
def main():
# Define the auth scopes to request.
scope = ['https://www.googleapis.com/auth/analytics.user.deletion']
key_file_location = 'credentials.json'
# Authenticate and construct service.
service = get_service('analytics', 'v3', scope, key_file_location)
delete_users(service)
if __name__ == '__main__':
main()
我已经从GCP控制台下载了凭据文件&>;服务帐户并使用该帐户。不知道确切的原因是什么,也不知道如何解决。在哪里可以查看/定义身份验证范围?如有任何文件或帮助,将不胜感激。
我甚至试着发送ViewId到accountId的位置,根据这篇文章,但同样的错误。
对谷歌的文档表示失望。
您正在呼叫帐户用户链接:删除
您需要使用“https://www.googleapis.com/auth/analytics.manage.users”作用域(如果这是您要调用的)。
请参阅删除帐户用户链接的文档:https://developers.google.com/analytics/devguides/config/mgmt/v3/mgmtreference/management/accountuserlinks/delete.auth
其中包含作用域代码的行应为:
scope = ['https://www.googleapis.com/auth/analytics.manage.users']
如果您希望使用用户删除API,则使用了正确的作用域,但是您应该调用:
service.userDeletion().userDeletionRequest().upsert(...).execute()
快速注意,this方法接受用户ID和属性ID或项目ID和用户ID。
错误提示您拥有的服务帐户凭据没有执行删除操作的正确权限。本文通过屏幕截图详细介绍了创建和应用服务帐户权限的步骤。此外,它还描述了如何为您的服务帐户所在的项目启用Google Analytics API。
权限不足:请求的身份验证范围不足。
表示用户没有执行您尝试执行的操作的权限。
转到google analytics网站,找到您要删除的视图所在的帐户。将服务帐户添加为帐户级别的用户。
然后它就可以访问该帐户。
当我在主机服务器的浏览器上运行这个应用程序时,我成功地获得了一个json对象(它不是我期望的json,但这是另一个问题)。但是,当我试图访问远程客户端上的站点时,我会得到一个403错误,指向我试图检索响应时的位置。有什么想法吗?
下面的代码旨在用给定的分区键和ROWKEY从表中删除一行。但我在Fiddler中得到以下请求/响应。我怎样才能纠正错误? DELETE https://hireazureStorageAcct.table.core.windows.net/mytable(PartitionKey='sample1',%20rowkey='0001')?timeout=20 http/1.1接受:Applicati
如何修复此错误? Traceback(最近一次调用):文件"C:/用户/HP/下载/cv_api/cv_api/manage.py",第10行,execute_from_command_line(sys.argv) 文件“F:\ anaconda 2 installation \ lib \ site-packages \ django-1 . 10 . 5-py 2.7 . egg \ djan
我想使用Teams graph api检索一个团队(组)的所有通道。 我在“https://graph.microsoft.com/v1.0/teams/{GroupId}/channels”上使用“获取”请求 他拥有“安全管理员”的角色。 我通过get请求“https://graph.microsoft.com/v1.0/me/memberOf”检索团队,这工作很好。 在“https://gra
如何恢复连接?希望不完全重新安装我的postgres?? 非常感谢:)
我正在创建一个脚本,基于Google Analytics的一步一步指南,从这个页面: https://developers.google.com/analytics/resources/tutorials/hello-analytics-api 授权是没有问题的,直到它试图访问数据。返回代码为403,错误消息为: 用户没有任何Google Analytics帐户 这条消息毫无意义:我的帐户有谷歌分