How to access the github API via requests in python?

Viewed 396

I am trying to access the github API via requests with python (Answers in similar questions here and here do not help).

Using curl, I am able to get a list of recent commits for a project, e.g.

curl -H "Accept: application/vnd.github.inertia-preview+json Authorization: token a0d42faabef23ab5b5462394373fc133ca107890" https://api.github.com/repos/rsapkf/42/commit 

Trying to use the same setup in python with requests I tried to use

url = "https://api.github.com/repos/rsapkf/42/commits"
headers = {"Accept": "application/vnd.github.inertia-preview+json", "Authorization": "token a0d42faabef23ab5b5462394373fc133ca107890"}
r = requests.get(url, headers=headers)

as well as

url = "https://api.github.com/repos/rsapkf/42/commits"
headers = {"Accept": "application/vnd.github.inertia-preview+json"}
my_username = "someuser"
my_token  = "a0d42faabef23ab5b5462394373fc133ca107890"
r = requests.get(url, headers=headers, auth=(my_username, my_token))

but in both cases I get the response

{'documentation_url': 'https://docs.github.com/rest',
 'message': 'Bad credentials'}

What am I missing here?

1 Answers

No Authentication is required. The following works:

url = "https://api.github.com/repos/rsapkf/42/commits"
headers = {"Accept": "application/vnd.github.inertia-preview+json"}
r = requests.get(url, headers=headers)
Related