webbrowser.open_new(deviceInfo['verification_with_code_uri']) time.sleep(15) ## PAUSE HERE # Once the user has granted us access to objects we requested, we can # get the basespace access token and start browsing simply by calling updatePriviliges # on the baseSpaceApi instance. code = deviceInfo['device_code'] myAPI.updatePrivileges(code) # As a reference the provided access-token can be obtained from the BaseSpaceApi object print "\nMy Access-token:" print myAPI.getAccessToken() # Let's try and grab all available genomes with our new api! allGenomes = myAPI.getAvailableGenomes() print "\nGenomes \n" + str(allGenomes) # If at a later stage we wish to initialize a BaseSpaceAPI object when we already have # an access-token from a previous sessions, this may simply be done by initializing the BaseSpaceAPI # object using the key-word AccessToken. myToken = myAPI.getAccessToken() myAPI.setAccessToken(myToken) print "\nA BaseSpaceAPI instance was updated with an access-token: " print myAPI #################### Web-based verification ################################# # The scenario where the authentication is done through a web-browser if clientKey: BSapiWeb = BaseSpaceAPI(clientKey, clientSecret, apiServer, apiVersion,
BaseSpaceUrl = 'https://api.cloud-endor.illumina.com/' version = 'v1pre3' # First, create a client for making calls for this user session myAPI = BaseSpaceAPI(client_key, client_secret, BaseSpaceUrl, version, AppSessionId,AccessToken=accessToken) # First, let's grab the genome with id=4 myGenome = myAPI.getGenomeById('4') print "\nThe Genome is " + str(myGenome) print "We can get more information from the genome object" print 'Id: ' + myGenome.Id print 'Href: ' + myGenome.Href print 'DisplayName: ' + myGenome.DisplayName # Get a list of all genomes allGenomes = myAPI.getAvailableGenomes() print "\nGenomes \n" + str(allGenomes) # Let's have a look at the current user user = myAPI.getUserById('current') print "\nThe current user is \n" + str(user) # Now list the projects for this user myProjects = myAPI.getProjectByUser('current') print "\nThe projects for this user are \n" + str(myProjects) # We can also achieve this by making a call using the 'user instance' myProjects2 = user.getProjects(myAPI) print "\nProjects retrieved from the user instance \n" + str(myProjects2) # List the runs available for the current user
time.sleep(15) ## PAUSE HERE # Once the user has granted us access to objects we requested, we can # get the basespace access token and start browsing simply by calling updatePriviliges # on the baseSpaceApi instance. code = deviceInfo['device_code'] BSapi.updatePrivileges(code) # As a reference the provided access-token can be obtained from the BaseSpaceApi object print "\nMy Access-token:" print BSapi.getAccessToken() # Let's try and grab all available genomes with our new api! allGenomes = BSapi.getAvailableGenomes() print "\nGenomes \n" + str(allGenomes) # If at a later stage we wish to initialize a BaseSpaceAPI object when we already have # an access-token from a previous sessions, this may simply be done by initializing the BaseSpaceAPI # object using the key-word AccessToken. myToken = BSapi.getAccessToken() BSapi = BaseSpaceAPI(client_key, client_secret, BaseSpaceUrl, version, AppSessionId, AccessToken=myToken) print "\nA BaseSpaceAPI instance initialized with an access-token: " print BSapi #################### Web-based verification ################################# # The scenario where the authentication is done through a web-browser BSapiWeb = BaseSpaceAPI(client_key, client_secret, BaseSpaceUrl, version, AppSessionId)