coze_hook.py 887 B

12345678910111213141516171819202122232425262728
  1. import requests
  2. import json
  3. import os
  4. class CozeHook(object):
  5. def __init__(self):
  6. self.url = "https://api.coze.cn/v1/workflow/run"
  7. self.headers = {
  8. "Content-Type": "application/json",
  9. "Authorization": "Bearer " + os.getenv('COZE_API_KEY')
  10. }
  11. self.hook_id = os.getenv('COZE_BOT_ID')
  12. def call_coze_api(self, image_url_list, hook_id=None):
  13. url = self.url
  14. headers = self.headers
  15. payload = {
  16. "workflow_id": hook_id or self.hook_id,
  17. "parameters": {
  18. "image_url_list": image_url_list
  19. }
  20. }
  21. response = requests.post(url, json=payload, headers=headers, timeout=600)
  22. response.raise_for_status()
  23. return response.json()
  24. def run(self, image_url_list):
  25. resp = self.call_coze_api(image_url_list)
  26. return resp