【问题标题】:Problem with response status code saying response is not defined响应状态代码出现问题,表示未定义响应
【发布时间】:2021-08-05 14:56:22
【问题描述】:

基本上,我正在尝试从电子表格中传递 100 个有效负载中的 id 列表,以使用destroy many 端点删除组织。

import json
import xlrd
import requests


session = requests.Session()
session.headers = {'Content-Type': 'application/json'}
session.auth = 'my email', 'password'
url = 'https://domain.zendesk.com/api/v2/organizations/destroy_many.json'

payloads = []
organizations_dict = {}
book = xlrd.open_workbook('orgs_list_destroy.xls')
sheet = book.sheet_by_name('Sheet1')

for row in range(1, sheet.nrows):
    if sheet.row_values(row)[2]:
        organizations_dict = {'ids': int(sheet.row_values(row)[2])}

        if len(organizations_dict) == 100:
            payloads.append(json.dumps(organizations_dict))
        organizations_dict = {}

        if organizations_dict:
            payloads.append(json.dumps(organizations_dict))

        for payload in payloads:
            response = session.delete(url, data=payload)
        if response.status_code != 200:
            print('Import failed with status {}'.format(response.status_code))
        exit()
        print('Successfully imported a batch of organizations')

【问题讨论】:

  • 嗨达斯汀 ????????您的端点 url 似乎是正确的,但我不确定该方法。您需要从 xls 中读取 id。并在 url 中附加最多 100 个 id 并点击该 url。如果组织数量 > 100 ,则需要为每个 100 个 id 批量操作。

标签: python zendesk zendesk-api


【解决方案1】:

尝试将它放在定义请求标头的 for 循环之外:

url = 'https://{{YOURDOMAIN}}.zendesk.com/api/v2/organizations/destroy_many.json'
user = 'YOUR_EMAIL@DOMAIN.com' + '/token'
pwd = '{{YOUR_TOKEN}}'
headers = {'Content-Type': 'application/json'}
response = requests.delete(url, auth=(user, pwd), headers=headers)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-06-27
    • 2015-07-25
    • 1970-01-01
    • 2018-10-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多