File size: 2,308 Bytes
967e410
6e5ec17
e9edc80
3ea419a
6e5ec17
 
 
 
 
9368cf0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6e5ec17
 
967e410
4a501f8
967e410
4818e9b
 
 
 
 
 
 
 
 
 
 
949baaf
4818e9b
 
 
 
 
 
 
a19e1eb
4818e9b
e61a89f
967e410
e61a89f
 
 
 
 
 
967e410
 
4595fee
f18f04b
2923221
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
from flask import Flask, request, jsonify
import requests
import os

app = Flask(__name__)

base_url = os.getenv('base_url')  # URL сервера, например, 'https://api.notisend.ru/v1/email/'
token = os.getenv('token')  # Ваш токен






@app.route('/grups')
def grups():
    return render_template('grups.html')



    

@app.route('/send_request', methods=['POST'])
def send_request():
    api_token = request.form.get('api_token')
    group_id = request.form.get('group_id')
    url = f"https://api.notisend.ru/v1/email/lists/{group_id}/parameters"
    headers = {
        'Content-Type': 'application/json',
        'Authorization': f'Bearer {api_token}'
    }
    response = requests.get(url, headers=headers)
    data = response.json()
    return jsonify(data)











@app.route('/save_db', methods=['GET'])
def save_db():
    # Переменная для переключения между возвратом параметров и ответа сервера
    show_params = False

    # Получаем данные из запроса
    name = request.args.get('name')
    email = request.args.get('email')
    phone = request.args.get('phone')
    grup_id = request.args.get('grup_id')
    pr1 = request.args.get('pr1')
    pr2 = request.args.get('pr2')

    # Создаем данные для отправки
    data = {
        "email": email,
        "unconfirmed": False
    }

    # Отправляем запрос
    headers = {
        'Authorization': f'Bearer {token}',
        'Content-Type': 'application/json'
    }
    response = requests.post(f"{base_url}/email/lists/{grup_id}/recipients", json=data, headers=headers)

    # Возвращаем либо текст ответа сервера, либо входящие параметры запроса и системные переменные
    if show_params:
        # Собираем системные переменные и параметры запроса
        system_vars = {
            'base_url': base_url,
            'token': token
        }
        return jsonify({'system_variables': system_vars, 'request_parameters': request.args})
    else:
        return response.text

if __name__ == '__main__':
    app.run(host='0.0.0.0', port=int(os.environ.get('PORT', 7860)))