osTicket API:在python中创建一个新票证

时间:2016-03-03 11:24:40

标签: python api python-requests osticket

我正在尝试使用python创建新票证,但我无法让osticket接受我的API密钥。

这是我的代码:

def post_ticket(json):
  headers = {'API-Key': 'mykey'}
  response = requests.post("http://mydomani.com/api/tickets.json", data=create_json_ticket(json), headers=headers)
  for r in response:
    print(r)

我收到错误'Valid API key required'。 如果我使用作为示例给出的PHP脚本(使用相同的url,key和JSON数据),它可以正常工作。

1 个答案:

答案 0 :(得分:0)

标题键应为"X-API-Key"而不是"API-Key"

来自osTicket API页面:

  

HTTP访问

     

对HTTP API的访问仅限于有效的API密钥。 X-API-Key   必须发送HTTP标头以指示要与哪个API密钥一起使用   请求。
  API密钥必须与连接的远程IP匹配   HTTP客户端。像往常一样检查远程IP。如果osTicket服务器   坐在反向代理后面,客户端的原始IP会   从X-Forwarded-For标题中检索,如果由您提供   代理。

     

示例:

     

X-API-Key: BA00B76BAA30F62E1940B46CC1C3C73C

     

命令行示例卷曲:

     

curl -d "{}" -H "X-API-Key: BA00B76BAA30F62E1940B46CC1C3C73C" https://support.you.tld/api/tickets.json