Renewing your API Token automatically¶
Your API token will expire every 6 months as a security precaution. You can always get a new token from the EnteroBase webpage. Some users may wish to have a more automated method.
To refresh your token automatically, you just need to query the login endpoint with your username and password. I strongly recommend that send all API requests through HTTPS, especially this one.
https://enterobase.warwick.ac.uk/api/v2.0/login?username=USERNAME&password=PASSWORD
In Python this could be a simple script built into a larger program:
from urllib2 import HTTPError
import urllib2
import base64
import json
ENTEROBASE_USERNAME = 'YOUR_USERNAME'
ENTEROBASE_PASSWORD = 'YOUR_PASSWORD'
ENTEROBASE_SERVER = 'https://enterobase.warwick.ac.uk'
address = '%s/api/v2.0/login?username=%s&password=%s' %(ENTEROBASE_SERVER, ENTEROBASE_USERNAME, ENTEROBASE_PASSWORD)
try:
response = urllib2.urlopen(address)
data = json.load(response)
print json.dumps(data, sort_keys=True, indent=4, separators=(',', ': '))
except HTTPError as Response_error:
print '%d %s. <%s>\n Reason: %s' %(Response_error.code,
Response_error.msg,
Response_error.geturl(),
Response_error.read())