Skip to content

Instantly share code, notes, and snippets.

@saqib-nadeem
Forked from JeffPaine/make_github_issue.py
Created May 31, 2016 01:08
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save saqib-nadeem/8559c7fffeb3a7bd31e2df6d7defea50 to your computer and use it in GitHub Desktop.
Save saqib-nadeem/8559c7fffeb3a7bd31e2df6d7defea50 to your computer and use it in GitHub Desktop.
Make an issue on github using API V3 and Python
import json
import requests
# Authentication for user filing issue (must have read/write access to
# repository to add issue to)
USERNAME = 'CHANGEME'
PASSWORD = 'CHANGEME'
# The repository to add this issue to
REPO_OWNER = 'CHANGEME'
REPO_NAME = 'CHANGEME'
def make_github_issue(title, body=None, assignee=None, milestone=None, labels=None):
'''Create an issue on github.com using the given parameters.'''
# Our url to create issues via POST
url = 'https://api.github.com/repos/%s/%s/issues' % (REPO_OWNER, REPO_NAME)
# Create an authenticated session to create the issue
session = requests.session(auth=(USERNAME, PASSWORD))
# Create our issue
issue = {'title': title,
'body': body,
'assignee': assignee,
'milestone': milestone,
'labels': labels}
# Add the issue to our repository
r = session.post(url, json.dumps(issue))
if r.status_code == 201:
print 'Successfully created Issue "%s"' % title
else:
print 'Could not create Issue "%s"' % title
print 'Response:', r.content
make_github_issue('Issue Title', 'Body text', 'assigned_user', 3, ['bug'])
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment