Search code examples
pythonrestpython-requestsrestful-authentication

logging into the MATCHBOOK API with Python Requests


I am trying (legitimately and with the go ahead from the site)to log into the betting exchange matchbook.com through their api.

The documentation states:

To Login: https://www.matchbook.com/bpapi/rest/security/session

and

Example Request POST /security/session { "username": "j_henry", "password": "******" }

Example Response { "session-token": "1418_1234567890", "user-id": 1418, "account": { // Same as GET /account API response. ... } }

I am using Requests and have the following code:

payload = {"username": "********", "password": "************"}
r = requests.post('https://www.matchbook.com/edge/rest/security/session', data=payload)
print (r.status_code)

I get error code 415? I must be getting the wrong type of response??

I have looked at a lot of very similar posts on here, and I am about to ask matchbook's team, but before I do has anybody got any ideas?


Solution

  • You might have to specify Content-Type, try to add a header to tell the server it's JSON formatted:

    payload = {"username": "********", "password": "************"}
    headers = {"Content-Type": "application/json;"}
    r = requests.post('https://www.matchbook.com/edge/rest/security/session', data=payload, headers=headers)
    print (r.status_code)