Hello,
I'm working on adding a feature to blend4j (java interface to the Galaxy API) to access Galaxy Tool Data Tables. My repository is here:
I'm working on a method that deletes entries from Galaxy Tool Data Tables, but I'm having some trouble with the API calls.
How can I construct a DELETE api call on an entry in a Tool Data Table? For example, how could I delete hg38 from the "igv_broad_genomes" tool data table (using Postman or curl or whatever HTTP client)? Specifically, how do I pass the extra argument(s) besides the table name (id) that goes in the URL?
In bioblend, we pass "a “|” separated list of column contents, there must be a value for all the columns of the data table"
I can see the "igv_broad_genomes" tool data table when I send a GET request:
GET /api/tool_data/igv_broad_genomes
{
"model_class": "TabularToolDataTable",
"name": "igv_broad_genomes",
"columns": [
"name",
"url",
"value"
],
"fields": [
[
"A. baumannii str. ATCC",
"ABaumannii_ATCC_17978"
],
[
"A. baumannii str. AYE",
"ABaumannii_AYE_uid61637"
],
...(removed for brevity)...
[
"Human hg38",
"hg38"
],
...(removed for brevity)...
]
}
The closest I've got is to send this:
DELETE /api/tool_data/igv_broad_genomes
Content-Type: application/json
I get the same JSON description of the original Tool Data Table, including hg38:
{
"model_class": "TabularToolDataTable",
"name": "igv_broad_genomes",
"columns": [
"name",
"url",
"value"
],
"fields": [
[
"A. baumannii str. ATCC",
"ABaumannii_ATCC_17978"
],
[
"A. baumannii str. AYE",
"ABaumannii_AYE_uid61637"
],
...(removed for brevity)...
[
"Human hg38",
"hg38"
],
...(removed for brevity)...
]
}