izuemon commited on
Commit
70edc88
·
verified ·
1 Parent(s): 74a02aa

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +46 -0
app.py ADDED
@@ -0,0 +1,46 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from flask import Flask, request, jsonify
2
+ import os
3
+ import requests
4
+
5
+ app = Flask(__name__)
6
+
7
+
8
+ @app.route("/managers", methods=["GET"])
9
+ def get_managers():
10
+ # URLパラメータ取得
11
+ limit = request.args.get("limit")
12
+ since = request.args.get("since")
13
+
14
+ # パラメータがある場合だけ付ける
15
+ params = {}
16
+ if limit:
17
+ params["limit"] = limit
18
+ if since:
19
+ params["since"] = since
20
+
21
+ if request.args.get("channelid"):
22
+ CHANNEL_ID = request.args.get("channelid")
23
+ else:
24
+ CHANNEL_ID = "200605"
25
+
26
+ BASE_URL = f"https://desk-api.channel.io/desk/channels/{CHANNEL_ID}/managers"
27
+
28
+ headers = {
29
+ "accept": "application/json",
30
+ "x-account": os.environ.get("channeliotokenmain") # ←環境変数 token
31
+ }
32
+
33
+ res = requests.get(BASE_URL, headers=headers, params=params)
34
+
35
+ # APIエラー処理
36
+ if res.status_code != 200:
37
+ return jsonify({"error": res.text}), res.status_code
38
+
39
+ json_data = res.json()
40
+
41
+ # managersの部分だけ返す
42
+ return jsonify(json_data.get("managers", []))
43
+
44
+
45
+ if __name__ == "__main__":
46
+ app.run(debug=True, host="0.0.0.0", port=7860)