Как передавать параметры в запрос API python

Задача стоит следующая: ежедневно получать данные по API. Исходя из документации запросы работают по следующей схеме: Делаешь запрос на получение export_id.

Пример запроса: https://{account_name}.getcourse.ru/pl/api/account/users?key={secret_key}&.... Вместо «....» добавляются необходимые параметры фильтра.

Параметры фильтра - Дата создания пользователей:

created_at[from]=YYYY-MM-DD

created_at[to]=YYYY-MM-DD

Т.к. мне необходимо выполнять запрос автоматически ежедневно, для получения актуальной даты я использую следующее решение:

import datetime as DT

today_str = DT.datetime.now().strftime('%Y-%m-%d')

query = f"created_at[from]={today_str} created_at[to]={today_str}"

Целиком код выглядит вот так:

import requests 
import datetime as DT

today_str = DT.datetime.now().strftime('%Y-%m-%d')
query = f"created_at[from]={today_str} created_at[to]={today_str}"

params = {'key1' : 'ZPlgNDj',
          'key2' : query}

response = requests.get ("https://{account_name}.getcourse.ru/pl/api/account/users?key=", params = params)

Помогите разобраться что не так


Ответы (1 шт):

Автор решения: Sergei Malanin

Попробуй так

import requests 
import datetime as dt

account_name = "сюда_написать_аккаунт_нейм"
BASE_URL = f"https://{account_name}.getcourse.ru/pl/api/account/users"
today_str = dt.datetime.now().strftime('%Y-%m-%d')


params = {'key' : 'ваш secret_key',
          'created_at[from]' : today_str,
          'created_at[to]': today_str}

response = requests.get(BASE_URL, params=params)
# Проверь потом правильно ли ссылка строится
print(response.request.url)
→ Ссылка