Hello!
I am sending a GET request to /api/tools/{tool-id}/build with valid key and history_id parameters (following the documentation at https://github.com/galaxyproject/galaxy/blob/dev/lib/galaxy/webapps/galaxy/api/tools.py#L88).
This works fine when sending the request to my local galaxy server (which is up to date). However, when sending the request to usegalaxy.org, I get:
{"err_msg": "Uncaught exception in exposed API method:", "err_code": 0}
For curiosity's sake, I also tried a couple of other public galaxy servers.
- On http://galaxy.nbic.nl/ i get the error message: No route for /api/tools/upload1/build. (Setting tool-id to upload1)
- On http://biominavm-galaxy.biomina.be/ I get: {"err_msg": "Could not find tool with id 'upload1/build'", "err_code": 404001}
To test sending this request, all i do is going to {galaxy-server-adress}api/tools/{tool-id}/build?key={my-api-key} in the browser, e. g https://usegalaxy.org/api/tools/upload1/build/?key={valid-api-key}.
Questions:
- Am i doing something wrong?
- Does anyone else get the same error if going to https://usegalaxy.org/api/tools/upload1/build/?key={insert-your-api-key-here} in the web browser?
- Why would four different galaxy servers give four different messages, where only my local galaxy server is not returning any error? (I note that the two public servers I tried are probably parsing the tool id in wrong way)
- What could the "uncaught exception" on usegalaxy.org be? It is frustrating using the API when so uninformative error messages are returned.
Thanks for any help!
UPDATE:
Embarrassingly, using the tool id upload1 actually works for me now (I believe I must have actually tested with other tools on usegalaxy.org). However when trying other tools than upload1, I still get the same error message. Here are some exact urls I am trying in my web browser (with API key redacted):
- https://usegalaxy.org/api/tools/addValue/build/?key={API-key}&history_id=03f5505eea258221
- https://usegalaxy.org/api/tools/liftOver1/build/?key={API-key}&history_id=03f5505eea258221
- https://usegalaxy.org/api/tools/gene2exon1/build/?key={API-key}&history_id=03f5505eea258221
They all return {"err_msg": "Uncaught exception in exposed API method:", "err_code": 0}.
These all work fine if running on my local fresh galaxy server, i.e. replacing https://usegalaxy.org with http://127.0.0.1:8080/ and changing api-key and history_id.
NB: When I ommit the history ID, my local galaxy server gives the error message
"error": "[history_id=None] Failed to retrieve history. History unavailable. Please specify a valid history id."
whereas usegalaxy.org gives "uncaught exception [..]" even if I include it or not.
NBB: The tool upload1 can be called without giving history_id (probably because the tool does not require any history?). Could it be that tools requiring history ID are failing and that there is a problem with the history ID I am providing? I am simply picking one of the IDs from https://usegalaxy.org/api/histories. However, I would guess that usegalaxy.org should give the same error message as my local server if there is a problem with the history id.
NBBB: If I give an invalid tool ID, e.g. "asdf", the server returns Could not find tool with id 'asdf', so I believe I am giving the correct tool id. Also, if not giving api key, the server returns Provided API key is not valid, so I believe I am using correct key (note that it still works if using the same browser as you are logged in to usegalaxy.org in).
Hello, Different Galaxy instances are often running different versions of the Galaxy code base. Our team is coming up an ETA for this to be updated on usegalaxy.org. Our team will reply again here when that is done. Thanks for reporting the issue! Jen