Derbit API: response.text is a html string, instead of json response

I am trying to configure and test the Derbit API (doc: It seems that I can get a response (status_code 200), however it is a str containing some HTML code. I am using the example in the link above, under section Market Data, public/get_instruments.

import requests, base64
from requests import Request, Session
from requests.exceptions import ConnectionError, Timeout, TooManyRedirects
from requests.auth import HTTPBasicAuth
import json
import pandas as pd

url = ''

username = 'YOUR CLIENT ID'

userpass = username + ':' + password
encoded_u = base64.b64encode(userpass.encode()).decode()
headers = {"Authorization" : f'Basic {encoded_u}'}

values = {
  "jsonrpc" : "2.0",
  "id" : 7617,
  "method" : "public/get_instruments",
  "params" : {
    "currency" : "BTC",
    "kind" : "future",
    "expired" : False

session = Session()
  # response = session.get(url, headers=headers)
  # response = requests.get(url, auth=HTTPBasicAuth(username, password))
  response = requests.get(f'{url}', headers=headers, params=values)
  # data = json.loads(response.text)
except (ConnectionError, Timeout, TooManyRedirects) as e:

What I tried is adding the headers:

headers = {"Authorization" : f'Basic {encoded_u}',
           "Accepts" : "application/json"

But I get still the same issues, where response.text is an HTML str and, therefore

data = json.loads(response.text)

Outputs error:

json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)