From 400e7c998da01623e2d84e74060b273167d62cff Mon Sep 17 00:00:00 2001 From: JoaquinVanschoren Date: Tue, 9 Jul 2019 15:05:56 +0200 Subject: [PATCH 01/27] fixed link --- openml_OS/views/pages/frontend/new/subpage/data.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openml_OS/views/pages/frontend/new/subpage/data.php b/openml_OS/views/pages/frontend/new/subpage/data.php index 89b53ba7a..58a17ea3c 100644 --- a/openml_OS/views/pages/frontend/new/subpage/data.php +++ b/openml_OS/views/pages/frontend/new/subpage/data.php @@ -134,5 +134,5 @@ -

By submitting, you allow OpenML to index the data and link it to uploaded results. All rights remain with the original author(s) of the data. You confirm that you have read and agreed to the OpenML Honor Code and Terms of Use.

+

By submitting, you allow OpenML to index the data and link it to uploaded results. All rights remain with the original author(s) of the data. You confirm that you have read and agreed to the OpenML Honor Code and Terms of Use.

From 67e0386e8adde9574f6ee2a6e28d89a7f5c0a03b Mon Sep 17 00:00:00 2001 From: JoaquinVanschoren Date: Tue, 9 Jul 2019 16:20:36 +0200 Subject: [PATCH 02/27] ES bugfix --- openml_OS/libraries/ElasticSearch.php | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/openml_OS/libraries/ElasticSearch.php b/openml_OS/libraries/ElasticSearch.php index 834c43e75..270619996 100644 --- a/openml_OS/libraries/ElasticSearch.php +++ b/openml_OS/libraries/ElasticSearch.php @@ -943,11 +943,11 @@ private function build_task($d) { $new_studies = array(); $task_studies = $this->db->query("select study_id from task_study where task_id=" . $d->task_id); if ($task_studies != false) { - foreach ($task_studies as $t) { if (!in_array($t, $studies)){ $new_studies[] = $t->study_id; }} + foreach ($task_studies as $t) { if (!in_array($t->study_id, $studies)){ $new_studies[] = $t->study_id; }} } $run_studies = $this->db->query("select distinct study_id from run_study where run_id in (select rid from run where task_id=" . $d->task_id . ")"); if ($run_studies != false) { - foreach ($run_studies as $t) { if (!in_array($t, $studies)){ $new_studies[] = $t->study_id; }} + foreach ($run_studies as $t) { if (!in_array($t->study_id, $studies)){ $new_studies[] = $t->study_id; }} } if ($new_studies) { foreach ($new_studies as $t) { $new_data['tags'][] = array('tag' => 'study_' . $t, 'uploader' => '0'); } @@ -1343,8 +1343,8 @@ private function build_run($r, $setups, $tasks, $runfiles, $evals, $altmetrics=T $run_studies = $this->db->query("select distinct study_id from run_study where run_id=" . $r->rid); if ($run_studies != false) { foreach ($run_studies as $t) { - if (!in_array($t, $studies)){ - $new_data['tags'][] = array('tag' => 'study_' . $t, 'uploader' => '0'); + if (!in_array($t->study_id, $studies)){ + $new_data['tags'][] = array('tag' => 'study_' . $t->study_id, 'uploader' => '0'); } } } @@ -1533,8 +1533,8 @@ private function build_flow($d) { $run_studies = $this->db->query("select distinct study_id from run_study where run_id in (select rid from run where setup in (select sid from algorithm_setup where implementation_id=" . $d->id . "))"); if ($run_studies != false) { foreach ($run_studies as $t) { - if (!in_array($t, $studies)){ - $new_data['tags'][] = array('tag' => 'study_' . $t, 'uploader' => '0'); + if (!in_array($t->study_id, $studies)){ + $new_data['tags'][] = array('tag' => 'study_' . $t->study_id, 'uploader' => '0'); } } } @@ -1910,11 +1910,11 @@ private function build_data($d, $altmetrics=True) { $new_studies = array(); $task_studies = $this->db->query("select study_id from task_study where task_id in (select task_id from task_inputs where input='source_data' and value=" . $d->did . ")"); if ($task_studies != false) { - foreach ($task_studies as $t) { if (!in_array($t, $studies)){ $new_studies[] = $t->study_id; }} + foreach ($task_studies as $t) { if (!in_array($t->study_id, $studies)){ $new_studies[] = $t->study_id; }} } $run_studies = $this->db->query("select distinct study_id from run_study where run_id in (select rid from run where task_id in (select task_id from task_inputs where input='source_data' and value=" . $d->did . "))"); if ($run_studies != false) { - foreach ($run_studies as $t) { if (!in_array($t, $studies)){ $new_studies[] = $t->study_id; }} + foreach ($run_studies as $t) { if (!in_array($t->study_id, $studies)){ $new_studies[] = $t->study_id; }} } if ($new_studies) { foreach ($new_studies as $t) { $new_data['tags'][] = array('tag' => 'study_' . $t, 'uploader' => '0'); } From f28500fe5c6d3a8f4017699799ab7e2bb15d3aa3 Mon Sep 17 00:00:00 2001 From: JoaquinVanschoren Date: Wed, 10 Jul 2019 01:07:02 +0200 Subject: [PATCH 03/27] setup api docs --- downloads/swagger.json | 386 +++++++++++++++++++++++++++++++++++----- downloads/swagger.yaml | 395 +++++++++++++++++++++++++++++++++++------ 2 files changed, 683 insertions(+), 98 deletions(-) diff --git a/downloads/swagger.json b/downloads/swagger.json index f5ab382f8..c9ab66470 100755 --- a/downloads/swagger.json +++ b/downloads/swagger.json @@ -80,7 +80,7 @@ } }, "412" : { - "description" : "Precondition failed. An error code and message are returned\n350 - Please provide API key. In order to remove your content, please authenticate.\n351 - Authentication failed. The API key was not valid. Please try to login again, or contact api administrators.\n352 - Dataset does not exists. The data ID could not be linked to an existing dataset.\n353 - Dataset is not owned by you. The dataset is owned by another user. Hence you cannot delete it.\n354 - Dataset is in use by other content. Can not be deleted. The data is used in tasks or runs. Delete other content before deleting this dataset.\n355 - Deleting dataset failed. Deleting the dataset failed. Please contact\nsupport team.\n", + "description" : "Precondition failed. An error code and message are returned\n- 350 - Please provide API key. In order to remove your content, please authenticate.\n- 351 - Authentication failed. The API key was not valid. Please try to login again, or contact api administrators.\n- 352 - Dataset does not exists. The data ID could not be linked to an existing dataset.\n- 353 - Dataset is not owned by you. The dataset is owned by another user. Hence you cannot delete it.\n- 354 - Dataset is in use by other content. Can not be deleted. The data is used in tasks or runs. Delete other content before deleting this dataset.\n- 355 - Deleting dataset failed. Deleting the dataset failed. Please contact support team.\n", "schema" : { "$ref" : "#/definitions/Error" } @@ -476,7 +476,7 @@ }, "/data/unprocessed/{data_engine_id}/{order}" : { "get" : { - "tags" : [ "evaluation" ], + "tags" : [ "data" ], "summary" : "Get a list of unprocessed datasets", "description" : "This call is for people running their own dataset processing engines. It returns the details of datasets that are not yet processed by the given processing engine. It doesn't process the datasets, it just returns the dataset info.\n", "parameters" : [ { @@ -1298,6 +1298,183 @@ } } } + }, + "delete" : { + "tags" : [ "setup" ], + "summary" : "Delete setup", + "description" : "Deletes a setup. Upon success, it returns the ID of the deleted setup.\n", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Id of the setup.", + "required" : true, + "type" : "number", + "format" : "integer" + }, { + "name" : "api_key", + "in" : "query", + "description" : "Api key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "ID of the deleted setup", + "examples" : { + "application/json" : "{\n \"setup_delete\": {\n \"id\": \"1\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "study_delete" : { + "$ref" : "#/definitions/inline_response_200_14_study_delete" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n401 - Authentication failed. Please provide API key. In order to remove your content, please authenticate.\n402 - Setup does not exists. The setup ID could not be linked to an existing setup.\n404 - Setup deletion failed. Setup is in use by other content (runs, schedules, etc). Can not be deleted.\n405 - Setup deletion failed. Please try again later.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/setup/tag" : { + "post" : { + "tags" : [ "setup" ], + "summary" : "Tag a setup", + "description" : "Tags a setup.", + "consumes" : [ "application/x-www-form-urlencoded" ], + "parameters" : [ { + "name" : "setup_id", + "in" : "formData", + "description" : "Id of the setup.", + "required" : true, + "type" : "number", + "format" : "integer" + }, { + "name" : "tag", + "in" : "formData", + "description" : "Tag name", + "required" : true, + "type" : "string" + }, { + "name" : "api_key", + "in" : "formData", + "description" : "Api key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "The id of the tagged setup", + "examples" : { + "application/json" : "{\n \"setup_tag\": {\n \"id\": \"2\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "flow_tag" : { + "$ref" : "#/definitions/inline_response_200_15_flow_tag" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n470 - In order to add a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag).\n471 - Entity not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity.\n472 - Entity already tagged by this tag. The entity {dataset, flow, run} already had this tag.\n473 - Something went wrong inserting the tag. Please contact OpenML Team.\n474 - Internal error tagging the entity. Please contact OpenML Team.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/setup/untag" : { + "post" : { + "tags" : [ "setup" ], + "summary" : "Untag a setup", + "description" : "Untags a setup.", + "consumes" : [ "application/x-www-form-urlencoded" ], + "parameters" : [ { + "name" : "setup_id", + "in" : "formData", + "description" : "Id of the setup.", + "required" : true, + "type" : "number" + }, { + "name" : "tag", + "in" : "formData", + "description" : "Tag name", + "required" : true, + "type" : "string" + }, { + "name" : "api_key", + "in" : "formData", + "description" : "Api key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "The id of the untagged setup", + "examples" : { + "application/json" : "{\n \"setup_untag\": {\n \"id\": \"2\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "flow_untag" : { + "$ref" : "#/definitions/inline_response_200_16_flow_untag" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n475 - Please give entity_id {data_id, flow_id, run_id} and tag. In order to remove a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag).\n476 - Entity {dataset, flow, run} not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity.\n477 - Tag not found. The provided tag is not associated with the entity {dataset, flow, run}.\n478 - Tag is not owned by you. The entity {dataset, flow, run} was tagged\nby another user. Hence you cannot delete it.\n479 - Internal error removing the tag. Please contact OpenML Team.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/setup/list/{filters}" : { + "get" : { + "tags" : [ "setup" ], + "summary" : "List and filter setups", + "description" : "List setups, filtered by a range of properties. Any number of properties can be combined by listing them one after the other in the form '/setup/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all evaluations that match the constraints. A maximum of 1,000 results are returned at a time, an error is returned if the result set is bigger. Use pagination (via limit and offset filters), or limit the results to certain flows, setups, or tags.\n", + "parameters" : [ { + "name" : "filters", + "in" : "path", + "description" : "Any combination of these filters\n/tag/{tag} - returns only setups tagged with the given tag.\n/flow/{ids} - return only setups for specific flows, specified as a comma-separated list of flow IDs, e.g. ''1,2,3''\n/setup/{ids} - return only specific setups, specified as a comma-separated list of setup IDs, e.g. ''1,2,3''\n/limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, results 11..15 will be returned. Both limit and offset need to be specified.\n", + "required" : true, + "type" : "string" + }, { + "name" : "api_key", + "in" : "query", + "description" : "API key to authenticate the user", + "required" : false, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "A list of setup descriptions", + "examples" : { + "application/json" : "{\n \"setups\": {\n \"setup\": [\n {\n \"setup_id\":\"10\",\n \"flow_id\":\"65\",\n \"parameter\": [\n {\n \"id\":\"4144\",\n \"flow_id\":\"65\",\n \"flow_name\":\"weka.RandomForest\",\n \"full_name\":\"weka.RandomForest(1)_I\",\n \"parameter_name\":\"I\",\n \"data_type\":\"option\",\n \"default_value\":\"10\",\n \"value\":\"10\"\n },\n {\n \"id\":\"4145\",\n \"flow_id\":\"65\",\n \"flow_name\":\"weka.RandomForest\",\n \"full_name\":\"weka.RandomForest(1)_K\",\n \"parameter_name\":\"K\",\n \"data_type\":\"option\",\n \"default_value\":\"0\",\n \"value\":\"0\"\n }\n ]\n }\n ]\n }\n}" + }, + "schema" : { + "$ref" : "#/definitions/SetupList" + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n670 - Please specify at least one filter.\n671 - Illegal filter.\n672 - Illegal filter input.\n673 - Result set too big. Please use one of the filters or the limit option.\n674 - No results, please check the filter.\n675 - Cannot specify offset without limit.\n676 - Requested result limit too high.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } } }, "/run/{id}" : { @@ -1365,7 +1542,7 @@ "type" : "object", "properties" : { "data_delete" : { - "$ref" : "#/definitions/inline_response_200_14_data_delete" + "$ref" : "#/definitions/inline_response_200_17_data_delete" } } } @@ -1426,7 +1603,7 @@ "type" : "object", "properties" : { "upload_flow" : { - "$ref" : "#/definitions/inline_response_200_15_upload_flow" + "$ref" : "#/definitions/inline_response_200_18_upload_flow" } } } @@ -1541,7 +1718,7 @@ "type" : "object", "properties" : { "run_tag" : { - "$ref" : "#/definitions/inline_response_200_16_run_tag" + "$ref" : "#/definitions/inline_response_200_19_run_tag" } } } @@ -1590,7 +1767,7 @@ "type" : "object", "properties" : { "run_untag" : { - "$ref" : "#/definitions/inline_response_200_17_run_untag" + "$ref" : "#/definitions/inline_response_200_20_run_untag" } } } @@ -1633,7 +1810,7 @@ "type" : "object", "properties" : { "upload_flow" : { - "$ref" : "#/definitions/inline_response_200_18_upload_flow" + "$ref" : "#/definitions/inline_response_200_21_upload_flow" } } } @@ -1675,7 +1852,7 @@ "type" : "object", "properties" : { "run_reset" : { - "$ref" : "#/definitions/inline_response_200_18_upload_flow" + "$ref" : "#/definitions/inline_response_200_21_upload_flow" } } } @@ -1761,7 +1938,7 @@ "type" : "object", "properties" : { "upload_flow" : { - "$ref" : "#/definitions/inline_response_200_20_upload_flow" + "$ref" : "#/definitions/inline_response_200_23_upload_flow" } } } @@ -1957,7 +2134,7 @@ "type" : "object", "properties" : { "study_delete" : { - "$ref" : "#/definitions/inline_response_200_21_study_delete" + "$ref" : "#/definitions/inline_response_200_24_study_delete" } } } @@ -2000,7 +2177,7 @@ "type" : "object", "properties" : { "upload_study" : { - "$ref" : "#/definitions/inline_response_200_22_upload_study" + "$ref" : "#/definitions/inline_response_200_25_upload_study" } } } @@ -2087,7 +2264,7 @@ "type" : "object", "properties" : { "study_attach" : { - "$ref" : "#/definitions/inline_response_200_23_study_attach" + "$ref" : "#/definitions/inline_response_200_26_study_attach" } } } @@ -2137,7 +2314,7 @@ "type" : "object", "properties" : { "upload_study" : { - "$ref" : "#/definitions/inline_response_200_23_study_attach" + "$ref" : "#/definitions/inline_response_200_26_study_attach" } } } @@ -2182,9 +2359,9 @@ } } }, - "/estimationmeasure/list" : { + "/evaluationmeasure/list" : { "get" : { - "tags" : [ "estimationmeasure" ], + "tags" : [ "evaluationmeasure" ], "summary" : "List all evaluation measures", "description" : "Returns an array with all model evaluation measures in the system.\n", "parameters" : [ { @@ -2305,6 +2482,14 @@ } } }, + "SetupList" : { + "type" : "object", + "properties" : { + "setups" : { + "$ref" : "#/definitions/SetupList_setups" + } + } + }, "EvaluationList" : { "type" : "object", "properties" : { @@ -2648,22 +2833,67 @@ } } }, - "inline_response_200_14_data_delete" : { + "inline_response_200_14_study_delete" : { "properties" : { "id" : { "type" : "string", - "description" : "ID of the deleted run, a positive integer" + "description" : "ID of the deleted setup, a positive integer" } } }, "inline_response_200_14" : { + "properties" : { + "study_delete" : { + "$ref" : "#/definitions/inline_response_200_14_study_delete" + } + } + }, + "inline_response_200_15_flow_tag" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the tagged setup" + } + } + }, + "inline_response_200_15" : { + "properties" : { + "flow_tag" : { + "$ref" : "#/definitions/inline_response_200_15_flow_tag" + } + } + }, + "inline_response_200_16_flow_untag" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the untagged setup" + } + } + }, + "inline_response_200_16" : { + "properties" : { + "flow_untag" : { + "$ref" : "#/definitions/inline_response_200_16_flow_untag" + } + } + }, + "inline_response_200_17_data_delete" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the deleted run, a positive integer" + } + } + }, + "inline_response_200_17" : { "properties" : { "data_delete" : { - "$ref" : "#/definitions/inline_response_200_14_data_delete" + "$ref" : "#/definitions/inline_response_200_17_data_delete" } } }, - "inline_response_200_15_upload_flow" : { + "inline_response_200_18_upload_flow" : { "properties" : { "id" : { "type" : "string", @@ -2671,14 +2901,14 @@ } } }, - "inline_response_200_15" : { + "inline_response_200_18" : { "properties" : { "upload_flow" : { - "$ref" : "#/definitions/inline_response_200_15_upload_flow" + "$ref" : "#/definitions/inline_response_200_18_upload_flow" } } }, - "inline_response_200_16_run_tag" : { + "inline_response_200_19_run_tag" : { "properties" : { "id" : { "type" : "string", @@ -2686,14 +2916,14 @@ } } }, - "inline_response_200_16" : { + "inline_response_200_19" : { "properties" : { "run_tag" : { - "$ref" : "#/definitions/inline_response_200_16_run_tag" + "$ref" : "#/definitions/inline_response_200_19_run_tag" } } }, - "inline_response_200_17_run_untag" : { + "inline_response_200_20_run_untag" : { "properties" : { "id" : { "type" : "string", @@ -2701,14 +2931,14 @@ } } }, - "inline_response_200_17" : { + "inline_response_200_20" : { "properties" : { "run_untag" : { - "$ref" : "#/definitions/inline_response_200_17_run_untag" + "$ref" : "#/definitions/inline_response_200_20_run_untag" } } }, - "inline_response_200_18_upload_flow" : { + "inline_response_200_21_upload_flow" : { "properties" : { "id" : { "type" : "string", @@ -2716,21 +2946,21 @@ } } }, - "inline_response_200_18" : { + "inline_response_200_21" : { "properties" : { "upload_flow" : { - "$ref" : "#/definitions/inline_response_200_18_upload_flow" + "$ref" : "#/definitions/inline_response_200_21_upload_flow" } } }, - "inline_response_200_19" : { + "inline_response_200_22" : { "properties" : { "run_reset" : { - "$ref" : "#/definitions/inline_response_200_18_upload_flow" + "$ref" : "#/definitions/inline_response_200_21_upload_flow" } } }, - "inline_response_200_20_upload_flow" : { + "inline_response_200_23_upload_flow" : { "properties" : { "id" : { "type" : "string", @@ -2738,14 +2968,14 @@ } } }, - "inline_response_200_20" : { + "inline_response_200_23" : { "properties" : { "upload_flow" : { - "$ref" : "#/definitions/inline_response_200_20_upload_flow" + "$ref" : "#/definitions/inline_response_200_23_upload_flow" } } }, - "inline_response_200_21_study_delete" : { + "inline_response_200_24_study_delete" : { "properties" : { "id" : { "type" : "string", @@ -2753,14 +2983,14 @@ } } }, - "inline_response_200_21" : { + "inline_response_200_24" : { "properties" : { "study_delete" : { - "$ref" : "#/definitions/inline_response_200_21_study_delete" + "$ref" : "#/definitions/inline_response_200_24_study_delete" } } }, - "inline_response_200_22_upload_study" : { + "inline_response_200_25_upload_study" : { "properties" : { "id" : { "type" : "string", @@ -2768,14 +2998,14 @@ } } }, - "inline_response_200_22" : { + "inline_response_200_25" : { "properties" : { "upload_study" : { - "$ref" : "#/definitions/inline_response_200_22_upload_study" + "$ref" : "#/definitions/inline_response_200_25_upload_study" } } }, - "inline_response_200_23_study_attach" : { + "inline_response_200_26_study_attach" : { "properties" : { "id" : { "type" : "string", @@ -2791,17 +3021,17 @@ } } }, - "inline_response_200_23" : { + "inline_response_200_26" : { "properties" : { "study_attach" : { - "$ref" : "#/definitions/inline_response_200_23_study_attach" + "$ref" : "#/definitions/inline_response_200_26_study_attach" } } }, - "inline_response_200_24" : { + "inline_response_200_27" : { "properties" : { "upload_study" : { - "$ref" : "#/definitions/inline_response_200_23_study_attach" + "$ref" : "#/definitions/inline_response_200_26_study_attach" } } }, @@ -3431,6 +3661,70 @@ } } }, + "SetupList_setups_parameter" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "The parameter ID" + }, + "flow_id" : { + "type" : "string", + "description" : "The (sub)flow ID" + }, + "flow_name" : { + "type" : "string", + "description" : "The (sub)flow name" + }, + "full_name" : { + "type" : "string", + "description" : "The parameter's full name" + }, + "parameter_name" : { + "type" : "string", + "description" : "The parameter's short name" + }, + "data_type" : { + "type" : "string", + "description" : "The parameter's data type" + }, + "default_value" : { + "type" : "string", + "description" : "The parameter's default value" + }, + "value" : { + "type" : "string", + "description" : "The parameter value in this setup" + } + } + }, + "SetupList_setups_setup" : { + "properties" : { + "setup_id" : { + "type" : "string", + "description" : "The setup ID" + }, + "flow_id" : { + "type" : "string", + "description" : "The ID of the flow used by this run" + }, + "parameter" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/SetupList_setups_parameter" + } + } + } + }, + "SetupList_setups" : { + "properties" : { + "setup" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/SetupList_setups_setup" + } + } + } + }, "EvaluationList_evaluations_evaluation" : { "properties" : { "run_id" : { diff --git a/downloads/swagger.yaml b/downloads/swagger.yaml index ccb662436..a8f469f9a 100755 --- a/downloads/swagger.yaml +++ b/downloads/swagger.yaml @@ -103,13 +103,12 @@ paths: 412: description: | Precondition failed. An error code and message are returned - 350 - Please provide API key. In order to remove your content, please authenticate. - 351 - Authentication failed. The API key was not valid. Please try to login again, or contact api administrators. - 352 - Dataset does not exists. The data ID could not be linked to an existing dataset. - 353 - Dataset is not owned by you. The dataset is owned by another user. Hence you cannot delete it. - 354 - Dataset is in use by other content. Can not be deleted. The data is used in tasks or runs. Delete other content before deleting this dataset. - 355 - Deleting dataset failed. Deleting the dataset failed. Please contact - support team. + - 350 - Please provide API key. In order to remove your content, please authenticate. + - 351 - Authentication failed. The API key was not valid. Please try to login again, or contact api administrators. + - 352 - Dataset does not exists. The data ID could not be linked to an existing dataset. + - 353 - Dataset is not owned by you. The dataset is owned by another user. Hence you cannot delete it. + - 354 - Dataset is in use by other content. Can not be deleted. The data is used in tasks or runs. Delete other content before deleting this dataset. + - 355 - Deleting dataset failed. Deleting the dataset failed. Please contact support team. schema: $ref: '#/definitions/Error' /data: @@ -670,7 +669,7 @@ paths: /data/unprocessed/{data_engine_id}/{order}: get: tags: - - evaluation + - data summary: Get a list of unprocessed datasets description: | This call is for people running their own dataset processing engines. It returns the details of datasets that are not yet processed by the given processing engine. It doesn't process the datasets, it just returns the dataset info. @@ -1798,6 +1797,222 @@ paths: 281 - Setup not found. The setup ID was invalid, or setup does not exist (anymore). schema: $ref: '#/definitions/Error' + delete: + tags: + - setup + summary: Delete setup + description: | + Deletes a setup. Upon success, it returns the ID of the deleted setup. + parameters: + - name: id + in: path + description: Id of the setup. + required: true + type: number + format: integer + - name: api_key + in: query + description: Api key to authenticate the user + required: true + type: string + responses: + 200: + description: ID of the deleted setup + examples: + application/json: |- + { + "setup_delete": { + "id": "1" + } + } + schema: + type: object + properties: + study_delete: + $ref: '#/definitions/inline_response_200_14_study_delete' + 412: + description: | + Precondition failed. An error code and message are returned. + 401 - Authentication failed. Please provide API key. In order to remove your content, please authenticate. + 402 - Setup does not exists. The setup ID could not be linked to an existing setup. + 404 - Setup deletion failed. Setup is in use by other content (runs, schedules, etc). Can not be deleted. + 405 - Setup deletion failed. Please try again later. + schema: + $ref: '#/definitions/Error' + /setup/tag: + post: + tags: + - setup + summary: Tag a setup + description: Tags a setup. + consumes: + - application/x-www-form-urlencoded + parameters: + - name: setup_id + in: formData + description: Id of the setup. + required: true + type: number + format: integer + - name: tag + in: formData + description: Tag name + required: true + type: string + - name: api_key + in: formData + description: Api key to authenticate the user + required: true + type: string + responses: + 200: + description: The id of the tagged setup + examples: + application/json: |- + { + "setup_tag": { + "id": "2" + } + } + schema: + type: object + properties: + flow_tag: + $ref: '#/definitions/inline_response_200_15_flow_tag' + 412: + description: | + Precondition failed. An error code and message are returned. + 470 - In order to add a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag). + 471 - Entity not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity. + 472 - Entity already tagged by this tag. The entity {dataset, flow, run} already had this tag. + 473 - Something went wrong inserting the tag. Please contact OpenML Team. + 474 - Internal error tagging the entity. Please contact OpenML Team. + schema: + $ref: '#/definitions/Error' + /setup/untag: + post: + tags: + - setup + summary: Untag a setup + description: Untags a setup. + consumes: + - application/x-www-form-urlencoded + parameters: + - name: setup_id + in: formData + description: Id of the setup. + required: true + type: number + - name: tag + in: formData + description: Tag name + required: true + type: string + - name: api_key + in: formData + description: Api key to authenticate the user + required: true + type: string + responses: + 200: + description: The id of the untagged setup + examples: + application/json: |- + { + "setup_untag": { + "id": "2" + } + } + schema: + type: object + properties: + flow_untag: + $ref: '#/definitions/inline_response_200_16_flow_untag' + 412: + description: | + Precondition failed. An error code and message are returned. + 475 - Please give entity_id {data_id, flow_id, run_id} and tag. In order to remove a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag). + 476 - Entity {dataset, flow, run} not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity. + 477 - Tag not found. The provided tag is not associated with the entity {dataset, flow, run}. + 478 - Tag is not owned by you. The entity {dataset, flow, run} was tagged + by another user. Hence you cannot delete it. + 479 - Internal error removing the tag. Please contact OpenML Team. + schema: + $ref: '#/definitions/Error' + /setup/list/{filters}: + get: + tags: + - setup + summary: List and filter setups + description: | + List setups, filtered by a range of properties. Any number of properties can be combined by listing them one after the other in the form '/setup/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all evaluations that match the constraints. A maximum of 1,000 results are returned at a time, an error is returned if the result set is bigger. Use pagination (via limit and offset filters), or limit the results to certain flows, setups, or tags. + parameters: + - name: filters + in: path + description: | + Any combination of these filters + /tag/{tag} - returns only setups tagged with the given tag. + /flow/{ids} - return only setups for specific flows, specified as a comma-separated list of flow IDs, e.g. ''1,2,3'' + /setup/{ids} - return only specific setups, specified as a comma-separated list of setup IDs, e.g. ''1,2,3'' + /limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, results 11..15 will be returned. Both limit and offset need to be specified. + required: true + type: string + - name: api_key + in: query + description: API key to authenticate the user + required: false + type: string + responses: + 200: + description: A list of setup descriptions + examples: + application/json: |- + { + "setups": { + "setup": [ + { + "setup_id":"10", + "flow_id":"65", + "parameter": [ + { + "id":"4144", + "flow_id":"65", + "flow_name":"weka.RandomForest", + "full_name":"weka.RandomForest(1)_I", + "parameter_name":"I", + "data_type":"option", + "default_value":"10", + "value":"10" + }, + { + "id":"4145", + "flow_id":"65", + "flow_name":"weka.RandomForest", + "full_name":"weka.RandomForest(1)_K", + "parameter_name":"K", + "data_type":"option", + "default_value":"0", + "value":"0" + } + ] + } + ] + } + } + schema: + $ref: '#/definitions/SetupList' + 412: + description: | + Precondition failed. An error code and message are returned. + 670 - Please specify at least one filter. + 671 - Illegal filter. + 672 - Illegal filter input. + 673 - Result set too big. Please use one of the filters or the limit option. + 674 - No results, please check the filter. + 675 - Cannot specify offset without limit. + 676 - Requested result limit too high. + schema: + $ref: '#/definitions/Error' /run/{id}: get: tags: @@ -1944,7 +2159,7 @@ paths: type: object properties: data_delete: - $ref: '#/definitions/inline_response_200_14_data_delete' + $ref: '#/definitions/inline_response_200_17_data_delete' 412: description: | Precondition failed. An error code and message are returned. @@ -2004,7 +2219,7 @@ paths: type: object properties: upload_flow: - $ref: '#/definitions/inline_response_200_15_upload_flow' + $ref: '#/definitions/inline_response_200_18_upload_flow' 412: description: | Precondition failed. An error code and message are returned. @@ -2134,7 +2349,7 @@ paths: type: object properties: run_tag: - $ref: '#/definitions/inline_response_200_16_run_tag' + $ref: '#/definitions/inline_response_200_19_run_tag' 412: description: | Precondition failed. An error code and message are returned. @@ -2183,7 +2398,7 @@ paths: type: object properties: run_untag: - $ref: '#/definitions/inline_response_200_17_run_untag' + $ref: '#/definitions/inline_response_200_20_run_untag' 412: description: | Precondition failed. An error code and message are returned. @@ -2228,7 +2443,7 @@ paths: type: object properties: upload_flow: - $ref: '#/definitions/inline_response_200_18_upload_flow' + $ref: '#/definitions/inline_response_200_21_upload_flow' 412: description: | Precondition failed. An error code and message are returned. @@ -2269,7 +2484,7 @@ paths: type: object properties: run_reset: - $ref: '#/definitions/inline_response_200_18_upload_flow' + $ref: '#/definitions/inline_response_200_21_upload_flow' 412: description: | Precondition failed. An error code and message are returned. @@ -2374,7 +2589,7 @@ paths: type: object properties: upload_flow: - $ref: '#/definitions/inline_response_200_20_upload_flow' + $ref: '#/definitions/inline_response_200_23_upload_flow' 412: description: | Precondition failed. An error code and message are returned. @@ -2575,7 +2790,7 @@ paths: type: object properties: study_delete: - $ref: '#/definitions/inline_response_200_21_study_delete' + $ref: '#/definitions/inline_response_200_24_study_delete' 412: description: | Precondition failed. An error code and message are returned. @@ -2618,7 +2833,7 @@ paths: type: object properties: upload_study: - $ref: '#/definitions/inline_response_200_22_upload_study' + $ref: '#/definitions/inline_response_200_25_upload_study' 412: description: | Precondition failed. An error code and message are returned. @@ -2729,7 +2944,7 @@ paths: type: object properties: study_attach: - $ref: '#/definitions/inline_response_200_23_study_attach' + $ref: '#/definitions/inline_response_200_26_study_attach' 412: description: | Precondition failed. An error code and message are returned. @@ -2782,7 +2997,7 @@ paths: type: object properties: upload_study: - $ref: '#/definitions/inline_response_200_23_study_attach' + $ref: '#/definitions/inline_response_200_26_study_attach' 412: description: "Precondition failed. An error code and message are returned.\n1041 - Could not find study. Check the study ID in your request.\n1042 - Cannot attach entities to legacy studies.\n1043 - Please provide POST field 'ids'.\n1044 - Please ensure that the 'ids' in the POST field is a list of natural numbers.\n1046 - Could not detach entities from the study. It appears as if the entity does not exist. \n" schema: @@ -2837,10 +3052,10 @@ paths: 500 - No model performance estimation procedures available. schema: $ref: '#/definitions/Error' - /estimationmeasure/list: + /evaluationmeasure/list: get: tags: - - estimationmeasure + - evaluationmeasure summary: List all evaluation measures description: | Returns an array with all model evaluation measures in the system. @@ -2930,6 +3145,11 @@ definitions: properties: runs: $ref: '#/definitions/RunList_runs' + SetupList: + type: object + properties: + setups: + $ref: '#/definitions/SetupList_setups' EvaluationList: type: object properties: @@ -3143,83 +3363,110 @@ definitions: properties: flow_untag: $ref: '#/definitions/inline_response_200_13_flow_untag' - inline_response_200_14_data_delete: + inline_response_200_14_study_delete: properties: id: type: string - description: ID of the deleted run, a positive integer + description: ID of the deleted setup, a positive integer inline_response_200_14: + properties: + study_delete: + $ref: '#/definitions/inline_response_200_14_study_delete' + inline_response_200_15_flow_tag: + properties: + id: + type: string + description: ID of the tagged setup + inline_response_200_15: + properties: + flow_tag: + $ref: '#/definitions/inline_response_200_15_flow_tag' + inline_response_200_16_flow_untag: + properties: + id: + type: string + description: ID of the untagged setup + inline_response_200_16: + properties: + flow_untag: + $ref: '#/definitions/inline_response_200_16_flow_untag' + inline_response_200_17_data_delete: + properties: + id: + type: string + description: ID of the deleted run, a positive integer + inline_response_200_17: properties: data_delete: - $ref: '#/definitions/inline_response_200_14_data_delete' - inline_response_200_15_upload_flow: + $ref: '#/definitions/inline_response_200_17_data_delete' + inline_response_200_18_upload_flow: properties: id: type: string description: ID of the uploaded run, a positive integer - inline_response_200_15: + inline_response_200_18: properties: upload_flow: - $ref: '#/definitions/inline_response_200_15_upload_flow' - inline_response_200_16_run_tag: + $ref: '#/definitions/inline_response_200_18_upload_flow' + inline_response_200_19_run_tag: properties: id: type: string description: ID of the tagged run - inline_response_200_16: + inline_response_200_19: properties: run_tag: - $ref: '#/definitions/inline_response_200_16_run_tag' - inline_response_200_17_run_untag: + $ref: '#/definitions/inline_response_200_19_run_tag' + inline_response_200_20_run_untag: properties: id: type: string description: ID of the untagged run - inline_response_200_17: + inline_response_200_20: properties: run_untag: - $ref: '#/definitions/inline_response_200_17_run_untag' - inline_response_200_18_upload_flow: + $ref: '#/definitions/inline_response_200_20_run_untag' + inline_response_200_21_upload_flow: properties: id: type: string description: ID of the evaluated run, a positive integer - inline_response_200_18: + inline_response_200_21: properties: upload_flow: - $ref: '#/definitions/inline_response_200_18_upload_flow' - inline_response_200_19: + $ref: '#/definitions/inline_response_200_21_upload_flow' + inline_response_200_22: properties: run_reset: - $ref: '#/definitions/inline_response_200_18_upload_flow' - inline_response_200_20_upload_flow: + $ref: '#/definitions/inline_response_200_21_upload_flow' + inline_response_200_23_upload_flow: properties: id: type: string description: ID of the run with the trace, a positive integer - inline_response_200_20: + inline_response_200_23: properties: upload_flow: - $ref: '#/definitions/inline_response_200_20_upload_flow' - inline_response_200_21_study_delete: + $ref: '#/definitions/inline_response_200_23_upload_flow' + inline_response_200_24_study_delete: properties: id: type: string description: ID of the deleted study, a positive integer - inline_response_200_21: + inline_response_200_24: properties: study_delete: - $ref: '#/definitions/inline_response_200_21_study_delete' - inline_response_200_22_upload_study: + $ref: '#/definitions/inline_response_200_24_study_delete' + inline_response_200_25_upload_study: properties: id: type: string description: ID of the uploaded study, a positive integer - inline_response_200_22: + inline_response_200_25: properties: upload_study: - $ref: '#/definitions/inline_response_200_22_upload_study' - inline_response_200_23_study_attach: + $ref: '#/definitions/inline_response_200_25_upload_study' + inline_response_200_26_study_attach: properties: id: type: string @@ -3230,14 +3477,14 @@ definitions: linked_entities: type: string description: The number of linked entities - inline_response_200_23: + inline_response_200_26: properties: study_attach: - $ref: '#/definitions/inline_response_200_23_study_attach' - inline_response_200_24: + $ref: '#/definitions/inline_response_200_26_study_attach' + inline_response_200_27: properties: upload_study: - $ref: '#/definitions/inline_response_200_23_study_attach' + $ref: '#/definitions/inline_response_200_26_study_attach' Flow_flow_description_parameter: properties: name: @@ -3668,6 +3915,50 @@ definitions: type: array items: $ref: '#/definitions/RunList_runs_run' + SetupList_setups_parameter: + properties: + id: + type: string + description: The parameter ID + flow_id: + type: string + description: The (sub)flow ID + flow_name: + type: string + description: The (sub)flow name + full_name: + type: string + description: The parameter's full name + parameter_name: + type: string + description: The parameter's short name + data_type: + type: string + description: The parameter's data type + default_value: + type: string + description: The parameter's default value + value: + type: string + description: The parameter value in this setup + SetupList_setups_setup: + properties: + setup_id: + type: string + description: The setup ID + flow_id: + type: string + description: The ID of the flow used by this run + parameter: + type: array + items: + $ref: '#/definitions/SetupList_setups_parameter' + SetupList_setups: + properties: + setup: + type: array + items: + $ref: '#/definitions/SetupList_setups_setup' EvaluationList_evaluations_evaluation: properties: run_id: From 4d7fad62883e258b91c9fb4670f26f289d8e83dd Mon Sep 17 00:00:00 2001 From: JoaquinVanschoren Date: Thu, 8 Aug 2019 22:34:26 +0200 Subject: [PATCH 04/27] apidocs fix --- downloads/swagger.json | 14 +++++++------- downloads/swagger.yaml | 14 +++++++------- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/downloads/swagger.json b/downloads/swagger.json index c9ab66470..e1c7309ec 100755 --- a/downloads/swagger.json +++ b/downloads/swagger.json @@ -2237,16 +2237,16 @@ "parameters" : [ { "name" : "id", "in" : "path", - "description" : "Id of the study.", + "description" : "Id of the study. Supplied in the URL path.", "required" : true, "type" : "number", "format" : "integer" }, { - "name" : "description", + "name" : "ids", "in" : "formData", - "description" : "An XML file describing the entities to be attached. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.study.attach) and an [XML example](https://www.openml.org/api/v1/xml_example/attach).", + "description" : "Comma-separated list of entity IDs to be attached to the study. For instance, if this is a run study, the list of run IDs that need to be added (attached) to the study. Must be supplied as a POST variable.", "required" : true, - "type" : "file" + "type" : "string" }, { "name" : "api_key", "in" : "query", @@ -2292,11 +2292,11 @@ "type" : "number", "format" : "integer" }, { - "name" : "description", + "name" : "ids", "in" : "formData", - "description" : "An XML file describing the entities to be detached. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.study.detach) and an [XML example](https://www.openml.org/api/v1/xml_example/detach).", + "description" : "Comma-separated list of entity IDs to be detached from the study. For instance, if this is a run study, the list of run IDs that need to be removed (detached) from the study. Must be supplied as a POST variable.", "required" : true, - "type" : "file" + "type" : "string" }, { "name" : "api_key", "in" : "query", diff --git a/downloads/swagger.yaml b/downloads/swagger.yaml index a8f469f9a..798ac4a6c 100755 --- a/downloads/swagger.yaml +++ b/downloads/swagger.yaml @@ -2914,15 +2914,15 @@ paths: parameters: - name: id in: path - description: Id of the study. + description: Id of the study. Supplied in the URL path. required: true type: number format: integer - - name: description + - name: ids in: formData - description: An XML file describing the entities to be attached. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.study.attach) and an [XML example](https://www.openml.org/api/v1/xml_example/attach). + description: Comma-separated list of entity IDs to be attached to the study. For instance, if this is a run study, the list of run IDs that need to be added (attached) to the study. Must be supplied as a POST variable. required: true - type: file + type: string - name: api_key in: query description: Api key to authenticate the user @@ -2971,11 +2971,11 @@ paths: required: true type: number format: integer - - name: description + - name: ids in: formData - description: An XML file describing the entities to be detached. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.study.detach) and an [XML example](https://www.openml.org/api/v1/xml_example/detach). + description: Comma-separated list of entity IDs to be detached from the study. For instance, if this is a run study, the list of run IDs that need to be removed (detached) from the study. Must be supplied as a POST variable. required: true - type: file + type: string - name: api_key in: query description: Api key to authenticate the user From be99cd7b59c7a7c55f3c43643692fdc1c4fcfcd2 Mon Sep 17 00:00:00 2001 From: Joaquin Vanschoren Date: Wed, 14 Aug 2019 22:49:22 +0200 Subject: [PATCH 05/27] Return the reason why the XML was not valid according to the XSD --- openml_OS/helpers/api_helper.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/openml_OS/helpers/api_helper.php b/openml_OS/helpers/api_helper.php index 4c9774d0b..2f26fda84 100644 --- a/openml_OS/helpers/api_helper.php +++ b/openml_OS/helpers/api_helper.php @@ -10,7 +10,6 @@ function validateXml( $xmlDocument, $xsdDocument, &$xmlErrors, $from_file = true else $xml->loadXML( $xmlDocument ); - $cxmlErrors = ''; foreach (libxml_get_errors() as $error) { $xmlErrors .= $error->message . '. '; } @@ -19,6 +18,9 @@ function validateXml( $xmlDocument, $xsdDocument, &$xmlErrors, $from_file = true return true; } else { $xmlErrors .= 'XML does not correspond to XSD schema. '; + foreach (libxml_get_errors() as $error) { + $xmlErrors .= 'Error ' . $error->message . ' on line ' . $error->line . ' column ' . $error->column . '. '; + } return false; } } From 9edcf1e11e3dea94fb71a5fa02794265a71856e9 Mon Sep 17 00:00:00 2001 From: Joaquin Vanschoren Date: Fri, 16 Aug 2019 22:45:16 +0200 Subject: [PATCH 06/27] force download of RDF files --- openml_OS/views/rdf_main.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/openml_OS/views/rdf_main.php b/openml_OS/views/rdf_main.php index a5b86cede..26ca72f3a 100644 --- a/openml_OS/views/rdf_main.php +++ b/openml_OS/views/rdf_main.php @@ -20,5 +20,9 @@ $getParams['id'] = $info[array_search('t',$info)+1]; } $command = 'cd ' . $rdfize_path . '&& ./rdfize.sh ' . $getParams['type'] . ' ' . $getParams['id']; + + $filename = 'OpenML_' . $getParams['type'] . '_' . $getParams['id'] . '.rdf'; + header('Content-Disposition: attachment; filename="'.$filename.'"'); + echo shell_exec($command); ?> From 19d8b5c695db5ac159e175fc79d69d8ae083b4cc Mon Sep 17 00:00:00 2001 From: sahithyaravi1493 Date: Thu, 5 Sep 2019 11:37:17 +0200 Subject: [PATCH 07/27] add uploader to evaluation_list --- openml_OS/models/api/v1/Api_evaluation.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openml_OS/models/api/v1/Api_evaluation.php b/openml_OS/models/api/v1/Api_evaluation.php index 736b3079a..26733307d 100644 --- a/openml_OS/models/api/v1/Api_evaluation.php +++ b/openml_OS/models/api/v1/Api_evaluation.php @@ -207,7 +207,7 @@ private function evaluation_list($segs, $user_id) { // TODO: remove dependency on task_inputs and dataset table // TODO (2): transform into subquery where all columns except evaluation_fold are obtained in subquery (along with limit requirements, as MYSQL query optimizer does not seem to understand this query has an upper limit to the number of obtained runs that need to be inspected) $sql = - 'SELECT r.rid, r.task_id, r.start_time, s.implementation_id, s.sid, f.name AS `function`, i.fullName, d.did, d.name, e.evaluation_engine_id, ' . $columns . ' ' . + 'SELECT r.rid, r.task_id, r.start_time, r.uploader, s.implementation_id, s.sid, f.name AS `function`, i.fullName, d.did, d.name, e.evaluation_engine_id, ' . $columns . ' ' . 'FROM run r, ' . $eval_table . ' e, algorithm_setup s, implementation i, dataset d, task t, task_inputs ti, math_function f ' . 'WHERE r.setup = s.sid ' . 'AND e.source = r.rid ' . From 9010ff3b36ebf31e5df8d2bd6623c904e40801ec Mon Sep 17 00:00:00 2001 From: sahithyaravi1493 Date: Mon, 9 Sep 2019 13:37:34 +0200 Subject: [PATCH 08/27] add user_id to name --- openml_OS/models/api/v1/Api_user.php | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/openml_OS/models/api/v1/Api_user.php b/openml_OS/models/api/v1/Api_user.php index 076963688..f2ee77ff9 100644 --- a/openml_OS/models/api/v1/Api_user.php +++ b/openml_OS/models/api/v1/Api_user.php @@ -74,5 +74,14 @@ function bootstrap($format, $segments, $request_type, $user_id) { $this->_xmlContents( 'user-delete', array( 'user' => $user ) ); } */ + private function username_from_id($user_id) + { + # pass user_id to get username + $user = $this->Author->getById($user_id); + $user_name = $user->first_name . ' ' . $user->last_name; + $this->xmlContents('username', $this->version, $user_name); + } + + } ?> From 9a082e0784bc54602c89f408336c72149be5cb5f Mon Sep 17 00:00:00 2001 From: sahithyaravi1493 Date: Mon, 9 Sep 2019 13:38:50 +0200 Subject: [PATCH 09/27] add to initial check --- openml_OS/models/api/v1/Api_user.php | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/openml_OS/models/api/v1/Api_user.php b/openml_OS/models/api/v1/Api_user.php index f2ee77ff9..7c0a32389 100644 --- a/openml_OS/models/api/v1/Api_user.php +++ b/openml_OS/models/api/v1/Api_user.php @@ -15,6 +15,12 @@ function __construct() { function bootstrap($format, $segments, $request_type, $user_id) { $this->outputFormat = $format; + + # http://test.openml.org/api/v1/user/3375 + if (count($segments)== 1 && is_numeric($segments[0])) { + $this->username_from_id($segments[0]); + return; + } /*$getpost = array('get','post'); From 6eadfcfe75c583baa93c56b5479358734c9ac051 Mon Sep 17 00:00:00 2001 From: sahithyaravi1493 Date: Mon, 9 Sep 2019 14:39:41 +0200 Subject: [PATCH 10/27] list of user names --- openml_OS/models/api/v1/Api_user.php | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/openml_OS/models/api/v1/Api_user.php b/openml_OS/models/api/v1/Api_user.php index 7c0a32389..407edb18b 100644 --- a/openml_OS/models/api/v1/Api_user.php +++ b/openml_OS/models/api/v1/Api_user.php @@ -21,6 +21,12 @@ function bootstrap($format, $segments, $request_type, $user_id) { $this->username_from_id($segments[0]); return; } + # http://test.openml.org/api/v1/user/list/uploader/1,2 + if (count($segments) >= 1 && $segments[0] == 'list') { + array_shift($segments); + $this->user_list($segments); + return; + } /*$getpost = array('get','post'); @@ -88,6 +94,24 @@ private function username_from_id($user_id) $this->xmlContents('username', $this->version, $user_name); } + private function user_list($segs) + { + # pass uploader list to get username list + $legal_filters = array('uploader'); + $query_string = array(); + for ($i = 0; $i < count($segs); $i += 2) { + $query_string[$segs[$i]] = urldecode($segs[$i+1]); + if (in_array($segs[$i], $legal_filters) == false) { + $this->returnError(370, $this->version, $this->openmlGeneralErrorCode, 'Legal filter operators: ' . implode(',', $legal_filters) .'. Found illegal filter: ' . $segs[$i]); + return; + } + } + $uploader_id = element('uploader',$query_string); + $sql = 'SELECT `username` FROM `users` WHERE `id` In ('. $uploader_id.')'; + $user_results = $this->Author->query($sql); + $this->xmlContents('user_results', $this->version, array('user_results' => $user_results)); +} + } ?> From 22d94666384f32a0089145a5489e66a62b7e5e39 Mon Sep 17 00:00:00 2001 From: sahithyaravi1493 Date: Mon, 9 Sep 2019 15:15:38 +0200 Subject: [PATCH 11/27] add username tpl to views and remove from_id function --- openml_OS/models/api/v1/Api_user.php | 44 +++++++------------ .../pages/api_new/v1/xml/user-name.tpl.php | 8 ++++ 2 files changed, 25 insertions(+), 27 deletions(-) create mode 100644 openml_OS/views/pages/api_new/v1/xml/user-name.tpl.php diff --git a/openml_OS/models/api/v1/Api_user.php b/openml_OS/models/api/v1/Api_user.php index 407edb18b..b0c73e6c8 100644 --- a/openml_OS/models/api/v1/Api_user.php +++ b/openml_OS/models/api/v1/Api_user.php @@ -16,15 +16,10 @@ function __construct() { function bootstrap($format, $segments, $request_type, $user_id) { $this->outputFormat = $format; - # http://test.openml.org/api/v1/user/3375 - if (count($segments)== 1 && is_numeric($segments[0])) { - $this->username_from_id($segments[0]); - return; - } # http://test.openml.org/api/v1/user/list/uploader/1,2 if (count($segments) >= 1 && $segments[0] == 'list') { array_shift($segments); - $this->user_list($segments); + $this->username_list($segments); return; } @@ -86,30 +81,25 @@ function bootstrap($format, $segments, $request_type, $user_id) { $this->_xmlContents( 'user-delete', array( 'user' => $user ) ); } */ - private function username_from_id($user_id) - { - # pass user_id to get username - $user = $this->Author->getById($user_id); - $user_name = $user->first_name . ' ' . $user->last_name; - $this->xmlContents('username', $this->version, $user_name); - } - private function user_list($segs) - { + private function username_list($segs) + { # pass uploader list to get username list - $legal_filters = array('uploader'); - $query_string = array(); - for ($i = 0; $i < count($segs); $i += 2) { - $query_string[$segs[$i]] = urldecode($segs[$i+1]); - if (in_array($segs[$i], $legal_filters) == false) { - $this->returnError(370, $this->version, $this->openmlGeneralErrorCode, 'Legal filter operators: ' . implode(',', $legal_filters) .'. Found illegal filter: ' . $segs[$i]); - return; - } + $legal_filters = array('uploader'); + $query_string = array(); + for ($i = 0; $i < count($segs); $i += 2) { + $query_string[$segs[$i]] = urldecode($segs[$i+1]); + if (in_array($segs[$i], $legal_filters) == false) { + $this->returnError(370, $this->version, $this->openmlGeneralErrorCode, 'Legal filter operators: ' . implode(',', $legal_filters) .'. Found illegal filter: ' . $segs[$i]); + return; + } + } + $uploader_id = element('uploader', $query_string); + $sql = 'SELECT `username`,`id` FROM `users` WHERE `id` In ('. $uploader_id.')'; + $users = $this->Author->query($sql); + $this->xmlContents('user-name', $this->version, array('users' => $users)); } - $uploader_id = element('uploader',$query_string); - $sql = 'SELECT `username` FROM `users` WHERE `id` In ('. $uploader_id.')'; - $user_results = $this->Author->query($sql); - $this->xmlContents('user_results', $this->version, array('user_results' => $user_results)); + } diff --git a/openml_OS/views/pages/api_new/v1/xml/user-name.tpl.php b/openml_OS/views/pages/api_new/v1/xml/user-name.tpl.php new file mode 100644 index 000000000..8836f8c58 --- /dev/null +++ b/openml_OS/views/pages/api_new/v1/xml/user-name.tpl.php @@ -0,0 +1,8 @@ + + + + id ?> + username ?> + + + From f3937b6c73ada202a331ecb1fcb59ad4301dfe87 Mon Sep 17 00:00:00 2001 From: sahithyaravi1493 Date: Mon, 9 Sep 2019 15:17:57 +0200 Subject: [PATCH 12/27] remove extra brace --- openml_OS/models/api/v1/Api_user.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openml_OS/models/api/v1/Api_user.php b/openml_OS/models/api/v1/Api_user.php index b0c73e6c8..8b278802c 100644 --- a/openml_OS/models/api/v1/Api_user.php +++ b/openml_OS/models/api/v1/Api_user.php @@ -103,5 +103,5 @@ private function username_list($segs) } -} + ?> From d2ae6c3809f67f168063dd201da5f22ebeb6743a Mon Sep 17 00:00:00 2001 From: sahithyaravi1493 Date: Mon, 9 Sep 2019 15:44:48 +0200 Subject: [PATCH 13/27] add uploader to evaluations --- openml_OS/views/pages/api_new/v1/xml/evaluations.tpl.php | 1 + 1 file changed, 1 insertion(+) diff --git a/openml_OS/views/pages/api_new/v1/xml/evaluations.tpl.php b/openml_OS/views/pages/api_new/v1/xml/evaluations.tpl.php index dcc5bf231..d11116b28 100644 --- a/openml_OS/views/pages/api_new/v1/xml/evaluations.tpl.php +++ b/openml_OS/views/pages/api_new/v1/xml/evaluations.tpl.php @@ -2,6 +2,7 @@ rid; ?> + uploader; ?> task_id; ?> sid; ?> implementation_id; ?> From f80f41dfdd388c15ab58e66cbd46368dd87d6c76 Mon Sep 17 00:00:00 2001 From: sahithyaravi1493 Date: Mon, 9 Sep 2019 16:47:10 +0200 Subject: [PATCH 14/27] change uploader to user --- openml_OS/models/api/v1/Api_user.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/openml_OS/models/api/v1/Api_user.php b/openml_OS/models/api/v1/Api_user.php index 8b278802c..2896fca0a 100644 --- a/openml_OS/models/api/v1/Api_user.php +++ b/openml_OS/models/api/v1/Api_user.php @@ -85,7 +85,7 @@ function bootstrap($format, $segments, $request_type, $user_id) { private function username_list($segs) { # pass uploader list to get username list - $legal_filters = array('uploader'); + $legal_filters = array('user_id'); $query_string = array(); for ($i = 0; $i < count($segs); $i += 2) { $query_string[$segs[$i]] = urldecode($segs[$i+1]); @@ -94,8 +94,8 @@ private function username_list($segs) return; } } - $uploader_id = element('uploader', $query_string); - $sql = 'SELECT `username`,`id` FROM `users` WHERE `id` In ('. $uploader_id.')'; + $user_id = element('user_id', $query_string); + $sql = 'SELECT `username`,`id` FROM `users` WHERE `id` In ('. $user_id.')'; $users = $this->Author->query($sql); $this->xmlContents('user-name', $this->version, array('users' => $users)); } From 783dca31b495ed34807bbef4240ad5a25c27bbb7 Mon Sep 17 00:00:00 2001 From: sahithyaravi1493 Date: Mon, 9 Sep 2019 16:47:10 +0200 Subject: [PATCH 15/27] change uploader to user --- openml_OS/models/api/v1/Api_user.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/openml_OS/models/api/v1/Api_user.php b/openml_OS/models/api/v1/Api_user.php index 8b278802c..2896fca0a 100644 --- a/openml_OS/models/api/v1/Api_user.php +++ b/openml_OS/models/api/v1/Api_user.php @@ -85,7 +85,7 @@ function bootstrap($format, $segments, $request_type, $user_id) { private function username_list($segs) { # pass uploader list to get username list - $legal_filters = array('uploader'); + $legal_filters = array('user_id'); $query_string = array(); for ($i = 0; $i < count($segs); $i += 2) { $query_string[$segs[$i]] = urldecode($segs[$i+1]); @@ -94,8 +94,8 @@ private function username_list($segs) return; } } - $uploader_id = element('uploader', $query_string); - $sql = 'SELECT `username`,`id` FROM `users` WHERE `id` In ('. $uploader_id.')'; + $user_id = element('user_id', $query_string); + $sql = 'SELECT `username`,`id` FROM `users` WHERE `id` In ('. $user_id.')'; $users = $this->Author->query($sql); $this->xmlContents('user-name', $this->version, array('users' => $users)); } From e5b14ed55dac27e4a29557e78d80e891005566a3 Mon Sep 17 00:00:00 2001 From: JoaquinVanschoren Date: Mon, 9 Sep 2019 17:11:01 +0200 Subject: [PATCH 16/27] doc update --- swagger.json | 4335 +++++++++++++++++++++++++++++++++++++++++++++++++ swagger.yaml | 4388 ++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 8723 insertions(+) create mode 100755 swagger.json create mode 100755 swagger.yaml diff --git a/swagger.json b/swagger.json new file mode 100755 index 000000000..f671f448c --- /dev/null +++ b/swagger.json @@ -0,0 +1,4335 @@ +{ + "swagger" : "2.0", + "info" : { + "description" : "REST API for sharing, organizing and reusing machine learning datasets, code, and experiments. Follows a predictive URL scheme from endpoint https://www.openml.org/api/v1/json (or /xml). You need to add your `api_key` to every call (see your account settings), or simply log in. See https://www.openml.org/api_data_docs for the file server API.", + "version" : "1.0.0", + "title" : "OpenML API" + }, + "basePath" : "/api/v1/json", + "schemes" : [ "https" ], + "produces" : [ "application/json" ], + "paths" : { + "/data/{id}" : { + "get" : { + "tags" : [ "data" ], + "summary" : "Get dataset description", + "description" : "Returns information about a dataset. The information includes the name, information about the creator, URL to download it and more.\n", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Id of the dataset.", + "required" : true, + "type" : "number", + "format" : "integer" + }, { + "name" : "api_key", + "in" : "query", + "description" : "Api key to authenticate the user", + "required" : false, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "A dataset description", + "examples" : { + "application/json" : "{\n \"data_set_description\": {\n \"id\": \"1\",\n \"name\": \"anneal\",\n \"version\": \"2\",\n \"description\": \"...\",\n \"format\": \"ARFF\",\n \"upload_date\": \"2014-04-06 23:19:20\",\n \"licence\": \"Public\",\n \"url\": \"https://www.openml.org/data/download/1/dataset_1_anneal.arff\",\n \"file_id\": \"1\",\n \"default_target_attribute\": \"class\",\n \"version_label\": \"2\",\n \"tag\": [\n \"study_1\",\n \"uci\"\n ],\n \"visibility\": \"public\",\n \"original_data_url\": \"https://www.openml.org/d/2\",\n \"status\": \"active\",\n \"md5_checksum\": \"d01f6ccd68c88b749b20bbe897de3713\"\n }\n}" + }, + "schema" : { + "$ref" : "#/definitions/Data" + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned\n110 - Please provide data_id.\n111 - Unknown dataset. Data set description with data_id was not found in the database.\n112 - No access granted. This dataset is not shared with you.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + }, + "delete" : { + "tags" : [ "data" ], + "summary" : "Delete dataset", + "description" : "Deletes a dataset. Upon success, it returns the ID of the deleted dataset.\n", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Id of the dataset.", + "required" : true, + "type" : "number", + "format" : "integer" + }, { + "name" : "api_key", + "in" : "query", + "description" : "Api key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "ID of the deleted dataset", + "examples" : { + "application/json" : "{\n \"data_delete\": {\n \"id\": \"4328\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "data_delete" : { + "$ref" : "#/definitions/inline_response_200_data_delete" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned\n- 350 - Please provide API key. In order to remove your content, please authenticate.\n- 351 - Authentication failed. The API key was not valid. Please try to login again, or contact api administrators.\n- 352 - Dataset does not exists. The data ID could not be linked to an existing dataset.\n- 353 - Dataset is not owned by you. The dataset is owned by another user. Hence you cannot delete it.\n- 354 - Dataset is in use by other content. Can not be deleted. The data is used in tasks or runs. Delete other content before deleting this dataset.\n- 355 - Deleting dataset failed. Deleting the dataset failed. Please contact support team.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/data" : { + "post" : { + "tags" : [ "data" ], + "summary" : "Upload dataset", + "description" : "Uploads a dataset. Upon success, it returns the data id.\n", + "consumes" : [ "multipart/form-data" ], + "parameters" : [ { + "name" : "description", + "in" : "formData", + "description" : "An XML file describing the dataset. Only name, description, and data format are required. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.data.upload) and an [XML example](https://www.openml.org/api/v1/xml_example/data).", + "required" : true, + "type" : "file" + }, { + "name" : "dataset", + "in" : "formData", + "description" : "The actual dataset, being an ARFF file.", + "required" : true, + "type" : "file" + }, { + "name" : "api_key", + "in" : "query", + "description" : "Api key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "Id of the uploaded dataset", + "examples" : { + "application/json" : "{\n \"upload_data_set\": {\n \"id\": \"4328\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "upload_data_set" : { + "$ref" : "#/definitions/inline_response_200_1_upload_data_set" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n130 - Problem with file uploading. There was a problem with the file upload.\n131 - Problem validating uploaded description file. The XML description format does not meet the standards.\n132 - Failed to move the files. Internal server error, please contact API administrators.\n133 - Failed to make checksum of datafile. Internal server error, please contact API administrators.\n134 - Failed to insert record in database. Internal server error, please contact API administrators.\n135 - Please provide description xml.\n136 - File failed format verification. The uploaded file is not valid according to the selected file format. Please check the file format specification and try again.\n137 - Please provide API key. In order to share content, please log in or provide your API key.\n138 - Authentication failed. The API key was not valid. Please try to login again, or contact API administrators\n139 - Combination name / version already exists. Leave version out for auto increment\n140 - Both dataset file and dataset url provided. The system is confused since both a dataset file (post) and a dataset url (xml) are provided. Please remove one.\n141 - Neither dataset file or dataset url are provided. Please provide either a dataset file as POST variable, or a dataset url in the description XML.\n142 - Error in processing arff file. Can be a syntax error, or the specified target feature does not exists. For now, we only check on arff files. If a dataset is claimed to be in such a format, and it can not be parsed, this error is returned.\n143 - Suggested target feature not legal. It is possible to suggest a default target feature (for predictive tasks). However, it should be provided in the data.\n144 - Unable to update dataset. The dataset with id could not be found in the database. If you upload a new dataset, unset the id.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/data/qualities/list" : { + "get" : { + "tags" : [ "data" ], + "summary" : "List all data qualities", + "description" : "Returns a list of all data qualities in the system.\n", + "parameters" : [ { + "name" : "api_key", + "in" : "query", + "description" : "API key to authenticate the user", + "required" : false, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "A list of data qualities", + "examples" : { + "application/json" : "{\n \"data_qualities_list\":{\n \"quality\":[\n \"NumberOfClasses\",\n \"NumberOfFeatures\",\n \"NumberOfInstances\",\n \"NumberOfInstancesWithMissingValues\",\n \"NumberOfMissingValues\",\n \"NumberOfNumericFeatures\",\n \"NumberOfSymbolicFeatures\"\n ]\n }\n}" + }, + "schema" : { + "$ref" : "#/definitions/DataQualityList" + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned\n370 - No data qualities available. There are no data qualities in the system.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/data/qualities" : { + "post" : { + "tags" : [ "data" ], + "summary" : "Upload dataset qualities", + "description" : "Uploads dataset qualities. Upon success, it returns the data id.\n", + "consumes" : [ "multipart/form-data" ], + "parameters" : [ { + "name" : "description", + "in" : "formData", + "description" : "An XML file describing the dataset. Only name, description, and data format are required. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.data.qualities) and an [XML example](https://www.openml.org/api/v1/xml_example/data.qualities).", + "required" : true, + "type" : "file" + }, { + "name" : "api_key", + "in" : "query", + "description" : "Api key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n381 - Something wrong with XML, please check did and evaluation_engine_id\n382 - Please provide description xml\n383 - Problem validating uploaded description file\n384 - Dataset not processed yet\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/data/status/update/" : { + "post" : { + "tags" : [ "data" ], + "summary" : "Change the status of a dataset", + "description" : "Change the status of a dataset, either 'active' or 'deactivated'\n", + "consumes" : [ "multipart/form-data" ], + "parameters" : [ { + "name" : "data_id", + "in" : "formData", + "description" : "Id of the dataset.", + "required" : true, + "type" : "number", + "format" : "integer" + }, { + "name" : "status", + "in" : "formData", + "description" : "The status on which to filter the results, either 'active' or 'deactivated'.", + "required" : true, + "type" : "string" + }, { + "name" : "api_key", + "in" : "formData", + "description" : "Api key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n691 - Illegal status\n692 - Dataset does not exists\n693 - Dataset is not owned by you\n694 - Illegal status transition\n695 - Status update failed\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/data/features" : { + "post" : { + "tags" : [ "data" ], + "summary" : "Upload dataset feature description", + "description" : "Uploads dataset feature description. Upon success, it returns the data id.\n", + "consumes" : [ "multipart/form-data" ], + "parameters" : [ { + "name" : "description", + "in" : "formData", + "description" : "An XML file describing the dataset. Only name, description, and data format are required. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.data.features) and an [XML example](https://www.openml.org/api/v1/xml_example/data.features).", + "required" : true, + "type" : "file" + }, { + "name" : "api_key", + "in" : "query", + "description" : "Api key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n431 - Dataset already processed\n432 - Please provide description xml\n433 - Problem validating uploaded description file\n434 - Could not find dataset\n436 - Something wrong with XML, check data id and evaluation engine id\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/data/features/{id}" : { + "get" : { + "tags" : [ "data" ], + "summary" : "Get data features", + "description" : "Returns the features of a dataset.\n", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Id of the dataset.", + "required" : true, + "type" : "number", + "format" : "integer" + }, { + "name" : "api_key", + "in" : "query", + "description" : "Api key to authenticate the user", + "required" : false, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "All the features of the dataset", + "examples" : { + "application/json" : "{\n \"data_features\": {\n \"feature\": [\n {\n \"index\": \"0\",\n \"name\": \"sepallength\",\n \"data_type\": \"numeric\",\n \"is_target\": \"false\",\n \"is_ignore\": \"false\",\n \"is_row_identifier\": \"false\"\n },\n {\n \"index\": \"1\",\n \"name\": \"sepalwidth\",\n \"data_type\": \"numeric\",\n \"is_target\": \"false\",\n \"is_ignore\": \"false\",\n \"is_row_identifier\": \"false\"\n },\n {\n \"index\": \"2\",\n \"name\": \"petallength\",\n \"data_type\": \"numeric\",\n \"is_target\": \"false\",\n \"is_ignore\": \"false\",\n \"is_row_identifier\": \"false\"\n },\n {\n \"index\": \"3\",\n \"name\": \"petalwidth\",\n \"data_type\": \"numeric\",\n \"is_target\": \"false\",\n \"is_ignore\": \"false\",\n \"is_row_identifier\": \"false\"\n },\n {\n \"index\": \"4\",\n \"name\": \"class\",\n \"data_type\": \"nominal\",\n \"is_target\": \"true\",\n \"is_ignore\": \"false\",\n \"is_row_identifier\": \"false\"\n }\n ]\n }\n}" + }, + "schema" : { + "$ref" : "#/definitions/DataFeatures" + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n270 - Please provide dataset ID.\n271 - Unknown dataset. Data set with the given data ID was not found (or is not shared with you).\n272 - No features found. The dataset did not contain any features, or we could not extract them.\n273 - Dataset not processed yet. The dataset was not processed yet, features are not yet available. Please wait for a few minutes.\n274 - Dataset processed with error. The feature extractor has run into an error while processing the dataset. Please check whether it is a valid supported file. If so, please contact the API admins.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/data/qualities/{id}" : { + "get" : { + "tags" : [ "data" ], + "summary" : "Get data qualities", + "description" : "Returns the qualities of a dataset.\n", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Id of the dataset.", + "required" : true, + "type" : "number", + "format" : "integer" + }, { + "name" : "api_key", + "in" : "query", + "description" : "Api key to authenticate the user", + "required" : false, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "All the qualities of the dataset", + "examples" : { + "application/json" : "{\n \"data_qualities\": {\n \"quality\": [\n {\n \"name\": \"ClassCount\",\n \"value\": \"3.0\"\n },\n {\n \"name\": \"ClassEntropy\",\n \"value\": \"1.584962500721156\"\n },\n {\n \"name\": \"NumberOfClasses\",\n \"value\": \"3\"\n },\n {\n \"name\": \"NumberOfFeatures\",\n \"value\": \"5\"\n },\n {\n \"name\": \"NumberOfInstances\",\n \"value\": \"150\"\n },\n {\n \"name\": \"NumberOfInstancesWithMissingValues\",\n \"value\": \"0\"\n },\n {\n \"name\": \"NumberOfMissingValues\",\n \"value\": \"0\"\n },\n {\n \"name\": \"NumberOfNumericFeatures\",\n \"value\": \"4\"\n },\n {\n \"name\": \"NumberOfSymbolicFeatures\",\n \"value\": \"0\"\n }\n ]\n }\n}" + }, + "schema" : { + "$ref" : "#/definitions/DataQualities" + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n360 - Please provide data set ID\n361 - Unknown dataset. The data set with the given ID was not found in the database, or is not shared with you.\n362 - No qualities found. The registered dataset did not contain any calculated qualities.\n363 - Dataset not processed yet. The dataset was not processed yet, no qualities are available. Please wait for a few minutes.\n364 - Dataset processed with error. The quality calculator has run into an error while processing the dataset. Please check whether it is a valid supported file. If so, contact the support team.\n365 - Interval start or end illegal. There was a problem with the interval\nstart or end.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/data/list/{filters}" : { + "get" : { + "tags" : [ "data" ], + "summary" : "List and filter datasets", + "description" : "List datasets, possibly filtered by a range of properties. Any number of properties can be combined by listing them one after the other in the form '/data/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all datasets that match the constraints.\n", + "parameters" : [ { + "name" : "filters", + "in" : "path", + "description" : "Any combination of these filters\n/limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, results 11..15 will be returned. Both limit and offset need to be specified.\n/status/{status} - returns only datasets with a given status, either 'active', 'deactivated', or 'in_preparation'.\n/tag/{tag} - returns only datasets tagged with the given tag.\n/{data_quality}/{range} - returns only tasks for which the underlying datasets have certain qualities. {data_quality} can be data_id, data_name, data_version, number_instances, number_features, number_classes, number_missing_values. {range} can be a specific value or a range in the form 'low..high'. Multiple qualities can be combined, as in 'number_instances/0..50/number_features/0..10'.\n", + "required" : true, + "type" : "string" + }, { + "name" : "api_key", + "in" : "query", + "description" : "API key to authenticate the user", + "required" : false, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "A list of datasets with the given task", + "examples" : { + "application/json" : "{\n \"data\": {\n \"dataset\": [\n {\n \"did\":\"1\",\n \"name\":\"anneal\",\n \"status\":\"active\",\n \"format\":\"ARFF\",\n \"quality\":[\n {\n \"name\":\"MajorityClassSize\",\n \"value\":\"684\"\n },\n {\n \"name\":\"MaxNominalAttDistinctValues\",\n \"value\":\"10.0\"\n },\n {\n \"name\":\"MinorityClassSize\"\n ,\"value\":\"0\"\n },\n {\n \"name\":\"NumBinaryAtts\",\n \"value\":\"14.0\"\n },\n {\n \"name\":\"NumberOfClasses\",\n \"value\":\"6\"\n },\n {\n \"name\":\"NumberOfFeatures\",\n \"value\":\"39\"\n },\n {\n \"name\":\"NumberOfInstances\",\n \"value\":\"898\"\n },\n {\n \"name\":\"NumberOfInstancesWithMissingValues\",\n \"value\":\"0\"\n },\n {\n \"name\":\"NumberOfMissingValues\",\n \"value\":\"0\"\n },\n {\n \"name\":\"NumberOfNumericFeatures\",\n \"value\":\"6\"\n },\n {\n \"name\":\"NumberOfSymbolicFeatures\",\n \"value\":\"32\"\n }\n ]\n }\n ]\n }\n}" + }, + "schema" : { + "$ref" : "#/definitions/DataList" + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n370 - Illegal filter specified.\n371 - Filter values/ranges not properly specified.\n372 - No results. There where no matches for the given constraints.\n373 - Can not specify an offset without a limit.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/data/tag" : { + "post" : { + "tags" : [ "data" ], + "summary" : "Tag a dataset", + "description" : "Tags a dataset.", + "consumes" : [ "application/x-www-form-urlencoded" ], + "parameters" : [ { + "name" : "data_id", + "in" : "formData", + "description" : "Id of the dataset.", + "required" : true, + "type" : "number", + "format" : "integer" + }, { + "name" : "tag", + "in" : "formData", + "description" : "Tag name", + "required" : true, + "type" : "string" + }, { + "name" : "api_key", + "in" : "formData", + "description" : "Api key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "The id of the tagged dataset", + "examples" : { + "application/json" : "{\n \"data_tag\": {\n \"id\": \"2\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "data_tag" : { + "$ref" : "#/definitions/inline_response_200_2_data_tag" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n470 - In order to add a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag).\n471 - Entity not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity.\n472 - Entity already tagged by this tag. The entity {dataset, flow, run} already had this tag.\n473 - Something went wrong inserting the tag. Please contact OpenML Team.\n474 - Internal error tagging the entity. Please contact OpenML Team.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/data/untag" : { + "post" : { + "tags" : [ "data" ], + "summary" : "Untag a dataset", + "description" : "Untags a dataset.", + "consumes" : [ "application/x-www-form-urlencoded" ], + "parameters" : [ { + "name" : "data_id", + "in" : "formData", + "description" : "Id of the dataset.", + "required" : true, + "type" : "number" + }, { + "name" : "tag", + "in" : "formData", + "description" : "Tag name", + "required" : true, + "type" : "string" + }, { + "name" : "api_key", + "in" : "formData", + "description" : "Api key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "The ID of the untagged dataset", + "examples" : { + "application/json" : "{\n \"data_untag\": {\n \"id\": \"2\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "data_untag" : { + "$ref" : "#/definitions/inline_response_200_3_data_untag" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n475 - Please give entity_id {data_id, flow_id, run_id} and tag. In order to remove a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag).\n476 - Entity {dataset, flow, run} not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity.\n477 - Tag not found. The provided tag is not associated with the entity {dataset, flow, run}.\n478 - Tag is not owned by you. The entity {dataset, flow, run} was tagged by another user. Hence you cannot delete it.\n479 - Internal error removing the tag. Please contact OpenML Team.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/data/unprocessed/{data_engine_id}/{order}" : { + "get" : { + "tags" : [ "data" ], + "summary" : "Get a list of unprocessed datasets", + "description" : "This call is for people running their own dataset processing engines. It returns the details of datasets that are not yet processed by the given processing engine. It doesn't process the datasets, it just returns the dataset info.\n", + "parameters" : [ { + "name" : "data_engine_id", + "in" : "path", + "description" : "The ID of the data processing engine. You get this ID when you register a new data processing engine with OpenML. The ID of the main data processing engine is 1.", + "required" : true, + "type" : "string" + }, { + "name" : "order", + "in" : "path", + "description" : "When there are multiple datasets still to process, this defines which ones to return. Options are 'normal' - the oldest datasets, or 'random'.", + "required" : true, + "type" : "string" + }, { + "name" : "api_key", + "in" : "query", + "description" : "API key to authenticate the user", + "required" : false, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "A list of unprocessed datasets", + "examples" : { + "application/json" : { + "data_unprocessed" : { + "run" : [ { + "did" : "1", + "name" : "anneal", + "version" : "2", + "status" : "deactivated", + "format" : "ARFF" + } ] + } + } + }, + "schema" : { + "$ref" : "#/definitions/DataUnprocessed" + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n681 - No unprocessed datasets.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/data/qualities/unprocessed/{data_engine_id}/{order}" : { + "post" : { + "tags" : [ "data" ], + "summary" : "Get a list of datasets with unprocessed qualities\n", + "description" : "This call is for people running their own dataset processing engines. It returns the details of datasets for which certain qualities are not yet processed by the given processing engine. It doesn't process the datasets, it just returns the dataset info.\n", + "consumes" : [ "application/x-www-form-urlencoded" ], + "parameters" : [ { + "name" : "data_engine_id", + "in" : "path", + "description" : "The ID of the data processing engine. You get this ID when you register a new data processing engine with OpenML. The ID of the main data processing engine is 1.", + "required" : true, + "type" : "string" + }, { + "name" : "order", + "in" : "path", + "description" : "When there are multiple datasets still to process, this defines which ones to return. Options are 'normal' - the oldest datasets, or 'random'.", + "required" : true, + "type" : "string" + }, { + "name" : "api_key", + "in" : "query", + "description" : "API key to authenticate the user", + "required" : false, + "type" : "string" + }, { + "name" : "qualities", + "in" : "formData", + "description" : "Comma-separated list of (at least two) quality names, e.g. 'NumberOfInstances,NumberOfFeatures'.", + "required" : true, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "A list of unprocessed datasets", + "examples" : { + "application/json" : { + "data_unprocessed" : { + "run" : [ { + "did" : "1", + "name" : "anneal", + "version" : "2", + "status" : "deactivated", + "format" : "ARFF" + } ] + } + } + }, + "schema" : { + "$ref" : "#/definitions/DataUnprocessed" + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n686 - Please specify the features the evaluation engine wants to calculate (at least 2).\n687 - No unprocessed datasets according to the given set of meta-features.\n688 - Illegal qualities.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/task/{id}" : { + "get" : { + "tags" : [ "task" ], + "summary" : "Get task description", + "description" : "Returns information about a task. The information includes the task type, input data, train/test sets, and more.\n", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "ID of the task.", + "required" : true, + "type" : "number", + "format" : "integer" + }, { + "name" : "api_key", + "in" : "query", + "description" : "Api key to authenticate the user", + "required" : false, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "A task description", + "examples" : { + "application/json" : "{\n \"task\": {\n \"task_id\":\"1\",\n \"task_type\":\"Supervised Classification\",\n \"input\":[\n {\n \"name\":\"source_data\",\n \"data_set\":{\n \"data_set_id\":\"1\",\n \"target_feature\":\"class\"\n }\n },\n {\n \"name\":\"estimation_procedure\",\n \"estimation_procedure\":{\n \"type\":\"crossvalidation\",\n \"data_splits_url\":\"https://www.openml.org/api_splits/get/1/Task_1_splits.arff\",\n \"parameter\":[\n {\n \"name\":\"number_repeats\",\n \"value\":\"1\"\n },\n {\n \"name\":\"number_folds\",\n \"value\":\"10\"\n },\n {\n \"name\":\"percentage\"\n },\n {\n \"name\":\"stratified_sampling\",\n \"value\":\"true\"\n }\n ]\n }\n },\n {\n \"name\":\"cost_matrix\",\n \"cost_matrix\":[]\n },\n {\n \"name\":\"evaluation_measures\",\n \"evaluation_measures\":\n {\n \"evaluation_measure\":\"predictive_accuracy\"\n }\n }\n ],\n \"output\":{\n \"name\":\"predictions\",\n \"predictions\":{\n \"format\":\"ARFF\",\n \"feature\":[\n {\n \"name\":\"repeat\",\n \"type\":\"integer\"\n },\n {\n \"name\":\"fold\",\n \"type\":\"integer\"\n },\n {\n \"name\":\"row_id\",\n \"type\":\"integer\"\n },\n {\n \"name\":\"confidence.classname\",\n \"type\":\"numeric\"\n },\n {\n \"name\":\"prediction\",\n \"type\":\"string\"\n }\n ]\n }\n },\n \"tag\":[\"basic\",\"study_1\",\"under100k\",\"under1m\"]\n }\n}" + }, + "schema" : { + "$ref" : "#/definitions/Task" + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n150 - Please provide task_id.\n151 - Unknown task. The task with the given id was not found in the database\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + }, + "delete" : { + "tags" : [ "task" ], + "summary" : "Delete task", + "description" : "Deletes a task. Upon success, it returns the ID of the deleted task.\n", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Id of the task.", + "required" : true, + "type" : "number", + "format" : "integer" + }, { + "name" : "api_key", + "in" : "query", + "description" : "Api key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "ID of the deleted task", + "examples" : { + "application/json" : "{\n \"task_delete\": {\n \"id\": \"4328\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "task_delete" : { + "$ref" : "#/definitions/inline_response_200_4_task_delete" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n450 - Please provide API key. In order to remove your content, please authenticate.\n451 - Authentication failed. The API key was not valid. Please try to login again, or contact api administrators.\n452 - Task does not exists. The task ID could not be linked to an existing task.\n454 - Task is executed in some runs. Delete these first.\n455 - Deleting the task failed. Please contact support team.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/task" : { + "post" : { + "tags" : [ "task" ], + "summary" : "Upload task", + "description" : "Uploads a task. Upon success, it returns the task id.\n", + "consumes" : [ "multipart/form-data" ], + "parameters" : [ { + "name" : "description", + "in" : "formData", + "description" : "An XML file describing the task. Only name, description, and task format are required. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.task.upload) and an [XML example](https://www.openml.org/api/v1/xml_example/task).", + "required" : true, + "type" : "file" + }, { + "name" : "api_key", + "in" : "query", + "description" : "Api key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "Id of the uploaded task", + "examples" : { + "application/json" : "{\n \"upload_task\": {\n \"id\": \"4328\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "upload_task" : { + "$ref" : "#/definitions/inline_response_200_5_upload_task" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n530 - Description file not present. Please upload the task description.\n531 - Internal error. Please contact api support team\n532 - Problem validating uploaded description file. The XML description format does not meet the standards\n533 - Task already exists.\n534 - Error creating the task.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/task/list/{filters}" : { + "get" : { + "tags" : [ "task" ], + "summary" : "List and filter tasks", + "description" : "List tasks, possibly filtered by a range of properties from the task itself or from the underlying dataset. Any number of properties can be combined by listing them one after the other in the form '/task/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all tasks that match the constraints.\n", + "parameters" : [ { + "name" : "filters", + "in" : "path", + "description" : "Any combination of these filters\n/limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, tasks 11..15 will be returned. Both limit and offset need to be specified.\n/status/{status} - returns only tasks with a given status, either 'active', 'deactivated', or 'in_preparation'.\n/type/{type_id} - returns only tasks with a given task type id. See the list of task types of the ID's (e.g. 1 = Supervised Classification).\n/tag/{tag} - returns only tasks tagged with the given tag.\n/data_tag/{tag} - returns only tasks for which the underlying dataset is tagged with the given tag.\n/{data_quality}/{range} - returns only tasks for which the underlying datasets have certain qualities. {data_quality} can be data_id, data_name, number_instances, number_features, number_classes, number_missing_values. {range} can be a specific value or a range in the form 'low..high'. Multiple qualities can be combined, as in 'number_instances/0..50/number_features/0..10'.\n", + "required" : true, + "type" : "string" + }, { + "name" : "api_key", + "in" : "query", + "description" : "API key to authenticate the user", + "required" : false, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "A list of tasks with the given tag", + "examples" : { + "application/json" : "{\n \"task\": {\n \"task\": [\n {\n \"task_id\":\"1\",\n \"task_type\":\"Supervised Classification\",\n \"did\":\"1\",\n \"name\":\"anneal\",\n \"status\":\"active\",\n \"format\":\"ARFF\",\n \"input\":[\n {\n \"name\":\"estimation_procedure\",\n \"value\":\"1\"\n },\n {\n \"name\":\"evaluation_measures\",\n \"value\":\"predictive_accuracy\"\n },\n {\n \"name\":\"source_data\",\n \"value\":\"1\"\n },\n {\n \"name\":\"target_feature\",\n \"value\":\"class\"\n }\n ],\n \"quality\":[\n {\n \"name\":\"MajorityClassSize\",\n \"value\":\"684\"\n },\n {\n \"name\":\"MaxNominalAttDistinctValues\",\n \"value\":\"10.0\"\n },\n {\n \"name\":\"MinorityClassSize\",\n \"value\":\"0\"\n },\n {\n \"name\":\"NumBinaryAtts\",\n \"value\":\"14.0\"\n },\n {\n \"name\":\"NumberOfClasses\",\n \"value\":\"6\"\n },\n {\n \"name\":\"NumberOfFeatures\",\n \"value\":\"39\"\n },\n {\n \"name\":\"NumberOfInstances\",\n \"value\":\"898\"\n },\n {\n \"name\":\"NumberOfInstancesWithMissingValues\",\n \"value\":\"0\"\n },\n {\n \"name\":\"NumberOfMissingValues\",\n \"value\":\"0\"\n },\n {\n \"name\":\"NumberOfNumericFeatures\",\n \"value\":\"6\"\n },\n {\n \"name\":\"NumberOfSymbolicFeatures\",\n \"value\":\"32\"\n }\n ],\n \"tag\":[\n \"basic\",\n \"study_1\",\n \"study_7\",\n \"under100k\",\n \"under1m\"\n ]\n }\n ]\n }\n}" + }, + "schema" : { + "$ref" : "#/definitions/TaskList" + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n480 - Illegal filter specified.\n481 - Filter values/ranges not properly specified.\n482 - No results. There where no matches for the given constraints.\n483 - Can not specify an offset without a limit.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/task/tag" : { + "post" : { + "tags" : [ "task" ], + "summary" : "Tag a task", + "description" : "Tags a task.", + "consumes" : [ "application/x-www-form-urlencoded" ], + "parameters" : [ { + "name" : "task_id", + "in" : "formData", + "description" : "Id of the task.", + "required" : true, + "type" : "number", + "format" : "integer" + }, { + "name" : "tag", + "in" : "formData", + "description" : "Tag name", + "required" : true, + "type" : "string" + }, { + "name" : "api_key", + "in" : "formData", + "description" : "Api key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "The id of the tagged task", + "examples" : { + "application/json" : "{\n \"task_tag\": {\n \"id\": \"2\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "task_tag" : { + "$ref" : "#/definitions/inline_response_200_6_task_tag" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n470 - In order to add a tag, please upload the entity id (either data_id, task_id, flow_id, run_id) and tag (the name of the tag).\n471 - Entity not found. The provided entity_id {data_id, task_id, flow_id, run_id} does not correspond to an existing entity.\n472 - Entity already tagged by this tag. The entity {dataset, task, flow, run} already had this tag.\n473 - Something went wrong inserting the tag. Please contact OpenML Team.\n474 - Internal error tagging the entity. Please contact OpenML Team.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/task/untag" : { + "post" : { + "tags" : [ "task" ], + "summary" : "Untag a task", + "description" : "Untags a task.", + "consumes" : [ "application/x-www-form-urlencoded" ], + "parameters" : [ { + "name" : "task_id", + "in" : "formData", + "description" : "Id of the task.", + "required" : true, + "type" : "number" + }, { + "name" : "tag", + "in" : "formData", + "description" : "Tag name", + "required" : true, + "type" : "string" + }, { + "name" : "api_key", + "in" : "formData", + "description" : "Api key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "A the features of the task", + "examples" : { + "application/json" : "{\n \"task_untag\": {\n \"id\": \"2\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "task_untag" : { + "$ref" : "#/definitions/inline_response_200_7_task_untag" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n475 - Please give entity_id {data_id, flow_id, run_id} and tag. In order to remove a tag, please upload the entity id (either data_id, task_id, flow_id, run_id) and tag (the name of the tag).\n476 - Entity {dataset, task, flow, run} not found. The provided entity_id {data_id, task_id, flow_id, run_id} does not correspond to an existing entity.\n477 - Tag not found. The provided tag is not associated with the entity {dataset, task, flow, run}.\n478 - Tag is not owned by you. The entity {dataset, flow, run} was tagged by another user. Hence you cannot delete it.\n479 - Internal error removing the tag. Please contact OpenML Team.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/tasktype/{id}" : { + "get" : { + "tags" : [ "tasktype" ], + "summary" : "Get task type description", + "description" : "Returns information about a task type. The information includes a description, the given inputs and the expected outputs.\n", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "ID of the task.", + "required" : true, + "type" : "number", + "format" : "integer" + }, { + "name" : "api_key", + "in" : "query", + "description" : "Api key to authenticate the user", + "required" : false, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "A task type description", + "examples" : { + "application/json" : "{\n \"task_type\": {\n \"id\": \"1\",\n \"name\": \"Supervised Classification\",\n \"description\": \"In supervised classification, you are given an input dataset in which instances are labeled with a certain class. The goal is to build a model that predicts the class for future unlabeled instances. The model is evaluated using a train-test procedure, e.g. cross-validation.

\\n\\nTo make results by different users comparable, you are given the exact train-test folds to be used, and you need to return at least the predictions generated by your model for each of the test instances. OpenML will use these predictions to calculate a range of evaluation measures on the server.

\\n\\nYou can also upload your own evaluation measures, provided that the code for doing so is available from the implementation used. For extremely large datasets, it may be infeasible to upload all predictions. In those cases, you need to compute and provide the evaluations yourself.

\\n\\nOptionally, you can upload the model trained on all the input data. There is no restriction on the file format, but please use a well-known format or PMML.\",\n \"creator\": [\n \"Joaquin Vanschoren\",\n \"Jan van Rijn\",\n \"Luis Torgo\",\n \"Bernd Bischl\"\n ],\n \"contributor\": [\n \"Bo Gao\",\n \"Simon Fischer\",\n \"Venkatesh Umaashankar\",\n \"Michael Berthold\",\n \"Bernd Wiswedel\",\n \"Patrick Winter\"\n ],\n \"creation_date\": \"2013-01-24 00:00:00\",\n \"input\": [\n {\n \"name\": \"source_data\",\n \"requirement\": \"required\",\n \"data_type\": \"numeric\"\n },\n {\n \"name\": \"target_feature\",\n \"requirement\": \"required\",\n \"data_type\": \"string\"\n },\n {\n \"name\": \"estimation_procedure\",\n \"requirement\": \"required\",\n \"data_type\": \"numeric\"\n },\n {\n \"name\": \"cost_matrix\",\n \"data_type\": \"json\"\n },\n {\n \"name\": \"custom_testset\",\n \"data_type\": \"json\"\n },\n {\n \"name\": \"evaluation_measures\",\n \"data_type\": \"string\"\n }\n ]\n }\n}" + }, + "schema" : { + "$ref" : "#/definitions/TaskType" + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n240 - Please provide task type ID.\n241 - Unknown task type. The task type with the given id was not found in the database\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/tasktype/list" : { + "get" : { + "tags" : [ "tasktype" ], + "summary" : "List all task types", + "description" : "Returns an array with all task types in the system.\n", + "parameters" : [ { + "name" : "api_key", + "in" : "query", + "description" : "API key to authenticate the user", + "required" : false, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "A task description", + "examples" : { + "application/json" : "{\n \"task_types\":{\n \"task_type\":[\n {\n \"id\":\"1\",\n \"name\":\"Supervised Classification\",\n \"description\":\"In supervised classification, you are given ...\",\n \"creator\":\"Joaquin Vanschoren, Jan van Rijn, Luis Torgo, Bernd Bischl\"\n },\n {\n \"id\":\"2\",\n \"name\":\"Supervised Regression\",\n \"description\":\"Given a dataset with a numeric target ...\",\n \"creator\":\"Joaquin Vanschoren, Jan van Rijn, Luis Torgo, Bernd Bischl\"\n },{}\n ]\n }\n}" + }, + "schema" : { + "$ref" : "#/definitions/TaskTypeList" + } + }, + "default" : { + "description" : "Unexpected error", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/flow/{id}" : { + "get" : { + "tags" : [ "flow" ], + "summary" : "Get flow description", + "description" : "Returns information about a flow. The information includes the name, information about the creator, dependencies, parameters, run instructions and more.\n", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "ID of the flow.", + "required" : true, + "type" : "number", + "format" : "integer" + }, { + "name" : "api_key", + "in" : "query", + "description" : "API key to authenticate the user", + "required" : false, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "A flow description", + "examples" : { + "application/json" : "{\n \"flow\": {\n \"id\":\"100\",\n \"uploader\":\"1\",\n \"name\":\"weka.J48\",\n \"version\":\"2\",\n \"external_version\":\"Weka_3.7.5_9117\",\n \"description\":\"...\",\n \"upload_date\":\"2014-04-23 18:00:36\",\n \"language\":\"Java\",\n \"dependencies\":\"Weka_3.7.5\",\n \"parameter\": [\n {\n \"name\":\"A\",\n \"data_type\":\"flag\",\n \"default_value\":[],\n \"description\":\"Laplace smoothing...\"\n },\n {\n \"name\":\"C\",\n \"data_type\":\"option\",\n \"default_value\":\"0.25\",\n \"description\":\"Set confidence threshold...\"\n }\n ]\n }\n}" + }, + "schema" : { + "$ref" : "#/definitions/Flow" + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n180 - Please provide flow id.\n181 - Unknown flow. The flow with the given ID was not found in the database.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + }, + "delete" : { + "tags" : [ "flow" ], + "summary" : "Delete a flow", + "description" : "Deletes a flow. Upon success, it returns the ID of the deleted flow.\n", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Id of the flow.", + "required" : true, + "type" : "number", + "format" : "integer" + }, { + "name" : "api_key", + "in" : "query", + "description" : "API key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "ID of the deleted flow", + "examples" : { + "application/json" : "{\n \"flow_delete\": {\n \"id\": \"4328\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "flow_delete" : { + "$ref" : "#/definitions/inline_response_200_8_flow_delete" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n320 - Please provide API key. In order to remove your content, please authenticate.\n321 - Authentication failed. The API key was not valid. Please try to login again, or contact api administrators.\n322 - Flow does not exists. The flow ID could not be linked to an existing flow.\n323 - Flow is not owned by you. The flow is owned by another user. Hence you cannot delete it.\n324 - Flow is in use by other content. Can not be deleted. The flow is used in runs, evaluations or as a component of another flow. Delete other content before deleting this flow.\n325 - Deleting flow failed. Deleting the flow failed. Please contact\nsupport team.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/flow" : { + "post" : { + "tags" : [ "flow" ], + "summary" : "Upload a flow", + "description" : "Uploads a flow. Upon success, it returns the flow id.\n", + "consumes" : [ "multipart/form-data" ], + "parameters" : [ { + "name" : "description", + "in" : "formData", + "description" : "An XML file describing the flow. Only name and description are required. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.implementation.upload) and an [XML example](https://www.openml.org/api/v1/xml_example/flow).", + "required" : true, + "type" : "file" + }, { + "name" : "flow", + "in" : "formData", + "description" : "The actual flow, being a source (or binary) file.", + "required" : false, + "type" : "file" + }, { + "name" : "api_key", + "in" : "query", + "description" : "Api key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "Id of the uploaded flow", + "examples" : { + "application/json" : "{\n \"upload_flow\": {\n \"id\": \"2520\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "upload_flow" : { + "$ref" : "#/definitions/inline_response_200_9_upload_flow" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n160 - Error in file uploading. There was a problem with the file upload.\n161 - Please provide description xml.\n163 - Problem validating uploaded description file. The XML description format does not meet the standards.\n164 - Flow already stored in database. Please change name or version number\n165 - Failed to insert flow. There can be many causes for this error. If you included the implements field, it should be an existing entry in the algorithm or math_function table. Otherwise it could be an internal server error. Please contact API support team.\n166 - Failed to add flow to database. Internal server error, please contact API administrators\n167 - Illegal files uploaded. An non required file was uploaded.\n168 - The provided md5 hash equals not the server generated md5 hash of the file.\n169 - Please provide API key. In order to share content, please authenticate and provide API key.\n170 - Authentication failed. The API key was not valid. Please try to login again, or contact API administrators\n171 - Flow already exists. This flow is already in the database\n172 - XSD not found. Please contact API support team\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/flow/exists/{name}/{version}" : { + "get" : { + "tags" : [ "flow" ], + "summary" : "Check whether flow exists", + "description" : "Checks whether a flow with the given name and (external) version exists.\n", + "parameters" : [ { + "name" : "name", + "in" : "path", + "description" : "The name of the flow.", + "required" : true, + "type" : "string" + }, { + "name" : "version", + "in" : "path", + "description" : "The external version of the flow", + "required" : true, + "type" : "string" + }, { + "name" : "api_key", + "in" : "query", + "description" : "API key to authenticate the user", + "required" : false, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "A list of flows", + "examples" : { + "application/json" : "{\n \"flow_exists\": {\n \"exists\": \"true\",\n \"id\": \"65\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "flow_exists" : { + "$ref" : "#/definitions/inline_response_200_10_flow_exists" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n330 - Mandatory fields not present. Please provide name and external_version.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/flow/list/{filters}" : { + "get" : { + "tags" : [ "flow" ], + "summary" : "List and filter flows", + "description" : "List flows, possibly filtered by a range of properties. Any number of properties can be combined by listing them one after the other in the form '/task/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all flows that match the constraints.\n", + "parameters" : [ { + "name" : "filters", + "in" : "path", + "description" : "Any combination of these filters\n/limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, tasks 11..15 will be returned. Both limit and offset need to be specified.\n/tag/{tag} - returns only tasks tagged with the given tag.\n/uploader/{id} - return only evaluations uploaded by a specific user, specified by user ID.\n", + "required" : true, + "type" : "string" + }, { + "name" : "api_key", + "in" : "query", + "description" : "API key to authenticate the user", + "required" : false, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "A list of flows", + "examples" : { + "application/json" : "{\n \"flows\":\n {\n \"flow\":[\n {\n \"id\":\"65\",\n \"full_name\":\"weka.RandomForest(1)\",\n \"name\":\"weka.RandomForest\",\n \"version\":\"1\",\n \"external_version\":\"Weka_3.7.10_9186\",\n \"uploader\":\"1\"\n },\n {\n \"id\":\"66\",\n \"full_name\":\"weka.IBk(1)\",\n \"name\":\"weka.IBk\",\n \"version\":\"1\",\n \"external_version\":\"Weka_3.7.10_8034\",\n \"uploader\":\"1\"\n },\n {\n \"id\":\"67\",\n \"full_name\":\"weka.BayesNet_K2(1)\",\n \"name\":\"weka.BayesNet_K2\",\n \"version\":\"1\",\n \"external_version\":\"Weka_3.7.10_8034\",\n \"uploader\":\"1\"\n }\n ]\n }\n }" + }, + "schema" : { + "$ref" : "#/definitions/FlowList" + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n500 - No results. There where no matches for the given constraints.\n501 - Illegal filter specified.\n502 - Filter values/ranges not properly specified.\n503 - Can not specify an offset without a limit.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/flow/owned" : { + "get" : { + "tags" : [ "flow" ], + "summary" : "List flows owned by you", + "description" : "Returns an array with all flows owned by you.\n", + "parameters" : [ { + "name" : "api_key", + "in" : "query", + "description" : "API key to authenticate the user", + "required" : false, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "A list of flows", + "examples" : { + "application/json" : "{\n \"flow_owned\": {\n \"id\": [\n \"111\",\n \"112\",\n \"113\",\n \"114\",\n \"115\",\n \"116\",\n \"117\"\n ]\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "flow_owned" : { + "$ref" : "#/definitions/inline_response_200_11_flow_owned" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n310 - Please provide API key to authenticate.\n311 - Authentication failed. The API key was not valid. Please try to login again, or contact api administrators.\n312 - No flows owned by you.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/flow/tag" : { + "post" : { + "tags" : [ "flow" ], + "summary" : "Tag a flow", + "description" : "Tags a flow.", + "consumes" : [ "application/x-www-form-urlencoded" ], + "parameters" : [ { + "name" : "flow_id", + "in" : "formData", + "description" : "Id of the flow.", + "required" : true, + "type" : "number", + "format" : "integer" + }, { + "name" : "tag", + "in" : "formData", + "description" : "Tag name", + "required" : true, + "type" : "string" + }, { + "name" : "api_key", + "in" : "formData", + "description" : "Api key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "The id of the tagged flow", + "examples" : { + "application/json" : "{\n \"flow_tag\": {\n \"id\": \"2\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "flow_tag" : { + "$ref" : "#/definitions/inline_response_200_12_flow_tag" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n470 - In order to add a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag).\n471 - Entity not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity.\n472 - Entity already tagged by this tag. The entity {dataset, flow, run} already had this tag.\n473 - Something went wrong inserting the tag. Please contact OpenML Team.\n474 - Internal error tagging the entity. Please contact OpenML Team.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/flow/untag" : { + "post" : { + "tags" : [ "flow" ], + "summary" : "Untag a flow", + "description" : "Untags a flow.", + "consumes" : [ "application/x-www-form-urlencoded" ], + "parameters" : [ { + "name" : "flow_id", + "in" : "formData", + "description" : "Id of the flow.", + "required" : true, + "type" : "number" + }, { + "name" : "tag", + "in" : "formData", + "description" : "Tag name", + "required" : true, + "type" : "string" + }, { + "name" : "api_key", + "in" : "formData", + "description" : "Api key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "The id of the untagged flow", + "examples" : { + "application/json" : "{\n \"flow_untag\": {\n \"id\": \"2\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "flow_untag" : { + "$ref" : "#/definitions/inline_response_200_13_flow_untag" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n475 - Please give entity_id {data_id, flow_id, run_id} and tag. In order to remove a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag).\n476 - Entity {dataset, flow, run} not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity.\n477 - Tag not found. The provided tag is not associated with the entity {dataset, flow, run}.\n478 - Tag is not owned by you. The entity {dataset, flow, run} was tagged\nby another user. Hence you cannot delete it.\n479 - Internal error removing the tag. Please contact OpenML Team.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/setup/{id}" : { + "get" : { + "tags" : [ "setup" ], + "summary" : "Get a hyperparameter setup", + "description" : "Returns information about a setup. The information includes the list of hyperparameters, with name, value, and default value.\n", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "ID of the hyperparameter setup (configuration). These IDs are stated in run descriptions.", + "required" : true, + "type" : "number", + "format" : "integer" + }, { + "name" : "api_key", + "in" : "query", + "description" : "API key to authenticate the user", + "required" : false, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "A setup description", + "examples" : { + "application/json" : "{\n \"setup_parameters\":{\n \"flow_id\":\"59\",\n \"parameter\":[\n {\n \"full_name\":\"weka.JRip(1)_F\",\n \"parameter_name\":\"F\",\n \"data_type\":\"option\",\n \"default_value\":\"3\",\n \"value\":\"3\"\n },{\n \"full_name\":\"weka.JRip(1)_N\",\n \"parameter_name\":\"N\",\n \"data_type\":\"option\",\n \"default_value\":\"2.0\",\n \"value\":\"2.0\"\n },{\n \"full_name\":\"weka.JRip(1)_O\",\n \"parameter_name\":\"O\",\n \"data_type\":\"option\",\n \"default_value\":\"2\",\n \"value\":\"2\"\n },{\n \"full_name\":\"weka.JRip(1)_S\",\n \"parameter_name\":\"S\",\n \"data_type\":\"option\",\n \"default_value\":\"1\",\n \"value\":\"1\"\n }]\n }\n}" + }, + "schema" : { + "$ref" : "#/definitions/Setup" + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n280 - Please provide setup ID. In order to view setup details, please provide the run ID\n281 - Setup not found. The setup ID was invalid, or setup does not exist (anymore).\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + }, + "delete" : { + "tags" : [ "setup" ], + "summary" : "Delete setup", + "description" : "Deletes a setup. Upon success, it returns the ID of the deleted setup.\n", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Id of the setup.", + "required" : true, + "type" : "number", + "format" : "integer" + }, { + "name" : "api_key", + "in" : "query", + "description" : "Api key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "ID of the deleted setup", + "examples" : { + "application/json" : "{\n \"setup_delete\": {\n \"id\": \"1\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "study_delete" : { + "$ref" : "#/definitions/inline_response_200_14_study_delete" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n401 - Authentication failed. Please provide API key. In order to remove your content, please authenticate.\n402 - Setup does not exists. The setup ID could not be linked to an existing setup.\n404 - Setup deletion failed. Setup is in use by other content (runs, schedules, etc). Can not be deleted.\n405 - Setup deletion failed. Please try again later.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/setup/tag" : { + "post" : { + "tags" : [ "setup" ], + "summary" : "Tag a setup", + "description" : "Tags a setup.", + "consumes" : [ "application/x-www-form-urlencoded" ], + "parameters" : [ { + "name" : "setup_id", + "in" : "formData", + "description" : "Id of the setup.", + "required" : true, + "type" : "number", + "format" : "integer" + }, { + "name" : "tag", + "in" : "formData", + "description" : "Tag name", + "required" : true, + "type" : "string" + }, { + "name" : "api_key", + "in" : "formData", + "description" : "Api key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "The id of the tagged setup", + "examples" : { + "application/json" : "{\n \"setup_tag\": {\n \"id\": \"2\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "flow_tag" : { + "$ref" : "#/definitions/inline_response_200_15_flow_tag" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n470 - In order to add a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag).\n471 - Entity not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity.\n472 - Entity already tagged by this tag. The entity {dataset, flow, run} already had this tag.\n473 - Something went wrong inserting the tag. Please contact OpenML Team.\n474 - Internal error tagging the entity. Please contact OpenML Team.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/setup/untag" : { + "post" : { + "tags" : [ "setup" ], + "summary" : "Untag a setup", + "description" : "Untags a setup.", + "consumes" : [ "application/x-www-form-urlencoded" ], + "parameters" : [ { + "name" : "setup_id", + "in" : "formData", + "description" : "Id of the setup.", + "required" : true, + "type" : "number" + }, { + "name" : "tag", + "in" : "formData", + "description" : "Tag name", + "required" : true, + "type" : "string" + }, { + "name" : "api_key", + "in" : "formData", + "description" : "Api key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "The id of the untagged setup", + "examples" : { + "application/json" : "{\n \"setup_untag\": {\n \"id\": \"2\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "flow_untag" : { + "$ref" : "#/definitions/inline_response_200_16_flow_untag" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n475 - Please give entity_id {data_id, flow_id, run_id} and tag. In order to remove a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag).\n476 - Entity {dataset, flow, run} not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity.\n477 - Tag not found. The provided tag is not associated with the entity {dataset, flow, run}.\n478 - Tag is not owned by you. The entity {dataset, flow, run} was tagged\nby another user. Hence you cannot delete it.\n479 - Internal error removing the tag. Please contact OpenML Team.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/setup/list/{filters}" : { + "get" : { + "tags" : [ "setup" ], + "summary" : "List and filter setups", + "description" : "List setups, filtered by a range of properties. Any number of properties can be combined by listing them one after the other in the form '/setup/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all evaluations that match the constraints. A maximum of 1,000 results are returned at a time, an error is returned if the result set is bigger. Use pagination (via limit and offset filters), or limit the results to certain flows, setups, or tags.\n", + "parameters" : [ { + "name" : "filters", + "in" : "path", + "description" : "Any combination of these filters\n/tag/{tag} - returns only setups tagged with the given tag.\n/flow/{ids} - return only setups for specific flows, specified as a comma-separated list of flow IDs, e.g. ''1,2,3''\n/setup/{ids} - return only specific setups, specified as a comma-separated list of setup IDs, e.g. ''1,2,3''\n/limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, results 11..15 will be returned. Both limit and offset need to be specified.\n", + "required" : true, + "type" : "string" + }, { + "name" : "api_key", + "in" : "query", + "description" : "API key to authenticate the user", + "required" : false, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "A list of setup descriptions", + "examples" : { + "application/json" : "{\n \"setups\": {\n \"setup\": [\n {\n \"setup_id\":\"10\",\n \"flow_id\":\"65\",\n \"parameter\": [\n {\n \"id\":\"4144\",\n \"flow_id\":\"65\",\n \"flow_name\":\"weka.RandomForest\",\n \"full_name\":\"weka.RandomForest(1)_I\",\n \"parameter_name\":\"I\",\n \"data_type\":\"option\",\n \"default_value\":\"10\",\n \"value\":\"10\"\n },\n {\n \"id\":\"4145\",\n \"flow_id\":\"65\",\n \"flow_name\":\"weka.RandomForest\",\n \"full_name\":\"weka.RandomForest(1)_K\",\n \"parameter_name\":\"K\",\n \"data_type\":\"option\",\n \"default_value\":\"0\",\n \"value\":\"0\"\n }\n ]\n }\n ]\n }\n}" + }, + "schema" : { + "$ref" : "#/definitions/SetupList" + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n670 - Please specify at least one filter.\n671 - Illegal filter.\n672 - Illegal filter input.\n673 - Result set too big. Please use one of the filters or the limit option.\n674 - No results, please check the filter.\n675 - Cannot specify offset without limit.\n676 - Requested result limit too high.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/run/{id}" : { + "get" : { + "tags" : [ "run" ], + "summary" : "Get run description", + "description" : "Returns information about a run. The information includes the name, information about the creator, dependencies, parameters, run instructions and more.\n", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "ID of the run.", + "required" : true, + "type" : "number", + "format" : "integer" + }, { + "name" : "api_key", + "in" : "query", + "description" : "API key to authenticate the user", + "required" : false, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "A run description", + "examples" : { + "application/json" : "{\n \"run\": {\n \"run_id\":\"100\",\n \"uploader\":\"1\",\n \"uploader_name\":\"Jan van Rijn\",\n \"task_id\":\"28\",\n \"task_type\":\"Supervised Classification\",\n \"task_evaluation_measure\":\"predictive_accuracy\",\n \"flow_id\":\"67\",\n \"flow_name\":\"weka.BayesNet_K2(1)\",\n \"setup_string\":\"weka.classifiers.bayes.BayesNet -- -D -Q weka.classifiers.bayes.net.search.local.K2 -- -P 1 -S BAYES -E weka.classifiers.bayes.net.estimate.SimpleEstimator -- -A 0.5\",\n \"parameter_setting\": [\n {\n \"name\":\"D\",\n \"value\":\"true\"\n },\n {\n \"name\":\"Q\",\n \"value\":\"weka.classifiers.bayes.net.search.local.K2\"\n },\n {\n \"name\":\"P\",\n \"value\":\"1\"\n },\n {\n \"name\":\"S\",\n \"value\":\"BAYES\"\n }\n ],\n \"input_data\":\n {\n \"dataset\":\n {\n \"did\":\"28\",\n \"name\":\"optdigits\",\n \"url\":\"https:\\/\\/www.openml.org\\/data\\/download\\/28\\/dataset_28_optdigits.arff\"\n }\n },\n \"output_data\":\n {\n \"file\": [\n {\n \"did\":\"48838\",\n \"file_id\":\"261\",\n \"name\":\"description\",\n \"url\":\"https:\\/\\/www.openml.org\\/data\\/download\\/261\\/weka_generated_run935374685998857626.xml\"\n },\n {\n \"did\":\"48839\",\n \"file_id\":\"262\",\n \"name\":\"predictions\",\n \"url\":\"https:\\/\\/www.openml.org\\/data\\/download\\/262\\/weka_generated_predictions576954524972002741.arff\"\n }\n ],\n \"evaluation\": [\n {\n \"name\":\"area_under_roc_curve\",\n \"flow_id\":\"4\",\n \"value\":\"0.990288\",\n \"array_data\":\"[0.99724,0.989212,0.992776,0.994279,0.980578,0.98649,0.99422,0.99727,0.994858,0.976143]\"\n },\n {\n \"name\":\"confusion_matrix\",\n \"flow_id\":\"10\",\n \"array_data\":\"[[544,1,0,0,7,0,1,0,0,1],[0,511,21,1,0,1,3,1,5,28],[0,7,511,1,0,1,0,3,23,11],[0,2,2,519,0,3,0,12,16,18],[0,3,0,0,528,0,4,21,6,6],[0,1,0,7,5,488,2,0,4,51],[1,7,0,0,2,0,548,0,0,0],[0,2,0,1,9,1,0,545,4,4],[1,25,2,2,3,6,2,1,503,9],[0,7,0,20,16,5,0,19,9,486]]\"\n },\n {\n \"name\":\"f_measure\",\n \"flow_id\":\"12\",\n \"value\":\"0.922723\",\n \"array_data\":\"[0.989091,0.898857,0.935041,0.92431,0.927944,0.918156,0.980322,0.933219,0.895018,0.826531]\"\n },\n {\n \"name\":\"kappa\",\n \"flow_id\":\"13\",\n \"value\":\"0.913601\"\n }\n ]\n }\n }\n}" + }, + "schema" : { + "$ref" : "#/definitions/Run" + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n220 - Please provide run ID. In order to view run details, please provide the run ID.\n221 - Run not found. The run ID was invalid, run does not exist (anymore).\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + }, + "delete" : { + "tags" : [ "run" ], + "summary" : "Delete run", + "description" : "Deletes a run. Upon success, it returns the ID of the deleted run.\n", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Id of the run.", + "required" : true, + "type" : "number", + "format" : "integer" + }, { + "name" : "api_key", + "in" : "query", + "description" : "API key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "ID of the deleted run", + "examples" : { + "application/json" : "{\n \"run_delete\": {\n \"id\": \"2520\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "data_delete" : { + "$ref" : "#/definitions/inline_response_200_17_data_delete" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n390 - Please provide API key. In order to remove your content, please authenticate.\n391 - Authentication failed. The API key was not valid. Please try to login again, or contact api administrators\n392 - Run does not exists. The run ID could not be linked to an existing run.\n393 - Run is not owned by you. The run was owned by another user. Hence you cannot delete it.\n394 - Deleting run failed. Deleting the run failed. Please contact support team.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/run" : { + "post" : { + "tags" : [ "run" ], + "summary" : "Upload run", + "description" : "Uploads a run. Upon success, it returns the run id.\n", + "consumes" : [ "multipart/form-data" ], + "parameters" : [ { + "name" : "description", + "in" : "formData", + "description" : "An XML file describing the dataset. Only name, description, and data format are required. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.run.upload) and an [XML example](https://www.openml.org/api/v1/xml_example/run).", + "required" : true, + "type" : "file" + }, { + "name" : "predictions", + "in" : "formData", + "description" : "The predictions generated by the run", + "required" : true, + "type" : "file" + }, { + "name" : "model_readable", + "in" : "formData", + "description" : "The human-readable model generated by the run", + "required" : false, + "type" : "file" + }, { + "name" : "model_serialized", + "in" : "formData", + "description" : "The serialized model generated by the run", + "required" : false, + "type" : "file" + }, { + "name" : "api_key", + "in" : "query", + "description" : "Api key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "Id of the uploaded run", + "examples" : { + "application/json" : "{\n \"upload_run\": {\n \"id\": \"2520\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "upload_flow" : { + "$ref" : "#/definitions/inline_response_200_18_upload_flow" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n201 - Authentication failed. The API key was not valid. Please try to login again, or contact api administrators.\n202 - Please provide run XML.\n203 - Could not validate run xml by XSD. Please double check that the xml is valid.\n204 - Unknown task. The task with the given ID was not found in the database.\n205 - Unknown flow. The flow with the given ID was not found in the database.\n206 - Invalid number of files. The number of uploaded files did not match the number of files expected for the task type\n207 - File upload failed. One of the files uploaded has a problem.\n208 - Error inserting setup record. Please contact api administrators\n210 - Unable to store run. Please contact api administrators.\n211 - Dataset not in database. One of the datasets of the task was not included in database, please contact api administrators.\n212 - Unable to store file. Please contact api administrators.\n213 - Parameter in run xml unknown. One of the parameters provided in the run xml is not registered as parameter for the flow nor its components.\n214 - Unable to store input setting. Please contact API support team.\n215 - Unable to evaluate predictions. Please contact API support team.\n216 - Error thrown by Java Application. Additional information field is provided.\n217 - Error processing output data. Unknown or inconsistent evaluation measure. One of the provided evaluation measures could not be matched with a record in the math_function or flow table.\n218 - Wrong flow associated with run. The flow implements a math_function, which is unable to generate predictions. Please select another flow.\n219 - Error reading the XML document. The XML description file could not be verified.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/run/list/{filters}" : { + "get" : { + "tags" : [ "run" ], + "summary" : "List and filter runs", + "description" : "List runs, filtered by a range of properties. Any number of properties can be combined by listing them one after the other in the form '/run/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all runs that match the constraints. A maximum of 10,000 results are returned, an error is returned if the result set is bigger. Use pagination (via limit and offset filters), or limit the results to certain tasks, flows, setups, or uploaders. \n", + "parameters" : [ { + "name" : "filters", + "in" : "path", + "description" : "Any combination of these filters\n/tag/{tag} - return only runs tagged with the given tag.\n/run/{ids} - return only specific runs, specified as a comma-separated list of run IDs, e.g. ''1,2,3''\n/task/{ids} - return only runs on specific tasks, specified as a comma-separated list of task IDs, e.g. ''1,2,3''\n/flow/{ids} - return only runs on specific flows, specified as a comma-separated list of flow IDs, e.g. ''1,2,3''\n/setup/{ids} - return only runs with specific setups, specified as a comma-separated list of setup IDs, e.g. ''1,2,3''\n/uploader/{ids} - return only runs uploaded by specific users, specified as a comma-separated list of user IDs, e.g. ''1,2,3''\n/limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, results 11..15 will be returned. Both limit and offset need to be specified.\n", + "required" : true, + "type" : "string" + }, { + "name" : "api_key", + "in" : "query", + "description" : "API key to authenticate the user", + "required" : false, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "A list of runs descriptions", + "examples" : { + "application/json" : { + "runs" : { + "run" : [ { + "run_id" : "100", + "task_id" : "28", + "setup_id" : "12", + "flow_id" : "67", + "uploader" : "1", + "upload_time" : "2014-04-06 23:30:40", + "error_message" : [ ] + }, { + "run_id" : "101", + "task_id" : "48", + "setup_id" : "6", + "flow_id" : "61", + "uploader" : "1", + "upload_time" : "2014-04-06 23:30:40", + "error_message" : [ ] + }, { + "run_id" : "102", + "task_id" : "41", + "setup_id" : "3", + "flow_id" : "58", + "uploader" : "1", + "upload_time" : "2014-04-06 23:30:40", + "error_message" : [ ] + } ] + } + } + }, + "schema" : { + "$ref" : "#/definitions/RunList" + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n510 - Please provide at least task, flow or setup, uploader or run, to filter results, or limit the number of responses. The number of runs is huge. Please limit the result space.\n511 - Input not safe. The input parameters (task_id, setup_id, flow_id, run_id, uploader_id) did not meet the constraints (comma separated list of integers).\n512 - There where no results. Check whether there are runs under the given constraint.\n513 - Too many results. Given the constraints, there were still too many results. Please add filters to narrow down the list.\n514 - Illegal filter specified.\n515 - Offset specified without limit.\n516 - Requested result limit too high.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/run/tag" : { + "post" : { + "tags" : [ "run" ], + "summary" : "Tag a run", + "description" : "Tags a run.", + "consumes" : [ "application/x-www-form-urlencoded" ], + "parameters" : [ { + "name" : "run_id", + "in" : "formData", + "description" : "Id of the run.", + "required" : true, + "type" : "number", + "format" : "integer" + }, { + "name" : "tag", + "in" : "formData", + "description" : "Tag name", + "required" : true, + "type" : "string" + }, { + "name" : "api_key", + "in" : "formData", + "description" : "Api key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "The id of the tagged run", + "examples" : { + "application/json" : "{\n \"run_tag\": {\n \"id\": \"2\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "run_tag" : { + "$ref" : "#/definitions/inline_response_200_19_run_tag" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n470 - In order to add a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag).\n471 - Entity not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity.\n472 - Entity already tagged by this tag. The entity {dataset, flow, run} already had this tag.\n473 - Something went wrong inserting the tag. Please contact OpenML Team.\n474 - Internal error tagging the entity. Please contact OpenML Team.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/run/untag" : { + "post" : { + "tags" : [ "run" ], + "summary" : "Untag a run", + "description" : "Untags a run.", + "consumes" : [ "application/x-www-form-urlencoded" ], + "parameters" : [ { + "name" : "run_id", + "in" : "formData", + "description" : "Id of the run.", + "required" : true, + "type" : "number" + }, { + "name" : "tag", + "in" : "formData", + "description" : "Tag name", + "required" : true, + "type" : "string" + }, { + "name" : "api_key", + "in" : "formData", + "description" : "Api key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "The id of the untagged run", + "examples" : { + "application/json" : "{\n \"run_untag\": {\n \"id\": \"2\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "run_untag" : { + "$ref" : "#/definitions/inline_response_200_20_run_untag" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n475 - Please give entity_id {data_id, flow_id, run_id} and tag. In order to remove a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag).\n476 - Entity {dataset, flow, run} not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity.\n477 - Tag not found. The provided tag is not associated with the entity {dataset, flow, run}.\n478 - Tag is not owned by you. The entity {dataset, flow, run} was tagged by another user. Hence you cannot delete it.\n479 - Internal error removing the tag. Please contact OpenML Team.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/run/evaluate" : { + "post" : { + "tags" : [ "run" ], + "summary" : "Uploads a run evaluation", + "description" : "Uploads a run evaluation. When successful, it returns the run id.\n", + "consumes" : [ "multipart/form-data" ], + "parameters" : [ { + "name" : "description", + "in" : "formData", + "description" : "An XML file describing the run evaluation.Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.run.evaluate) and an [XML example](https://www.openml.org/api/v1/xml_example/run.evaluate).", + "required" : true, + "type" : "file" + }, { + "name" : "api_key", + "in" : "query", + "description" : "Api key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "Id of the evaluated run", + "examples" : { + "application/json" : "{\n \"run_evaluate\": {\n \"id\": \"2520\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "upload_flow" : { + "$ref" : "#/definitions/inline_response_200_21_upload_flow" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n422 - Upload problem description XML\n423 - Problem validating uploaded description file\n424 - Problem opening description xml\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/run/reset/{id}" : { + "get" : { + "tags" : [ "run" ], + "summary" : "Resets a run.", + "description" : "Removes all run evaluations. When a run is reset, the runs will automatically be evaluated as soon as they are picked up by the evaluation engine again.\n", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Run ID.", + "required" : true, + "type" : "string" + }, { + "name" : "api_key", + "in" : "query", + "description" : "API key to authenticate the user", + "required" : false, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "Id of the evaluated run", + "examples" : { + "application/json" : "{\n \"run_reset\": {\n \"id\": \"2520\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "run_reset" : { + "$ref" : "#/definitions/inline_response_200_21_upload_flow" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n412 - Run does not exist\n413 - Run is not owned by you\n394 - Resetting run failed\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/run/trace/{id}" : { + "get" : { + "tags" : [ "run" ], + "summary" : "Get run trace", + "description" : "Returns the optimization trace of run. The trace contains every setup tried, its evaluation, and whether it was selected.\n", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "ID of the run.", + "required" : true, + "type" : "number", + "format" : "integer" + }, { + "name" : "api_key", + "in" : "query", + "description" : "API key to authenticate the user", + "required" : false, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "A run trace description", + "examples" : { + "application/json" : "{\n \"trace\": {\n \"run_id\":\"573055\",\n \"trace_iteration\": {\n \"repeat\":\"0\",\n \"fold\":\"0\",\n \"repeat\":\"0\",\n \"iteration\":\"0\",\n \"setup_string\":{\"parameter_minNumObj\": \"1\",\n \"parameter_confidenceFactor\": \"0.1\"},\n \"evaluation\":\"94.814815\",\n \"selected\": \"true\"\n },\n \"trace_iteration\": {\n \"repeat\":\"0\",\n \"fold\":\"0\",\n \"repeat\":\"0\",\n \"iteration\":\"1\",\n \"setup_string\":{\"parameter_minNumObj\": \"1\",\n \"parameter_confidenceFactor\": \"0.25\"},\n \"evaluation\": \"94.074074\",\n \"selected\": \"true\"\n }\n }\n}" + }, + "schema" : { + "$ref" : "#/definitions/RunTrace" + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n570 - No successful trace associated with this run\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + }, + "post" : { + "tags" : [ "run" ], + "summary" : "Upload run trace", + "description" : "Uploads a run trace. Upon success, it returns the run id.\n", + "consumes" : [ "multipart/form-data" ], + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "ID of the run.", + "required" : true, + "type" : "number", + "format" : "integer" + }, { + "name" : "description", + "in" : "formData", + "description" : "An XML file describing the trace. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.run.trace) and an [XML example](https://www.openml.org/api/v1/xml_example/run.trace).", + "required" : true, + "type" : "file" + }, { + "name" : "api_key", + "in" : "query", + "description" : "Api key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "Id of the run with the trace", + "examples" : { + "application/json" : "{\n \"run_trace\": {\n \"id\": \"2520\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "upload_flow" : { + "$ref" : "#/definitions/inline_response_200_23_upload_flow" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n561 - Problem with uploaded trace file.\n562 - Problem validating xml trace file.\n563 - Problem loading xml trace file.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/evaluation/list/{filters}" : { + "get" : { + "tags" : [ "evaluation" ], + "summary" : "List and filter evaluations", + "description" : "List evaluations, filtered by a range of properties. Any number of properties can be combined by listing them one after the other in the form '/evaluation/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all evaluations that match the constraints. A maximum of 10,000 results are returned, an error is returned if the result set is bigger. Use pagination (via limit and offset filters), or limit the results to certain tasks, flows, setups, uploaders or runs. \n", + "parameters" : [ { + "name" : "filters", + "in" : "path", + "description" : "Any combination of these filters\n/function/{name} - name of the evaluation measure, e.g. area_under_auc or predictive_accuracy. See the OpenML website for the complete list of measures.\n/tag/{tag} - returns only evaluations of runs tagged with the given tag.\n/run/{ids} - return only evaluations for specific runs, specified as a comma-separated list of run IDs, e.g. ''1,2,3''\n/task/{ids} - return only evaluations for specific tasks, specified as a comma-separated list of task IDs, e.g. ''1,2,3''\n/flow/{ids} - return only evaluations for specific flows, specified as a comma-separated list of flow IDs, e.g. ''1,2,3''\n/setup/{ids} - return only evaluations for specific setups, specified as a comma-separated list of setup IDs, e.g. ''1,2,3''\n/uploader/{ids} - return only evaluations uploaded by specific users, specified as a comma-separated list of user IDs, e.g. ''1,2,3''\n/limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, results 11..15 will be returned. Both limit and offset need to be specified.\n/per_fold/{true,false} - whether or not to return crossvalidation scores per fold. Defaults to 'false'. Setting it to 'true' leads to large numbers of results, use only for very specific sets of runs.\n/sort_order/{asc,desc} - sorts the results by the evaluation value, according to the selected evaluation measure (function)\n", + "required" : true, + "type" : "string" + }, { + "name" : "api_key", + "in" : "query", + "description" : "API key to authenticate the user", + "required" : false, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "A list of evaluations descriptions", + "examples" : { + "application/json" : { + "evaluations" : { + "evaluation" : [ { + "run_id" : "1", + "task_id" : "68", + "uploader" : "1", + "flow_id" : "61", + "function" : "area_under_roc_curve", + "upload_time" : "2014-04-06 23:30:40", + "value" : "0.839359", + "array_data" : "[0,0.99113,0.898048,0.874862,0.791282,0.807343,0.820674]" + }, { + "run_id" : "1", + "task_id" : "68", + "uploader" : "1", + "flow_id" : "61", + "function" : "f_measure", + "upload_time" : "2014-04-06 23:30:40", + "value" : "0.600026", + "array_data" : "[0,0,0.711934,0.735714,0.601363,0.435678,0.430913]" + }, { + "run_id" : "1", + "task_id" : "68", + "uploader" : "1", + "flow_id" : "61", + "function" : "predictive_accuracy", + "upload_time" : "2014-04-06 23:30:40", + "value" : "0.614634", + "array_data" : [ ] + } ] + } + } + }, + "schema" : { + "$ref" : "#/definitions/EvaluationList" + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n540 - Please provide at least task, flow or setup, uploader or run, to\nfilter results, or limit the number of responses.\n541 - The input parameters (task_id, setup_id, flow_id, run_id, uploader_id) did not meet the constraints (comma separated list of integers).\n542 - There where no results. Check whether there are runs under the given constraint.\n543 - Too many results. Given the constraints, there were still too many results. Please add filters to narrow down the list.\n544 - Illegal filter specified.\n545 - Offset specified without limit.\n546 - Requested result limit too high.\n547 - Per fold can only be set to value \"true\" or \"false\".\n548 - Per fold queries are experimental and require a fair amount of filters on resulting run records to keep the query fast (use, e.g., flow, setup, task and uploader filter)\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/evaluation/request/{evaluation_engine_id}/{order}" : { + "get" : { + "tags" : [ "evaluation" ], + "summary" : "Get an unevaluated run", + "description" : "This call is for people running their own evaluation engines. It returns the details of a run that is not yet evaluated by the given evaluation engine. It doesn't evaluate the run, it just returns the run info.\n", + "parameters" : [ { + "name" : "evaluation_engine_id", + "in" : "path", + "description" : "The ID of the evaluation engine. You get this ID when you register a new evaluation engine with OpenML. The ID of the main evaluation engine is 1.", + "required" : true, + "type" : "string" + }, { + "name" : "order", + "in" : "path", + "description" : "When there are multiple runs still to evaluate, this defines which one to return. Options are 'normal' - the oldest run, 'reverse' - the newest run, or 'random' - a random run.", + "required" : true, + "type" : "string" + }, { + "name" : "api_key", + "in" : "query", + "description" : "API key to authenticate the user", + "required" : false, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "A list of evaluations descriptions", + "examples" : { + "application/json" : { + "evaluation_request" : { + "run" : [ { + "run_id" : "8943712", + "task_id" : "3021", + "setup_id" : "68799271", + "uploader" : "1935", + "upload_time" : "2018-04-03 21:05:38" + } ] + } + } + }, + "schema" : { + "$ref" : "#/definitions/EvaluationRequest" + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n100 - Function not valid.\n545 - No unevaluated runs according to the criteria.\n546 - Illegal filter.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/study/{id}" : { + "get" : { + "tags" : [ "study" ], + "summary" : "Get study description by study id or alias", + "description" : "Returns information about the study with the given id or alias. \n", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "ID or alias of the study.", + "required" : true, + "type" : "string" + }, { + "name" : "api_key", + "in" : "query", + "description" : "Api key to authenticate the user", + "required" : false, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "A study description", + "examples" : { + "application/json" : "{\n \"study\": {\n \"id\": \"99\",\n \"main_entity_type\": \"task\",\n \"name\": \"CC18 benchmark suite\",\n \"description\": \"CC18 benchmark suite\",\n \"creation_date\": \"2019-02-16T17:35:58\",\n \"creator\": \"1159\",\n \"data\": {\"data_id\": [\"1\",\"2\",\"3\"]},\n \"tasks\": {\"task_id\": [\"1\",\"2\",\"3\"]}\n }\n}" + }, + "schema" : { + "$ref" : "#/definitions/Study" + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n601 - Unknown study. The study with the given id or alias was not found in the database\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + }, + "delete" : { + "tags" : [ "study" ], + "summary" : "Delete study", + "description" : "Deletes a study. Upon success, it returns the ID of the deleted study.\n", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Id of the study.", + "required" : true, + "type" : "number", + "format" : "integer" + }, { + "name" : "api_key", + "in" : "query", + "description" : "Api key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "ID of the deleted study", + "examples" : { + "application/json" : "{\n \"study_delete\": {\n \"id\": \"1\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "study_delete" : { + "$ref" : "#/definitions/inline_response_200_24_study_delete" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n591 - Please provide API key. In order to remove your content, please authenticate.\n592 - Study does not exists. The study ID could not be linked to an existing study.\n593 - Study deletion failed. Please try again later.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/study" : { + "post" : { + "tags" : [ "study" ], + "summary" : "Create new study", + "description" : "Creates a new study. Upon success, it returns the study id.\n", + "consumes" : [ "multipart/form-data" ], + "parameters" : [ { + "name" : "description", + "in" : "formData", + "description" : "An XML file describing the study. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.study.upload) and an [XML example](https://www.openml.org/api/v1/xml_example/study).", + "required" : true, + "type" : "file" + }, { + "name" : "api_key", + "in" : "query", + "description" : "Api key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "Id of the uploaded study", + "examples" : { + "application/json" : "{\n \"upload_study\": {\n \"id\": \"4328\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "upload_study" : { + "$ref" : "#/definitions/inline_response_200_25_upload_study" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n1031 - Description file not present. Please upload the study description.\n1032 - Problem validating uploaded description file. The XML description format does not meet the standards. See the XSD schema.\n1033 - Illegal main entity type. Currently only collections of tasks and can be created.\n1034 - Linked entities are not of the correct type fot this study.\n1035 - Benchmark suites can only be linked to run studies.\n1036 - Referred benchmark suite cannot be found.\n1037 - Referred benchmark suite should be a task collection.\n1038 - Study alias is not unique.\n1039 - Dataset insertion problem. Please contact the administrators.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/study/list/{filters}" : { + "get" : { + "tags" : [ "study" ], + "summary" : "List all studies (collections of items)", + "description" : "List studies, optionally filtered by a range of properties. Any number of properties can be combined by listing them one after the other in the form '/study/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all studies that match the constraints.\n", + "parameters" : [ { + "name" : "filters", + "in" : "path", + "description" : "Any combination of these filters\n/main_entity_type/{type} - only return studies collecting entities of a given type (e.g. 'task' or 'run').\n/uploader/{ids} - return only evaluations uploaded by specific users, specified as a comma-separated list of user IDs, e.g. ''1,2,3''\n/limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, results 11..15 will be returned. Both limit and offset need to be specified.\n", + "required" : true, + "type" : "string" + }, { + "name" : "api_key", + "in" : "query", + "description" : "API key to authenticate the user", + "required" : false, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "A list of studies", + "examples" : { + "application/json" : "{\n \"study_list\":{\n \"study\":[\n {\n \"id\":\"1\",\n \"alias\":\"Study_1\",\n \"name\":\"A large-scale comparison of classification algorithms\",\n \"creation_date\":\"2017-07-20 15:51:20\",\n \"creator\":\"2\"\n },\n {\n \"id\":\"2\",\n \"alias\":\"Study_2\",\n \"name\":\"Fast Algorithm Selection using Learning Curves\",\n \"creation_date\":\"2017-07-20 15:51:20\",\n \"creator\":\"2\"\n }\n ]\n }\n}" + }, + "schema" : { + "$ref" : "#/definitions/StudyList" + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/study/{id}/attach" : { + "post" : { + "tags" : [ "study" ], + "summary" : "Attach a new entity to a study", + "description" : "Attach a new entity to an exising study. Upon success, it returns the study id, type, and linked entities.\n", + "consumes" : [ "multipart/form-data" ], + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Id of the study. Supplied in the URL path.", + "required" : true, + "type" : "number", + "format" : "integer" + }, { + "name" : "ids", + "in" : "formData", + "description" : "Comma-separated list of entity IDs to be attached to the study. For instance, if this is a run study, the list of run IDs that need to be added (attached) to the study. Must be supplied as a POST variable.", + "required" : true, + "type" : "string" + }, { + "name" : "api_key", + "in" : "query", + "description" : "Api key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "Properties of the updated study", + "examples" : { + "application/json" : "{\n \"study_attach\": {\n \"id\": \"1\",\n \"main_entity_type\": \"task\",\n \"linked_entities\": \"5\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "study_attach" : { + "$ref" : "#/definitions/inline_response_200_26_study_attach" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n1041 - Could not find study. Check the study ID in your request.\n1042 - Cannnot attach entities to legacy studies.\n1043 - Please provide POST field 'ids'.\n1044 - Please ensure that the 'ids' in the POST field is a list of natural numbers.\n1045 - Could not attach entities to the study. It appears as if the entity does not exist.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/study/{id}/detach" : { + "post" : { + "tags" : [ "study" ], + "summary" : "Detach an entity from a study", + "description" : "Detach an entity from an exising study. Upon success, it returns the study id, type, and linked entities.\n", + "consumes" : [ "multipart/form-data" ], + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Id of the study.", + "required" : true, + "type" : "number", + "format" : "integer" + }, { + "name" : "ids", + "in" : "formData", + "description" : "Comma-separated list of entity IDs to be detached from the study. For instance, if this is a run study, the list of run IDs that need to be removed (detached) from the study. Must be supplied as a POST variable.", + "required" : true, + "type" : "string" + }, { + "name" : "api_key", + "in" : "query", + "description" : "Api key to authenticate the user", + "required" : true, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "Properties of the updated study", + "examples" : { + "application/json" : "{\n \"study_detach\": {\n \"id\": \"1\",\n \"main_entity_type\": \"task\",\n \"linked_entities\": \"5\"\n }\n}" + }, + "schema" : { + "type" : "object", + "properties" : { + "upload_study" : { + "$ref" : "#/definitions/inline_response_200_26_study_attach" + } + } + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n1041 - Could not find study. Check the study ID in your request.\n1042 - Cannot attach entities to legacy studies.\n1043 - Please provide POST field 'ids'.\n1044 - Please ensure that the 'ids' in the POST field is a list of natural numbers.\n1046 - Could not detach entities from the study. It appears as if the entity does not exist. \n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/estimationprocedure/list" : { + "get" : { + "tags" : [ "estimationprocedure" ], + "summary" : "List all estimation procedures", + "description" : "Returns an array with all model performance estimation procedures in the system.\n", + "parameters" : [ { + "name" : "api_key", + "in" : "query", + "description" : "API key to authenticate the user", + "required" : false, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "A list of estimation procedures", + "examples" : { + "application/json" : "{\n \"estimationprocedures\": {\n \"estimationprocedure\": [\n {\n \"id\":\"1\",\n \"ttid\":\"1\",\n \"name\":\"10-fold Crossvalidation\",\n \"type\":\"crossvalidation\",\n \"repeats\":\"1\",\n \"folds\":\"10\",\n \"stratified_sampling\":\"true\"\n },\n {\n \"id\":\"2\",\n \"ttid\":\"1\",\n \"name\":\"5 times 2-fold Crossvalidation\",\n \"type\":\"crossvalidation\",\n \"repeats\":\"5\",\n \"folds\":\"2\",\n \"stratified_sampling\":\"true\"\n }\n ]\n }\n}" + }, + "schema" : { + "$ref" : "#/definitions/EstimationProcedureList" + } + }, + "412" : { + "description" : "Precondition failed. An error code and message are returned.\n500 - No model performance estimation procedures available.\n", + "schema" : { + "$ref" : "#/definitions/Error" + } + } + } + } + }, + "/user/list" : { + "get" : { + "tags" : [ "user" ], + "summary" : "List all users by user id", + "description" : "Returns an array with all user ids and names.\n", + "parameters" : [ { + "name" : "api_key", + "in" : "query", + "description" : "API key to authenticate the user", + "required" : false, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "A list of users", + "examples" : { + "application/json" : "{\n \"users\":{\n \"user\":[\n {\n \"id\":\"1\",\n \"username\":\"janvanrijn@gmail.com\"},\n {\n \"id\":\"2\",\n \"username\":\"joaquin.vanschoren@gmail.com\"}\n ]\n }\n}" + }, + "schema" : { + "$ref" : "#/definitions/UserList" + } + } + } + } + }, + "/evaluationmeasure/list" : { + "get" : { + "tags" : [ "evaluationmeasure" ], + "summary" : "List all evaluation measures", + "description" : "Returns an array with all model evaluation measures in the system.\n", + "parameters" : [ { + "name" : "api_key", + "in" : "query", + "description" : "API key to authenticate the user", + "required" : false, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "A list of evaluation measures", + "examples" : { + "application/json" : "{\n \"evaluation_measures\":{\n \"measures\":{\n \"measure\":[\n \"area_under_roc_curve\",\n \"average_cost\",\n \"binominal_test\",\n \"build_cpu_time\"\n ]\n }\n }\n}" + }, + "schema" : { + "$ref" : "#/definitions/EvaluationMeasureList" + } + } + } + } + } + }, + "definitions" : { + "Flow" : { + "type" : "object", + "properties" : { + "flow_description" : { + "$ref" : "#/definitions/Flow_flow_description" + } + } + }, + "FlowList" : { + "type" : "object", + "properties" : { + "flows" : { + "$ref" : "#/definitions/FlowList_flows" + } + } + }, + "UserList" : { + "type" : "object", + "properties" : { + "users" : { + "$ref" : "#/definitions/UserList_users" + } + } + }, + "Task" : { + "type" : "object", + "properties" : { + "task_description" : { + "$ref" : "#/definitions/Task_task_description" + } + } + }, + "TaskList" : { + "type" : "object", + "properties" : { + "task" : { + "$ref" : "#/definitions/TaskList_task" + } + } + }, + "EvaluationMeasureList" : { + "type" : "object", + "properties" : { + "evaluation_measures" : { + "$ref" : "#/definitions/EvaluationMeasureList_evaluation_measures" + } + } + }, + "EstimationProcedureList" : { + "type" : "object", + "properties" : { + "estimationprocedures" : { + "$ref" : "#/definitions/EstimationProcedureList_estimationprocedures" + } + } + }, + "DataList" : { + "type" : "object", + "properties" : { + "data" : { + "$ref" : "#/definitions/DataList_data" + } + } + }, + "DataQualities" : { + "type" : "object", + "properties" : { + "data_qualities" : { + "$ref" : "#/definitions/DataQualities_data_qualities" + } + } + }, + "DataQualityList" : { + "type" : "object", + "properties" : { + "data_qualities_list" : { + "$ref" : "#/definitions/DataQualityList_data_qualities_list" + } + } + }, + "DataFeatures" : { + "type" : "object", + "properties" : { + "data_features" : { + "$ref" : "#/definitions/DataFeatures_data_features" + } + } + }, + "Data" : { + "type" : "object", + "properties" : { + "data_set_description" : { + "$ref" : "#/definitions/Data_data_set_description" + } + } + }, + "RunList" : { + "type" : "object", + "properties" : { + "runs" : { + "$ref" : "#/definitions/RunList_runs" + } + } + }, + "SetupList" : { + "type" : "object", + "properties" : { + "setups" : { + "$ref" : "#/definitions/SetupList_setups" + } + } + }, + "EvaluationList" : { + "type" : "object", + "properties" : { + "evaluations" : { + "$ref" : "#/definitions/EvaluationList_evaluations" + } + } + }, + "EvaluationRequest" : { + "type" : "object", + "properties" : { + "evaluation_request" : { + "$ref" : "#/definitions/EvaluationRequest_evaluation_request" + } + } + }, + "DataUnprocessed" : { + "type" : "object", + "properties" : { + "data_unprocessed" : { + "$ref" : "#/definitions/DataUnprocessed_data_unprocessed" + } + } + }, + "Setup" : { + "type" : "object", + "properties" : { + "setup_parameters" : { + "$ref" : "#/definitions/Setup_setup_parameters" + } + } + }, + "Run" : { + "type" : "object", + "properties" : { + "run_description" : { + "$ref" : "#/definitions/Run_run_description" + } + } + }, + "TaskType" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the task type, a positive integer" + }, + "name" : { + "type" : "string", + "description" : "The name of the task type, e.g. Supervised Classification" + }, + "description" : { + "type" : "string", + "description" : "A description of the task type" + }, + "contributor" : { + "type" : "array", + "items" : { + "type" : "string", + "description" : "A list of people who defined the task type" + } + }, + "date" : { + "type" : "string", + "description" : "The date when the task type was created" + }, + "input" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/TaskType_input" + } + }, + "output" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/TaskType_output" + } + } + } + }, + "TaskTypeList" : { + "type" : "object", + "properties" : { + "task_types" : { + "$ref" : "#/definitions/TaskTypeList_task_types" + } + } + }, + "Study" : { + "type" : "object", + "properties" : { + "study" : { + "$ref" : "#/definitions/Study_study" + } + } + }, + "StudyList" : { + "type" : "object", + "properties" : { + "study_list" : { + "$ref" : "#/definitions/StudyList_study_list" + } + } + }, + "RunTrace" : { + "type" : "object", + "properties" : { + "trace" : { + "$ref" : "#/definitions/RunTrace_trace" + } + } + }, + "Error" : { + "type" : "object", + "properties" : { + "code" : { + "type" : "integer", + "format" : "int32" + }, + "message" : { + "type" : "string" + }, + "additional_message" : { + "type" : "string" + } + } + }, + "inline_response_200_data_delete" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the deleted dataset, a positive integer" + } + } + }, + "inline_response_200" : { + "properties" : { + "data_delete" : { + "$ref" : "#/definitions/inline_response_200_data_delete" + } + } + }, + "inline_response_200_1_upload_data_set" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the uploaded dataset, a positive integer" + } + } + }, + "inline_response_200_1" : { + "properties" : { + "upload_data_set" : { + "$ref" : "#/definitions/inline_response_200_1_upload_data_set" + } + } + }, + "inline_response_200_2_data_tag" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the tagged dataset" + } + } + }, + "inline_response_200_2" : { + "properties" : { + "data_tag" : { + "$ref" : "#/definitions/inline_response_200_2_data_tag" + } + } + }, + "inline_response_200_3_data_untag" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the untagged dataset" + } + } + }, + "inline_response_200_3" : { + "properties" : { + "data_untag" : { + "$ref" : "#/definitions/inline_response_200_3_data_untag" + } + } + }, + "inline_response_200_4_task_delete" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the deleted task, a positive integer" + } + } + }, + "inline_response_200_4" : { + "properties" : { + "task_delete" : { + "$ref" : "#/definitions/inline_response_200_4_task_delete" + } + } + }, + "inline_response_200_5_upload_task" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the uploaded task, a positive integer" + } + } + }, + "inline_response_200_5" : { + "properties" : { + "upload_task" : { + "$ref" : "#/definitions/inline_response_200_5_upload_task" + } + } + }, + "inline_response_200_6_task_tag" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the tagged task" + } + } + }, + "inline_response_200_6" : { + "properties" : { + "task_tag" : { + "$ref" : "#/definitions/inline_response_200_6_task_tag" + } + } + }, + "inline_response_200_7_task_untag" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the untagged task" + } + } + }, + "inline_response_200_7" : { + "properties" : { + "task_untag" : { + "$ref" : "#/definitions/inline_response_200_7_task_untag" + } + } + }, + "inline_response_200_8_flow_delete" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the deleted flow, a positive integer" + } + } + }, + "inline_response_200_8" : { + "properties" : { + "flow_delete" : { + "$ref" : "#/definitions/inline_response_200_8_flow_delete" + } + } + }, + "inline_response_200_9_upload_flow" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the uploaded flow, a positive integer" + } + } + }, + "inline_response_200_9" : { + "properties" : { + "upload_flow" : { + "$ref" : "#/definitions/inline_response_200_9_upload_flow" + } + } + }, + "inline_response_200_10_flow_exists" : { + "properties" : { + "exists" : { + "type" : "string", + "description" : "true or false" + }, + "id" : { + "type" : "string", + "description" : "The id of the flow with the given name and (external) version" + } + } + }, + "inline_response_200_10" : { + "properties" : { + "flow_exists" : { + "$ref" : "#/definitions/inline_response_200_10_flow_exists" + } + } + }, + "inline_response_200_11_flow_owned" : { + "properties" : { + "id" : { + "type" : "array", + "items" : { + "type" : "string" + } + } + } + }, + "inline_response_200_11" : { + "properties" : { + "flow_owned" : { + "$ref" : "#/definitions/inline_response_200_11_flow_owned" + } + } + }, + "inline_response_200_12_flow_tag" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the tagged flow" + } + } + }, + "inline_response_200_12" : { + "properties" : { + "flow_tag" : { + "$ref" : "#/definitions/inline_response_200_12_flow_tag" + } + } + }, + "inline_response_200_13_flow_untag" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the untagged flow" + } + } + }, + "inline_response_200_13" : { + "properties" : { + "flow_untag" : { + "$ref" : "#/definitions/inline_response_200_13_flow_untag" + } + } + }, + "inline_response_200_14_study_delete" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the deleted setup, a positive integer" + } + } + }, + "inline_response_200_14" : { + "properties" : { + "study_delete" : { + "$ref" : "#/definitions/inline_response_200_14_study_delete" + } + } + }, + "inline_response_200_15_flow_tag" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the tagged setup" + } + } + }, + "inline_response_200_15" : { + "properties" : { + "flow_tag" : { + "$ref" : "#/definitions/inline_response_200_15_flow_tag" + } + } + }, + "inline_response_200_16_flow_untag" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the untagged setup" + } + } + }, + "inline_response_200_16" : { + "properties" : { + "flow_untag" : { + "$ref" : "#/definitions/inline_response_200_16_flow_untag" + } + } + }, + "inline_response_200_17_data_delete" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the deleted run, a positive integer" + } + } + }, + "inline_response_200_17" : { + "properties" : { + "data_delete" : { + "$ref" : "#/definitions/inline_response_200_17_data_delete" + } + } + }, + "inline_response_200_18_upload_flow" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the uploaded run, a positive integer" + } + } + }, + "inline_response_200_18" : { + "properties" : { + "upload_flow" : { + "$ref" : "#/definitions/inline_response_200_18_upload_flow" + } + } + }, + "inline_response_200_19_run_tag" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the tagged run" + } + } + }, + "inline_response_200_19" : { + "properties" : { + "run_tag" : { + "$ref" : "#/definitions/inline_response_200_19_run_tag" + } + } + }, + "inline_response_200_20_run_untag" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the untagged run" + } + } + }, + "inline_response_200_20" : { + "properties" : { + "run_untag" : { + "$ref" : "#/definitions/inline_response_200_20_run_untag" + } + } + }, + "inline_response_200_21_upload_flow" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the evaluated run, a positive integer" + } + } + }, + "inline_response_200_21" : { + "properties" : { + "upload_flow" : { + "$ref" : "#/definitions/inline_response_200_21_upload_flow" + } + } + }, + "inline_response_200_22" : { + "properties" : { + "run_reset" : { + "$ref" : "#/definitions/inline_response_200_21_upload_flow" + } + } + }, + "inline_response_200_23_upload_flow" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the run with the trace, a positive integer" + } + } + }, + "inline_response_200_23" : { + "properties" : { + "upload_flow" : { + "$ref" : "#/definitions/inline_response_200_23_upload_flow" + } + } + }, + "inline_response_200_24_study_delete" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the deleted study, a positive integer" + } + } + }, + "inline_response_200_24" : { + "properties" : { + "study_delete" : { + "$ref" : "#/definitions/inline_response_200_24_study_delete" + } + } + }, + "inline_response_200_25_upload_study" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the uploaded study, a positive integer" + } + } + }, + "inline_response_200_25" : { + "properties" : { + "upload_study" : { + "$ref" : "#/definitions/inline_response_200_25_upload_study" + } + } + }, + "inline_response_200_26_study_attach" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the study, a positive integer" + }, + "main_entity_type" : { + "type" : "string", + "description" : "Main entity type of the of the study" + }, + "linked_entities" : { + "type" : "string", + "description" : "The number of linked entities" + } + } + }, + "inline_response_200_26" : { + "properties" : { + "study_attach" : { + "$ref" : "#/definitions/inline_response_200_26_study_attach" + } + } + }, + "inline_response_200_27" : { + "properties" : { + "upload_study" : { + "$ref" : "#/definitions/inline_response_200_26_study_attach" + } + } + }, + "Flow_flow_description_parameter" : { + "properties" : { + "name" : { + "type" : "string", + "description" : "The name of the parameter" + }, + "data_type" : { + "type" : "string", + "description" : "The data type of the parameter" + }, + "default_value" : { + "type" : "string", + "description" : "The default value of the parameter" + }, + "description" : { + "type" : "string", + "description" : "A description of the parameter" + } + } + }, + "Flow_flow_description" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the flow, a positive integer" + }, + "uploader" : { + "type" : "string", + "description" : "The uploader of the flow" + }, + "name" : { + "type" : "string", + "description" : "The name of the flow" + }, + "version" : { + "type" : "string", + "description" : "The version of the flow, set by OpenML. A positive integer" + }, + "version_label" : { + "type" : "string", + "description" : "The version of the flow, as defined by the uploader, for reference. Can be any format as long as it is unique." + }, + "description" : { + "type" : "string", + "description" : "Wiki description of the flow, in (Git flavoured) markdown format" + }, + "upload_date" : { + "type" : "string", + "description" : "The datetime that the flow was uploaded, format yyyy-MM-dd HH:mm:ss" + }, + "language" : { + "type" : "string", + "description" : "The programming language the flow is written in." + }, + "dependencies" : { + "type" : "string", + "description" : "The libraries that this flow depends on, and their version numbers." + }, + "tag" : { + "type" : "array", + "description" : "Tags added by OpenML users. Includes study tags in the form `study_1`", + "items" : { + "type" : "string" + } + }, + "parameter" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/Flow_flow_description_parameter" + } + } + } + }, + "FlowList_flows_flow" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "The flow ID" + }, + "full_name" : { + "type" : "string", + "description" : "The full flow name (name + internal version number)" + }, + "name" : { + "type" : "string", + "description" : "The flow name" + }, + "version" : { + "type" : "string", + "description" : "The internal flow version" + }, + "external_version" : { + "type" : "string", + "description" : "The external flow version" + }, + "uploader" : { + "type" : "string", + "description" : "The ID of the person who uploaded the flow" + } + } + }, + "FlowList_flows" : { + "properties" : { + "flow" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/FlowList_flows_flow" + } + } + } + }, + "UserList_users_user" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "The user ID" + }, + "username" : { + "type" : "string", + "description" : "The full user name" + } + } + }, + "UserList_users" : { + "properties" : { + "user" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/UserList_users_user" + } + } + } + }, + "Task_task_description_data_set" : { + "properties" : { + "data_set_id" : { + "type" : "string", + "description" : "The id of the dataset" + }, + "target_feature" : { + "type" : "string", + "description" : "The name of the target feature for this task" + } + } + }, + "Task_task_description_estimation_procedure_parameter" : { + "properties" : { + "name" : { + "type" : "string", + "description" : "The name of the parameter" + }, + "value" : { + "type" : "string", + "description" : "The value of the parameter" + } + } + }, + "Task_task_description_estimation_procedure" : { + "properties" : { + "type" : { + "type" : "string", + "description" : "The type of procedure, e.g. crossvalidation" + }, + "data_splits_url" : { + "type" : "string", + "description" : "The url where the data splits can be downloaded" + }, + "parameter" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/Task_task_description_estimation_procedure_parameter" + } + } + } + }, + "Task_task_description_evaluation_measures" : { + "properties" : { + "evaluation_measure" : { + "type" : "string", + "description" : "The evaluation measure to optimize in this task" + } + } + }, + "Task_task_description_input" : { + "properties" : { + "name" : { + "type" : "string", + "description" : "The name of the input, e.g. source_data" + }, + "data_set" : { + "$ref" : "#/definitions/Task_task_description_data_set" + }, + "estimation_procedure" : { + "$ref" : "#/definitions/Task_task_description_estimation_procedure" + }, + "cost_matrix" : { + "type" : "array", + "description" : "The cost matrix, indicating the costs for each type of misclassification", + "items" : { + "type" : "array", + "items" : { + "type" : "integer", + "format" : "int64" + } + } + }, + "evaluation_measures" : { + "$ref" : "#/definitions/Task_task_description_evaluation_measures" + } + } + }, + "Task_task_description_predictions_feature" : { + "properties" : { + "name" : { + "type" : "string", + "description" : "The name of the prediction feature, e.g. row_id" + }, + "type" : { + "type" : "string", + "description" : "The type of the prediction feature, e.g. integer" + } + } + }, + "Task_task_description_predictions" : { + "properties" : { + "format" : { + "type" : "string", + "description" : "The fromat of the predictions, e.g. ARFF" + }, + "feature" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/Task_task_description_predictions_feature" + } + } + } + }, + "Task_task_description_output" : { + "properties" : { + "name" : { + "type" : "string", + "description" : "The name of the output, e.g. predictions" + }, + "predictions" : { + "$ref" : "#/definitions/Task_task_description_predictions" + } + } + }, + "Task_task_description" : { + "properties" : { + "task_id" : { + "type" : "string", + "description" : "ID of the task, a positive integer" + }, + "task_type" : { + "type" : "string", + "description" : "The type of the task, e.g. Supervised Classification" + }, + "input" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/Task_task_description_input" + } + }, + "output" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/Task_task_description_output" + } + }, + "tag" : { + "type" : "array", + "items" : { + "type" : "string", + "description" : "Tags added by OpenML users. Includes study tags in the form `study_1`" + } + } + } + }, + "TaskList_task_input" : { + "properties" : { + "name" : { + "type" : "string", + "description" : "The name of the input" + }, + "value" : { + "type" : "string", + "description" : "The value of the input" + } + } + }, + "TaskList_task_quality" : { + "properties" : { + "name" : { + "type" : "string", + "description" : "The name of the quality" + }, + "value" : { + "type" : "string", + "description" : "The value of the quality" + } + } + }, + "TaskList_task_task" : { + "properties" : { + "task_id" : { + "type" : "string", + "description" : "The ID of the task" + }, + "task_type" : { + "type" : "string", + "description" : "The type of task (e.g. Supervised Classificationr)" + }, + "did" : { + "type" : "string", + "description" : "The id of the source dataset" + }, + "name" : { + "type" : "string", + "description" : "The name of the source dataset" + }, + "status" : { + "type" : "string", + "description" : "The status of the source dataset, active, in_preparation, or deactivated" + }, + "format" : { + "type" : "string", + "description" : "The format of the source dataset" + }, + "input" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/TaskList_task_input" + } + }, + "quality" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/TaskList_task_quality" + } + }, + "tag" : { + "type" : "array", + "items" : { + "type" : "string", + "description" : "Tags added by OpenML users. Includes study tags in the form `study_1`" + } + } + } + }, + "TaskList_task" : { + "properties" : { + "task" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/TaskList_task_task" + } + } + } + }, + "EvaluationMeasureList_evaluation_measures_measures" : { + "properties" : { + "measure" : { + "type" : "array", + "items" : { + "type" : "string", + "description" : "The evaluation measure name" + } + } + } + }, + "EvaluationMeasureList_evaluation_measures" : { + "properties" : { + "measures" : { + "$ref" : "#/definitions/EvaluationMeasureList_evaluation_measures_measures" + } + } + }, + "EstimationProcedureList_estimationprocedures_estimationprocedure" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "The estimation procedure ID" + }, + "ttid" : { + "type" : "string", + "description" : "The task type ID" + }, + "name" : { + "type" : "string", + "description" : "The estimation procedure name, e.g. '10 fold Crossvalidation'" + }, + "type" : { + "type" : "string", + "description" : "The estimation procedure type, e.g. 'crossvalidation'" + }, + "repeats" : { + "type" : "string", + "description" : "The number of repeats, e.g. '10'" + }, + "folds" : { + "type" : "string", + "description" : "The number of cross-validation folds, e.g. '10'" + }, + "stratified_sampling" : { + "type" : "string", + "description" : "Whether or not the sampling is stratified, 'true' or 'false'" + } + } + }, + "EstimationProcedureList_estimationprocedures" : { + "properties" : { + "estimationprocedure" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/EstimationProcedureList_estimationprocedures_estimationprocedure" + } + } + } + }, + "DataList_data_quality" : { + "properties" : { + "name" : { + "type" : "string", + "description" : "The name of the property" + }, + "value" : { + "type" : "string", + "description" : "The value of the property" + } + } + }, + "DataList_data_dataset" : { + "properties" : { + "did" : { + "type" : "string", + "description" : "The dataset ID" + }, + "name" : { + "type" : "string", + "description" : "The dataset name" + }, + "status" : { + "type" : "string", + "description" : "The dataset status, either in_preparation, active, or deactivated" + }, + "format" : { + "type" : "string", + "description" : "The data format of the dataset, e.g. ARFF" + }, + "quality" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/DataList_data_quality" + } + } + } + }, + "DataList_data" : { + "properties" : { + "dataset" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/DataList_data_dataset" + } + } + } + }, + "DataQualities_data_qualities_quality" : { + "properties" : { + "name" : { + "type" : "string", + "description" : "The name of the dataset quality measures" + }, + "value" : { + "type" : "string", + "description" : "The value for this dataset" + } + } + }, + "DataQualities_data_qualities" : { + "properties" : { + "quality" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/DataQualities_data_qualities_quality" + } + } + } + }, + "DataQualityList_data_qualities_list" : { + "properties" : { + "quality" : { + "type" : "array", + "items" : { + "type" : "string" + } + } + } + }, + "DataFeatures_data_features_feature" : { + "properties" : { + "index" : { + "type" : "string", + "description" : "Feature index" + }, + "name" : { + "type" : "string", + "description" : "Feature name" + }, + "data_type" : { + "type" : "string", + "description" : "Feature data type" + }, + "is_target" : { + "type" : "string", + "description" : "Whether this feature is seen as a target feature" + }, + "is_ignore" : { + "type" : "string", + "description" : "Whether this feature should be ignored in modelling (e.g. every value is unique)" + }, + "is_row_identifier" : { + "type" : "string", + "description" : "Whether this feature is a row identifier" + } + } + }, + "DataFeatures_data_features" : { + "properties" : { + "feature" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/DataFeatures_data_features_feature" + } + } + } + }, + "Data_data_set_description" : { + "required" : [ "description", "format", "name" ], + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the dataset, a positive integer" + }, + "name" : { + "type" : "string", + "description" : "The name of the dataset" + }, + "version" : { + "type" : "string", + "description" : "The version of the dataset, set by OpenML. A positive integer" + }, + "description" : { + "type" : "string", + "description" : "Wiki description of the dataset, in (Git flavoured) markdown format" + }, + "format" : { + "type" : "string", + "description" : "Data format, for instance ARFF" + }, + "upload_date" : { + "type" : "string", + "description" : "The datetime that the dataset was uploaded, format yyyy-MM-dd HH:mm:ss" + }, + "licence" : { + "type" : "string", + "description" : "The licence granted for using the dataset, for instance Public or CC-BY" + }, + "url" : { + "type" : "string", + "description" : "The URL where the data can be downloaded" + }, + "file_id" : { + "type" : "string", + "description" : "The ID of the dataset file stored on the OpenML server" + }, + "default_target_attribute" : { + "type" : "string", + "description" : "For tabular data, the name of the column that is typically used as the target attribute for that data set" + }, + "version_label" : { + "type" : "string", + "description" : "The version of the dataset, as defined by the uploader, for reference. Can be any format as long as it is unique." + }, + "tag" : { + "type" : "array", + "description" : "Tags added by OpenML users. Includes study tags in the form `study_1`", + "items" : { + "type" : "string" + } + }, + "visibility" : { + "type" : "string", + "description" : "Who can see the dataset. For instance `public`." + }, + "original_data_url" : { + "type" : "string", + "description" : "The URL where the original data is hosted." + }, + "status" : { + "type" : "string", + "description" : "active, in_preparation, or deactivated" + }, + "md5_checksum" : { + "type" : "string", + "description" : "Checksum to verify downloads of the dataset" + } + } + }, + "RunList_runs_run" : { + "properties" : { + "run_id" : { + "type" : "string", + "description" : "The run ID" + }, + "task_id" : { + "type" : "string", + "description" : "The ID of the task solved by this run" + }, + "setup_id" : { + "type" : "string", + "description" : "Ignore (internal representation of the parameter setting)" + }, + "flow_id" : { + "type" : "string", + "description" : "The ID of the flow used in this run" + }, + "uploader" : { + "type" : "string", + "description" : "The ID of the person uploading this run" + }, + "error_message" : { + "type" : "string", + "description" : "Error message generated by the run (if any)" + } + } + }, + "RunList_runs" : { + "properties" : { + "run" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/RunList_runs_run" + } + } + } + }, + "SetupList_setups_parameter" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "The parameter ID" + }, + "flow_id" : { + "type" : "string", + "description" : "The (sub)flow ID" + }, + "flow_name" : { + "type" : "string", + "description" : "The (sub)flow name" + }, + "full_name" : { + "type" : "string", + "description" : "The parameter's full name" + }, + "parameter_name" : { + "type" : "string", + "description" : "The parameter's short name" + }, + "data_type" : { + "type" : "string", + "description" : "The parameter's data type" + }, + "default_value" : { + "type" : "string", + "description" : "The parameter's default value" + }, + "value" : { + "type" : "string", + "description" : "The parameter value in this setup" + } + } + }, + "SetupList_setups_setup" : { + "properties" : { + "setup_id" : { + "type" : "string", + "description" : "The setup ID" + }, + "flow_id" : { + "type" : "string", + "description" : "The ID of the flow used by this run" + }, + "parameter" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/SetupList_setups_parameter" + } + } + } + }, + "SetupList_setups" : { + "properties" : { + "setup" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/SetupList_setups_setup" + } + } + } + }, + "EvaluationList_evaluations_evaluation" : { + "properties" : { + "run_id" : { + "type" : "string", + "description" : "The run ID" + }, + "task_id" : { + "type" : "string", + "description" : "The ID of the tasks solved by this run" + }, + "flow_id" : { + "type" : "string", + "description" : "The ID of the flow used by this run" + }, + "function" : { + "type" : "string", + "description" : "The name of the evaluation function" + }, + "value" : { + "type" : "string", + "description" : "The outcome of the evaluation" + }, + "array_data" : { + "type" : "string", + "description" : "For structured evaluation measures, an array of evaluation values (e.g. per-class predictions, evaluation matrices,...)" + } + } + }, + "EvaluationList_evaluations" : { + "properties" : { + "evaluation" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/EvaluationList_evaluations_evaluation" + } + } + } + }, + "EvaluationRequest_evaluation_request_run" : { + "properties" : { + "run_id" : { + "type" : "string", + "description" : "ID of the run, a positive integer" + }, + "task_id" : { + "type" : "string", + "description" : "ID of the task, a positive integer" + }, + "setup_id" : { + "type" : "string", + "description" : "ID of the setup, a positive integer" + }, + "uploader" : { + "type" : "string", + "description" : "ID of the uploader, a positive integer" + }, + "upload_time" : { + "type" : "string", + "description" : "The datetime that the dataset was uploaded, format yyyy-MM-dd HH:mm:ss" + } + } + }, + "EvaluationRequest_evaluation_request" : { + "properties" : { + "run" : { + "$ref" : "#/definitions/EvaluationRequest_evaluation_request_run" + } + } + }, + "DataUnprocessed_data_unprocessed_dataset" : { + "properties" : { + "did" : { + "type" : "string", + "description" : "ID of the dataset a positive integer" + }, + "name" : { + "type" : "string", + "description" : "The name of the dataset" + }, + "version" : { + "type" : "string", + "description" : "Version of the dataset, a positive integer" + }, + "status" : { + "type" : "string", + "description" : "Status of the dataset" + }, + "format" : { + "type" : "string", + "description" : "The dataset format, e.g. ARFF" + } + } + }, + "DataUnprocessed_data_unprocessed" : { + "properties" : { + "dataset" : { + "$ref" : "#/definitions/DataUnprocessed_data_unprocessed_dataset" + } + } + }, + "Setup_setup_parameters_parameter_setting" : { + "properties" : { + "full_name" : { + "type" : "string", + "description" : "The full name of the hyperparameter" + }, + "parameter_name" : { + "type" : "string", + "description" : "The short name of the hyperparameter" + }, + "data_type" : { + "type" : "string", + "description" : "The data type of the hyperparameter value" + }, + "default_value" : { + "type" : "string", + "description" : "The default value of the parameter used" + }, + "value" : { + "type" : "string", + "description" : "The value of the parameter used" + } + }, + "description" : "Hyperparameter settings. Can be multiple." + }, + "Setup_setup_parameters" : { + "properties" : { + "flow_id" : { + "type" : "string", + "description" : "ID of the flow, a positive integer" + }, + "parameter_setting" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/Setup_setup_parameters_parameter_setting" + } + } + } + }, + "Run_run_description_parameter_setting" : { + "properties" : { + "name" : { + "type" : "string", + "description" : "The name of the parameter" + }, + "value" : { + "type" : "string", + "description" : "The value of the parameter used" + } + }, + "description" : "Parameter settings used in this run. Can be multiple." + }, + "Run_run_description_input_data_dataset" : { + "properties" : { + "did" : { + "type" : "string", + "description" : "The id of the dataset" + }, + "name" : { + "type" : "string", + "description" : "The name of the dataset" + }, + "url" : { + "type" : "string", + "description" : "The download url of the dataset" + } + } + }, + "Run_run_description_input_data" : { + "properties" : { + "dataset" : { + "$ref" : "#/definitions/Run_run_description_input_data_dataset" + } + }, + "description" : "The input data for this run." + }, + "Run_run_description_output_data_file" : { + "properties" : { + "did" : { + "type" : "string", + "description" : "The id of the uploaded file" + }, + "file_id" : { + "type" : "string", + "description" : "The reference id of the uploaded file, for downloading afterward" + }, + "name" : { + "type" : "string", + "description" : "The name of the uploaded file (e.g., description, predictions, model,...)" + } + }, + "description" : "Files uploaded by the user, e.g. run description, predictions. Can be multiple." + }, + "Run_run_description_output_data_evaluation" : { + "properties" : { + "name" : { + "type" : "string", + "description" : "The name of the evaluation measure" + }, + "flow_id" : { + "type" : "string", + "description" : "The id of the code used to compute this evaluation method" + }, + "value" : { + "type" : "string", + "description" : "The result of the evaluation" + }, + "array_data" : { + "type" : "string", + "description" : "For composite evaluation measures (e.g. per-class measures, confusion matrix), a string (JSON) representation of the evaluation." + } + }, + "description" : "Evaluations uploaded by the user, e.g. runtimes, or computed by the server (after run upload). Can be multiple." + }, + "Run_run_description_output_data" : { + "properties" : { + "file" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/Run_run_description_output_data_file" + } + }, + "evaluation" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/Run_run_description_output_data_evaluation" + } + } + }, + "description" : "The data generated by this run." + }, + "Run_run_description" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "ID of the run, a positive integer" + }, + "uploader" : { + "type" : "string", + "description" : "The uploader of the run" + }, + "uploader_name" : { + "type" : "string", + "description" : "The name of the uploader of the run" + }, + "task_id" : { + "type" : "string", + "description" : "The id of the task solved by this run" + }, + "task_type" : { + "type" : "string", + "description" : "The type of task solved by this run (e.g., classification)" + }, + "task_evaluation_measure" : { + "type" : "string", + "description" : "The evaluation measure that is supposed to be optimized in the task, if any" + }, + "flow_id" : { + "type" : "string", + "description" : "The id of the flow used in this run" + }, + "flow_name" : { + "type" : "string", + "description" : "The name of the flow used in this run" + }, + "setup_string" : { + "type" : "string", + "description" : "Configuration of the flow as a string, to be interpreted by the flow, its library, or command line interface." + }, + "tag" : { + "type" : "array", + "description" : "Tags added by OpenML users. Includes study tags in the form `study_1`", + "items" : { + "type" : "string" + } + }, + "parameter_setting" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/Run_run_description_parameter_setting" + } + }, + "input_data" : { + "$ref" : "#/definitions/Run_run_description_input_data" + }, + "output_data" : { + "$ref" : "#/definitions/Run_run_description_output_data" + } + } + }, + "TaskType_input" : { + "properties" : { + "name" : { + "type" : "string", + "description" : "The name of the input, e.g. source_data" + }, + "data_set" : { + "$ref" : "#/definitions/Task_task_description_data_set" + }, + "estimation_procedure" : { + "$ref" : "#/definitions/Task_task_description_estimation_procedure" + }, + "cost_matrix" : { + "type" : "array", + "items" : { + "type" : "array", + "description" : "The cost matrix, indicating the costs for each type of misclassification", + "items" : { + "type" : "integer", + "format" : "int64" + } + } + }, + "evaluation_measures" : { + "$ref" : "#/definitions/Task_task_description_evaluation_measures" + } + } + }, + "TaskType_predictions" : { + "properties" : { + "format" : { + "type" : "string", + "description" : "The format of the predictions, e.g. ARFF" + }, + "feature" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/Task_task_description_predictions_feature" + } + } + } + }, + "TaskType_output" : { + "properties" : { + "name" : { + "type" : "string", + "description" : "The name of the output, e.g. predictions" + }, + "predictions" : { + "$ref" : "#/definitions/TaskType_predictions" + } + } + }, + "TaskTypeList_task_types_task_type" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "The ID of the task type" + }, + "name" : { + "type" : "string", + "description" : "The name of the task type" + }, + "description" : { + "type" : "string", + "description" : "A description of the task type" + }, + "creator" : { + "type" : "string", + "description" : "A comma-separated list of the task type creators" + } + } + }, + "TaskTypeList_task_types" : { + "properties" : { + "task_type" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/TaskTypeList_task_types_task_type" + } + } + } + }, + "Study_study_tag" : { + "properties" : { + "name" : { + "type" : "string", + "description" : "The name of the study (e.g. study_1)" + }, + "write_access" : { + "type" : "string", + "description" : "The write access level of the study (e.g. public)" + } + } + }, + "Study_study_data" : { + "properties" : { + "data_id" : { + "type" : "array", + "items" : { + "type" : "string" + } + } + }, + "description" : "The IDs of the datasets that are directly or indirectly linked to the study (e.g. because it is part of a task that belongs to the study)" + }, + "Study_study_tasks" : { + "properties" : { + "task_id" : { + "type" : "array", + "items" : { + "type" : "string" + } + } + }, + "description" : "The IDs of the tasks that are directly or indirectly linked to the study (e.g. because it is part of a run that belongs to the study)" + }, + "Study_study_flows" : { + "properties" : { + "flow_id" : { + "type" : "array", + "items" : { + "type" : "string" + } + } + }, + "description" : "The IDs of the flows that are directly or indirectly linked to the study (e.g. because it is part of a run that belongs to the study)" + }, + "Study_study_runs" : { + "properties" : { + "run_id" : { + "type" : "array", + "items" : { + "type" : "string" + } + } + }, + "description" : "The IDs of the runs attached to this study" + }, + "Study_study" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "The ID of the study" + }, + "alias" : { + "type" : "string", + "description" : "The alias of the study" + }, + "main_entity_type" : { + "type" : "string", + "description" : "The type of entity collected in the study (e.g. task or run)" + }, + "name" : { + "type" : "string", + "description" : "The name of the study" + }, + "creation_date" : { + "type" : "string", + "description" : "The datetime that the dataset was uploaded, format yyyy-MM-dd HH:mm:ss" + }, + "creator" : { + "type" : "string", + "description" : "A comma-separated list of the study creators" + }, + "tag" : { + "$ref" : "#/definitions/Study_study_tag" + }, + "data" : { + "$ref" : "#/definitions/Study_study_data" + }, + "tasks" : { + "$ref" : "#/definitions/Study_study_tasks" + }, + "flows" : { + "$ref" : "#/definitions/Study_study_flows" + }, + "runs" : { + "$ref" : "#/definitions/Study_study_runs" + } + } + }, + "StudyList_study_list_study" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "The ID of the study" + }, + "alias" : { + "type" : "string", + "description" : "The alias of the study" + }, + "name" : { + "type" : "string", + "description" : "The name of the study" + }, + "creation_date" : { + "type" : "string", + "description" : "The datetime that the dataset was uploaded, format yyyy-MM-dd HH:mm:ss" + }, + "creator" : { + "type" : "string", + "description" : "A comma-separated list of the study creators" + } + } + }, + "StudyList_study_list" : { + "properties" : { + "study" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/StudyList_study_list_study" + } + } + } + }, + "RunTrace_trace_trace_iteration" : { + "properties" : { + "repeat" : { + "type" : "string", + "description" : "The number of the repeat in the outer cross-valudation" + }, + "fold" : { + "type" : "string", + "description" : "The number of the fold in the inner cross-validation" + }, + "iteration" : { + "type" : "string", + "description" : "A number of the optimization iteration" + }, + "setup_string" : { + "type" : "string", + "description" : "A JSON representation of the setup (configuration)" + }, + "evaluation" : { + "type" : "string", + "description" : "The evaluation score of the setup" + }, + "selected" : { + "type" : "string", + "description" : "Whether this setup was selected as the best one (true or false)" + } + } + }, + "RunTrace_trace" : { + "properties" : { + "run_id" : { + "type" : "string", + "description" : "run ID" + }, + "trace_iteration" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/RunTrace_trace_trace_iteration" + } + } + } + } + } +} \ No newline at end of file diff --git a/swagger.yaml b/swagger.yaml new file mode 100755 index 000000000..5854f0bcb --- /dev/null +++ b/swagger.yaml @@ -0,0 +1,4388 @@ +--- +swagger: "2.0" +info: + description: REST API for sharing, organizing and reusing machine learning datasets, code, and experiments. Follows a predictive URL scheme from endpoint https://www.openml.org/api/v1/json (or /xml). You need to add your `api_key` to every call (see your account settings), or simply log in. See https://www.openml.org/api_data_docs for the file server API. + version: 1.0.0 + title: OpenML API +basePath: /api/v1/json +schemes: +- https +produces: +- application/json +paths: + /data/{id}: + get: + tags: + - data + summary: Get dataset description + description: | + Returns information about a dataset. The information includes the name, information about the creator, URL to download it and more. + parameters: + - name: id + in: path + description: Id of the dataset. + required: true + type: number + format: integer + - name: api_key + in: query + description: Api key to authenticate the user + required: false + type: string + responses: + 200: + description: A dataset description + examples: + application/json: |- + { + "data_set_description": { + "id": "1", + "name": "anneal", + "version": "2", + "description": "...", + "format": "ARFF", + "upload_date": "2014-04-06 23:19:20", + "licence": "Public", + "url": "https://www.openml.org/data/download/1/dataset_1_anneal.arff", + "file_id": "1", + "default_target_attribute": "class", + "version_label": "2", + "tag": [ + "study_1", + "uci" + ], + "visibility": "public", + "original_data_url": "https://www.openml.org/d/2", + "status": "active", + "md5_checksum": "d01f6ccd68c88b749b20bbe897de3713" + } + } + schema: + $ref: '#/definitions/Data' + 412: + description: | + Precondition failed. An error code and message are returned + 110 - Please provide data_id. + 111 - Unknown dataset. Data set description with data_id was not found in the database. + 112 - No access granted. This dataset is not shared with you. + schema: + $ref: '#/definitions/Error' + delete: + tags: + - data + summary: Delete dataset + description: | + Deletes a dataset. Upon success, it returns the ID of the deleted dataset. + parameters: + - name: id + in: path + description: Id of the dataset. + required: true + type: number + format: integer + - name: api_key + in: query + description: Api key to authenticate the user + required: true + type: string + responses: + 200: + description: ID of the deleted dataset + examples: + application/json: |- + { + "data_delete": { + "id": "4328" + } + } + schema: + type: object + properties: + data_delete: + $ref: '#/definitions/inline_response_200_data_delete' + 412: + description: | + Precondition failed. An error code and message are returned + - 350 - Please provide API key. In order to remove your content, please authenticate. + - 351 - Authentication failed. The API key was not valid. Please try to login again, or contact api administrators. + - 352 - Dataset does not exists. The data ID could not be linked to an existing dataset. + - 353 - Dataset is not owned by you. The dataset is owned by another user. Hence you cannot delete it. + - 354 - Dataset is in use by other content. Can not be deleted. The data is used in tasks or runs. Delete other content before deleting this dataset. + - 355 - Deleting dataset failed. Deleting the dataset failed. Please contact support team. + schema: + $ref: '#/definitions/Error' + /data: + post: + tags: + - data + summary: Upload dataset + description: | + Uploads a dataset. Upon success, it returns the data id. + consumes: + - multipart/form-data + parameters: + - name: description + in: formData + description: An XML file describing the dataset. Only name, description, and data format are required. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.data.upload) and an [XML example](https://www.openml.org/api/v1/xml_example/data). + required: true + type: file + - name: dataset + in: formData + description: The actual dataset, being an ARFF file. + required: true + type: file + - name: api_key + in: query + description: Api key to authenticate the user + required: true + type: string + responses: + 200: + description: Id of the uploaded dataset + examples: + application/json: |- + { + "upload_data_set": { + "id": "4328" + } + } + schema: + type: object + properties: + upload_data_set: + $ref: '#/definitions/inline_response_200_1_upload_data_set' + 412: + description: | + Precondition failed. An error code and message are returned. + 130 - Problem with file uploading. There was a problem with the file upload. + 131 - Problem validating uploaded description file. The XML description format does not meet the standards. + 132 - Failed to move the files. Internal server error, please contact API administrators. + 133 - Failed to make checksum of datafile. Internal server error, please contact API administrators. + 134 - Failed to insert record in database. Internal server error, please contact API administrators. + 135 - Please provide description xml. + 136 - File failed format verification. The uploaded file is not valid according to the selected file format. Please check the file format specification and try again. + 137 - Please provide API key. In order to share content, please log in or provide your API key. + 138 - Authentication failed. The API key was not valid. Please try to login again, or contact API administrators + 139 - Combination name / version already exists. Leave version out for auto increment + 140 - Both dataset file and dataset url provided. The system is confused since both a dataset file (post) and a dataset url (xml) are provided. Please remove one. + 141 - Neither dataset file or dataset url are provided. Please provide either a dataset file as POST variable, or a dataset url in the description XML. + 142 - Error in processing arff file. Can be a syntax error, or the specified target feature does not exists. For now, we only check on arff files. If a dataset is claimed to be in such a format, and it can not be parsed, this error is returned. + 143 - Suggested target feature not legal. It is possible to suggest a default target feature (for predictive tasks). However, it should be provided in the data. + 144 - Unable to update dataset. The dataset with id could not be found in the database. If you upload a new dataset, unset the id. + schema: + $ref: '#/definitions/Error' + /data/qualities/list: + get: + tags: + - data + summary: List all data qualities + description: | + Returns a list of all data qualities in the system. + parameters: + - name: api_key + in: query + description: API key to authenticate the user + required: false + type: string + responses: + 200: + description: A list of data qualities + examples: + application/json: |- + { + "data_qualities_list":{ + "quality":[ + "NumberOfClasses", + "NumberOfFeatures", + "NumberOfInstances", + "NumberOfInstancesWithMissingValues", + "NumberOfMissingValues", + "NumberOfNumericFeatures", + "NumberOfSymbolicFeatures" + ] + } + } + schema: + $ref: '#/definitions/DataQualityList' + 412: + description: | + Precondition failed. An error code and message are returned + 370 - No data qualities available. There are no data qualities in the system. + schema: + $ref: '#/definitions/Error' + /data/qualities: + post: + tags: + - data + summary: Upload dataset qualities + description: | + Uploads dataset qualities. Upon success, it returns the data id. + consumes: + - multipart/form-data + parameters: + - name: description + in: formData + description: An XML file describing the dataset. Only name, description, and data format are required. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.data.qualities) and an [XML example](https://www.openml.org/api/v1/xml_example/data.qualities). + required: true + type: file + - name: api_key + in: query + description: Api key to authenticate the user + required: true + type: string + responses: + 412: + description: | + Precondition failed. An error code and message are returned. + 381 - Something wrong with XML, please check did and evaluation_engine_id + 382 - Please provide description xml + 383 - Problem validating uploaded description file + 384 - Dataset not processed yet + schema: + $ref: '#/definitions/Error' + /data/status/update/: + post: + tags: + - data + summary: Change the status of a dataset + description: | + Change the status of a dataset, either 'active' or 'deactivated' + consumes: + - multipart/form-data + parameters: + - name: data_id + in: formData + description: Id of the dataset. + required: true + type: number + format: integer + - name: status + in: formData + description: The status on which to filter the results, either 'active' or 'deactivated'. + required: true + type: string + - name: api_key + in: formData + description: Api key to authenticate the user + required: true + type: string + responses: + 412: + description: | + Precondition failed. An error code and message are returned. + 691 - Illegal status + 692 - Dataset does not exists + 693 - Dataset is not owned by you + 694 - Illegal status transition + 695 - Status update failed + schema: + $ref: '#/definitions/Error' + /data/features: + post: + tags: + - data + summary: Upload dataset feature description + description: | + Uploads dataset feature description. Upon success, it returns the data id. + consumes: + - multipart/form-data + parameters: + - name: description + in: formData + description: An XML file describing the dataset. Only name, description, and data format are required. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.data.features) and an [XML example](https://www.openml.org/api/v1/xml_example/data.features). + required: true + type: file + - name: api_key + in: query + description: Api key to authenticate the user + required: true + type: string + responses: + 412: + description: | + Precondition failed. An error code and message are returned. + 431 - Dataset already processed + 432 - Please provide description xml + 433 - Problem validating uploaded description file + 434 - Could not find dataset + 436 - Something wrong with XML, check data id and evaluation engine id + schema: + $ref: '#/definitions/Error' + /data/features/{id}: + get: + tags: + - data + summary: Get data features + description: | + Returns the features of a dataset. + parameters: + - name: id + in: path + description: Id of the dataset. + required: true + type: number + format: integer + - name: api_key + in: query + description: Api key to authenticate the user + required: false + type: string + responses: + 200: + description: All the features of the dataset + examples: + application/json: |- + { + "data_features": { + "feature": [ + { + "index": "0", + "name": "sepallength", + "data_type": "numeric", + "is_target": "false", + "is_ignore": "false", + "is_row_identifier": "false" + }, + { + "index": "1", + "name": "sepalwidth", + "data_type": "numeric", + "is_target": "false", + "is_ignore": "false", + "is_row_identifier": "false" + }, + { + "index": "2", + "name": "petallength", + "data_type": "numeric", + "is_target": "false", + "is_ignore": "false", + "is_row_identifier": "false" + }, + { + "index": "3", + "name": "petalwidth", + "data_type": "numeric", + "is_target": "false", + "is_ignore": "false", + "is_row_identifier": "false" + }, + { + "index": "4", + "name": "class", + "data_type": "nominal", + "is_target": "true", + "is_ignore": "false", + "is_row_identifier": "false" + } + ] + } + } + schema: + $ref: '#/definitions/DataFeatures' + 412: + description: | + Precondition failed. An error code and message are returned. + 270 - Please provide dataset ID. + 271 - Unknown dataset. Data set with the given data ID was not found (or is not shared with you). + 272 - No features found. The dataset did not contain any features, or we could not extract them. + 273 - Dataset not processed yet. The dataset was not processed yet, features are not yet available. Please wait for a few minutes. + 274 - Dataset processed with error. The feature extractor has run into an error while processing the dataset. Please check whether it is a valid supported file. If so, please contact the API admins. + schema: + $ref: '#/definitions/Error' + /data/qualities/{id}: + get: + tags: + - data + summary: Get data qualities + description: | + Returns the qualities of a dataset. + parameters: + - name: id + in: path + description: Id of the dataset. + required: true + type: number + format: integer + - name: api_key + in: query + description: Api key to authenticate the user + required: false + type: string + responses: + 200: + description: All the qualities of the dataset + examples: + application/json: |- + { + "data_qualities": { + "quality": [ + { + "name": "ClassCount", + "value": "3.0" + }, + { + "name": "ClassEntropy", + "value": "1.584962500721156" + }, + { + "name": "NumberOfClasses", + "value": "3" + }, + { + "name": "NumberOfFeatures", + "value": "5" + }, + { + "name": "NumberOfInstances", + "value": "150" + }, + { + "name": "NumberOfInstancesWithMissingValues", + "value": "0" + }, + { + "name": "NumberOfMissingValues", + "value": "0" + }, + { + "name": "NumberOfNumericFeatures", + "value": "4" + }, + { + "name": "NumberOfSymbolicFeatures", + "value": "0" + } + ] + } + } + schema: + $ref: '#/definitions/DataQualities' + 412: + description: | + Precondition failed. An error code and message are returned. + 360 - Please provide data set ID + 361 - Unknown dataset. The data set with the given ID was not found in the database, or is not shared with you. + 362 - No qualities found. The registered dataset did not contain any calculated qualities. + 363 - Dataset not processed yet. The dataset was not processed yet, no qualities are available. Please wait for a few minutes. + 364 - Dataset processed with error. The quality calculator has run into an error while processing the dataset. Please check whether it is a valid supported file. If so, contact the support team. + 365 - Interval start or end illegal. There was a problem with the interval + start or end. + schema: + $ref: '#/definitions/Error' + /data/list/{filters}: + get: + tags: + - data + summary: List and filter datasets + description: | + List datasets, possibly filtered by a range of properties. Any number of properties can be combined by listing them one after the other in the form '/data/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all datasets that match the constraints. + parameters: + - name: filters + in: path + description: | + Any combination of these filters + /limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, results 11..15 will be returned. Both limit and offset need to be specified. + /status/{status} - returns only datasets with a given status, either 'active', 'deactivated', or 'in_preparation'. + /tag/{tag} - returns only datasets tagged with the given tag. + /{data_quality}/{range} - returns only tasks for which the underlying datasets have certain qualities. {data_quality} can be data_id, data_name, data_version, number_instances, number_features, number_classes, number_missing_values. {range} can be a specific value or a range in the form 'low..high'. Multiple qualities can be combined, as in 'number_instances/0..50/number_features/0..10'. + required: true + type: string + - name: api_key + in: query + description: API key to authenticate the user + required: false + type: string + responses: + 200: + description: A list of datasets with the given task + examples: + application/json: |- + { + "data": { + "dataset": [ + { + "did":"1", + "name":"anneal", + "status":"active", + "format":"ARFF", + "quality":[ + { + "name":"MajorityClassSize", + "value":"684" + }, + { + "name":"MaxNominalAttDistinctValues", + "value":"10.0" + }, + { + "name":"MinorityClassSize" + ,"value":"0" + }, + { + "name":"NumBinaryAtts", + "value":"14.0" + }, + { + "name":"NumberOfClasses", + "value":"6" + }, + { + "name":"NumberOfFeatures", + "value":"39" + }, + { + "name":"NumberOfInstances", + "value":"898" + }, + { + "name":"NumberOfInstancesWithMissingValues", + "value":"0" + }, + { + "name":"NumberOfMissingValues", + "value":"0" + }, + { + "name":"NumberOfNumericFeatures", + "value":"6" + }, + { + "name":"NumberOfSymbolicFeatures", + "value":"32" + } + ] + } + ] + } + } + schema: + $ref: '#/definitions/DataList' + 412: + description: | + Precondition failed. An error code and message are returned. + 370 - Illegal filter specified. + 371 - Filter values/ranges not properly specified. + 372 - No results. There where no matches for the given constraints. + 373 - Can not specify an offset without a limit. + schema: + $ref: '#/definitions/Error' + /data/tag: + post: + tags: + - data + summary: Tag a dataset + description: Tags a dataset. + consumes: + - application/x-www-form-urlencoded + parameters: + - name: data_id + in: formData + description: Id of the dataset. + required: true + type: number + format: integer + - name: tag + in: formData + description: Tag name + required: true + type: string + - name: api_key + in: formData + description: Api key to authenticate the user + required: true + type: string + responses: + 200: + description: The id of the tagged dataset + examples: + application/json: |- + { + "data_tag": { + "id": "2" + } + } + schema: + type: object + properties: + data_tag: + $ref: '#/definitions/inline_response_200_2_data_tag' + 412: + description: | + Precondition failed. An error code and message are returned. + 470 - In order to add a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag). + 471 - Entity not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity. + 472 - Entity already tagged by this tag. The entity {dataset, flow, run} already had this tag. + 473 - Something went wrong inserting the tag. Please contact OpenML Team. + 474 - Internal error tagging the entity. Please contact OpenML Team. + schema: + $ref: '#/definitions/Error' + /data/untag: + post: + tags: + - data + summary: Untag a dataset + description: Untags a dataset. + consumes: + - application/x-www-form-urlencoded + parameters: + - name: data_id + in: formData + description: Id of the dataset. + required: true + type: number + - name: tag + in: formData + description: Tag name + required: true + type: string + - name: api_key + in: formData + description: Api key to authenticate the user + required: true + type: string + responses: + 200: + description: The ID of the untagged dataset + examples: + application/json: |- + { + "data_untag": { + "id": "2" + } + } + schema: + type: object + properties: + data_untag: + $ref: '#/definitions/inline_response_200_3_data_untag' + 412: + description: | + Precondition failed. An error code and message are returned. + 475 - Please give entity_id {data_id, flow_id, run_id} and tag. In order to remove a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag). + 476 - Entity {dataset, flow, run} not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity. + 477 - Tag not found. The provided tag is not associated with the entity {dataset, flow, run}. + 478 - Tag is not owned by you. The entity {dataset, flow, run} was tagged by another user. Hence you cannot delete it. + 479 - Internal error removing the tag. Please contact OpenML Team. + schema: + $ref: '#/definitions/Error' + /data/unprocessed/{data_engine_id}/{order}: + get: + tags: + - data + summary: Get a list of unprocessed datasets + description: | + This call is for people running their own dataset processing engines. It returns the details of datasets that are not yet processed by the given processing engine. It doesn't process the datasets, it just returns the dataset info. + parameters: + - name: data_engine_id + in: path + description: The ID of the data processing engine. You get this ID when you register a new data processing engine with OpenML. The ID of the main data processing engine is 1. + required: true + type: string + - name: order + in: path + description: When there are multiple datasets still to process, this defines which ones to return. Options are 'normal' - the oldest datasets, or 'random'. + required: true + type: string + - name: api_key + in: query + description: API key to authenticate the user + required: false + type: string + responses: + 200: + description: A list of unprocessed datasets + examples: + application/json: + data_unprocessed: + run: + - did: "1" + name: anneal + version: "2" + status: deactivated + format: ARFF + schema: + $ref: '#/definitions/DataUnprocessed' + 412: + description: | + Precondition failed. An error code and message are returned. + 681 - No unprocessed datasets. + schema: + $ref: '#/definitions/Error' + /data/qualities/unprocessed/{data_engine_id}/{order}: + post: + tags: + - data + summary: | + Get a list of datasets with unprocessed qualities + description: | + This call is for people running their own dataset processing engines. It returns the details of datasets for which certain qualities are not yet processed by the given processing engine. It doesn't process the datasets, it just returns the dataset info. + consumes: + - application/x-www-form-urlencoded + parameters: + - name: data_engine_id + in: path + description: The ID of the data processing engine. You get this ID when you register a new data processing engine with OpenML. The ID of the main data processing engine is 1. + required: true + type: string + - name: order + in: path + description: When there are multiple datasets still to process, this defines which ones to return. Options are 'normal' - the oldest datasets, or 'random'. + required: true + type: string + - name: api_key + in: query + description: API key to authenticate the user + required: false + type: string + - name: qualities + in: formData + description: Comma-separated list of (at least two) quality names, e.g. 'NumberOfInstances,NumberOfFeatures'. + required: true + type: string + responses: + 200: + description: A list of unprocessed datasets + examples: + application/json: + data_unprocessed: + run: + - did: "1" + name: anneal + version: "2" + status: deactivated + format: ARFF + schema: + $ref: '#/definitions/DataUnprocessed' + 412: + description: | + Precondition failed. An error code and message are returned. + 686 - Please specify the features the evaluation engine wants to calculate (at least 2). + 687 - No unprocessed datasets according to the given set of meta-features. + 688 - Illegal qualities. + schema: + $ref: '#/definitions/Error' + /task/{id}: + get: + tags: + - task + summary: Get task description + description: | + Returns information about a task. The information includes the task type, input data, train/test sets, and more. + parameters: + - name: id + in: path + description: ID of the task. + required: true + type: number + format: integer + - name: api_key + in: query + description: Api key to authenticate the user + required: false + type: string + responses: + 200: + description: A task description + examples: + application/json: |- + { + "task": { + "task_id":"1", + "task_type":"Supervised Classification", + "input":[ + { + "name":"source_data", + "data_set":{ + "data_set_id":"1", + "target_feature":"class" + } + }, + { + "name":"estimation_procedure", + "estimation_procedure":{ + "type":"crossvalidation", + "data_splits_url":"https://www.openml.org/api_splits/get/1/Task_1_splits.arff", + "parameter":[ + { + "name":"number_repeats", + "value":"1" + }, + { + "name":"number_folds", + "value":"10" + }, + { + "name":"percentage" + }, + { + "name":"stratified_sampling", + "value":"true" + } + ] + } + }, + { + "name":"cost_matrix", + "cost_matrix":[] + }, + { + "name":"evaluation_measures", + "evaluation_measures": + { + "evaluation_measure":"predictive_accuracy" + } + } + ], + "output":{ + "name":"predictions", + "predictions":{ + "format":"ARFF", + "feature":[ + { + "name":"repeat", + "type":"integer" + }, + { + "name":"fold", + "type":"integer" + }, + { + "name":"row_id", + "type":"integer" + }, + { + "name":"confidence.classname", + "type":"numeric" + }, + { + "name":"prediction", + "type":"string" + } + ] + } + }, + "tag":["basic","study_1","under100k","under1m"] + } + } + schema: + $ref: '#/definitions/Task' + 412: + description: | + Precondition failed. An error code and message are returned. + 150 - Please provide task_id. + 151 - Unknown task. The task with the given id was not found in the database + schema: + $ref: '#/definitions/Error' + delete: + tags: + - task + summary: Delete task + description: | + Deletes a task. Upon success, it returns the ID of the deleted task. + parameters: + - name: id + in: path + description: Id of the task. + required: true + type: number + format: integer + - name: api_key + in: query + description: Api key to authenticate the user + required: true + type: string + responses: + 200: + description: ID of the deleted task + examples: + application/json: |- + { + "task_delete": { + "id": "4328" + } + } + schema: + type: object + properties: + task_delete: + $ref: '#/definitions/inline_response_200_4_task_delete' + 412: + description: | + Precondition failed. An error code and message are returned. + 450 - Please provide API key. In order to remove your content, please authenticate. + 451 - Authentication failed. The API key was not valid. Please try to login again, or contact api administrators. + 452 - Task does not exists. The task ID could not be linked to an existing task. + 454 - Task is executed in some runs. Delete these first. + 455 - Deleting the task failed. Please contact support team. + schema: + $ref: '#/definitions/Error' + /task: + post: + tags: + - task + summary: Upload task + description: | + Uploads a task. Upon success, it returns the task id. + consumes: + - multipart/form-data + parameters: + - name: description + in: formData + description: An XML file describing the task. Only name, description, and task format are required. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.task.upload) and an [XML example](https://www.openml.org/api/v1/xml_example/task). + required: true + type: file + - name: api_key + in: query + description: Api key to authenticate the user + required: true + type: string + responses: + 200: + description: Id of the uploaded task + examples: + application/json: |- + { + "upload_task": { + "id": "4328" + } + } + schema: + type: object + properties: + upload_task: + $ref: '#/definitions/inline_response_200_5_upload_task' + 412: + description: | + Precondition failed. An error code and message are returned. + 530 - Description file not present. Please upload the task description. + 531 - Internal error. Please contact api support team + 532 - Problem validating uploaded description file. The XML description format does not meet the standards + 533 - Task already exists. + 534 - Error creating the task. + schema: + $ref: '#/definitions/Error' + /task/list/{filters}: + get: + tags: + - task + summary: List and filter tasks + description: | + List tasks, possibly filtered by a range of properties from the task itself or from the underlying dataset. Any number of properties can be combined by listing them one after the other in the form '/task/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all tasks that match the constraints. + parameters: + - name: filters + in: path + description: | + Any combination of these filters + /limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, tasks 11..15 will be returned. Both limit and offset need to be specified. + /status/{status} - returns only tasks with a given status, either 'active', 'deactivated', or 'in_preparation'. + /type/{type_id} - returns only tasks with a given task type id. See the list of task types of the ID's (e.g. 1 = Supervised Classification). + /tag/{tag} - returns only tasks tagged with the given tag. + /data_tag/{tag} - returns only tasks for which the underlying dataset is tagged with the given tag. + /{data_quality}/{range} - returns only tasks for which the underlying datasets have certain qualities. {data_quality} can be data_id, data_name, number_instances, number_features, number_classes, number_missing_values. {range} can be a specific value or a range in the form 'low..high'. Multiple qualities can be combined, as in 'number_instances/0..50/number_features/0..10'. + required: true + type: string + - name: api_key + in: query + description: API key to authenticate the user + required: false + type: string + responses: + 200: + description: A list of tasks with the given tag + examples: + application/json: |- + { + "task": { + "task": [ + { + "task_id":"1", + "task_type":"Supervised Classification", + "did":"1", + "name":"anneal", + "status":"active", + "format":"ARFF", + "input":[ + { + "name":"estimation_procedure", + "value":"1" + }, + { + "name":"evaluation_measures", + "value":"predictive_accuracy" + }, + { + "name":"source_data", + "value":"1" + }, + { + "name":"target_feature", + "value":"class" + } + ], + "quality":[ + { + "name":"MajorityClassSize", + "value":"684" + }, + { + "name":"MaxNominalAttDistinctValues", + "value":"10.0" + }, + { + "name":"MinorityClassSize", + "value":"0" + }, + { + "name":"NumBinaryAtts", + "value":"14.0" + }, + { + "name":"NumberOfClasses", + "value":"6" + }, + { + "name":"NumberOfFeatures", + "value":"39" + }, + { + "name":"NumberOfInstances", + "value":"898" + }, + { + "name":"NumberOfInstancesWithMissingValues", + "value":"0" + }, + { + "name":"NumberOfMissingValues", + "value":"0" + }, + { + "name":"NumberOfNumericFeatures", + "value":"6" + }, + { + "name":"NumberOfSymbolicFeatures", + "value":"32" + } + ], + "tag":[ + "basic", + "study_1", + "study_7", + "under100k", + "under1m" + ] + } + ] + } + } + schema: + $ref: '#/definitions/TaskList' + 412: + description: | + Precondition failed. An error code and message are returned. + 480 - Illegal filter specified. + 481 - Filter values/ranges not properly specified. + 482 - No results. There where no matches for the given constraints. + 483 - Can not specify an offset without a limit. + schema: + $ref: '#/definitions/Error' + /task/tag: + post: + tags: + - task + summary: Tag a task + description: Tags a task. + consumes: + - application/x-www-form-urlencoded + parameters: + - name: task_id + in: formData + description: Id of the task. + required: true + type: number + format: integer + - name: tag + in: formData + description: Tag name + required: true + type: string + - name: api_key + in: formData + description: Api key to authenticate the user + required: true + type: string + responses: + 200: + description: The id of the tagged task + examples: + application/json: |- + { + "task_tag": { + "id": "2" + } + } + schema: + type: object + properties: + task_tag: + $ref: '#/definitions/inline_response_200_6_task_tag' + 412: + description: | + Precondition failed. An error code and message are returned. + 470 - In order to add a tag, please upload the entity id (either data_id, task_id, flow_id, run_id) and tag (the name of the tag). + 471 - Entity not found. The provided entity_id {data_id, task_id, flow_id, run_id} does not correspond to an existing entity. + 472 - Entity already tagged by this tag. The entity {dataset, task, flow, run} already had this tag. + 473 - Something went wrong inserting the tag. Please contact OpenML Team. + 474 - Internal error tagging the entity. Please contact OpenML Team. + schema: + $ref: '#/definitions/Error' + /task/untag: + post: + tags: + - task + summary: Untag a task + description: Untags a task. + consumes: + - application/x-www-form-urlencoded + parameters: + - name: task_id + in: formData + description: Id of the task. + required: true + type: number + - name: tag + in: formData + description: Tag name + required: true + type: string + - name: api_key + in: formData + description: Api key to authenticate the user + required: true + type: string + responses: + 200: + description: A the features of the task + examples: + application/json: |- + { + "task_untag": { + "id": "2" + } + } + schema: + type: object + properties: + task_untag: + $ref: '#/definitions/inline_response_200_7_task_untag' + 412: + description: | + Precondition failed. An error code and message are returned. + 475 - Please give entity_id {data_id, flow_id, run_id} and tag. In order to remove a tag, please upload the entity id (either data_id, task_id, flow_id, run_id) and tag (the name of the tag). + 476 - Entity {dataset, task, flow, run} not found. The provided entity_id {data_id, task_id, flow_id, run_id} does not correspond to an existing entity. + 477 - Tag not found. The provided tag is not associated with the entity {dataset, task, flow, run}. + 478 - Tag is not owned by you. The entity {dataset, flow, run} was tagged by another user. Hence you cannot delete it. + 479 - Internal error removing the tag. Please contact OpenML Team. + schema: + $ref: '#/definitions/Error' + /tasktype/{id}: + get: + tags: + - tasktype + summary: Get task type description + description: | + Returns information about a task type. The information includes a description, the given inputs and the expected outputs. + parameters: + - name: id + in: path + description: ID of the task. + required: true + type: number + format: integer + - name: api_key + in: query + description: Api key to authenticate the user + required: false + type: string + responses: + 200: + description: A task type description + examples: + application/json: |- + { + "task_type": { + "id": "1", + "name": "Supervised Classification", + "description": "In supervised classification, you are given an input dataset in which instances are labeled with a certain class. The goal is to build a model that predicts the class for future unlabeled instances. The model is evaluated using a train-test procedure, e.g. cross-validation.

\n\nTo make results by different users comparable, you are given the exact train-test folds to be used, and you need to return at least the predictions generated by your model for each of the test instances. OpenML will use these predictions to calculate a range of evaluation measures on the server.

\n\nYou can also upload your own evaluation measures, provided that the code for doing so is available from the implementation used. For extremely large datasets, it may be infeasible to upload all predictions. In those cases, you need to compute and provide the evaluations yourself.

\n\nOptionally, you can upload the model trained on all the input data. There is no restriction on the file format, but please use a well-known format or PMML.", + "creator": [ + "Joaquin Vanschoren", + "Jan van Rijn", + "Luis Torgo", + "Bernd Bischl" + ], + "contributor": [ + "Bo Gao", + "Simon Fischer", + "Venkatesh Umaashankar", + "Michael Berthold", + "Bernd Wiswedel", + "Patrick Winter" + ], + "creation_date": "2013-01-24 00:00:00", + "input": [ + { + "name": "source_data", + "requirement": "required", + "data_type": "numeric" + }, + { + "name": "target_feature", + "requirement": "required", + "data_type": "string" + }, + { + "name": "estimation_procedure", + "requirement": "required", + "data_type": "numeric" + }, + { + "name": "cost_matrix", + "data_type": "json" + }, + { + "name": "custom_testset", + "data_type": "json" + }, + { + "name": "evaluation_measures", + "data_type": "string" + } + ] + } + } + schema: + $ref: '#/definitions/TaskType' + 412: + description: | + Precondition failed. An error code and message are returned. + 240 - Please provide task type ID. + 241 - Unknown task type. The task type with the given id was not found in the database + schema: + $ref: '#/definitions/Error' + /tasktype/list: + get: + tags: + - tasktype + summary: List all task types + description: | + Returns an array with all task types in the system. + parameters: + - name: api_key + in: query + description: API key to authenticate the user + required: false + type: string + responses: + 200: + description: A task description + examples: + application/json: |- + { + "task_types":{ + "task_type":[ + { + "id":"1", + "name":"Supervised Classification", + "description":"In supervised classification, you are given ...", + "creator":"Joaquin Vanschoren, Jan van Rijn, Luis Torgo, Bernd Bischl" + }, + { + "id":"2", + "name":"Supervised Regression", + "description":"Given a dataset with a numeric target ...", + "creator":"Joaquin Vanschoren, Jan van Rijn, Luis Torgo, Bernd Bischl" + },{} + ] + } + } + schema: + $ref: '#/definitions/TaskTypeList' + default: + description: Unexpected error + schema: + $ref: '#/definitions/Error' + /flow/{id}: + get: + tags: + - flow + summary: Get flow description + description: | + Returns information about a flow. The information includes the name, information about the creator, dependencies, parameters, run instructions and more. + parameters: + - name: id + in: path + description: ID of the flow. + required: true + type: number + format: integer + - name: api_key + in: query + description: API key to authenticate the user + required: false + type: string + responses: + 200: + description: A flow description + examples: + application/json: |- + { + "flow": { + "id":"100", + "uploader":"1", + "name":"weka.J48", + "version":"2", + "external_version":"Weka_3.7.5_9117", + "description":"...", + "upload_date":"2014-04-23 18:00:36", + "language":"Java", + "dependencies":"Weka_3.7.5", + "parameter": [ + { + "name":"A", + "data_type":"flag", + "default_value":[], + "description":"Laplace smoothing..." + }, + { + "name":"C", + "data_type":"option", + "default_value":"0.25", + "description":"Set confidence threshold..." + } + ] + } + } + schema: + $ref: '#/definitions/Flow' + 412: + description: | + Precondition failed. An error code and message are returned. + 180 - Please provide flow id. + 181 - Unknown flow. The flow with the given ID was not found in the database. + schema: + $ref: '#/definitions/Error' + delete: + tags: + - flow + summary: Delete a flow + description: | + Deletes a flow. Upon success, it returns the ID of the deleted flow. + parameters: + - name: id + in: path + description: Id of the flow. + required: true + type: number + format: integer + - name: api_key + in: query + description: API key to authenticate the user + required: true + type: string + responses: + 200: + description: ID of the deleted flow + examples: + application/json: |- + { + "flow_delete": { + "id": "4328" + } + } + schema: + type: object + properties: + flow_delete: + $ref: '#/definitions/inline_response_200_8_flow_delete' + 412: + description: | + Precondition failed. An error code and message are returned. + 320 - Please provide API key. In order to remove your content, please authenticate. + 321 - Authentication failed. The API key was not valid. Please try to login again, or contact api administrators. + 322 - Flow does not exists. The flow ID could not be linked to an existing flow. + 323 - Flow is not owned by you. The flow is owned by another user. Hence you cannot delete it. + 324 - Flow is in use by other content. Can not be deleted. The flow is used in runs, evaluations or as a component of another flow. Delete other content before deleting this flow. + 325 - Deleting flow failed. Deleting the flow failed. Please contact + support team. + schema: + $ref: '#/definitions/Error' + /flow: + post: + tags: + - flow + summary: Upload a flow + description: | + Uploads a flow. Upon success, it returns the flow id. + consumes: + - multipart/form-data + parameters: + - name: description + in: formData + description: An XML file describing the flow. Only name and description are required. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.implementation.upload) and an [XML example](https://www.openml.org/api/v1/xml_example/flow). + required: true + type: file + - name: flow + in: formData + description: The actual flow, being a source (or binary) file. + required: false + type: file + - name: api_key + in: query + description: Api key to authenticate the user + required: true + type: string + responses: + 200: + description: Id of the uploaded flow + examples: + application/json: |- + { + "upload_flow": { + "id": "2520" + } + } + schema: + type: object + properties: + upload_flow: + $ref: '#/definitions/inline_response_200_9_upload_flow' + 412: + description: | + Precondition failed. An error code and message are returned. + 160 - Error in file uploading. There was a problem with the file upload. + 161 - Please provide description xml. + 163 - Problem validating uploaded description file. The XML description format does not meet the standards. + 164 - Flow already stored in database. Please change name or version number + 165 - Failed to insert flow. There can be many causes for this error. If you included the implements field, it should be an existing entry in the algorithm or math_function table. Otherwise it could be an internal server error. Please contact API support team. + 166 - Failed to add flow to database. Internal server error, please contact API administrators + 167 - Illegal files uploaded. An non required file was uploaded. + 168 - The provided md5 hash equals not the server generated md5 hash of the file. + 169 - Please provide API key. In order to share content, please authenticate and provide API key. + 170 - Authentication failed. The API key was not valid. Please try to login again, or contact API administrators + 171 - Flow already exists. This flow is already in the database + 172 - XSD not found. Please contact API support team + schema: + $ref: '#/definitions/Error' + /flow/exists/{name}/{version}: + get: + tags: + - flow + summary: Check whether flow exists + description: | + Checks whether a flow with the given name and (external) version exists. + parameters: + - name: name + in: path + description: The name of the flow. + required: true + type: string + - name: version + in: path + description: The external version of the flow + required: true + type: string + - name: api_key + in: query + description: API key to authenticate the user + required: false + type: string + responses: + 200: + description: A list of flows + examples: + application/json: |- + { + "flow_exists": { + "exists": "true", + "id": "65" + } + } + schema: + type: object + properties: + flow_exists: + $ref: '#/definitions/inline_response_200_10_flow_exists' + 412: + description: | + Precondition failed. An error code and message are returned. + 330 - Mandatory fields not present. Please provide name and external_version. + schema: + $ref: '#/definitions/Error' + /flow/list/{filters}: + get: + tags: + - flow + summary: List and filter flows + description: | + List flows, possibly filtered by a range of properties. Any number of properties can be combined by listing them one after the other in the form '/task/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all flows that match the constraints. + parameters: + - name: filters + in: path + description: | + Any combination of these filters + /limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, tasks 11..15 will be returned. Both limit and offset need to be specified. + /tag/{tag} - returns only tasks tagged with the given tag. + /uploader/{id} - return only evaluations uploaded by a specific user, specified by user ID. + required: true + type: string + - name: api_key + in: query + description: API key to authenticate the user + required: false + type: string + responses: + 200: + description: A list of flows + examples: + application/json: |- + { + "flows": + { + "flow":[ + { + "id":"65", + "full_name":"weka.RandomForest(1)", + "name":"weka.RandomForest", + "version":"1", + "external_version":"Weka_3.7.10_9186", + "uploader":"1" + }, + { + "id":"66", + "full_name":"weka.IBk(1)", + "name":"weka.IBk", + "version":"1", + "external_version":"Weka_3.7.10_8034", + "uploader":"1" + }, + { + "id":"67", + "full_name":"weka.BayesNet_K2(1)", + "name":"weka.BayesNet_K2", + "version":"1", + "external_version":"Weka_3.7.10_8034", + "uploader":"1" + } + ] + } + } + schema: + $ref: '#/definitions/FlowList' + 412: + description: | + Precondition failed. An error code and message are returned. + 500 - No results. There where no matches for the given constraints. + 501 - Illegal filter specified. + 502 - Filter values/ranges not properly specified. + 503 - Can not specify an offset without a limit. + schema: + $ref: '#/definitions/Error' + /flow/owned: + get: + tags: + - flow + summary: List flows owned by you + description: | + Returns an array with all flows owned by you. + parameters: + - name: api_key + in: query + description: API key to authenticate the user + required: false + type: string + responses: + 200: + description: A list of flows + examples: + application/json: |- + { + "flow_owned": { + "id": [ + "111", + "112", + "113", + "114", + "115", + "116", + "117" + ] + } + } + schema: + type: object + properties: + flow_owned: + $ref: '#/definitions/inline_response_200_11_flow_owned' + 412: + description: | + Precondition failed. An error code and message are returned. + 310 - Please provide API key to authenticate. + 311 - Authentication failed. The API key was not valid. Please try to login again, or contact api administrators. + 312 - No flows owned by you. + schema: + $ref: '#/definitions/Error' + /flow/tag: + post: + tags: + - flow + summary: Tag a flow + description: Tags a flow. + consumes: + - application/x-www-form-urlencoded + parameters: + - name: flow_id + in: formData + description: Id of the flow. + required: true + type: number + format: integer + - name: tag + in: formData + description: Tag name + required: true + type: string + - name: api_key + in: formData + description: Api key to authenticate the user + required: true + type: string + responses: + 200: + description: The id of the tagged flow + examples: + application/json: |- + { + "flow_tag": { + "id": "2" + } + } + schema: + type: object + properties: + flow_tag: + $ref: '#/definitions/inline_response_200_12_flow_tag' + 412: + description: | + Precondition failed. An error code and message are returned. + 470 - In order to add a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag). + 471 - Entity not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity. + 472 - Entity already tagged by this tag. The entity {dataset, flow, run} already had this tag. + 473 - Something went wrong inserting the tag. Please contact OpenML Team. + 474 - Internal error tagging the entity. Please contact OpenML Team. + schema: + $ref: '#/definitions/Error' + /flow/untag: + post: + tags: + - flow + summary: Untag a flow + description: Untags a flow. + consumes: + - application/x-www-form-urlencoded + parameters: + - name: flow_id + in: formData + description: Id of the flow. + required: true + type: number + - name: tag + in: formData + description: Tag name + required: true + type: string + - name: api_key + in: formData + description: Api key to authenticate the user + required: true + type: string + responses: + 200: + description: The id of the untagged flow + examples: + application/json: |- + { + "flow_untag": { + "id": "2" + } + } + schema: + type: object + properties: + flow_untag: + $ref: '#/definitions/inline_response_200_13_flow_untag' + 412: + description: | + Precondition failed. An error code and message are returned. + 475 - Please give entity_id {data_id, flow_id, run_id} and tag. In order to remove a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag). + 476 - Entity {dataset, flow, run} not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity. + 477 - Tag not found. The provided tag is not associated with the entity {dataset, flow, run}. + 478 - Tag is not owned by you. The entity {dataset, flow, run} was tagged + by another user. Hence you cannot delete it. + 479 - Internal error removing the tag. Please contact OpenML Team. + schema: + $ref: '#/definitions/Error' + /setup/{id}: + get: + tags: + - setup + summary: Get a hyperparameter setup + description: | + Returns information about a setup. The information includes the list of hyperparameters, with name, value, and default value. + parameters: + - name: id + in: path + description: ID of the hyperparameter setup (configuration). These IDs are stated in run descriptions. + required: true + type: number + format: integer + - name: api_key + in: query + description: API key to authenticate the user + required: false + type: string + responses: + 200: + description: A setup description + examples: + application/json: |- + { + "setup_parameters":{ + "flow_id":"59", + "parameter":[ + { + "full_name":"weka.JRip(1)_F", + "parameter_name":"F", + "data_type":"option", + "default_value":"3", + "value":"3" + },{ + "full_name":"weka.JRip(1)_N", + "parameter_name":"N", + "data_type":"option", + "default_value":"2.0", + "value":"2.0" + },{ + "full_name":"weka.JRip(1)_O", + "parameter_name":"O", + "data_type":"option", + "default_value":"2", + "value":"2" + },{ + "full_name":"weka.JRip(1)_S", + "parameter_name":"S", + "data_type":"option", + "default_value":"1", + "value":"1" + }] + } + } + schema: + $ref: '#/definitions/Setup' + 412: + description: | + Precondition failed. An error code and message are returned. + 280 - Please provide setup ID. In order to view setup details, please provide the run ID + 281 - Setup not found. The setup ID was invalid, or setup does not exist (anymore). + schema: + $ref: '#/definitions/Error' + delete: + tags: + - setup + summary: Delete setup + description: | + Deletes a setup. Upon success, it returns the ID of the deleted setup. + parameters: + - name: id + in: path + description: Id of the setup. + required: true + type: number + format: integer + - name: api_key + in: query + description: Api key to authenticate the user + required: true + type: string + responses: + 200: + description: ID of the deleted setup + examples: + application/json: |- + { + "setup_delete": { + "id": "1" + } + } + schema: + type: object + properties: + study_delete: + $ref: '#/definitions/inline_response_200_14_study_delete' + 412: + description: | + Precondition failed. An error code and message are returned. + 401 - Authentication failed. Please provide API key. In order to remove your content, please authenticate. + 402 - Setup does not exists. The setup ID could not be linked to an existing setup. + 404 - Setup deletion failed. Setup is in use by other content (runs, schedules, etc). Can not be deleted. + 405 - Setup deletion failed. Please try again later. + schema: + $ref: '#/definitions/Error' + /setup/tag: + post: + tags: + - setup + summary: Tag a setup + description: Tags a setup. + consumes: + - application/x-www-form-urlencoded + parameters: + - name: setup_id + in: formData + description: Id of the setup. + required: true + type: number + format: integer + - name: tag + in: formData + description: Tag name + required: true + type: string + - name: api_key + in: formData + description: Api key to authenticate the user + required: true + type: string + responses: + 200: + description: The id of the tagged setup + examples: + application/json: |- + { + "setup_tag": { + "id": "2" + } + } + schema: + type: object + properties: + flow_tag: + $ref: '#/definitions/inline_response_200_15_flow_tag' + 412: + description: | + Precondition failed. An error code and message are returned. + 470 - In order to add a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag). + 471 - Entity not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity. + 472 - Entity already tagged by this tag. The entity {dataset, flow, run} already had this tag. + 473 - Something went wrong inserting the tag. Please contact OpenML Team. + 474 - Internal error tagging the entity. Please contact OpenML Team. + schema: + $ref: '#/definitions/Error' + /setup/untag: + post: + tags: + - setup + summary: Untag a setup + description: Untags a setup. + consumes: + - application/x-www-form-urlencoded + parameters: + - name: setup_id + in: formData + description: Id of the setup. + required: true + type: number + - name: tag + in: formData + description: Tag name + required: true + type: string + - name: api_key + in: formData + description: Api key to authenticate the user + required: true + type: string + responses: + 200: + description: The id of the untagged setup + examples: + application/json: |- + { + "setup_untag": { + "id": "2" + } + } + schema: + type: object + properties: + flow_untag: + $ref: '#/definitions/inline_response_200_16_flow_untag' + 412: + description: | + Precondition failed. An error code and message are returned. + 475 - Please give entity_id {data_id, flow_id, run_id} and tag. In order to remove a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag). + 476 - Entity {dataset, flow, run} not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity. + 477 - Tag not found. The provided tag is not associated with the entity {dataset, flow, run}. + 478 - Tag is not owned by you. The entity {dataset, flow, run} was tagged + by another user. Hence you cannot delete it. + 479 - Internal error removing the tag. Please contact OpenML Team. + schema: + $ref: '#/definitions/Error' + /setup/list/{filters}: + get: + tags: + - setup + summary: List and filter setups + description: | + List setups, filtered by a range of properties. Any number of properties can be combined by listing them one after the other in the form '/setup/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all evaluations that match the constraints. A maximum of 1,000 results are returned at a time, an error is returned if the result set is bigger. Use pagination (via limit and offset filters), or limit the results to certain flows, setups, or tags. + parameters: + - name: filters + in: path + description: | + Any combination of these filters + /tag/{tag} - returns only setups tagged with the given tag. + /flow/{ids} - return only setups for specific flows, specified as a comma-separated list of flow IDs, e.g. ''1,2,3'' + /setup/{ids} - return only specific setups, specified as a comma-separated list of setup IDs, e.g. ''1,2,3'' + /limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, results 11..15 will be returned. Both limit and offset need to be specified. + required: true + type: string + - name: api_key + in: query + description: API key to authenticate the user + required: false + type: string + responses: + 200: + description: A list of setup descriptions + examples: + application/json: |- + { + "setups": { + "setup": [ + { + "setup_id":"10", + "flow_id":"65", + "parameter": [ + { + "id":"4144", + "flow_id":"65", + "flow_name":"weka.RandomForest", + "full_name":"weka.RandomForest(1)_I", + "parameter_name":"I", + "data_type":"option", + "default_value":"10", + "value":"10" + }, + { + "id":"4145", + "flow_id":"65", + "flow_name":"weka.RandomForest", + "full_name":"weka.RandomForest(1)_K", + "parameter_name":"K", + "data_type":"option", + "default_value":"0", + "value":"0" + } + ] + } + ] + } + } + schema: + $ref: '#/definitions/SetupList' + 412: + description: | + Precondition failed. An error code and message are returned. + 670 - Please specify at least one filter. + 671 - Illegal filter. + 672 - Illegal filter input. + 673 - Result set too big. Please use one of the filters or the limit option. + 674 - No results, please check the filter. + 675 - Cannot specify offset without limit. + 676 - Requested result limit too high. + schema: + $ref: '#/definitions/Error' + /run/{id}: + get: + tags: + - run + summary: Get run description + description: | + Returns information about a run. The information includes the name, information about the creator, dependencies, parameters, run instructions and more. + parameters: + - name: id + in: path + description: ID of the run. + required: true + type: number + format: integer + - name: api_key + in: query + description: API key to authenticate the user + required: false + type: string + responses: + 200: + description: A run description + examples: + application/json: |- + { + "run": { + "run_id":"100", + "uploader":"1", + "uploader_name":"Jan van Rijn", + "task_id":"28", + "task_type":"Supervised Classification", + "task_evaluation_measure":"predictive_accuracy", + "flow_id":"67", + "flow_name":"weka.BayesNet_K2(1)", + "setup_string":"weka.classifiers.bayes.BayesNet -- -D -Q weka.classifiers.bayes.net.search.local.K2 -- -P 1 -S BAYES -E weka.classifiers.bayes.net.estimate.SimpleEstimator -- -A 0.5", + "parameter_setting": [ + { + "name":"D", + "value":"true" + }, + { + "name":"Q", + "value":"weka.classifiers.bayes.net.search.local.K2" + }, + { + "name":"P", + "value":"1" + }, + { + "name":"S", + "value":"BAYES" + } + ], + "input_data": + { + "dataset": + { + "did":"28", + "name":"optdigits", + "url":"https:\/\/www.openml.org\/data\/download\/28\/dataset_28_optdigits.arff" + } + }, + "output_data": + { + "file": [ + { + "did":"48838", + "file_id":"261", + "name":"description", + "url":"https:\/\/www.openml.org\/data\/download\/261\/weka_generated_run935374685998857626.xml" + }, + { + "did":"48839", + "file_id":"262", + "name":"predictions", + "url":"https:\/\/www.openml.org\/data\/download\/262\/weka_generated_predictions576954524972002741.arff" + } + ], + "evaluation": [ + { + "name":"area_under_roc_curve", + "flow_id":"4", + "value":"0.990288", + "array_data":"[0.99724,0.989212,0.992776,0.994279,0.980578,0.98649,0.99422,0.99727,0.994858,0.976143]" + }, + { + "name":"confusion_matrix", + "flow_id":"10", + "array_data":"[[544,1,0,0,7,0,1,0,0,1],[0,511,21,1,0,1,3,1,5,28],[0,7,511,1,0,1,0,3,23,11],[0,2,2,519,0,3,0,12,16,18],[0,3,0,0,528,0,4,21,6,6],[0,1,0,7,5,488,2,0,4,51],[1,7,0,0,2,0,548,0,0,0],[0,2,0,1,9,1,0,545,4,4],[1,25,2,2,3,6,2,1,503,9],[0,7,0,20,16,5,0,19,9,486]]" + }, + { + "name":"f_measure", + "flow_id":"12", + "value":"0.922723", + "array_data":"[0.989091,0.898857,0.935041,0.92431,0.927944,0.918156,0.980322,0.933219,0.895018,0.826531]" + }, + { + "name":"kappa", + "flow_id":"13", + "value":"0.913601" + } + ] + } + } + } + schema: + $ref: '#/definitions/Run' + 412: + description: | + Precondition failed. An error code and message are returned. + 220 - Please provide run ID. In order to view run details, please provide the run ID. + 221 - Run not found. The run ID was invalid, run does not exist (anymore). + schema: + $ref: '#/definitions/Error' + delete: + tags: + - run + summary: Delete run + description: | + Deletes a run. Upon success, it returns the ID of the deleted run. + parameters: + - name: id + in: path + description: Id of the run. + required: true + type: number + format: integer + - name: api_key + in: query + description: API key to authenticate the user + required: true + type: string + responses: + 200: + description: ID of the deleted run + examples: + application/json: |- + { + "run_delete": { + "id": "2520" + } + } + schema: + type: object + properties: + data_delete: + $ref: '#/definitions/inline_response_200_17_data_delete' + 412: + description: | + Precondition failed. An error code and message are returned. + 390 - Please provide API key. In order to remove your content, please authenticate. + 391 - Authentication failed. The API key was not valid. Please try to login again, or contact api administrators + 392 - Run does not exists. The run ID could not be linked to an existing run. + 393 - Run is not owned by you. The run was owned by another user. Hence you cannot delete it. + 394 - Deleting run failed. Deleting the run failed. Please contact support team. + schema: + $ref: '#/definitions/Error' + /run: + post: + tags: + - run + summary: Upload run + description: | + Uploads a run. Upon success, it returns the run id. + consumes: + - multipart/form-data + parameters: + - name: description + in: formData + description: An XML file describing the dataset. Only name, description, and data format are required. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.run.upload) and an [XML example](https://www.openml.org/api/v1/xml_example/run). + required: true + type: file + - name: predictions + in: formData + description: The predictions generated by the run + required: true + type: file + - name: model_readable + in: formData + description: The human-readable model generated by the run + required: false + type: file + - name: model_serialized + in: formData + description: The serialized model generated by the run + required: false + type: file + - name: api_key + in: query + description: Api key to authenticate the user + required: true + type: string + responses: + 200: + description: Id of the uploaded run + examples: + application/json: |- + { + "upload_run": { + "id": "2520" + } + } + schema: + type: object + properties: + upload_flow: + $ref: '#/definitions/inline_response_200_18_upload_flow' + 412: + description: | + Precondition failed. An error code and message are returned. + 201 - Authentication failed. The API key was not valid. Please try to login again, or contact api administrators. + 202 - Please provide run XML. + 203 - Could not validate run xml by XSD. Please double check that the xml is valid. + 204 - Unknown task. The task with the given ID was not found in the database. + 205 - Unknown flow. The flow with the given ID was not found in the database. + 206 - Invalid number of files. The number of uploaded files did not match the number of files expected for the task type + 207 - File upload failed. One of the files uploaded has a problem. + 208 - Error inserting setup record. Please contact api administrators + 210 - Unable to store run. Please contact api administrators. + 211 - Dataset not in database. One of the datasets of the task was not included in database, please contact api administrators. + 212 - Unable to store file. Please contact api administrators. + 213 - Parameter in run xml unknown. One of the parameters provided in the run xml is not registered as parameter for the flow nor its components. + 214 - Unable to store input setting. Please contact API support team. + 215 - Unable to evaluate predictions. Please contact API support team. + 216 - Error thrown by Java Application. Additional information field is provided. + 217 - Error processing output data. Unknown or inconsistent evaluation measure. One of the provided evaluation measures could not be matched with a record in the math_function or flow table. + 218 - Wrong flow associated with run. The flow implements a math_function, which is unable to generate predictions. Please select another flow. + 219 - Error reading the XML document. The XML description file could not be verified. + schema: + $ref: '#/definitions/Error' + /run/list/{filters}: + get: + tags: + - run + summary: List and filter runs + description: "List runs, filtered by a range of properties. Any number of properties can be combined by listing them one after the other in the form '/run/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all runs that match the constraints. A maximum of 10,000 results are returned, an error is returned if the result set is bigger. Use pagination (via limit and offset filters), or limit the results to certain tasks, flows, setups, or uploaders. \n" + parameters: + - name: filters + in: path + description: | + Any combination of these filters + /tag/{tag} - return only runs tagged with the given tag. + /run/{ids} - return only specific runs, specified as a comma-separated list of run IDs, e.g. ''1,2,3'' + /task/{ids} - return only runs on specific tasks, specified as a comma-separated list of task IDs, e.g. ''1,2,3'' + /flow/{ids} - return only runs on specific flows, specified as a comma-separated list of flow IDs, e.g. ''1,2,3'' + /setup/{ids} - return only runs with specific setups, specified as a comma-separated list of setup IDs, e.g. ''1,2,3'' + /uploader/{ids} - return only runs uploaded by specific users, specified as a comma-separated list of user IDs, e.g. ''1,2,3'' + /limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, results 11..15 will be returned. Both limit and offset need to be specified. + required: true + type: string + - name: api_key + in: query + description: API key to authenticate the user + required: false + type: string + responses: + 200: + description: A list of runs descriptions + examples: + application/json: + runs: + run: + - run_id: "100" + task_id: "28" + setup_id: "12" + flow_id: "67" + uploader: "1" + upload_time: 2014-04-06 23:30:40 + error_message: [] + - run_id: "101" + task_id: "48" + setup_id: "6" + flow_id: "61" + uploader: "1" + upload_time: 2014-04-06 23:30:40 + error_message: [] + - run_id: "102" + task_id: "41" + setup_id: "3" + flow_id: "58" + uploader: "1" + upload_time: 2014-04-06 23:30:40 + error_message: [] + schema: + $ref: '#/definitions/RunList' + 412: + description: | + Precondition failed. An error code and message are returned. + 510 - Please provide at least task, flow or setup, uploader or run, to filter results, or limit the number of responses. The number of runs is huge. Please limit the result space. + 511 - Input not safe. The input parameters (task_id, setup_id, flow_id, run_id, uploader_id) did not meet the constraints (comma separated list of integers). + 512 - There where no results. Check whether there are runs under the given constraint. + 513 - Too many results. Given the constraints, there were still too many results. Please add filters to narrow down the list. + 514 - Illegal filter specified. + 515 - Offset specified without limit. + 516 - Requested result limit too high. + schema: + $ref: '#/definitions/Error' + /run/tag: + post: + tags: + - run + summary: Tag a run + description: Tags a run. + consumes: + - application/x-www-form-urlencoded + parameters: + - name: run_id + in: formData + description: Id of the run. + required: true + type: number + format: integer + - name: tag + in: formData + description: Tag name + required: true + type: string + - name: api_key + in: formData + description: Api key to authenticate the user + required: true + type: string + responses: + 200: + description: The id of the tagged run + examples: + application/json: |- + { + "run_tag": { + "id": "2" + } + } + schema: + type: object + properties: + run_tag: + $ref: '#/definitions/inline_response_200_19_run_tag' + 412: + description: | + Precondition failed. An error code and message are returned. + 470 - In order to add a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag). + 471 - Entity not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity. + 472 - Entity already tagged by this tag. The entity {dataset, flow, run} already had this tag. + 473 - Something went wrong inserting the tag. Please contact OpenML Team. + 474 - Internal error tagging the entity. Please contact OpenML Team. + schema: + $ref: '#/definitions/Error' + /run/untag: + post: + tags: + - run + summary: Untag a run + description: Untags a run. + consumes: + - application/x-www-form-urlencoded + parameters: + - name: run_id + in: formData + description: Id of the run. + required: true + type: number + - name: tag + in: formData + description: Tag name + required: true + type: string + - name: api_key + in: formData + description: Api key to authenticate the user + required: true + type: string + responses: + 200: + description: The id of the untagged run + examples: + application/json: |- + { + "run_untag": { + "id": "2" + } + } + schema: + type: object + properties: + run_untag: + $ref: '#/definitions/inline_response_200_20_run_untag' + 412: + description: | + Precondition failed. An error code and message are returned. + 475 - Please give entity_id {data_id, flow_id, run_id} and tag. In order to remove a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag). + 476 - Entity {dataset, flow, run} not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity. + 477 - Tag not found. The provided tag is not associated with the entity {dataset, flow, run}. + 478 - Tag is not owned by you. The entity {dataset, flow, run} was tagged by another user. Hence you cannot delete it. + 479 - Internal error removing the tag. Please contact OpenML Team. + schema: + $ref: '#/definitions/Error' + /run/evaluate: + post: + tags: + - run + summary: Uploads a run evaluation + description: | + Uploads a run evaluation. When successful, it returns the run id. + consumes: + - multipart/form-data + parameters: + - name: description + in: formData + description: An XML file describing the run evaluation.Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.run.evaluate) and an [XML example](https://www.openml.org/api/v1/xml_example/run.evaluate). + required: true + type: file + - name: api_key + in: query + description: Api key to authenticate the user + required: true + type: string + responses: + 200: + description: Id of the evaluated run + examples: + application/json: |- + { + "run_evaluate": { + "id": "2520" + } + } + schema: + type: object + properties: + upload_flow: + $ref: '#/definitions/inline_response_200_21_upload_flow' + 412: + description: | + Precondition failed. An error code and message are returned. + 422 - Upload problem description XML + 423 - Problem validating uploaded description file + 424 - Problem opening description xml + schema: + $ref: '#/definitions/Error' + /run/reset/{id}: + get: + tags: + - run + summary: Resets a run. + description: | + Removes all run evaluations. When a run is reset, the runs will automatically be evaluated as soon as they are picked up by the evaluation engine again. + parameters: + - name: id + in: path + description: Run ID. + required: true + type: string + - name: api_key + in: query + description: API key to authenticate the user + required: false + type: string + responses: + 200: + description: Id of the evaluated run + examples: + application/json: |- + { + "run_reset": { + "id": "2520" + } + } + schema: + type: object + properties: + run_reset: + $ref: '#/definitions/inline_response_200_21_upload_flow' + 412: + description: | + Precondition failed. An error code and message are returned. + 412 - Run does not exist + 413 - Run is not owned by you + 394 - Resetting run failed + schema: + $ref: '#/definitions/Error' + /run/trace/{id}: + get: + tags: + - run + summary: Get run trace + description: | + Returns the optimization trace of run. The trace contains every setup tried, its evaluation, and whether it was selected. + parameters: + - name: id + in: path + description: ID of the run. + required: true + type: number + format: integer + - name: api_key + in: query + description: API key to authenticate the user + required: false + type: string + responses: + 200: + description: A run trace description + examples: + application/json: |- + { + "trace": { + "run_id":"573055", + "trace_iteration": { + "repeat":"0", + "fold":"0", + "repeat":"0", + "iteration":"0", + "setup_string":{"parameter_minNumObj": "1", + "parameter_confidenceFactor": "0.1"}, + "evaluation":"94.814815", + "selected": "true" + }, + "trace_iteration": { + "repeat":"0", + "fold":"0", + "repeat":"0", + "iteration":"1", + "setup_string":{"parameter_minNumObj": "1", + "parameter_confidenceFactor": "0.25"}, + "evaluation": "94.074074", + "selected": "true" + } + } + } + schema: + $ref: '#/definitions/RunTrace' + 412: + description: | + Precondition failed. An error code and message are returned. + 570 - No successful trace associated with this run + schema: + $ref: '#/definitions/Error' + post: + tags: + - run + summary: Upload run trace + description: | + Uploads a run trace. Upon success, it returns the run id. + consumes: + - multipart/form-data + parameters: + - name: id + in: path + description: ID of the run. + required: true + type: number + format: integer + - name: description + in: formData + description: An XML file describing the trace. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.run.trace) and an [XML example](https://www.openml.org/api/v1/xml_example/run.trace). + required: true + type: file + - name: api_key + in: query + description: Api key to authenticate the user + required: true + type: string + responses: + 200: + description: Id of the run with the trace + examples: + application/json: |- + { + "run_trace": { + "id": "2520" + } + } + schema: + type: object + properties: + upload_flow: + $ref: '#/definitions/inline_response_200_23_upload_flow' + 412: + description: | + Precondition failed. An error code and message are returned. + 561 - Problem with uploaded trace file. + 562 - Problem validating xml trace file. + 563 - Problem loading xml trace file. + schema: + $ref: '#/definitions/Error' + /evaluation/list/{filters}: + get: + tags: + - evaluation + summary: List and filter evaluations + description: "List evaluations, filtered by a range of properties. Any number of properties can be combined by listing them one after the other in the form '/evaluation/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all evaluations that match the constraints. A maximum of 10,000 results are returned, an error is returned if the result set is bigger. Use pagination (via limit and offset filters), or limit the results to certain tasks, flows, setups, uploaders or runs. \n" + parameters: + - name: filters + in: path + description: | + Any combination of these filters + /function/{name} - name of the evaluation measure, e.g. area_under_auc or predictive_accuracy. See the OpenML website for the complete list of measures. + /tag/{tag} - returns only evaluations of runs tagged with the given tag. + /run/{ids} - return only evaluations for specific runs, specified as a comma-separated list of run IDs, e.g. ''1,2,3'' + /task/{ids} - return only evaluations for specific tasks, specified as a comma-separated list of task IDs, e.g. ''1,2,3'' + /flow/{ids} - return only evaluations for specific flows, specified as a comma-separated list of flow IDs, e.g. ''1,2,3'' + /setup/{ids} - return only evaluations for specific setups, specified as a comma-separated list of setup IDs, e.g. ''1,2,3'' + /uploader/{ids} - return only evaluations uploaded by specific users, specified as a comma-separated list of user IDs, e.g. ''1,2,3'' + /limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, results 11..15 will be returned. Both limit and offset need to be specified. + /per_fold/{true,false} - whether or not to return crossvalidation scores per fold. Defaults to 'false'. Setting it to 'true' leads to large numbers of results, use only for very specific sets of runs. + /sort_order/{asc,desc} - sorts the results by the evaluation value, according to the selected evaluation measure (function) + required: true + type: string + - name: api_key + in: query + description: API key to authenticate the user + required: false + type: string + responses: + 200: + description: A list of evaluations descriptions + examples: + application/json: + evaluations: + evaluation: + - run_id: "1" + task_id: "68" + uploader: "1" + flow_id: "61" + function: area_under_roc_curve + upload_time: 2014-04-06 23:30:40 + value: "0.839359" + array_data: '[0,0.99113,0.898048,0.874862,0.791282,0.807343,0.820674]' + - run_id: "1" + task_id: "68" + uploader: "1" + flow_id: "61" + function: f_measure + upload_time: 2014-04-06 23:30:40 + value: "0.600026" + array_data: '[0,0,0.711934,0.735714,0.601363,0.435678,0.430913]' + - run_id: "1" + task_id: "68" + uploader: "1" + flow_id: "61" + function: predictive_accuracy + upload_time: 2014-04-06 23:30:40 + value: "0.614634" + array_data: [] + schema: + $ref: '#/definitions/EvaluationList' + 412: + description: | + Precondition failed. An error code and message are returned. + 540 - Please provide at least task, flow or setup, uploader or run, to + filter results, or limit the number of responses. + 541 - The input parameters (task_id, setup_id, flow_id, run_id, uploader_id) did not meet the constraints (comma separated list of integers). + 542 - There where no results. Check whether there are runs under the given constraint. + 543 - Too many results. Given the constraints, there were still too many results. Please add filters to narrow down the list. + 544 - Illegal filter specified. + 545 - Offset specified without limit. + 546 - Requested result limit too high. + 547 - Per fold can only be set to value "true" or "false". + 548 - Per fold queries are experimental and require a fair amount of filters on resulting run records to keep the query fast (use, e.g., flow, setup, task and uploader filter) + schema: + $ref: '#/definitions/Error' + /evaluation/request/{evaluation_engine_id}/{order}: + get: + tags: + - evaluation + summary: Get an unevaluated run + description: | + This call is for people running their own evaluation engines. It returns the details of a run that is not yet evaluated by the given evaluation engine. It doesn't evaluate the run, it just returns the run info. + parameters: + - name: evaluation_engine_id + in: path + description: The ID of the evaluation engine. You get this ID when you register a new evaluation engine with OpenML. The ID of the main evaluation engine is 1. + required: true + type: string + - name: order + in: path + description: When there are multiple runs still to evaluate, this defines which one to return. Options are 'normal' - the oldest run, 'reverse' - the newest run, or 'random' - a random run. + required: true + type: string + - name: api_key + in: query + description: API key to authenticate the user + required: false + type: string + responses: + 200: + description: A list of evaluations descriptions + examples: + application/json: + evaluation_request: + run: + - run_id: "8943712" + task_id: "3021" + setup_id: "68799271" + uploader: "1935" + upload_time: 2018-04-03 21:05:38 + schema: + $ref: '#/definitions/EvaluationRequest' + 412: + description: | + Precondition failed. An error code and message are returned. + 100 - Function not valid. + 545 - No unevaluated runs according to the criteria. + 546 - Illegal filter. + schema: + $ref: '#/definitions/Error' + /study/{id}: + get: + tags: + - study + summary: Get study description by study id or alias + description: "Returns information about the study with the given id or alias. \n" + parameters: + - name: id + in: path + description: ID or alias of the study. + required: true + type: string + - name: api_key + in: query + description: Api key to authenticate the user + required: false + type: string + responses: + 200: + description: A study description + examples: + application/json: |- + { + "study": { + "id": "99", + "main_entity_type": "task", + "name": "CC18 benchmark suite", + "description": "CC18 benchmark suite", + "creation_date": "2019-02-16T17:35:58", + "creator": "1159", + "data": {"data_id": ["1","2","3"]}, + "tasks": {"task_id": ["1","2","3"]} + } + } + schema: + $ref: '#/definitions/Study' + 412: + description: | + Precondition failed. An error code and message are returned. + 601 - Unknown study. The study with the given id or alias was not found in the database + schema: + $ref: '#/definitions/Error' + delete: + tags: + - study + summary: Delete study + description: | + Deletes a study. Upon success, it returns the ID of the deleted study. + parameters: + - name: id + in: path + description: Id of the study. + required: true + type: number + format: integer + - name: api_key + in: query + description: Api key to authenticate the user + required: true + type: string + responses: + 200: + description: ID of the deleted study + examples: + application/json: |- + { + "study_delete": { + "id": "1" + } + } + schema: + type: object + properties: + study_delete: + $ref: '#/definitions/inline_response_200_24_study_delete' + 412: + description: | + Precondition failed. An error code and message are returned. + 591 - Please provide API key. In order to remove your content, please authenticate. + 592 - Study does not exists. The study ID could not be linked to an existing study. + 593 - Study deletion failed. Please try again later. + schema: + $ref: '#/definitions/Error' + /study: + post: + tags: + - study + summary: Create new study + description: | + Creates a new study. Upon success, it returns the study id. + consumes: + - multipart/form-data + parameters: + - name: description + in: formData + description: An XML file describing the study. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.study.upload) and an [XML example](https://www.openml.org/api/v1/xml_example/study). + required: true + type: file + - name: api_key + in: query + description: Api key to authenticate the user + required: true + type: string + responses: + 200: + description: Id of the uploaded study + examples: + application/json: |- + { + "upload_study": { + "id": "4328" + } + } + schema: + type: object + properties: + upload_study: + $ref: '#/definitions/inline_response_200_25_upload_study' + 412: + description: | + Precondition failed. An error code and message are returned. + 1031 - Description file not present. Please upload the study description. + 1032 - Problem validating uploaded description file. The XML description format does not meet the standards. See the XSD schema. + 1033 - Illegal main entity type. Currently only collections of tasks and can be created. + 1034 - Linked entities are not of the correct type fot this study. + 1035 - Benchmark suites can only be linked to run studies. + 1036 - Referred benchmark suite cannot be found. + 1037 - Referred benchmark suite should be a task collection. + 1038 - Study alias is not unique. + 1039 - Dataset insertion problem. Please contact the administrators. + schema: + $ref: '#/definitions/Error' + /study/list/{filters}: + get: + tags: + - study + summary: List all studies (collections of items) + description: | + List studies, optionally filtered by a range of properties. Any number of properties can be combined by listing them one after the other in the form '/study/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all studies that match the constraints. + parameters: + - name: filters + in: path + description: | + Any combination of these filters + /main_entity_type/{type} - only return studies collecting entities of a given type (e.g. 'task' or 'run'). + /uploader/{ids} - return only evaluations uploaded by specific users, specified as a comma-separated list of user IDs, e.g. ''1,2,3'' + /limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, results 11..15 will be returned. Both limit and offset need to be specified. + required: true + type: string + - name: api_key + in: query + description: API key to authenticate the user + required: false + type: string + responses: + 200: + description: A list of studies + examples: + application/json: |- + { + "study_list":{ + "study":[ + { + "id":"1", + "alias":"Study_1", + "name":"A large-scale comparison of classification algorithms", + "creation_date":"2017-07-20 15:51:20", + "creator":"2" + }, + { + "id":"2", + "alias":"Study_2", + "name":"Fast Algorithm Selection using Learning Curves", + "creation_date":"2017-07-20 15:51:20", + "creator":"2" + } + ] + } + } + schema: + $ref: '#/definitions/StudyList' + 412: + description: | + Precondition failed. An error code and message are returned. + schema: + $ref: '#/definitions/Error' + /study/{id}/attach: + post: + tags: + - study + summary: Attach a new entity to a study + description: | + Attach a new entity to an exising study. Upon success, it returns the study id, type, and linked entities. + consumes: + - multipart/form-data + parameters: + - name: id + in: path + description: Id of the study. Supplied in the URL path. + required: true + type: number + format: integer + - name: ids + in: formData + description: Comma-separated list of entity IDs to be attached to the study. For instance, if this is a run study, the list of run IDs that need to be added (attached) to the study. Must be supplied as a POST variable. + required: true + type: string + - name: api_key + in: query + description: Api key to authenticate the user + required: true + type: string + responses: + 200: + description: Properties of the updated study + examples: + application/json: |- + { + "study_attach": { + "id": "1", + "main_entity_type": "task", + "linked_entities": "5" + } + } + schema: + type: object + properties: + study_attach: + $ref: '#/definitions/inline_response_200_26_study_attach' + 412: + description: | + Precondition failed. An error code and message are returned. + 1041 - Could not find study. Check the study ID in your request. + 1042 - Cannnot attach entities to legacy studies. + 1043 - Please provide POST field 'ids'. + 1044 - Please ensure that the 'ids' in the POST field is a list of natural numbers. + 1045 - Could not attach entities to the study. It appears as if the entity does not exist. + schema: + $ref: '#/definitions/Error' + /study/{id}/detach: + post: + tags: + - study + summary: Detach an entity from a study + description: | + Detach an entity from an exising study. Upon success, it returns the study id, type, and linked entities. + consumes: + - multipart/form-data + parameters: + - name: id + in: path + description: Id of the study. + required: true + type: number + format: integer + - name: ids + in: formData + description: Comma-separated list of entity IDs to be detached from the study. For instance, if this is a run study, the list of run IDs that need to be removed (detached) from the study. Must be supplied as a POST variable. + required: true + type: string + - name: api_key + in: query + description: Api key to authenticate the user + required: true + type: string + responses: + 200: + description: Properties of the updated study + examples: + application/json: |- + { + "study_detach": { + "id": "1", + "main_entity_type": "task", + "linked_entities": "5" + } + } + schema: + type: object + properties: + upload_study: + $ref: '#/definitions/inline_response_200_26_study_attach' + 412: + description: "Precondition failed. An error code and message are returned.\n1041 - Could not find study. Check the study ID in your request.\n1042 - Cannot attach entities to legacy studies.\n1043 - Please provide POST field 'ids'.\n1044 - Please ensure that the 'ids' in the POST field is a list of natural numbers.\n1046 - Could not detach entities from the study. It appears as if the entity does not exist. \n" + schema: + $ref: '#/definitions/Error' + /estimationprocedure/list: + get: + tags: + - estimationprocedure + summary: List all estimation procedures + description: | + Returns an array with all model performance estimation procedures in the system. + parameters: + - name: api_key + in: query + description: API key to authenticate the user + required: false + type: string + responses: + 200: + description: A list of estimation procedures + examples: + application/json: |- + { + "estimationprocedures": { + "estimationprocedure": [ + { + "id":"1", + "ttid":"1", + "name":"10-fold Crossvalidation", + "type":"crossvalidation", + "repeats":"1", + "folds":"10", + "stratified_sampling":"true" + }, + { + "id":"2", + "ttid":"1", + "name":"5 times 2-fold Crossvalidation", + "type":"crossvalidation", + "repeats":"5", + "folds":"2", + "stratified_sampling":"true" + } + ] + } + } + schema: + $ref: '#/definitions/EstimationProcedureList' + 412: + description: | + Precondition failed. An error code and message are returned. + 500 - No model performance estimation procedures available. + schema: + $ref: '#/definitions/Error' + /user/list: + get: + tags: + - user + summary: List all users by user id + description: | + Returns an array with all user ids and names. + parameters: + - name: api_key + in: query + description: API key to authenticate the user + required: false + type: string + responses: + 200: + description: A list of users + examples: + application/json: |- + { + "users":{ + "user":[ + { + "id":"1", + "username":"janvanrijn@gmail.com"}, + { + "id":"2", + "username":"joaquin.vanschoren@gmail.com"} + ] + } + } + schema: + $ref: '#/definitions/UserList' + /evaluationmeasure/list: + get: + tags: + - evaluationmeasure + summary: List all evaluation measures + description: | + Returns an array with all model evaluation measures in the system. + parameters: + - name: api_key + in: query + description: API key to authenticate the user + required: false + type: string + responses: + 200: + description: A list of evaluation measures + examples: + application/json: |- + { + "evaluation_measures":{ + "measures":{ + "measure":[ + "area_under_roc_curve", + "average_cost", + "binominal_test", + "build_cpu_time" + ] + } + } + } + schema: + $ref: '#/definitions/EvaluationMeasureList' +definitions: + Flow: + type: object + properties: + flow_description: + $ref: '#/definitions/Flow_flow_description' + FlowList: + type: object + properties: + flows: + $ref: '#/definitions/FlowList_flows' + UserList: + type: object + properties: + users: + $ref: '#/definitions/UserList_users' + Task: + type: object + properties: + task_description: + $ref: '#/definitions/Task_task_description' + TaskList: + type: object + properties: + task: + $ref: '#/definitions/TaskList_task' + EvaluationMeasureList: + type: object + properties: + evaluation_measures: + $ref: '#/definitions/EvaluationMeasureList_evaluation_measures' + EstimationProcedureList: + type: object + properties: + estimationprocedures: + $ref: '#/definitions/EstimationProcedureList_estimationprocedures' + DataList: + type: object + properties: + data: + $ref: '#/definitions/DataList_data' + DataQualities: + type: object + properties: + data_qualities: + $ref: '#/definitions/DataQualities_data_qualities' + DataQualityList: + type: object + properties: + data_qualities_list: + $ref: '#/definitions/DataQualityList_data_qualities_list' + DataFeatures: + type: object + properties: + data_features: + $ref: '#/definitions/DataFeatures_data_features' + Data: + type: object + properties: + data_set_description: + $ref: '#/definitions/Data_data_set_description' + RunList: + type: object + properties: + runs: + $ref: '#/definitions/RunList_runs' + SetupList: + type: object + properties: + setups: + $ref: '#/definitions/SetupList_setups' + EvaluationList: + type: object + properties: + evaluations: + $ref: '#/definitions/EvaluationList_evaluations' + EvaluationRequest: + type: object + properties: + evaluation_request: + $ref: '#/definitions/EvaluationRequest_evaluation_request' + DataUnprocessed: + type: object + properties: + data_unprocessed: + $ref: '#/definitions/DataUnprocessed_data_unprocessed' + Setup: + type: object + properties: + setup_parameters: + $ref: '#/definitions/Setup_setup_parameters' + Run: + type: object + properties: + run_description: + $ref: '#/definitions/Run_run_description' + TaskType: + type: object + properties: + id: + type: string + description: ID of the task type, a positive integer + name: + type: string + description: The name of the task type, e.g. Supervised Classification + description: + type: string + description: A description of the task type + contributor: + type: array + items: + type: string + description: A list of people who defined the task type + date: + type: string + description: The date when the task type was created + input: + type: array + items: + $ref: '#/definitions/TaskType_input' + output: + type: array + items: + $ref: '#/definitions/TaskType_output' + TaskTypeList: + type: object + properties: + task_types: + $ref: '#/definitions/TaskTypeList_task_types' + Study: + type: object + properties: + study: + $ref: '#/definitions/Study_study' + StudyList: + type: object + properties: + study_list: + $ref: '#/definitions/StudyList_study_list' + RunTrace: + type: object + properties: + trace: + $ref: '#/definitions/RunTrace_trace' + Error: + type: object + properties: + code: + type: integer + format: int32 + message: + type: string + additional_message: + type: string + inline_response_200_data_delete: + properties: + id: + type: string + description: ID of the deleted dataset, a positive integer + inline_response_200: + properties: + data_delete: + $ref: '#/definitions/inline_response_200_data_delete' + inline_response_200_1_upload_data_set: + properties: + id: + type: string + description: ID of the uploaded dataset, a positive integer + inline_response_200_1: + properties: + upload_data_set: + $ref: '#/definitions/inline_response_200_1_upload_data_set' + inline_response_200_2_data_tag: + properties: + id: + type: string + description: ID of the tagged dataset + inline_response_200_2: + properties: + data_tag: + $ref: '#/definitions/inline_response_200_2_data_tag' + inline_response_200_3_data_untag: + properties: + id: + type: string + description: ID of the untagged dataset + inline_response_200_3: + properties: + data_untag: + $ref: '#/definitions/inline_response_200_3_data_untag' + inline_response_200_4_task_delete: + properties: + id: + type: string + description: ID of the deleted task, a positive integer + inline_response_200_4: + properties: + task_delete: + $ref: '#/definitions/inline_response_200_4_task_delete' + inline_response_200_5_upload_task: + properties: + id: + type: string + description: ID of the uploaded task, a positive integer + inline_response_200_5: + properties: + upload_task: + $ref: '#/definitions/inline_response_200_5_upload_task' + inline_response_200_6_task_tag: + properties: + id: + type: string + description: ID of the tagged task + inline_response_200_6: + properties: + task_tag: + $ref: '#/definitions/inline_response_200_6_task_tag' + inline_response_200_7_task_untag: + properties: + id: + type: string + description: ID of the untagged task + inline_response_200_7: + properties: + task_untag: + $ref: '#/definitions/inline_response_200_7_task_untag' + inline_response_200_8_flow_delete: + properties: + id: + type: string + description: ID of the deleted flow, a positive integer + inline_response_200_8: + properties: + flow_delete: + $ref: '#/definitions/inline_response_200_8_flow_delete' + inline_response_200_9_upload_flow: + properties: + id: + type: string + description: ID of the uploaded flow, a positive integer + inline_response_200_9: + properties: + upload_flow: + $ref: '#/definitions/inline_response_200_9_upload_flow' + inline_response_200_10_flow_exists: + properties: + exists: + type: string + description: true or false + id: + type: string + description: The id of the flow with the given name and (external) version + inline_response_200_10: + properties: + flow_exists: + $ref: '#/definitions/inline_response_200_10_flow_exists' + inline_response_200_11_flow_owned: + properties: + id: + type: array + items: + type: string + inline_response_200_11: + properties: + flow_owned: + $ref: '#/definitions/inline_response_200_11_flow_owned' + inline_response_200_12_flow_tag: + properties: + id: + type: string + description: ID of the tagged flow + inline_response_200_12: + properties: + flow_tag: + $ref: '#/definitions/inline_response_200_12_flow_tag' + inline_response_200_13_flow_untag: + properties: + id: + type: string + description: ID of the untagged flow + inline_response_200_13: + properties: + flow_untag: + $ref: '#/definitions/inline_response_200_13_flow_untag' + inline_response_200_14_study_delete: + properties: + id: + type: string + description: ID of the deleted setup, a positive integer + inline_response_200_14: + properties: + study_delete: + $ref: '#/definitions/inline_response_200_14_study_delete' + inline_response_200_15_flow_tag: + properties: + id: + type: string + description: ID of the tagged setup + inline_response_200_15: + properties: + flow_tag: + $ref: '#/definitions/inline_response_200_15_flow_tag' + inline_response_200_16_flow_untag: + properties: + id: + type: string + description: ID of the untagged setup + inline_response_200_16: + properties: + flow_untag: + $ref: '#/definitions/inline_response_200_16_flow_untag' + inline_response_200_17_data_delete: + properties: + id: + type: string + description: ID of the deleted run, a positive integer + inline_response_200_17: + properties: + data_delete: + $ref: '#/definitions/inline_response_200_17_data_delete' + inline_response_200_18_upload_flow: + properties: + id: + type: string + description: ID of the uploaded run, a positive integer + inline_response_200_18: + properties: + upload_flow: + $ref: '#/definitions/inline_response_200_18_upload_flow' + inline_response_200_19_run_tag: + properties: + id: + type: string + description: ID of the tagged run + inline_response_200_19: + properties: + run_tag: + $ref: '#/definitions/inline_response_200_19_run_tag' + inline_response_200_20_run_untag: + properties: + id: + type: string + description: ID of the untagged run + inline_response_200_20: + properties: + run_untag: + $ref: '#/definitions/inline_response_200_20_run_untag' + inline_response_200_21_upload_flow: + properties: + id: + type: string + description: ID of the evaluated run, a positive integer + inline_response_200_21: + properties: + upload_flow: + $ref: '#/definitions/inline_response_200_21_upload_flow' + inline_response_200_22: + properties: + run_reset: + $ref: '#/definitions/inline_response_200_21_upload_flow' + inline_response_200_23_upload_flow: + properties: + id: + type: string + description: ID of the run with the trace, a positive integer + inline_response_200_23: + properties: + upload_flow: + $ref: '#/definitions/inline_response_200_23_upload_flow' + inline_response_200_24_study_delete: + properties: + id: + type: string + description: ID of the deleted study, a positive integer + inline_response_200_24: + properties: + study_delete: + $ref: '#/definitions/inline_response_200_24_study_delete' + inline_response_200_25_upload_study: + properties: + id: + type: string + description: ID of the uploaded study, a positive integer + inline_response_200_25: + properties: + upload_study: + $ref: '#/definitions/inline_response_200_25_upload_study' + inline_response_200_26_study_attach: + properties: + id: + type: string + description: ID of the study, a positive integer + main_entity_type: + type: string + description: Main entity type of the of the study + linked_entities: + type: string + description: The number of linked entities + inline_response_200_26: + properties: + study_attach: + $ref: '#/definitions/inline_response_200_26_study_attach' + inline_response_200_27: + properties: + upload_study: + $ref: '#/definitions/inline_response_200_26_study_attach' + Flow_flow_description_parameter: + properties: + name: + type: string + description: The name of the parameter + data_type: + type: string + description: The data type of the parameter + default_value: + type: string + description: The default value of the parameter + description: + type: string + description: A description of the parameter + Flow_flow_description: + properties: + id: + type: string + description: ID of the flow, a positive integer + uploader: + type: string + description: The uploader of the flow + name: + type: string + description: The name of the flow + version: + type: string + description: The version of the flow, set by OpenML. A positive integer + version_label: + type: string + description: The version of the flow, as defined by the uploader, for reference. Can be any format as long as it is unique. + description: + type: string + description: Wiki description of the flow, in (Git flavoured) markdown format + upload_date: + type: string + description: The datetime that the flow was uploaded, format yyyy-MM-dd HH:mm:ss + language: + type: string + description: The programming language the flow is written in. + dependencies: + type: string + description: The libraries that this flow depends on, and their version numbers. + tag: + type: array + description: Tags added by OpenML users. Includes study tags in the form `study_1` + items: + type: string + parameter: + type: array + items: + $ref: '#/definitions/Flow_flow_description_parameter' + FlowList_flows_flow: + properties: + id: + type: string + description: The flow ID + full_name: + type: string + description: The full flow name (name + internal version number) + name: + type: string + description: The flow name + version: + type: string + description: The internal flow version + external_version: + type: string + description: The external flow version + uploader: + type: string + description: The ID of the person who uploaded the flow + FlowList_flows: + properties: + flow: + type: array + items: + $ref: '#/definitions/FlowList_flows_flow' + UserList_users_user: + properties: + id: + type: string + description: The user ID + username: + type: string + description: The full user name + UserList_users: + properties: + user: + type: array + items: + $ref: '#/definitions/UserList_users_user' + Task_task_description_data_set: + properties: + data_set_id: + type: string + description: The id of the dataset + target_feature: + type: string + description: The name of the target feature for this task + Task_task_description_estimation_procedure_parameter: + properties: + name: + type: string + description: The name of the parameter + value: + type: string + description: The value of the parameter + Task_task_description_estimation_procedure: + properties: + type: + type: string + description: The type of procedure, e.g. crossvalidation + data_splits_url: + type: string + description: The url where the data splits can be downloaded + parameter: + type: array + items: + $ref: '#/definitions/Task_task_description_estimation_procedure_parameter' + Task_task_description_evaluation_measures: + properties: + evaluation_measure: + type: string + description: The evaluation measure to optimize in this task + Task_task_description_input: + properties: + name: + type: string + description: The name of the input, e.g. source_data + data_set: + $ref: '#/definitions/Task_task_description_data_set' + estimation_procedure: + $ref: '#/definitions/Task_task_description_estimation_procedure' + cost_matrix: + type: array + description: The cost matrix, indicating the costs for each type of misclassification + items: + type: array + items: + type: integer + format: int64 + evaluation_measures: + $ref: '#/definitions/Task_task_description_evaluation_measures' + Task_task_description_predictions_feature: + properties: + name: + type: string + description: The name of the prediction feature, e.g. row_id + type: + type: string + description: The type of the prediction feature, e.g. integer + Task_task_description_predictions: + properties: + format: + type: string + description: The fromat of the predictions, e.g. ARFF + feature: + type: array + items: + $ref: '#/definitions/Task_task_description_predictions_feature' + Task_task_description_output: + properties: + name: + type: string + description: The name of the output, e.g. predictions + predictions: + $ref: '#/definitions/Task_task_description_predictions' + Task_task_description: + properties: + task_id: + type: string + description: ID of the task, a positive integer + task_type: + type: string + description: The type of the task, e.g. Supervised Classification + input: + type: array + items: + $ref: '#/definitions/Task_task_description_input' + output: + type: array + items: + $ref: '#/definitions/Task_task_description_output' + tag: + type: array + items: + type: string + description: Tags added by OpenML users. Includes study tags in the form `study_1` + TaskList_task_input: + properties: + name: + type: string + description: The name of the input + value: + type: string + description: The value of the input + TaskList_task_quality: + properties: + name: + type: string + description: The name of the quality + value: + type: string + description: The value of the quality + TaskList_task_task: + properties: + task_id: + type: string + description: The ID of the task + task_type: + type: string + description: The type of task (e.g. Supervised Classificationr) + did: + type: string + description: The id of the source dataset + name: + type: string + description: The name of the source dataset + status: + type: string + description: The status of the source dataset, active, in_preparation, or deactivated + format: + type: string + description: The format of the source dataset + input: + type: array + items: + $ref: '#/definitions/TaskList_task_input' + quality: + type: array + items: + $ref: '#/definitions/TaskList_task_quality' + tag: + type: array + items: + type: string + description: Tags added by OpenML users. Includes study tags in the form `study_1` + TaskList_task: + properties: + task: + type: array + items: + $ref: '#/definitions/TaskList_task_task' + EvaluationMeasureList_evaluation_measures_measures: + properties: + measure: + type: array + items: + type: string + description: The evaluation measure name + EvaluationMeasureList_evaluation_measures: + properties: + measures: + $ref: '#/definitions/EvaluationMeasureList_evaluation_measures_measures' + EstimationProcedureList_estimationprocedures_estimationprocedure: + properties: + id: + type: string + description: The estimation procedure ID + ttid: + type: string + description: The task type ID + name: + type: string + description: The estimation procedure name, e.g. '10 fold Crossvalidation' + type: + type: string + description: The estimation procedure type, e.g. 'crossvalidation' + repeats: + type: string + description: The number of repeats, e.g. '10' + folds: + type: string + description: The number of cross-validation folds, e.g. '10' + stratified_sampling: + type: string + description: Whether or not the sampling is stratified, 'true' or 'false' + EstimationProcedureList_estimationprocedures: + properties: + estimationprocedure: + type: array + items: + $ref: '#/definitions/EstimationProcedureList_estimationprocedures_estimationprocedure' + DataList_data_quality: + properties: + name: + type: string + description: The name of the property + value: + type: string + description: The value of the property + DataList_data_dataset: + properties: + did: + type: string + description: The dataset ID + name: + type: string + description: The dataset name + status: + type: string + description: The dataset status, either in_preparation, active, or deactivated + format: + type: string + description: The data format of the dataset, e.g. ARFF + quality: + type: array + items: + $ref: '#/definitions/DataList_data_quality' + DataList_data: + properties: + dataset: + type: array + items: + $ref: '#/definitions/DataList_data_dataset' + DataQualities_data_qualities_quality: + properties: + name: + type: string + description: The name of the dataset quality measures + value: + type: string + description: The value for this dataset + DataQualities_data_qualities: + properties: + quality: + type: array + items: + $ref: '#/definitions/DataQualities_data_qualities_quality' + DataQualityList_data_qualities_list: + properties: + quality: + type: array + items: + type: string + DataFeatures_data_features_feature: + properties: + index: + type: string + description: Feature index + name: + type: string + description: Feature name + data_type: + type: string + description: Feature data type + is_target: + type: string + description: Whether this feature is seen as a target feature + is_ignore: + type: string + description: Whether this feature should be ignored in modelling (e.g. every value is unique) + is_row_identifier: + type: string + description: Whether this feature is a row identifier + DataFeatures_data_features: + properties: + feature: + type: array + items: + $ref: '#/definitions/DataFeatures_data_features_feature' + Data_data_set_description: + required: + - description + - format + - name + properties: + id: + type: string + description: ID of the dataset, a positive integer + name: + type: string + description: The name of the dataset + version: + type: string + description: The version of the dataset, set by OpenML. A positive integer + description: + type: string + description: Wiki description of the dataset, in (Git flavoured) markdown format + format: + type: string + description: Data format, for instance ARFF + upload_date: + type: string + description: The datetime that the dataset was uploaded, format yyyy-MM-dd HH:mm:ss + licence: + type: string + description: The licence granted for using the dataset, for instance Public or CC-BY + url: + type: string + description: The URL where the data can be downloaded + file_id: + type: string + description: The ID of the dataset file stored on the OpenML server + default_target_attribute: + type: string + description: For tabular data, the name of the column that is typically used as the target attribute for that data set + version_label: + type: string + description: The version of the dataset, as defined by the uploader, for reference. Can be any format as long as it is unique. + tag: + type: array + description: Tags added by OpenML users. Includes study tags in the form `study_1` + items: + type: string + visibility: + type: string + description: Who can see the dataset. For instance `public`. + original_data_url: + type: string + description: The URL where the original data is hosted. + status: + type: string + description: active, in_preparation, or deactivated + md5_checksum: + type: string + description: Checksum to verify downloads of the dataset + RunList_runs_run: + properties: + run_id: + type: string + description: The run ID + task_id: + type: string + description: The ID of the task solved by this run + setup_id: + type: string + description: Ignore (internal representation of the parameter setting) + flow_id: + type: string + description: The ID of the flow used in this run + uploader: + type: string + description: The ID of the person uploading this run + error_message: + type: string + description: Error message generated by the run (if any) + RunList_runs: + properties: + run: + type: array + items: + $ref: '#/definitions/RunList_runs_run' + SetupList_setups_parameter: + properties: + id: + type: string + description: The parameter ID + flow_id: + type: string + description: The (sub)flow ID + flow_name: + type: string + description: The (sub)flow name + full_name: + type: string + description: The parameter's full name + parameter_name: + type: string + description: The parameter's short name + data_type: + type: string + description: The parameter's data type + default_value: + type: string + description: The parameter's default value + value: + type: string + description: The parameter value in this setup + SetupList_setups_setup: + properties: + setup_id: + type: string + description: The setup ID + flow_id: + type: string + description: The ID of the flow used by this run + parameter: + type: array + items: + $ref: '#/definitions/SetupList_setups_parameter' + SetupList_setups: + properties: + setup: + type: array + items: + $ref: '#/definitions/SetupList_setups_setup' + EvaluationList_evaluations_evaluation: + properties: + run_id: + type: string + description: The run ID + task_id: + type: string + description: The ID of the tasks solved by this run + flow_id: + type: string + description: The ID of the flow used by this run + function: + type: string + description: The name of the evaluation function + value: + type: string + description: The outcome of the evaluation + array_data: + type: string + description: For structured evaluation measures, an array of evaluation values (e.g. per-class predictions, evaluation matrices,...) + EvaluationList_evaluations: + properties: + evaluation: + type: array + items: + $ref: '#/definitions/EvaluationList_evaluations_evaluation' + EvaluationRequest_evaluation_request_run: + properties: + run_id: + type: string + description: ID of the run, a positive integer + task_id: + type: string + description: ID of the task, a positive integer + setup_id: + type: string + description: ID of the setup, a positive integer + uploader: + type: string + description: ID of the uploader, a positive integer + upload_time: + type: string + description: The datetime that the dataset was uploaded, format yyyy-MM-dd HH:mm:ss + EvaluationRequest_evaluation_request: + properties: + run: + $ref: '#/definitions/EvaluationRequest_evaluation_request_run' + DataUnprocessed_data_unprocessed_dataset: + properties: + did: + type: string + description: ID of the dataset a positive integer + name: + type: string + description: The name of the dataset + version: + type: string + description: Version of the dataset, a positive integer + status: + type: string + description: Status of the dataset + format: + type: string + description: The dataset format, e.g. ARFF + DataUnprocessed_data_unprocessed: + properties: + dataset: + $ref: '#/definitions/DataUnprocessed_data_unprocessed_dataset' + Setup_setup_parameters_parameter_setting: + properties: + full_name: + type: string + description: The full name of the hyperparameter + parameter_name: + type: string + description: The short name of the hyperparameter + data_type: + type: string + description: The data type of the hyperparameter value + default_value: + type: string + description: The default value of the parameter used + value: + type: string + description: The value of the parameter used + description: Hyperparameter settings. Can be multiple. + Setup_setup_parameters: + properties: + flow_id: + type: string + description: ID of the flow, a positive integer + parameter_setting: + type: array + items: + $ref: '#/definitions/Setup_setup_parameters_parameter_setting' + Run_run_description_parameter_setting: + properties: + name: + type: string + description: The name of the parameter + value: + type: string + description: The value of the parameter used + description: Parameter settings used in this run. Can be multiple. + Run_run_description_input_data_dataset: + properties: + did: + type: string + description: The id of the dataset + name: + type: string + description: The name of the dataset + url: + type: string + description: The download url of the dataset + Run_run_description_input_data: + properties: + dataset: + $ref: '#/definitions/Run_run_description_input_data_dataset' + description: The input data for this run. + Run_run_description_output_data_file: + properties: + did: + type: string + description: The id of the uploaded file + file_id: + type: string + description: The reference id of the uploaded file, for downloading afterward + name: + type: string + description: The name of the uploaded file (e.g., description, predictions, model,...) + description: Files uploaded by the user, e.g. run description, predictions. Can be multiple. + Run_run_description_output_data_evaluation: + properties: + name: + type: string + description: The name of the evaluation measure + flow_id: + type: string + description: The id of the code used to compute this evaluation method + value: + type: string + description: The result of the evaluation + array_data: + type: string + description: For composite evaluation measures (e.g. per-class measures, confusion matrix), a string (JSON) representation of the evaluation. + description: Evaluations uploaded by the user, e.g. runtimes, or computed by the server (after run upload). Can be multiple. + Run_run_description_output_data: + properties: + file: + type: array + items: + $ref: '#/definitions/Run_run_description_output_data_file' + evaluation: + type: array + items: + $ref: '#/definitions/Run_run_description_output_data_evaluation' + description: The data generated by this run. + Run_run_description: + properties: + id: + type: string + description: ID of the run, a positive integer + uploader: + type: string + description: The uploader of the run + uploader_name: + type: string + description: The name of the uploader of the run + task_id: + type: string + description: The id of the task solved by this run + task_type: + type: string + description: The type of task solved by this run (e.g., classification) + task_evaluation_measure: + type: string + description: The evaluation measure that is supposed to be optimized in the task, if any + flow_id: + type: string + description: The id of the flow used in this run + flow_name: + type: string + description: The name of the flow used in this run + setup_string: + type: string + description: Configuration of the flow as a string, to be interpreted by the flow, its library, or command line interface. + tag: + type: array + description: Tags added by OpenML users. Includes study tags in the form `study_1` + items: + type: string + parameter_setting: + type: array + items: + $ref: '#/definitions/Run_run_description_parameter_setting' + input_data: + $ref: '#/definitions/Run_run_description_input_data' + output_data: + $ref: '#/definitions/Run_run_description_output_data' + TaskType_input: + properties: + name: + type: string + description: The name of the input, e.g. source_data + data_set: + $ref: '#/definitions/Task_task_description_data_set' + estimation_procedure: + $ref: '#/definitions/Task_task_description_estimation_procedure' + cost_matrix: + type: array + items: + type: array + description: The cost matrix, indicating the costs for each type of misclassification + items: + type: integer + format: int64 + evaluation_measures: + $ref: '#/definitions/Task_task_description_evaluation_measures' + TaskType_predictions: + properties: + format: + type: string + description: The format of the predictions, e.g. ARFF + feature: + type: array + items: + $ref: '#/definitions/Task_task_description_predictions_feature' + TaskType_output: + properties: + name: + type: string + description: The name of the output, e.g. predictions + predictions: + $ref: '#/definitions/TaskType_predictions' + TaskTypeList_task_types_task_type: + properties: + id: + type: string + description: The ID of the task type + name: + type: string + description: The name of the task type + description: + type: string + description: A description of the task type + creator: + type: string + description: A comma-separated list of the task type creators + TaskTypeList_task_types: + properties: + task_type: + type: array + items: + $ref: '#/definitions/TaskTypeList_task_types_task_type' + Study_study_tag: + properties: + name: + type: string + description: The name of the study (e.g. study_1) + write_access: + type: string + description: The write access level of the study (e.g. public) + Study_study_data: + properties: + data_id: + type: array + items: + type: string + description: The IDs of the datasets that are directly or indirectly linked to the study (e.g. because it is part of a task that belongs to the study) + Study_study_tasks: + properties: + task_id: + type: array + items: + type: string + description: The IDs of the tasks that are directly or indirectly linked to the study (e.g. because it is part of a run that belongs to the study) + Study_study_flows: + properties: + flow_id: + type: array + items: + type: string + description: The IDs of the flows that are directly or indirectly linked to the study (e.g. because it is part of a run that belongs to the study) + Study_study_runs: + properties: + run_id: + type: array + items: + type: string + description: The IDs of the runs attached to this study + Study_study: + properties: + id: + type: string + description: The ID of the study + alias: + type: string + description: The alias of the study + main_entity_type: + type: string + description: The type of entity collected in the study (e.g. task or run) + name: + type: string + description: The name of the study + creation_date: + type: string + description: The datetime that the dataset was uploaded, format yyyy-MM-dd HH:mm:ss + creator: + type: string + description: A comma-separated list of the study creators + tag: + $ref: '#/definitions/Study_study_tag' + data: + $ref: '#/definitions/Study_study_data' + tasks: + $ref: '#/definitions/Study_study_tasks' + flows: + $ref: '#/definitions/Study_study_flows' + runs: + $ref: '#/definitions/Study_study_runs' + StudyList_study_list_study: + properties: + id: + type: string + description: The ID of the study + alias: + type: string + description: The alias of the study + name: + type: string + description: The name of the study + creation_date: + type: string + description: The datetime that the dataset was uploaded, format yyyy-MM-dd HH:mm:ss + creator: + type: string + description: A comma-separated list of the study creators + StudyList_study_list: + properties: + study: + type: array + items: + $ref: '#/definitions/StudyList_study_list_study' + RunTrace_trace_trace_iteration: + properties: + repeat: + type: string + description: The number of the repeat in the outer cross-valudation + fold: + type: string + description: The number of the fold in the inner cross-validation + iteration: + type: string + description: A number of the optimization iteration + setup_string: + type: string + description: A JSON representation of the setup (configuration) + evaluation: + type: string + description: The evaluation score of the setup + selected: + type: string + description: Whether this setup was selected as the best one (true or false) + RunTrace_trace: + properties: + run_id: + type: string + description: run ID + trace_iteration: + type: array + items: + $ref: '#/definitions/RunTrace_trace_trace_iteration' From 9128b6655361a3644240c283f57afa4046915467 Mon Sep 17 00:00:00 2001 From: JoaquinVanschoren Date: Mon, 9 Sep 2019 17:12:20 +0200 Subject: [PATCH 17/27] doc update --- downloads/swagger.json | 58 ++++++++++++++++++++++++++++++++++++++++++ downloads/swagger.yaml | 54 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 112 insertions(+) diff --git a/downloads/swagger.json b/downloads/swagger.json index e1c7309ec..f671f448c 100755 --- a/downloads/swagger.json +++ b/downloads/swagger.json @@ -1979,6 +1979,7 @@ "evaluation" : [ { "run_id" : "1", "task_id" : "68", + "uploader" : "1", "flow_id" : "61", "function" : "area_under_roc_curve", "upload_time" : "2014-04-06 23:30:40", @@ -1987,6 +1988,7 @@ }, { "run_id" : "1", "task_id" : "68", + "uploader" : "1", "flow_id" : "61", "function" : "f_measure", "upload_time" : "2014-04-06 23:30:40", @@ -1995,6 +1997,7 @@ }, { "run_id" : "1", "task_id" : "68", + "uploader" : "1", "flow_id" : "61", "function" : "predictive_accuracy", "upload_time" : "2014-04-06 23:30:40", @@ -2359,6 +2362,31 @@ } } }, + "/user/list" : { + "get" : { + "tags" : [ "user" ], + "summary" : "List all users by user id", + "description" : "Returns an array with all user ids and names.\n", + "parameters" : [ { + "name" : "api_key", + "in" : "query", + "description" : "API key to authenticate the user", + "required" : false, + "type" : "string" + } ], + "responses" : { + "200" : { + "description" : "A list of users", + "examples" : { + "application/json" : "{\n \"users\":{\n \"user\":[\n {\n \"id\":\"1\",\n \"username\":\"janvanrijn@gmail.com\"},\n {\n \"id\":\"2\",\n \"username\":\"joaquin.vanschoren@gmail.com\"}\n ]\n }\n}" + }, + "schema" : { + "$ref" : "#/definitions/UserList" + } + } + } + } + }, "/evaluationmeasure/list" : { "get" : { "tags" : [ "evaluationmeasure" ], @@ -2402,6 +2430,14 @@ } } }, + "UserList" : { + "type" : "object", + "properties" : { + "users" : { + "$ref" : "#/definitions/UserList_users" + } + } + }, "Task" : { "type" : "object", "properties" : { @@ -3146,6 +3182,28 @@ } } }, + "UserList_users_user" : { + "properties" : { + "id" : { + "type" : "string", + "description" : "The user ID" + }, + "username" : { + "type" : "string", + "description" : "The full user name" + } + } + }, + "UserList_users" : { + "properties" : { + "user" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/UserList_users_user" + } + } + } + }, "Task_task_description_data_set" : { "properties" : { "data_set_id" : { diff --git a/downloads/swagger.yaml b/downloads/swagger.yaml index 798ac4a6c..5854f0bcb 100755 --- a/downloads/swagger.yaml +++ b/downloads/swagger.yaml @@ -2635,6 +2635,7 @@ paths: evaluation: - run_id: "1" task_id: "68" + uploader: "1" flow_id: "61" function: area_under_roc_curve upload_time: 2014-04-06 23:30:40 @@ -2642,6 +2643,7 @@ paths: array_data: '[0,0.99113,0.898048,0.874862,0.791282,0.807343,0.820674]' - run_id: "1" task_id: "68" + uploader: "1" flow_id: "61" function: f_measure upload_time: 2014-04-06 23:30:40 @@ -2649,6 +2651,7 @@ paths: array_data: '[0,0,0.711934,0.735714,0.601363,0.435678,0.430913]' - run_id: "1" task_id: "68" + uploader: "1" flow_id: "61" function: predictive_accuracy upload_time: 2014-04-06 23:30:40 @@ -3052,6 +3055,38 @@ paths: 500 - No model performance estimation procedures available. schema: $ref: '#/definitions/Error' + /user/list: + get: + tags: + - user + summary: List all users by user id + description: | + Returns an array with all user ids and names. + parameters: + - name: api_key + in: query + description: API key to authenticate the user + required: false + type: string + responses: + 200: + description: A list of users + examples: + application/json: |- + { + "users":{ + "user":[ + { + "id":"1", + "username":"janvanrijn@gmail.com"}, + { + "id":"2", + "username":"joaquin.vanschoren@gmail.com"} + ] + } + } + schema: + $ref: '#/definitions/UserList' /evaluationmeasure/list: get: tags: @@ -3095,6 +3130,11 @@ definitions: properties: flows: $ref: '#/definitions/FlowList_flows' + UserList: + type: object + properties: + users: + $ref: '#/definitions/UserList_users' Task: type: object properties: @@ -3563,6 +3603,20 @@ definitions: type: array items: $ref: '#/definitions/FlowList_flows_flow' + UserList_users_user: + properties: + id: + type: string + description: The user ID + username: + type: string + description: The full user name + UserList_users: + properties: + user: + type: array + items: + $ref: '#/definitions/UserList_users_user' Task_task_description_data_set: properties: data_set_id: From 21c0d7f2331884bf6959fc8275a073e0126b7302 Mon Sep 17 00:00:00 2001 From: Joaquin Vanschoren Date: Mon, 9 Sep 2019 21:57:16 +0200 Subject: [PATCH 18/27] Delete swagger.json --- swagger.json | 4335 -------------------------------------------------- 1 file changed, 4335 deletions(-) delete mode 100755 swagger.json diff --git a/swagger.json b/swagger.json deleted file mode 100755 index f671f448c..000000000 --- a/swagger.json +++ /dev/null @@ -1,4335 +0,0 @@ -{ - "swagger" : "2.0", - "info" : { - "description" : "REST API for sharing, organizing and reusing machine learning datasets, code, and experiments. Follows a predictive URL scheme from endpoint https://www.openml.org/api/v1/json (or /xml). You need to add your `api_key` to every call (see your account settings), or simply log in. See https://www.openml.org/api_data_docs for the file server API.", - "version" : "1.0.0", - "title" : "OpenML API" - }, - "basePath" : "/api/v1/json", - "schemes" : [ "https" ], - "produces" : [ "application/json" ], - "paths" : { - "/data/{id}" : { - "get" : { - "tags" : [ "data" ], - "summary" : "Get dataset description", - "description" : "Returns information about a dataset. The information includes the name, information about the creator, URL to download it and more.\n", - "parameters" : [ { - "name" : "id", - "in" : "path", - "description" : "Id of the dataset.", - "required" : true, - "type" : "number", - "format" : "integer" - }, { - "name" : "api_key", - "in" : "query", - "description" : "Api key to authenticate the user", - "required" : false, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "A dataset description", - "examples" : { - "application/json" : "{\n \"data_set_description\": {\n \"id\": \"1\",\n \"name\": \"anneal\",\n \"version\": \"2\",\n \"description\": \"...\",\n \"format\": \"ARFF\",\n \"upload_date\": \"2014-04-06 23:19:20\",\n \"licence\": \"Public\",\n \"url\": \"https://www.openml.org/data/download/1/dataset_1_anneal.arff\",\n \"file_id\": \"1\",\n \"default_target_attribute\": \"class\",\n \"version_label\": \"2\",\n \"tag\": [\n \"study_1\",\n \"uci\"\n ],\n \"visibility\": \"public\",\n \"original_data_url\": \"https://www.openml.org/d/2\",\n \"status\": \"active\",\n \"md5_checksum\": \"d01f6ccd68c88b749b20bbe897de3713\"\n }\n}" - }, - "schema" : { - "$ref" : "#/definitions/Data" - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned\n110 - Please provide data_id.\n111 - Unknown dataset. Data set description with data_id was not found in the database.\n112 - No access granted. This dataset is not shared with you.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - }, - "delete" : { - "tags" : [ "data" ], - "summary" : "Delete dataset", - "description" : "Deletes a dataset. Upon success, it returns the ID of the deleted dataset.\n", - "parameters" : [ { - "name" : "id", - "in" : "path", - "description" : "Id of the dataset.", - "required" : true, - "type" : "number", - "format" : "integer" - }, { - "name" : "api_key", - "in" : "query", - "description" : "Api key to authenticate the user", - "required" : true, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "ID of the deleted dataset", - "examples" : { - "application/json" : "{\n \"data_delete\": {\n \"id\": \"4328\"\n }\n}" - }, - "schema" : { - "type" : "object", - "properties" : { - "data_delete" : { - "$ref" : "#/definitions/inline_response_200_data_delete" - } - } - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned\n- 350 - Please provide API key. In order to remove your content, please authenticate.\n- 351 - Authentication failed. The API key was not valid. Please try to login again, or contact api administrators.\n- 352 - Dataset does not exists. The data ID could not be linked to an existing dataset.\n- 353 - Dataset is not owned by you. The dataset is owned by another user. Hence you cannot delete it.\n- 354 - Dataset is in use by other content. Can not be deleted. The data is used in tasks or runs. Delete other content before deleting this dataset.\n- 355 - Deleting dataset failed. Deleting the dataset failed. Please contact support team.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/data" : { - "post" : { - "tags" : [ "data" ], - "summary" : "Upload dataset", - "description" : "Uploads a dataset. Upon success, it returns the data id.\n", - "consumes" : [ "multipart/form-data" ], - "parameters" : [ { - "name" : "description", - "in" : "formData", - "description" : "An XML file describing the dataset. Only name, description, and data format are required. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.data.upload) and an [XML example](https://www.openml.org/api/v1/xml_example/data).", - "required" : true, - "type" : "file" - }, { - "name" : "dataset", - "in" : "formData", - "description" : "The actual dataset, being an ARFF file.", - "required" : true, - "type" : "file" - }, { - "name" : "api_key", - "in" : "query", - "description" : "Api key to authenticate the user", - "required" : true, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "Id of the uploaded dataset", - "examples" : { - "application/json" : "{\n \"upload_data_set\": {\n \"id\": \"4328\"\n }\n}" - }, - "schema" : { - "type" : "object", - "properties" : { - "upload_data_set" : { - "$ref" : "#/definitions/inline_response_200_1_upload_data_set" - } - } - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n130 - Problem with file uploading. There was a problem with the file upload.\n131 - Problem validating uploaded description file. The XML description format does not meet the standards.\n132 - Failed to move the files. Internal server error, please contact API administrators.\n133 - Failed to make checksum of datafile. Internal server error, please contact API administrators.\n134 - Failed to insert record in database. Internal server error, please contact API administrators.\n135 - Please provide description xml.\n136 - File failed format verification. The uploaded file is not valid according to the selected file format. Please check the file format specification and try again.\n137 - Please provide API key. In order to share content, please log in or provide your API key.\n138 - Authentication failed. The API key was not valid. Please try to login again, or contact API administrators\n139 - Combination name / version already exists. Leave version out for auto increment\n140 - Both dataset file and dataset url provided. The system is confused since both a dataset file (post) and a dataset url (xml) are provided. Please remove one.\n141 - Neither dataset file or dataset url are provided. Please provide either a dataset file as POST variable, or a dataset url in the description XML.\n142 - Error in processing arff file. Can be a syntax error, or the specified target feature does not exists. For now, we only check on arff files. If a dataset is claimed to be in such a format, and it can not be parsed, this error is returned.\n143 - Suggested target feature not legal. It is possible to suggest a default target feature (for predictive tasks). However, it should be provided in the data.\n144 - Unable to update dataset. The dataset with id could not be found in the database. If you upload a new dataset, unset the id.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/data/qualities/list" : { - "get" : { - "tags" : [ "data" ], - "summary" : "List all data qualities", - "description" : "Returns a list of all data qualities in the system.\n", - "parameters" : [ { - "name" : "api_key", - "in" : "query", - "description" : "API key to authenticate the user", - "required" : false, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "A list of data qualities", - "examples" : { - "application/json" : "{\n \"data_qualities_list\":{\n \"quality\":[\n \"NumberOfClasses\",\n \"NumberOfFeatures\",\n \"NumberOfInstances\",\n \"NumberOfInstancesWithMissingValues\",\n \"NumberOfMissingValues\",\n \"NumberOfNumericFeatures\",\n \"NumberOfSymbolicFeatures\"\n ]\n }\n}" - }, - "schema" : { - "$ref" : "#/definitions/DataQualityList" - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned\n370 - No data qualities available. There are no data qualities in the system.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/data/qualities" : { - "post" : { - "tags" : [ "data" ], - "summary" : "Upload dataset qualities", - "description" : "Uploads dataset qualities. Upon success, it returns the data id.\n", - "consumes" : [ "multipart/form-data" ], - "parameters" : [ { - "name" : "description", - "in" : "formData", - "description" : "An XML file describing the dataset. Only name, description, and data format are required. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.data.qualities) and an [XML example](https://www.openml.org/api/v1/xml_example/data.qualities).", - "required" : true, - "type" : "file" - }, { - "name" : "api_key", - "in" : "query", - "description" : "Api key to authenticate the user", - "required" : true, - "type" : "string" - } ], - "responses" : { - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n381 - Something wrong with XML, please check did and evaluation_engine_id\n382 - Please provide description xml\n383 - Problem validating uploaded description file\n384 - Dataset not processed yet\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/data/status/update/" : { - "post" : { - "tags" : [ "data" ], - "summary" : "Change the status of a dataset", - "description" : "Change the status of a dataset, either 'active' or 'deactivated'\n", - "consumes" : [ "multipart/form-data" ], - "parameters" : [ { - "name" : "data_id", - "in" : "formData", - "description" : "Id of the dataset.", - "required" : true, - "type" : "number", - "format" : "integer" - }, { - "name" : "status", - "in" : "formData", - "description" : "The status on which to filter the results, either 'active' or 'deactivated'.", - "required" : true, - "type" : "string" - }, { - "name" : "api_key", - "in" : "formData", - "description" : "Api key to authenticate the user", - "required" : true, - "type" : "string" - } ], - "responses" : { - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n691 - Illegal status\n692 - Dataset does not exists\n693 - Dataset is not owned by you\n694 - Illegal status transition\n695 - Status update failed\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/data/features" : { - "post" : { - "tags" : [ "data" ], - "summary" : "Upload dataset feature description", - "description" : "Uploads dataset feature description. Upon success, it returns the data id.\n", - "consumes" : [ "multipart/form-data" ], - "parameters" : [ { - "name" : "description", - "in" : "formData", - "description" : "An XML file describing the dataset. Only name, description, and data format are required. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.data.features) and an [XML example](https://www.openml.org/api/v1/xml_example/data.features).", - "required" : true, - "type" : "file" - }, { - "name" : "api_key", - "in" : "query", - "description" : "Api key to authenticate the user", - "required" : true, - "type" : "string" - } ], - "responses" : { - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n431 - Dataset already processed\n432 - Please provide description xml\n433 - Problem validating uploaded description file\n434 - Could not find dataset\n436 - Something wrong with XML, check data id and evaluation engine id\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/data/features/{id}" : { - "get" : { - "tags" : [ "data" ], - "summary" : "Get data features", - "description" : "Returns the features of a dataset.\n", - "parameters" : [ { - "name" : "id", - "in" : "path", - "description" : "Id of the dataset.", - "required" : true, - "type" : "number", - "format" : "integer" - }, { - "name" : "api_key", - "in" : "query", - "description" : "Api key to authenticate the user", - "required" : false, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "All the features of the dataset", - "examples" : { - "application/json" : "{\n \"data_features\": {\n \"feature\": [\n {\n \"index\": \"0\",\n \"name\": \"sepallength\",\n \"data_type\": \"numeric\",\n \"is_target\": \"false\",\n \"is_ignore\": \"false\",\n \"is_row_identifier\": \"false\"\n },\n {\n \"index\": \"1\",\n \"name\": \"sepalwidth\",\n \"data_type\": \"numeric\",\n \"is_target\": \"false\",\n \"is_ignore\": \"false\",\n \"is_row_identifier\": \"false\"\n },\n {\n \"index\": \"2\",\n \"name\": \"petallength\",\n \"data_type\": \"numeric\",\n \"is_target\": \"false\",\n \"is_ignore\": \"false\",\n \"is_row_identifier\": \"false\"\n },\n {\n \"index\": \"3\",\n \"name\": \"petalwidth\",\n \"data_type\": \"numeric\",\n \"is_target\": \"false\",\n \"is_ignore\": \"false\",\n \"is_row_identifier\": \"false\"\n },\n {\n \"index\": \"4\",\n \"name\": \"class\",\n \"data_type\": \"nominal\",\n \"is_target\": \"true\",\n \"is_ignore\": \"false\",\n \"is_row_identifier\": \"false\"\n }\n ]\n }\n}" - }, - "schema" : { - "$ref" : "#/definitions/DataFeatures" - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n270 - Please provide dataset ID.\n271 - Unknown dataset. Data set with the given data ID was not found (or is not shared with you).\n272 - No features found. The dataset did not contain any features, or we could not extract them.\n273 - Dataset not processed yet. The dataset was not processed yet, features are not yet available. Please wait for a few minutes.\n274 - Dataset processed with error. The feature extractor has run into an error while processing the dataset. Please check whether it is a valid supported file. If so, please contact the API admins.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/data/qualities/{id}" : { - "get" : { - "tags" : [ "data" ], - "summary" : "Get data qualities", - "description" : "Returns the qualities of a dataset.\n", - "parameters" : [ { - "name" : "id", - "in" : "path", - "description" : "Id of the dataset.", - "required" : true, - "type" : "number", - "format" : "integer" - }, { - "name" : "api_key", - "in" : "query", - "description" : "Api key to authenticate the user", - "required" : false, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "All the qualities of the dataset", - "examples" : { - "application/json" : "{\n \"data_qualities\": {\n \"quality\": [\n {\n \"name\": \"ClassCount\",\n \"value\": \"3.0\"\n },\n {\n \"name\": \"ClassEntropy\",\n \"value\": \"1.584962500721156\"\n },\n {\n \"name\": \"NumberOfClasses\",\n \"value\": \"3\"\n },\n {\n \"name\": \"NumberOfFeatures\",\n \"value\": \"5\"\n },\n {\n \"name\": \"NumberOfInstances\",\n \"value\": \"150\"\n },\n {\n \"name\": \"NumberOfInstancesWithMissingValues\",\n \"value\": \"0\"\n },\n {\n \"name\": \"NumberOfMissingValues\",\n \"value\": \"0\"\n },\n {\n \"name\": \"NumberOfNumericFeatures\",\n \"value\": \"4\"\n },\n {\n \"name\": \"NumberOfSymbolicFeatures\",\n \"value\": \"0\"\n }\n ]\n }\n}" - }, - "schema" : { - "$ref" : "#/definitions/DataQualities" - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n360 - Please provide data set ID\n361 - Unknown dataset. The data set with the given ID was not found in the database, or is not shared with you.\n362 - No qualities found. The registered dataset did not contain any calculated qualities.\n363 - Dataset not processed yet. The dataset was not processed yet, no qualities are available. Please wait for a few minutes.\n364 - Dataset processed with error. The quality calculator has run into an error while processing the dataset. Please check whether it is a valid supported file. If so, contact the support team.\n365 - Interval start or end illegal. There was a problem with the interval\nstart or end.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/data/list/{filters}" : { - "get" : { - "tags" : [ "data" ], - "summary" : "List and filter datasets", - "description" : "List datasets, possibly filtered by a range of properties. Any number of properties can be combined by listing them one after the other in the form '/data/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all datasets that match the constraints.\n", - "parameters" : [ { - "name" : "filters", - "in" : "path", - "description" : "Any combination of these filters\n/limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, results 11..15 will be returned. Both limit and offset need to be specified.\n/status/{status} - returns only datasets with a given status, either 'active', 'deactivated', or 'in_preparation'.\n/tag/{tag} - returns only datasets tagged with the given tag.\n/{data_quality}/{range} - returns only tasks for which the underlying datasets have certain qualities. {data_quality} can be data_id, data_name, data_version, number_instances, number_features, number_classes, number_missing_values. {range} can be a specific value or a range in the form 'low..high'. Multiple qualities can be combined, as in 'number_instances/0..50/number_features/0..10'.\n", - "required" : true, - "type" : "string" - }, { - "name" : "api_key", - "in" : "query", - "description" : "API key to authenticate the user", - "required" : false, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "A list of datasets with the given task", - "examples" : { - "application/json" : "{\n \"data\": {\n \"dataset\": [\n {\n \"did\":\"1\",\n \"name\":\"anneal\",\n \"status\":\"active\",\n \"format\":\"ARFF\",\n \"quality\":[\n {\n \"name\":\"MajorityClassSize\",\n \"value\":\"684\"\n },\n {\n \"name\":\"MaxNominalAttDistinctValues\",\n \"value\":\"10.0\"\n },\n {\n \"name\":\"MinorityClassSize\"\n ,\"value\":\"0\"\n },\n {\n \"name\":\"NumBinaryAtts\",\n \"value\":\"14.0\"\n },\n {\n \"name\":\"NumberOfClasses\",\n \"value\":\"6\"\n },\n {\n \"name\":\"NumberOfFeatures\",\n \"value\":\"39\"\n },\n {\n \"name\":\"NumberOfInstances\",\n \"value\":\"898\"\n },\n {\n \"name\":\"NumberOfInstancesWithMissingValues\",\n \"value\":\"0\"\n },\n {\n \"name\":\"NumberOfMissingValues\",\n \"value\":\"0\"\n },\n {\n \"name\":\"NumberOfNumericFeatures\",\n \"value\":\"6\"\n },\n {\n \"name\":\"NumberOfSymbolicFeatures\",\n \"value\":\"32\"\n }\n ]\n }\n ]\n }\n}" - }, - "schema" : { - "$ref" : "#/definitions/DataList" - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n370 - Illegal filter specified.\n371 - Filter values/ranges not properly specified.\n372 - No results. There where no matches for the given constraints.\n373 - Can not specify an offset without a limit.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/data/tag" : { - "post" : { - "tags" : [ "data" ], - "summary" : "Tag a dataset", - "description" : "Tags a dataset.", - "consumes" : [ "application/x-www-form-urlencoded" ], - "parameters" : [ { - "name" : "data_id", - "in" : "formData", - "description" : "Id of the dataset.", - "required" : true, - "type" : "number", - "format" : "integer" - }, { - "name" : "tag", - "in" : "formData", - "description" : "Tag name", - "required" : true, - "type" : "string" - }, { - "name" : "api_key", - "in" : "formData", - "description" : "Api key to authenticate the user", - "required" : true, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "The id of the tagged dataset", - "examples" : { - "application/json" : "{\n \"data_tag\": {\n \"id\": \"2\"\n }\n}" - }, - "schema" : { - "type" : "object", - "properties" : { - "data_tag" : { - "$ref" : "#/definitions/inline_response_200_2_data_tag" - } - } - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n470 - In order to add a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag).\n471 - Entity not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity.\n472 - Entity already tagged by this tag. The entity {dataset, flow, run} already had this tag.\n473 - Something went wrong inserting the tag. Please contact OpenML Team.\n474 - Internal error tagging the entity. Please contact OpenML Team.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/data/untag" : { - "post" : { - "tags" : [ "data" ], - "summary" : "Untag a dataset", - "description" : "Untags a dataset.", - "consumes" : [ "application/x-www-form-urlencoded" ], - "parameters" : [ { - "name" : "data_id", - "in" : "formData", - "description" : "Id of the dataset.", - "required" : true, - "type" : "number" - }, { - "name" : "tag", - "in" : "formData", - "description" : "Tag name", - "required" : true, - "type" : "string" - }, { - "name" : "api_key", - "in" : "formData", - "description" : "Api key to authenticate the user", - "required" : true, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "The ID of the untagged dataset", - "examples" : { - "application/json" : "{\n \"data_untag\": {\n \"id\": \"2\"\n }\n}" - }, - "schema" : { - "type" : "object", - "properties" : { - "data_untag" : { - "$ref" : "#/definitions/inline_response_200_3_data_untag" - } - } - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n475 - Please give entity_id {data_id, flow_id, run_id} and tag. In order to remove a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag).\n476 - Entity {dataset, flow, run} not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity.\n477 - Tag not found. The provided tag is not associated with the entity {dataset, flow, run}.\n478 - Tag is not owned by you. The entity {dataset, flow, run} was tagged by another user. Hence you cannot delete it.\n479 - Internal error removing the tag. Please contact OpenML Team.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/data/unprocessed/{data_engine_id}/{order}" : { - "get" : { - "tags" : [ "data" ], - "summary" : "Get a list of unprocessed datasets", - "description" : "This call is for people running their own dataset processing engines. It returns the details of datasets that are not yet processed by the given processing engine. It doesn't process the datasets, it just returns the dataset info.\n", - "parameters" : [ { - "name" : "data_engine_id", - "in" : "path", - "description" : "The ID of the data processing engine. You get this ID when you register a new data processing engine with OpenML. The ID of the main data processing engine is 1.", - "required" : true, - "type" : "string" - }, { - "name" : "order", - "in" : "path", - "description" : "When there are multiple datasets still to process, this defines which ones to return. Options are 'normal' - the oldest datasets, or 'random'.", - "required" : true, - "type" : "string" - }, { - "name" : "api_key", - "in" : "query", - "description" : "API key to authenticate the user", - "required" : false, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "A list of unprocessed datasets", - "examples" : { - "application/json" : { - "data_unprocessed" : { - "run" : [ { - "did" : "1", - "name" : "anneal", - "version" : "2", - "status" : "deactivated", - "format" : "ARFF" - } ] - } - } - }, - "schema" : { - "$ref" : "#/definitions/DataUnprocessed" - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n681 - No unprocessed datasets.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/data/qualities/unprocessed/{data_engine_id}/{order}" : { - "post" : { - "tags" : [ "data" ], - "summary" : "Get a list of datasets with unprocessed qualities\n", - "description" : "This call is for people running their own dataset processing engines. It returns the details of datasets for which certain qualities are not yet processed by the given processing engine. It doesn't process the datasets, it just returns the dataset info.\n", - "consumes" : [ "application/x-www-form-urlencoded" ], - "parameters" : [ { - "name" : "data_engine_id", - "in" : "path", - "description" : "The ID of the data processing engine. You get this ID when you register a new data processing engine with OpenML. The ID of the main data processing engine is 1.", - "required" : true, - "type" : "string" - }, { - "name" : "order", - "in" : "path", - "description" : "When there are multiple datasets still to process, this defines which ones to return. Options are 'normal' - the oldest datasets, or 'random'.", - "required" : true, - "type" : "string" - }, { - "name" : "api_key", - "in" : "query", - "description" : "API key to authenticate the user", - "required" : false, - "type" : "string" - }, { - "name" : "qualities", - "in" : "formData", - "description" : "Comma-separated list of (at least two) quality names, e.g. 'NumberOfInstances,NumberOfFeatures'.", - "required" : true, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "A list of unprocessed datasets", - "examples" : { - "application/json" : { - "data_unprocessed" : { - "run" : [ { - "did" : "1", - "name" : "anneal", - "version" : "2", - "status" : "deactivated", - "format" : "ARFF" - } ] - } - } - }, - "schema" : { - "$ref" : "#/definitions/DataUnprocessed" - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n686 - Please specify the features the evaluation engine wants to calculate (at least 2).\n687 - No unprocessed datasets according to the given set of meta-features.\n688 - Illegal qualities.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/task/{id}" : { - "get" : { - "tags" : [ "task" ], - "summary" : "Get task description", - "description" : "Returns information about a task. The information includes the task type, input data, train/test sets, and more.\n", - "parameters" : [ { - "name" : "id", - "in" : "path", - "description" : "ID of the task.", - "required" : true, - "type" : "number", - "format" : "integer" - }, { - "name" : "api_key", - "in" : "query", - "description" : "Api key to authenticate the user", - "required" : false, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "A task description", - "examples" : { - "application/json" : "{\n \"task\": {\n \"task_id\":\"1\",\n \"task_type\":\"Supervised Classification\",\n \"input\":[\n {\n \"name\":\"source_data\",\n \"data_set\":{\n \"data_set_id\":\"1\",\n \"target_feature\":\"class\"\n }\n },\n {\n \"name\":\"estimation_procedure\",\n \"estimation_procedure\":{\n \"type\":\"crossvalidation\",\n \"data_splits_url\":\"https://www.openml.org/api_splits/get/1/Task_1_splits.arff\",\n \"parameter\":[\n {\n \"name\":\"number_repeats\",\n \"value\":\"1\"\n },\n {\n \"name\":\"number_folds\",\n \"value\":\"10\"\n },\n {\n \"name\":\"percentage\"\n },\n {\n \"name\":\"stratified_sampling\",\n \"value\":\"true\"\n }\n ]\n }\n },\n {\n \"name\":\"cost_matrix\",\n \"cost_matrix\":[]\n },\n {\n \"name\":\"evaluation_measures\",\n \"evaluation_measures\":\n {\n \"evaluation_measure\":\"predictive_accuracy\"\n }\n }\n ],\n \"output\":{\n \"name\":\"predictions\",\n \"predictions\":{\n \"format\":\"ARFF\",\n \"feature\":[\n {\n \"name\":\"repeat\",\n \"type\":\"integer\"\n },\n {\n \"name\":\"fold\",\n \"type\":\"integer\"\n },\n {\n \"name\":\"row_id\",\n \"type\":\"integer\"\n },\n {\n \"name\":\"confidence.classname\",\n \"type\":\"numeric\"\n },\n {\n \"name\":\"prediction\",\n \"type\":\"string\"\n }\n ]\n }\n },\n \"tag\":[\"basic\",\"study_1\",\"under100k\",\"under1m\"]\n }\n}" - }, - "schema" : { - "$ref" : "#/definitions/Task" - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n150 - Please provide task_id.\n151 - Unknown task. The task with the given id was not found in the database\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - }, - "delete" : { - "tags" : [ "task" ], - "summary" : "Delete task", - "description" : "Deletes a task. Upon success, it returns the ID of the deleted task.\n", - "parameters" : [ { - "name" : "id", - "in" : "path", - "description" : "Id of the task.", - "required" : true, - "type" : "number", - "format" : "integer" - }, { - "name" : "api_key", - "in" : "query", - "description" : "Api key to authenticate the user", - "required" : true, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "ID of the deleted task", - "examples" : { - "application/json" : "{\n \"task_delete\": {\n \"id\": \"4328\"\n }\n}" - }, - "schema" : { - "type" : "object", - "properties" : { - "task_delete" : { - "$ref" : "#/definitions/inline_response_200_4_task_delete" - } - } - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n450 - Please provide API key. In order to remove your content, please authenticate.\n451 - Authentication failed. The API key was not valid. Please try to login again, or contact api administrators.\n452 - Task does not exists. The task ID could not be linked to an existing task.\n454 - Task is executed in some runs. Delete these first.\n455 - Deleting the task failed. Please contact support team.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/task" : { - "post" : { - "tags" : [ "task" ], - "summary" : "Upload task", - "description" : "Uploads a task. Upon success, it returns the task id.\n", - "consumes" : [ "multipart/form-data" ], - "parameters" : [ { - "name" : "description", - "in" : "formData", - "description" : "An XML file describing the task. Only name, description, and task format are required. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.task.upload) and an [XML example](https://www.openml.org/api/v1/xml_example/task).", - "required" : true, - "type" : "file" - }, { - "name" : "api_key", - "in" : "query", - "description" : "Api key to authenticate the user", - "required" : true, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "Id of the uploaded task", - "examples" : { - "application/json" : "{\n \"upload_task\": {\n \"id\": \"4328\"\n }\n}" - }, - "schema" : { - "type" : "object", - "properties" : { - "upload_task" : { - "$ref" : "#/definitions/inline_response_200_5_upload_task" - } - } - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n530 - Description file not present. Please upload the task description.\n531 - Internal error. Please contact api support team\n532 - Problem validating uploaded description file. The XML description format does not meet the standards\n533 - Task already exists.\n534 - Error creating the task.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/task/list/{filters}" : { - "get" : { - "tags" : [ "task" ], - "summary" : "List and filter tasks", - "description" : "List tasks, possibly filtered by a range of properties from the task itself or from the underlying dataset. Any number of properties can be combined by listing them one after the other in the form '/task/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all tasks that match the constraints.\n", - "parameters" : [ { - "name" : "filters", - "in" : "path", - "description" : "Any combination of these filters\n/limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, tasks 11..15 will be returned. Both limit and offset need to be specified.\n/status/{status} - returns only tasks with a given status, either 'active', 'deactivated', or 'in_preparation'.\n/type/{type_id} - returns only tasks with a given task type id. See the list of task types of the ID's (e.g. 1 = Supervised Classification).\n/tag/{tag} - returns only tasks tagged with the given tag.\n/data_tag/{tag} - returns only tasks for which the underlying dataset is tagged with the given tag.\n/{data_quality}/{range} - returns only tasks for which the underlying datasets have certain qualities. {data_quality} can be data_id, data_name, number_instances, number_features, number_classes, number_missing_values. {range} can be a specific value or a range in the form 'low..high'. Multiple qualities can be combined, as in 'number_instances/0..50/number_features/0..10'.\n", - "required" : true, - "type" : "string" - }, { - "name" : "api_key", - "in" : "query", - "description" : "API key to authenticate the user", - "required" : false, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "A list of tasks with the given tag", - "examples" : { - "application/json" : "{\n \"task\": {\n \"task\": [\n {\n \"task_id\":\"1\",\n \"task_type\":\"Supervised Classification\",\n \"did\":\"1\",\n \"name\":\"anneal\",\n \"status\":\"active\",\n \"format\":\"ARFF\",\n \"input\":[\n {\n \"name\":\"estimation_procedure\",\n \"value\":\"1\"\n },\n {\n \"name\":\"evaluation_measures\",\n \"value\":\"predictive_accuracy\"\n },\n {\n \"name\":\"source_data\",\n \"value\":\"1\"\n },\n {\n \"name\":\"target_feature\",\n \"value\":\"class\"\n }\n ],\n \"quality\":[\n {\n \"name\":\"MajorityClassSize\",\n \"value\":\"684\"\n },\n {\n \"name\":\"MaxNominalAttDistinctValues\",\n \"value\":\"10.0\"\n },\n {\n \"name\":\"MinorityClassSize\",\n \"value\":\"0\"\n },\n {\n \"name\":\"NumBinaryAtts\",\n \"value\":\"14.0\"\n },\n {\n \"name\":\"NumberOfClasses\",\n \"value\":\"6\"\n },\n {\n \"name\":\"NumberOfFeatures\",\n \"value\":\"39\"\n },\n {\n \"name\":\"NumberOfInstances\",\n \"value\":\"898\"\n },\n {\n \"name\":\"NumberOfInstancesWithMissingValues\",\n \"value\":\"0\"\n },\n {\n \"name\":\"NumberOfMissingValues\",\n \"value\":\"0\"\n },\n {\n \"name\":\"NumberOfNumericFeatures\",\n \"value\":\"6\"\n },\n {\n \"name\":\"NumberOfSymbolicFeatures\",\n \"value\":\"32\"\n }\n ],\n \"tag\":[\n \"basic\",\n \"study_1\",\n \"study_7\",\n \"under100k\",\n \"under1m\"\n ]\n }\n ]\n }\n}" - }, - "schema" : { - "$ref" : "#/definitions/TaskList" - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n480 - Illegal filter specified.\n481 - Filter values/ranges not properly specified.\n482 - No results. There where no matches for the given constraints.\n483 - Can not specify an offset without a limit.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/task/tag" : { - "post" : { - "tags" : [ "task" ], - "summary" : "Tag a task", - "description" : "Tags a task.", - "consumes" : [ "application/x-www-form-urlencoded" ], - "parameters" : [ { - "name" : "task_id", - "in" : "formData", - "description" : "Id of the task.", - "required" : true, - "type" : "number", - "format" : "integer" - }, { - "name" : "tag", - "in" : "formData", - "description" : "Tag name", - "required" : true, - "type" : "string" - }, { - "name" : "api_key", - "in" : "formData", - "description" : "Api key to authenticate the user", - "required" : true, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "The id of the tagged task", - "examples" : { - "application/json" : "{\n \"task_tag\": {\n \"id\": \"2\"\n }\n}" - }, - "schema" : { - "type" : "object", - "properties" : { - "task_tag" : { - "$ref" : "#/definitions/inline_response_200_6_task_tag" - } - } - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n470 - In order to add a tag, please upload the entity id (either data_id, task_id, flow_id, run_id) and tag (the name of the tag).\n471 - Entity not found. The provided entity_id {data_id, task_id, flow_id, run_id} does not correspond to an existing entity.\n472 - Entity already tagged by this tag. The entity {dataset, task, flow, run} already had this tag.\n473 - Something went wrong inserting the tag. Please contact OpenML Team.\n474 - Internal error tagging the entity. Please contact OpenML Team.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/task/untag" : { - "post" : { - "tags" : [ "task" ], - "summary" : "Untag a task", - "description" : "Untags a task.", - "consumes" : [ "application/x-www-form-urlencoded" ], - "parameters" : [ { - "name" : "task_id", - "in" : "formData", - "description" : "Id of the task.", - "required" : true, - "type" : "number" - }, { - "name" : "tag", - "in" : "formData", - "description" : "Tag name", - "required" : true, - "type" : "string" - }, { - "name" : "api_key", - "in" : "formData", - "description" : "Api key to authenticate the user", - "required" : true, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "A the features of the task", - "examples" : { - "application/json" : "{\n \"task_untag\": {\n \"id\": \"2\"\n }\n}" - }, - "schema" : { - "type" : "object", - "properties" : { - "task_untag" : { - "$ref" : "#/definitions/inline_response_200_7_task_untag" - } - } - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n475 - Please give entity_id {data_id, flow_id, run_id} and tag. In order to remove a tag, please upload the entity id (either data_id, task_id, flow_id, run_id) and tag (the name of the tag).\n476 - Entity {dataset, task, flow, run} not found. The provided entity_id {data_id, task_id, flow_id, run_id} does not correspond to an existing entity.\n477 - Tag not found. The provided tag is not associated with the entity {dataset, task, flow, run}.\n478 - Tag is not owned by you. The entity {dataset, flow, run} was tagged by another user. Hence you cannot delete it.\n479 - Internal error removing the tag. Please contact OpenML Team.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/tasktype/{id}" : { - "get" : { - "tags" : [ "tasktype" ], - "summary" : "Get task type description", - "description" : "Returns information about a task type. The information includes a description, the given inputs and the expected outputs.\n", - "parameters" : [ { - "name" : "id", - "in" : "path", - "description" : "ID of the task.", - "required" : true, - "type" : "number", - "format" : "integer" - }, { - "name" : "api_key", - "in" : "query", - "description" : "Api key to authenticate the user", - "required" : false, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "A task type description", - "examples" : { - "application/json" : "{\n \"task_type\": {\n \"id\": \"1\",\n \"name\": \"Supervised Classification\",\n \"description\": \"In supervised classification, you are given an input dataset in which instances are labeled with a certain class. The goal is to build a model that predicts the class for future unlabeled instances. The model is evaluated using a train-test procedure, e.g. cross-validation.

\\n\\nTo make results by different users comparable, you are given the exact train-test folds to be used, and you need to return at least the predictions generated by your model for each of the test instances. OpenML will use these predictions to calculate a range of evaluation measures on the server.

\\n\\nYou can also upload your own evaluation measures, provided that the code for doing so is available from the implementation used. For extremely large datasets, it may be infeasible to upload all predictions. In those cases, you need to compute and provide the evaluations yourself.

\\n\\nOptionally, you can upload the model trained on all the input data. There is no restriction on the file format, but please use a well-known format or PMML.\",\n \"creator\": [\n \"Joaquin Vanschoren\",\n \"Jan van Rijn\",\n \"Luis Torgo\",\n \"Bernd Bischl\"\n ],\n \"contributor\": [\n \"Bo Gao\",\n \"Simon Fischer\",\n \"Venkatesh Umaashankar\",\n \"Michael Berthold\",\n \"Bernd Wiswedel\",\n \"Patrick Winter\"\n ],\n \"creation_date\": \"2013-01-24 00:00:00\",\n \"input\": [\n {\n \"name\": \"source_data\",\n \"requirement\": \"required\",\n \"data_type\": \"numeric\"\n },\n {\n \"name\": \"target_feature\",\n \"requirement\": \"required\",\n \"data_type\": \"string\"\n },\n {\n \"name\": \"estimation_procedure\",\n \"requirement\": \"required\",\n \"data_type\": \"numeric\"\n },\n {\n \"name\": \"cost_matrix\",\n \"data_type\": \"json\"\n },\n {\n \"name\": \"custom_testset\",\n \"data_type\": \"json\"\n },\n {\n \"name\": \"evaluation_measures\",\n \"data_type\": \"string\"\n }\n ]\n }\n}" - }, - "schema" : { - "$ref" : "#/definitions/TaskType" - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n240 - Please provide task type ID.\n241 - Unknown task type. The task type with the given id was not found in the database\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/tasktype/list" : { - "get" : { - "tags" : [ "tasktype" ], - "summary" : "List all task types", - "description" : "Returns an array with all task types in the system.\n", - "parameters" : [ { - "name" : "api_key", - "in" : "query", - "description" : "API key to authenticate the user", - "required" : false, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "A task description", - "examples" : { - "application/json" : "{\n \"task_types\":{\n \"task_type\":[\n {\n \"id\":\"1\",\n \"name\":\"Supervised Classification\",\n \"description\":\"In supervised classification, you are given ...\",\n \"creator\":\"Joaquin Vanschoren, Jan van Rijn, Luis Torgo, Bernd Bischl\"\n },\n {\n \"id\":\"2\",\n \"name\":\"Supervised Regression\",\n \"description\":\"Given a dataset with a numeric target ...\",\n \"creator\":\"Joaquin Vanschoren, Jan van Rijn, Luis Torgo, Bernd Bischl\"\n },{}\n ]\n }\n}" - }, - "schema" : { - "$ref" : "#/definitions/TaskTypeList" - } - }, - "default" : { - "description" : "Unexpected error", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/flow/{id}" : { - "get" : { - "tags" : [ "flow" ], - "summary" : "Get flow description", - "description" : "Returns information about a flow. The information includes the name, information about the creator, dependencies, parameters, run instructions and more.\n", - "parameters" : [ { - "name" : "id", - "in" : "path", - "description" : "ID of the flow.", - "required" : true, - "type" : "number", - "format" : "integer" - }, { - "name" : "api_key", - "in" : "query", - "description" : "API key to authenticate the user", - "required" : false, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "A flow description", - "examples" : { - "application/json" : "{\n \"flow\": {\n \"id\":\"100\",\n \"uploader\":\"1\",\n \"name\":\"weka.J48\",\n \"version\":\"2\",\n \"external_version\":\"Weka_3.7.5_9117\",\n \"description\":\"...\",\n \"upload_date\":\"2014-04-23 18:00:36\",\n \"language\":\"Java\",\n \"dependencies\":\"Weka_3.7.5\",\n \"parameter\": [\n {\n \"name\":\"A\",\n \"data_type\":\"flag\",\n \"default_value\":[],\n \"description\":\"Laplace smoothing...\"\n },\n {\n \"name\":\"C\",\n \"data_type\":\"option\",\n \"default_value\":\"0.25\",\n \"description\":\"Set confidence threshold...\"\n }\n ]\n }\n}" - }, - "schema" : { - "$ref" : "#/definitions/Flow" - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n180 - Please provide flow id.\n181 - Unknown flow. The flow with the given ID was not found in the database.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - }, - "delete" : { - "tags" : [ "flow" ], - "summary" : "Delete a flow", - "description" : "Deletes a flow. Upon success, it returns the ID of the deleted flow.\n", - "parameters" : [ { - "name" : "id", - "in" : "path", - "description" : "Id of the flow.", - "required" : true, - "type" : "number", - "format" : "integer" - }, { - "name" : "api_key", - "in" : "query", - "description" : "API key to authenticate the user", - "required" : true, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "ID of the deleted flow", - "examples" : { - "application/json" : "{\n \"flow_delete\": {\n \"id\": \"4328\"\n }\n}" - }, - "schema" : { - "type" : "object", - "properties" : { - "flow_delete" : { - "$ref" : "#/definitions/inline_response_200_8_flow_delete" - } - } - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n320 - Please provide API key. In order to remove your content, please authenticate.\n321 - Authentication failed. The API key was not valid. Please try to login again, or contact api administrators.\n322 - Flow does not exists. The flow ID could not be linked to an existing flow.\n323 - Flow is not owned by you. The flow is owned by another user. Hence you cannot delete it.\n324 - Flow is in use by other content. Can not be deleted. The flow is used in runs, evaluations or as a component of another flow. Delete other content before deleting this flow.\n325 - Deleting flow failed. Deleting the flow failed. Please contact\nsupport team.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/flow" : { - "post" : { - "tags" : [ "flow" ], - "summary" : "Upload a flow", - "description" : "Uploads a flow. Upon success, it returns the flow id.\n", - "consumes" : [ "multipart/form-data" ], - "parameters" : [ { - "name" : "description", - "in" : "formData", - "description" : "An XML file describing the flow. Only name and description are required. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.implementation.upload) and an [XML example](https://www.openml.org/api/v1/xml_example/flow).", - "required" : true, - "type" : "file" - }, { - "name" : "flow", - "in" : "formData", - "description" : "The actual flow, being a source (or binary) file.", - "required" : false, - "type" : "file" - }, { - "name" : "api_key", - "in" : "query", - "description" : "Api key to authenticate the user", - "required" : true, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "Id of the uploaded flow", - "examples" : { - "application/json" : "{\n \"upload_flow\": {\n \"id\": \"2520\"\n }\n}" - }, - "schema" : { - "type" : "object", - "properties" : { - "upload_flow" : { - "$ref" : "#/definitions/inline_response_200_9_upload_flow" - } - } - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n160 - Error in file uploading. There was a problem with the file upload.\n161 - Please provide description xml.\n163 - Problem validating uploaded description file. The XML description format does not meet the standards.\n164 - Flow already stored in database. Please change name or version number\n165 - Failed to insert flow. There can be many causes for this error. If you included the implements field, it should be an existing entry in the algorithm or math_function table. Otherwise it could be an internal server error. Please contact API support team.\n166 - Failed to add flow to database. Internal server error, please contact API administrators\n167 - Illegal files uploaded. An non required file was uploaded.\n168 - The provided md5 hash equals not the server generated md5 hash of the file.\n169 - Please provide API key. In order to share content, please authenticate and provide API key.\n170 - Authentication failed. The API key was not valid. Please try to login again, or contact API administrators\n171 - Flow already exists. This flow is already in the database\n172 - XSD not found. Please contact API support team\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/flow/exists/{name}/{version}" : { - "get" : { - "tags" : [ "flow" ], - "summary" : "Check whether flow exists", - "description" : "Checks whether a flow with the given name and (external) version exists.\n", - "parameters" : [ { - "name" : "name", - "in" : "path", - "description" : "The name of the flow.", - "required" : true, - "type" : "string" - }, { - "name" : "version", - "in" : "path", - "description" : "The external version of the flow", - "required" : true, - "type" : "string" - }, { - "name" : "api_key", - "in" : "query", - "description" : "API key to authenticate the user", - "required" : false, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "A list of flows", - "examples" : { - "application/json" : "{\n \"flow_exists\": {\n \"exists\": \"true\",\n \"id\": \"65\"\n }\n}" - }, - "schema" : { - "type" : "object", - "properties" : { - "flow_exists" : { - "$ref" : "#/definitions/inline_response_200_10_flow_exists" - } - } - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n330 - Mandatory fields not present. Please provide name and external_version.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/flow/list/{filters}" : { - "get" : { - "tags" : [ "flow" ], - "summary" : "List and filter flows", - "description" : "List flows, possibly filtered by a range of properties. Any number of properties can be combined by listing them one after the other in the form '/task/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all flows that match the constraints.\n", - "parameters" : [ { - "name" : "filters", - "in" : "path", - "description" : "Any combination of these filters\n/limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, tasks 11..15 will be returned. Both limit and offset need to be specified.\n/tag/{tag} - returns only tasks tagged with the given tag.\n/uploader/{id} - return only evaluations uploaded by a specific user, specified by user ID.\n", - "required" : true, - "type" : "string" - }, { - "name" : "api_key", - "in" : "query", - "description" : "API key to authenticate the user", - "required" : false, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "A list of flows", - "examples" : { - "application/json" : "{\n \"flows\":\n {\n \"flow\":[\n {\n \"id\":\"65\",\n \"full_name\":\"weka.RandomForest(1)\",\n \"name\":\"weka.RandomForest\",\n \"version\":\"1\",\n \"external_version\":\"Weka_3.7.10_9186\",\n \"uploader\":\"1\"\n },\n {\n \"id\":\"66\",\n \"full_name\":\"weka.IBk(1)\",\n \"name\":\"weka.IBk\",\n \"version\":\"1\",\n \"external_version\":\"Weka_3.7.10_8034\",\n \"uploader\":\"1\"\n },\n {\n \"id\":\"67\",\n \"full_name\":\"weka.BayesNet_K2(1)\",\n \"name\":\"weka.BayesNet_K2\",\n \"version\":\"1\",\n \"external_version\":\"Weka_3.7.10_8034\",\n \"uploader\":\"1\"\n }\n ]\n }\n }" - }, - "schema" : { - "$ref" : "#/definitions/FlowList" - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n500 - No results. There where no matches for the given constraints.\n501 - Illegal filter specified.\n502 - Filter values/ranges not properly specified.\n503 - Can not specify an offset without a limit.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/flow/owned" : { - "get" : { - "tags" : [ "flow" ], - "summary" : "List flows owned by you", - "description" : "Returns an array with all flows owned by you.\n", - "parameters" : [ { - "name" : "api_key", - "in" : "query", - "description" : "API key to authenticate the user", - "required" : false, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "A list of flows", - "examples" : { - "application/json" : "{\n \"flow_owned\": {\n \"id\": [\n \"111\",\n \"112\",\n \"113\",\n \"114\",\n \"115\",\n \"116\",\n \"117\"\n ]\n }\n}" - }, - "schema" : { - "type" : "object", - "properties" : { - "flow_owned" : { - "$ref" : "#/definitions/inline_response_200_11_flow_owned" - } - } - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n310 - Please provide API key to authenticate.\n311 - Authentication failed. The API key was not valid. Please try to login again, or contact api administrators.\n312 - No flows owned by you.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/flow/tag" : { - "post" : { - "tags" : [ "flow" ], - "summary" : "Tag a flow", - "description" : "Tags a flow.", - "consumes" : [ "application/x-www-form-urlencoded" ], - "parameters" : [ { - "name" : "flow_id", - "in" : "formData", - "description" : "Id of the flow.", - "required" : true, - "type" : "number", - "format" : "integer" - }, { - "name" : "tag", - "in" : "formData", - "description" : "Tag name", - "required" : true, - "type" : "string" - }, { - "name" : "api_key", - "in" : "formData", - "description" : "Api key to authenticate the user", - "required" : true, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "The id of the tagged flow", - "examples" : { - "application/json" : "{\n \"flow_tag\": {\n \"id\": \"2\"\n }\n}" - }, - "schema" : { - "type" : "object", - "properties" : { - "flow_tag" : { - "$ref" : "#/definitions/inline_response_200_12_flow_tag" - } - } - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n470 - In order to add a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag).\n471 - Entity not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity.\n472 - Entity already tagged by this tag. The entity {dataset, flow, run} already had this tag.\n473 - Something went wrong inserting the tag. Please contact OpenML Team.\n474 - Internal error tagging the entity. Please contact OpenML Team.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/flow/untag" : { - "post" : { - "tags" : [ "flow" ], - "summary" : "Untag a flow", - "description" : "Untags a flow.", - "consumes" : [ "application/x-www-form-urlencoded" ], - "parameters" : [ { - "name" : "flow_id", - "in" : "formData", - "description" : "Id of the flow.", - "required" : true, - "type" : "number" - }, { - "name" : "tag", - "in" : "formData", - "description" : "Tag name", - "required" : true, - "type" : "string" - }, { - "name" : "api_key", - "in" : "formData", - "description" : "Api key to authenticate the user", - "required" : true, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "The id of the untagged flow", - "examples" : { - "application/json" : "{\n \"flow_untag\": {\n \"id\": \"2\"\n }\n}" - }, - "schema" : { - "type" : "object", - "properties" : { - "flow_untag" : { - "$ref" : "#/definitions/inline_response_200_13_flow_untag" - } - } - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n475 - Please give entity_id {data_id, flow_id, run_id} and tag. In order to remove a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag).\n476 - Entity {dataset, flow, run} not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity.\n477 - Tag not found. The provided tag is not associated with the entity {dataset, flow, run}.\n478 - Tag is not owned by you. The entity {dataset, flow, run} was tagged\nby another user. Hence you cannot delete it.\n479 - Internal error removing the tag. Please contact OpenML Team.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/setup/{id}" : { - "get" : { - "tags" : [ "setup" ], - "summary" : "Get a hyperparameter setup", - "description" : "Returns information about a setup. The information includes the list of hyperparameters, with name, value, and default value.\n", - "parameters" : [ { - "name" : "id", - "in" : "path", - "description" : "ID of the hyperparameter setup (configuration). These IDs are stated in run descriptions.", - "required" : true, - "type" : "number", - "format" : "integer" - }, { - "name" : "api_key", - "in" : "query", - "description" : "API key to authenticate the user", - "required" : false, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "A setup description", - "examples" : { - "application/json" : "{\n \"setup_parameters\":{\n \"flow_id\":\"59\",\n \"parameter\":[\n {\n \"full_name\":\"weka.JRip(1)_F\",\n \"parameter_name\":\"F\",\n \"data_type\":\"option\",\n \"default_value\":\"3\",\n \"value\":\"3\"\n },{\n \"full_name\":\"weka.JRip(1)_N\",\n \"parameter_name\":\"N\",\n \"data_type\":\"option\",\n \"default_value\":\"2.0\",\n \"value\":\"2.0\"\n },{\n \"full_name\":\"weka.JRip(1)_O\",\n \"parameter_name\":\"O\",\n \"data_type\":\"option\",\n \"default_value\":\"2\",\n \"value\":\"2\"\n },{\n \"full_name\":\"weka.JRip(1)_S\",\n \"parameter_name\":\"S\",\n \"data_type\":\"option\",\n \"default_value\":\"1\",\n \"value\":\"1\"\n }]\n }\n}" - }, - "schema" : { - "$ref" : "#/definitions/Setup" - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n280 - Please provide setup ID. In order to view setup details, please provide the run ID\n281 - Setup not found. The setup ID was invalid, or setup does not exist (anymore).\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - }, - "delete" : { - "tags" : [ "setup" ], - "summary" : "Delete setup", - "description" : "Deletes a setup. Upon success, it returns the ID of the deleted setup.\n", - "parameters" : [ { - "name" : "id", - "in" : "path", - "description" : "Id of the setup.", - "required" : true, - "type" : "number", - "format" : "integer" - }, { - "name" : "api_key", - "in" : "query", - "description" : "Api key to authenticate the user", - "required" : true, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "ID of the deleted setup", - "examples" : { - "application/json" : "{\n \"setup_delete\": {\n \"id\": \"1\"\n }\n}" - }, - "schema" : { - "type" : "object", - "properties" : { - "study_delete" : { - "$ref" : "#/definitions/inline_response_200_14_study_delete" - } - } - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n401 - Authentication failed. Please provide API key. In order to remove your content, please authenticate.\n402 - Setup does not exists. The setup ID could not be linked to an existing setup.\n404 - Setup deletion failed. Setup is in use by other content (runs, schedules, etc). Can not be deleted.\n405 - Setup deletion failed. Please try again later.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/setup/tag" : { - "post" : { - "tags" : [ "setup" ], - "summary" : "Tag a setup", - "description" : "Tags a setup.", - "consumes" : [ "application/x-www-form-urlencoded" ], - "parameters" : [ { - "name" : "setup_id", - "in" : "formData", - "description" : "Id of the setup.", - "required" : true, - "type" : "number", - "format" : "integer" - }, { - "name" : "tag", - "in" : "formData", - "description" : "Tag name", - "required" : true, - "type" : "string" - }, { - "name" : "api_key", - "in" : "formData", - "description" : "Api key to authenticate the user", - "required" : true, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "The id of the tagged setup", - "examples" : { - "application/json" : "{\n \"setup_tag\": {\n \"id\": \"2\"\n }\n}" - }, - "schema" : { - "type" : "object", - "properties" : { - "flow_tag" : { - "$ref" : "#/definitions/inline_response_200_15_flow_tag" - } - } - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n470 - In order to add a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag).\n471 - Entity not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity.\n472 - Entity already tagged by this tag. The entity {dataset, flow, run} already had this tag.\n473 - Something went wrong inserting the tag. Please contact OpenML Team.\n474 - Internal error tagging the entity. Please contact OpenML Team.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/setup/untag" : { - "post" : { - "tags" : [ "setup" ], - "summary" : "Untag a setup", - "description" : "Untags a setup.", - "consumes" : [ "application/x-www-form-urlencoded" ], - "parameters" : [ { - "name" : "setup_id", - "in" : "formData", - "description" : "Id of the setup.", - "required" : true, - "type" : "number" - }, { - "name" : "tag", - "in" : "formData", - "description" : "Tag name", - "required" : true, - "type" : "string" - }, { - "name" : "api_key", - "in" : "formData", - "description" : "Api key to authenticate the user", - "required" : true, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "The id of the untagged setup", - "examples" : { - "application/json" : "{\n \"setup_untag\": {\n \"id\": \"2\"\n }\n}" - }, - "schema" : { - "type" : "object", - "properties" : { - "flow_untag" : { - "$ref" : "#/definitions/inline_response_200_16_flow_untag" - } - } - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n475 - Please give entity_id {data_id, flow_id, run_id} and tag. In order to remove a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag).\n476 - Entity {dataset, flow, run} not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity.\n477 - Tag not found. The provided tag is not associated with the entity {dataset, flow, run}.\n478 - Tag is not owned by you. The entity {dataset, flow, run} was tagged\nby another user. Hence you cannot delete it.\n479 - Internal error removing the tag. Please contact OpenML Team.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/setup/list/{filters}" : { - "get" : { - "tags" : [ "setup" ], - "summary" : "List and filter setups", - "description" : "List setups, filtered by a range of properties. Any number of properties can be combined by listing them one after the other in the form '/setup/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all evaluations that match the constraints. A maximum of 1,000 results are returned at a time, an error is returned if the result set is bigger. Use pagination (via limit and offset filters), or limit the results to certain flows, setups, or tags.\n", - "parameters" : [ { - "name" : "filters", - "in" : "path", - "description" : "Any combination of these filters\n/tag/{tag} - returns only setups tagged with the given tag.\n/flow/{ids} - return only setups for specific flows, specified as a comma-separated list of flow IDs, e.g. ''1,2,3''\n/setup/{ids} - return only specific setups, specified as a comma-separated list of setup IDs, e.g. ''1,2,3''\n/limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, results 11..15 will be returned. Both limit and offset need to be specified.\n", - "required" : true, - "type" : "string" - }, { - "name" : "api_key", - "in" : "query", - "description" : "API key to authenticate the user", - "required" : false, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "A list of setup descriptions", - "examples" : { - "application/json" : "{\n \"setups\": {\n \"setup\": [\n {\n \"setup_id\":\"10\",\n \"flow_id\":\"65\",\n \"parameter\": [\n {\n \"id\":\"4144\",\n \"flow_id\":\"65\",\n \"flow_name\":\"weka.RandomForest\",\n \"full_name\":\"weka.RandomForest(1)_I\",\n \"parameter_name\":\"I\",\n \"data_type\":\"option\",\n \"default_value\":\"10\",\n \"value\":\"10\"\n },\n {\n \"id\":\"4145\",\n \"flow_id\":\"65\",\n \"flow_name\":\"weka.RandomForest\",\n \"full_name\":\"weka.RandomForest(1)_K\",\n \"parameter_name\":\"K\",\n \"data_type\":\"option\",\n \"default_value\":\"0\",\n \"value\":\"0\"\n }\n ]\n }\n ]\n }\n}" - }, - "schema" : { - "$ref" : "#/definitions/SetupList" - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n670 - Please specify at least one filter.\n671 - Illegal filter.\n672 - Illegal filter input.\n673 - Result set too big. Please use one of the filters or the limit option.\n674 - No results, please check the filter.\n675 - Cannot specify offset without limit.\n676 - Requested result limit too high.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/run/{id}" : { - "get" : { - "tags" : [ "run" ], - "summary" : "Get run description", - "description" : "Returns information about a run. The information includes the name, information about the creator, dependencies, parameters, run instructions and more.\n", - "parameters" : [ { - "name" : "id", - "in" : "path", - "description" : "ID of the run.", - "required" : true, - "type" : "number", - "format" : "integer" - }, { - "name" : "api_key", - "in" : "query", - "description" : "API key to authenticate the user", - "required" : false, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "A run description", - "examples" : { - "application/json" : "{\n \"run\": {\n \"run_id\":\"100\",\n \"uploader\":\"1\",\n \"uploader_name\":\"Jan van Rijn\",\n \"task_id\":\"28\",\n \"task_type\":\"Supervised Classification\",\n \"task_evaluation_measure\":\"predictive_accuracy\",\n \"flow_id\":\"67\",\n \"flow_name\":\"weka.BayesNet_K2(1)\",\n \"setup_string\":\"weka.classifiers.bayes.BayesNet -- -D -Q weka.classifiers.bayes.net.search.local.K2 -- -P 1 -S BAYES -E weka.classifiers.bayes.net.estimate.SimpleEstimator -- -A 0.5\",\n \"parameter_setting\": [\n {\n \"name\":\"D\",\n \"value\":\"true\"\n },\n {\n \"name\":\"Q\",\n \"value\":\"weka.classifiers.bayes.net.search.local.K2\"\n },\n {\n \"name\":\"P\",\n \"value\":\"1\"\n },\n {\n \"name\":\"S\",\n \"value\":\"BAYES\"\n }\n ],\n \"input_data\":\n {\n \"dataset\":\n {\n \"did\":\"28\",\n \"name\":\"optdigits\",\n \"url\":\"https:\\/\\/www.openml.org\\/data\\/download\\/28\\/dataset_28_optdigits.arff\"\n }\n },\n \"output_data\":\n {\n \"file\": [\n {\n \"did\":\"48838\",\n \"file_id\":\"261\",\n \"name\":\"description\",\n \"url\":\"https:\\/\\/www.openml.org\\/data\\/download\\/261\\/weka_generated_run935374685998857626.xml\"\n },\n {\n \"did\":\"48839\",\n \"file_id\":\"262\",\n \"name\":\"predictions\",\n \"url\":\"https:\\/\\/www.openml.org\\/data\\/download\\/262\\/weka_generated_predictions576954524972002741.arff\"\n }\n ],\n \"evaluation\": [\n {\n \"name\":\"area_under_roc_curve\",\n \"flow_id\":\"4\",\n \"value\":\"0.990288\",\n \"array_data\":\"[0.99724,0.989212,0.992776,0.994279,0.980578,0.98649,0.99422,0.99727,0.994858,0.976143]\"\n },\n {\n \"name\":\"confusion_matrix\",\n \"flow_id\":\"10\",\n \"array_data\":\"[[544,1,0,0,7,0,1,0,0,1],[0,511,21,1,0,1,3,1,5,28],[0,7,511,1,0,1,0,3,23,11],[0,2,2,519,0,3,0,12,16,18],[0,3,0,0,528,0,4,21,6,6],[0,1,0,7,5,488,2,0,4,51],[1,7,0,0,2,0,548,0,0,0],[0,2,0,1,9,1,0,545,4,4],[1,25,2,2,3,6,2,1,503,9],[0,7,0,20,16,5,0,19,9,486]]\"\n },\n {\n \"name\":\"f_measure\",\n \"flow_id\":\"12\",\n \"value\":\"0.922723\",\n \"array_data\":\"[0.989091,0.898857,0.935041,0.92431,0.927944,0.918156,0.980322,0.933219,0.895018,0.826531]\"\n },\n {\n \"name\":\"kappa\",\n \"flow_id\":\"13\",\n \"value\":\"0.913601\"\n }\n ]\n }\n }\n}" - }, - "schema" : { - "$ref" : "#/definitions/Run" - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n220 - Please provide run ID. In order to view run details, please provide the run ID.\n221 - Run not found. The run ID was invalid, run does not exist (anymore).\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - }, - "delete" : { - "tags" : [ "run" ], - "summary" : "Delete run", - "description" : "Deletes a run. Upon success, it returns the ID of the deleted run.\n", - "parameters" : [ { - "name" : "id", - "in" : "path", - "description" : "Id of the run.", - "required" : true, - "type" : "number", - "format" : "integer" - }, { - "name" : "api_key", - "in" : "query", - "description" : "API key to authenticate the user", - "required" : true, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "ID of the deleted run", - "examples" : { - "application/json" : "{\n \"run_delete\": {\n \"id\": \"2520\"\n }\n}" - }, - "schema" : { - "type" : "object", - "properties" : { - "data_delete" : { - "$ref" : "#/definitions/inline_response_200_17_data_delete" - } - } - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n390 - Please provide API key. In order to remove your content, please authenticate.\n391 - Authentication failed. The API key was not valid. Please try to login again, or contact api administrators\n392 - Run does not exists. The run ID could not be linked to an existing run.\n393 - Run is not owned by you. The run was owned by another user. Hence you cannot delete it.\n394 - Deleting run failed. Deleting the run failed. Please contact support team.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/run" : { - "post" : { - "tags" : [ "run" ], - "summary" : "Upload run", - "description" : "Uploads a run. Upon success, it returns the run id.\n", - "consumes" : [ "multipart/form-data" ], - "parameters" : [ { - "name" : "description", - "in" : "formData", - "description" : "An XML file describing the dataset. Only name, description, and data format are required. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.run.upload) and an [XML example](https://www.openml.org/api/v1/xml_example/run).", - "required" : true, - "type" : "file" - }, { - "name" : "predictions", - "in" : "formData", - "description" : "The predictions generated by the run", - "required" : true, - "type" : "file" - }, { - "name" : "model_readable", - "in" : "formData", - "description" : "The human-readable model generated by the run", - "required" : false, - "type" : "file" - }, { - "name" : "model_serialized", - "in" : "formData", - "description" : "The serialized model generated by the run", - "required" : false, - "type" : "file" - }, { - "name" : "api_key", - "in" : "query", - "description" : "Api key to authenticate the user", - "required" : true, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "Id of the uploaded run", - "examples" : { - "application/json" : "{\n \"upload_run\": {\n \"id\": \"2520\"\n }\n}" - }, - "schema" : { - "type" : "object", - "properties" : { - "upload_flow" : { - "$ref" : "#/definitions/inline_response_200_18_upload_flow" - } - } - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n201 - Authentication failed. The API key was not valid. Please try to login again, or contact api administrators.\n202 - Please provide run XML.\n203 - Could not validate run xml by XSD. Please double check that the xml is valid.\n204 - Unknown task. The task with the given ID was not found in the database.\n205 - Unknown flow. The flow with the given ID was not found in the database.\n206 - Invalid number of files. The number of uploaded files did not match the number of files expected for the task type\n207 - File upload failed. One of the files uploaded has a problem.\n208 - Error inserting setup record. Please contact api administrators\n210 - Unable to store run. Please contact api administrators.\n211 - Dataset not in database. One of the datasets of the task was not included in database, please contact api administrators.\n212 - Unable to store file. Please contact api administrators.\n213 - Parameter in run xml unknown. One of the parameters provided in the run xml is not registered as parameter for the flow nor its components.\n214 - Unable to store input setting. Please contact API support team.\n215 - Unable to evaluate predictions. Please contact API support team.\n216 - Error thrown by Java Application. Additional information field is provided.\n217 - Error processing output data. Unknown or inconsistent evaluation measure. One of the provided evaluation measures could not be matched with a record in the math_function or flow table.\n218 - Wrong flow associated with run. The flow implements a math_function, which is unable to generate predictions. Please select another flow.\n219 - Error reading the XML document. The XML description file could not be verified.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/run/list/{filters}" : { - "get" : { - "tags" : [ "run" ], - "summary" : "List and filter runs", - "description" : "List runs, filtered by a range of properties. Any number of properties can be combined by listing them one after the other in the form '/run/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all runs that match the constraints. A maximum of 10,000 results are returned, an error is returned if the result set is bigger. Use pagination (via limit and offset filters), or limit the results to certain tasks, flows, setups, or uploaders. \n", - "parameters" : [ { - "name" : "filters", - "in" : "path", - "description" : "Any combination of these filters\n/tag/{tag} - return only runs tagged with the given tag.\n/run/{ids} - return only specific runs, specified as a comma-separated list of run IDs, e.g. ''1,2,3''\n/task/{ids} - return only runs on specific tasks, specified as a comma-separated list of task IDs, e.g. ''1,2,3''\n/flow/{ids} - return only runs on specific flows, specified as a comma-separated list of flow IDs, e.g. ''1,2,3''\n/setup/{ids} - return only runs with specific setups, specified as a comma-separated list of setup IDs, e.g. ''1,2,3''\n/uploader/{ids} - return only runs uploaded by specific users, specified as a comma-separated list of user IDs, e.g. ''1,2,3''\n/limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, results 11..15 will be returned. Both limit and offset need to be specified.\n", - "required" : true, - "type" : "string" - }, { - "name" : "api_key", - "in" : "query", - "description" : "API key to authenticate the user", - "required" : false, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "A list of runs descriptions", - "examples" : { - "application/json" : { - "runs" : { - "run" : [ { - "run_id" : "100", - "task_id" : "28", - "setup_id" : "12", - "flow_id" : "67", - "uploader" : "1", - "upload_time" : "2014-04-06 23:30:40", - "error_message" : [ ] - }, { - "run_id" : "101", - "task_id" : "48", - "setup_id" : "6", - "flow_id" : "61", - "uploader" : "1", - "upload_time" : "2014-04-06 23:30:40", - "error_message" : [ ] - }, { - "run_id" : "102", - "task_id" : "41", - "setup_id" : "3", - "flow_id" : "58", - "uploader" : "1", - "upload_time" : "2014-04-06 23:30:40", - "error_message" : [ ] - } ] - } - } - }, - "schema" : { - "$ref" : "#/definitions/RunList" - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n510 - Please provide at least task, flow or setup, uploader or run, to filter results, or limit the number of responses. The number of runs is huge. Please limit the result space.\n511 - Input not safe. The input parameters (task_id, setup_id, flow_id, run_id, uploader_id) did not meet the constraints (comma separated list of integers).\n512 - There where no results. Check whether there are runs under the given constraint.\n513 - Too many results. Given the constraints, there were still too many results. Please add filters to narrow down the list.\n514 - Illegal filter specified.\n515 - Offset specified without limit.\n516 - Requested result limit too high.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/run/tag" : { - "post" : { - "tags" : [ "run" ], - "summary" : "Tag a run", - "description" : "Tags a run.", - "consumes" : [ "application/x-www-form-urlencoded" ], - "parameters" : [ { - "name" : "run_id", - "in" : "formData", - "description" : "Id of the run.", - "required" : true, - "type" : "number", - "format" : "integer" - }, { - "name" : "tag", - "in" : "formData", - "description" : "Tag name", - "required" : true, - "type" : "string" - }, { - "name" : "api_key", - "in" : "formData", - "description" : "Api key to authenticate the user", - "required" : true, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "The id of the tagged run", - "examples" : { - "application/json" : "{\n \"run_tag\": {\n \"id\": \"2\"\n }\n}" - }, - "schema" : { - "type" : "object", - "properties" : { - "run_tag" : { - "$ref" : "#/definitions/inline_response_200_19_run_tag" - } - } - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n470 - In order to add a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag).\n471 - Entity not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity.\n472 - Entity already tagged by this tag. The entity {dataset, flow, run} already had this tag.\n473 - Something went wrong inserting the tag. Please contact OpenML Team.\n474 - Internal error tagging the entity. Please contact OpenML Team.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/run/untag" : { - "post" : { - "tags" : [ "run" ], - "summary" : "Untag a run", - "description" : "Untags a run.", - "consumes" : [ "application/x-www-form-urlencoded" ], - "parameters" : [ { - "name" : "run_id", - "in" : "formData", - "description" : "Id of the run.", - "required" : true, - "type" : "number" - }, { - "name" : "tag", - "in" : "formData", - "description" : "Tag name", - "required" : true, - "type" : "string" - }, { - "name" : "api_key", - "in" : "formData", - "description" : "Api key to authenticate the user", - "required" : true, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "The id of the untagged run", - "examples" : { - "application/json" : "{\n \"run_untag\": {\n \"id\": \"2\"\n }\n}" - }, - "schema" : { - "type" : "object", - "properties" : { - "run_untag" : { - "$ref" : "#/definitions/inline_response_200_20_run_untag" - } - } - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n475 - Please give entity_id {data_id, flow_id, run_id} and tag. In order to remove a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag).\n476 - Entity {dataset, flow, run} not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity.\n477 - Tag not found. The provided tag is not associated with the entity {dataset, flow, run}.\n478 - Tag is not owned by you. The entity {dataset, flow, run} was tagged by another user. Hence you cannot delete it.\n479 - Internal error removing the tag. Please contact OpenML Team.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/run/evaluate" : { - "post" : { - "tags" : [ "run" ], - "summary" : "Uploads a run evaluation", - "description" : "Uploads a run evaluation. When successful, it returns the run id.\n", - "consumes" : [ "multipart/form-data" ], - "parameters" : [ { - "name" : "description", - "in" : "formData", - "description" : "An XML file describing the run evaluation.Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.run.evaluate) and an [XML example](https://www.openml.org/api/v1/xml_example/run.evaluate).", - "required" : true, - "type" : "file" - }, { - "name" : "api_key", - "in" : "query", - "description" : "Api key to authenticate the user", - "required" : true, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "Id of the evaluated run", - "examples" : { - "application/json" : "{\n \"run_evaluate\": {\n \"id\": \"2520\"\n }\n}" - }, - "schema" : { - "type" : "object", - "properties" : { - "upload_flow" : { - "$ref" : "#/definitions/inline_response_200_21_upload_flow" - } - } - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n422 - Upload problem description XML\n423 - Problem validating uploaded description file\n424 - Problem opening description xml\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/run/reset/{id}" : { - "get" : { - "tags" : [ "run" ], - "summary" : "Resets a run.", - "description" : "Removes all run evaluations. When a run is reset, the runs will automatically be evaluated as soon as they are picked up by the evaluation engine again.\n", - "parameters" : [ { - "name" : "id", - "in" : "path", - "description" : "Run ID.", - "required" : true, - "type" : "string" - }, { - "name" : "api_key", - "in" : "query", - "description" : "API key to authenticate the user", - "required" : false, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "Id of the evaluated run", - "examples" : { - "application/json" : "{\n \"run_reset\": {\n \"id\": \"2520\"\n }\n}" - }, - "schema" : { - "type" : "object", - "properties" : { - "run_reset" : { - "$ref" : "#/definitions/inline_response_200_21_upload_flow" - } - } - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n412 - Run does not exist\n413 - Run is not owned by you\n394 - Resetting run failed\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/run/trace/{id}" : { - "get" : { - "tags" : [ "run" ], - "summary" : "Get run trace", - "description" : "Returns the optimization trace of run. The trace contains every setup tried, its evaluation, and whether it was selected.\n", - "parameters" : [ { - "name" : "id", - "in" : "path", - "description" : "ID of the run.", - "required" : true, - "type" : "number", - "format" : "integer" - }, { - "name" : "api_key", - "in" : "query", - "description" : "API key to authenticate the user", - "required" : false, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "A run trace description", - "examples" : { - "application/json" : "{\n \"trace\": {\n \"run_id\":\"573055\",\n \"trace_iteration\": {\n \"repeat\":\"0\",\n \"fold\":\"0\",\n \"repeat\":\"0\",\n \"iteration\":\"0\",\n \"setup_string\":{\"parameter_minNumObj\": \"1\",\n \"parameter_confidenceFactor\": \"0.1\"},\n \"evaluation\":\"94.814815\",\n \"selected\": \"true\"\n },\n \"trace_iteration\": {\n \"repeat\":\"0\",\n \"fold\":\"0\",\n \"repeat\":\"0\",\n \"iteration\":\"1\",\n \"setup_string\":{\"parameter_minNumObj\": \"1\",\n \"parameter_confidenceFactor\": \"0.25\"},\n \"evaluation\": \"94.074074\",\n \"selected\": \"true\"\n }\n }\n}" - }, - "schema" : { - "$ref" : "#/definitions/RunTrace" - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n570 - No successful trace associated with this run\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - }, - "post" : { - "tags" : [ "run" ], - "summary" : "Upload run trace", - "description" : "Uploads a run trace. Upon success, it returns the run id.\n", - "consumes" : [ "multipart/form-data" ], - "parameters" : [ { - "name" : "id", - "in" : "path", - "description" : "ID of the run.", - "required" : true, - "type" : "number", - "format" : "integer" - }, { - "name" : "description", - "in" : "formData", - "description" : "An XML file describing the trace. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.run.trace) and an [XML example](https://www.openml.org/api/v1/xml_example/run.trace).", - "required" : true, - "type" : "file" - }, { - "name" : "api_key", - "in" : "query", - "description" : "Api key to authenticate the user", - "required" : true, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "Id of the run with the trace", - "examples" : { - "application/json" : "{\n \"run_trace\": {\n \"id\": \"2520\"\n }\n}" - }, - "schema" : { - "type" : "object", - "properties" : { - "upload_flow" : { - "$ref" : "#/definitions/inline_response_200_23_upload_flow" - } - } - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n561 - Problem with uploaded trace file.\n562 - Problem validating xml trace file.\n563 - Problem loading xml trace file.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/evaluation/list/{filters}" : { - "get" : { - "tags" : [ "evaluation" ], - "summary" : "List and filter evaluations", - "description" : "List evaluations, filtered by a range of properties. Any number of properties can be combined by listing them one after the other in the form '/evaluation/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all evaluations that match the constraints. A maximum of 10,000 results are returned, an error is returned if the result set is bigger. Use pagination (via limit and offset filters), or limit the results to certain tasks, flows, setups, uploaders or runs. \n", - "parameters" : [ { - "name" : "filters", - "in" : "path", - "description" : "Any combination of these filters\n/function/{name} - name of the evaluation measure, e.g. area_under_auc or predictive_accuracy. See the OpenML website for the complete list of measures.\n/tag/{tag} - returns only evaluations of runs tagged with the given tag.\n/run/{ids} - return only evaluations for specific runs, specified as a comma-separated list of run IDs, e.g. ''1,2,3''\n/task/{ids} - return only evaluations for specific tasks, specified as a comma-separated list of task IDs, e.g. ''1,2,3''\n/flow/{ids} - return only evaluations for specific flows, specified as a comma-separated list of flow IDs, e.g. ''1,2,3''\n/setup/{ids} - return only evaluations for specific setups, specified as a comma-separated list of setup IDs, e.g. ''1,2,3''\n/uploader/{ids} - return only evaluations uploaded by specific users, specified as a comma-separated list of user IDs, e.g. ''1,2,3''\n/limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, results 11..15 will be returned. Both limit and offset need to be specified.\n/per_fold/{true,false} - whether or not to return crossvalidation scores per fold. Defaults to 'false'. Setting it to 'true' leads to large numbers of results, use only for very specific sets of runs.\n/sort_order/{asc,desc} - sorts the results by the evaluation value, according to the selected evaluation measure (function)\n", - "required" : true, - "type" : "string" - }, { - "name" : "api_key", - "in" : "query", - "description" : "API key to authenticate the user", - "required" : false, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "A list of evaluations descriptions", - "examples" : { - "application/json" : { - "evaluations" : { - "evaluation" : [ { - "run_id" : "1", - "task_id" : "68", - "uploader" : "1", - "flow_id" : "61", - "function" : "area_under_roc_curve", - "upload_time" : "2014-04-06 23:30:40", - "value" : "0.839359", - "array_data" : "[0,0.99113,0.898048,0.874862,0.791282,0.807343,0.820674]" - }, { - "run_id" : "1", - "task_id" : "68", - "uploader" : "1", - "flow_id" : "61", - "function" : "f_measure", - "upload_time" : "2014-04-06 23:30:40", - "value" : "0.600026", - "array_data" : "[0,0,0.711934,0.735714,0.601363,0.435678,0.430913]" - }, { - "run_id" : "1", - "task_id" : "68", - "uploader" : "1", - "flow_id" : "61", - "function" : "predictive_accuracy", - "upload_time" : "2014-04-06 23:30:40", - "value" : "0.614634", - "array_data" : [ ] - } ] - } - } - }, - "schema" : { - "$ref" : "#/definitions/EvaluationList" - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n540 - Please provide at least task, flow or setup, uploader or run, to\nfilter results, or limit the number of responses.\n541 - The input parameters (task_id, setup_id, flow_id, run_id, uploader_id) did not meet the constraints (comma separated list of integers).\n542 - There where no results. Check whether there are runs under the given constraint.\n543 - Too many results. Given the constraints, there were still too many results. Please add filters to narrow down the list.\n544 - Illegal filter specified.\n545 - Offset specified without limit.\n546 - Requested result limit too high.\n547 - Per fold can only be set to value \"true\" or \"false\".\n548 - Per fold queries are experimental and require a fair amount of filters on resulting run records to keep the query fast (use, e.g., flow, setup, task and uploader filter)\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/evaluation/request/{evaluation_engine_id}/{order}" : { - "get" : { - "tags" : [ "evaluation" ], - "summary" : "Get an unevaluated run", - "description" : "This call is for people running their own evaluation engines. It returns the details of a run that is not yet evaluated by the given evaluation engine. It doesn't evaluate the run, it just returns the run info.\n", - "parameters" : [ { - "name" : "evaluation_engine_id", - "in" : "path", - "description" : "The ID of the evaluation engine. You get this ID when you register a new evaluation engine with OpenML. The ID of the main evaluation engine is 1.", - "required" : true, - "type" : "string" - }, { - "name" : "order", - "in" : "path", - "description" : "When there are multiple runs still to evaluate, this defines which one to return. Options are 'normal' - the oldest run, 'reverse' - the newest run, or 'random' - a random run.", - "required" : true, - "type" : "string" - }, { - "name" : "api_key", - "in" : "query", - "description" : "API key to authenticate the user", - "required" : false, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "A list of evaluations descriptions", - "examples" : { - "application/json" : { - "evaluation_request" : { - "run" : [ { - "run_id" : "8943712", - "task_id" : "3021", - "setup_id" : "68799271", - "uploader" : "1935", - "upload_time" : "2018-04-03 21:05:38" - } ] - } - } - }, - "schema" : { - "$ref" : "#/definitions/EvaluationRequest" - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n100 - Function not valid.\n545 - No unevaluated runs according to the criteria.\n546 - Illegal filter.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/study/{id}" : { - "get" : { - "tags" : [ "study" ], - "summary" : "Get study description by study id or alias", - "description" : "Returns information about the study with the given id or alias. \n", - "parameters" : [ { - "name" : "id", - "in" : "path", - "description" : "ID or alias of the study.", - "required" : true, - "type" : "string" - }, { - "name" : "api_key", - "in" : "query", - "description" : "Api key to authenticate the user", - "required" : false, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "A study description", - "examples" : { - "application/json" : "{\n \"study\": {\n \"id\": \"99\",\n \"main_entity_type\": \"task\",\n \"name\": \"CC18 benchmark suite\",\n \"description\": \"CC18 benchmark suite\",\n \"creation_date\": \"2019-02-16T17:35:58\",\n \"creator\": \"1159\",\n \"data\": {\"data_id\": [\"1\",\"2\",\"3\"]},\n \"tasks\": {\"task_id\": [\"1\",\"2\",\"3\"]}\n }\n}" - }, - "schema" : { - "$ref" : "#/definitions/Study" - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n601 - Unknown study. The study with the given id or alias was not found in the database\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - }, - "delete" : { - "tags" : [ "study" ], - "summary" : "Delete study", - "description" : "Deletes a study. Upon success, it returns the ID of the deleted study.\n", - "parameters" : [ { - "name" : "id", - "in" : "path", - "description" : "Id of the study.", - "required" : true, - "type" : "number", - "format" : "integer" - }, { - "name" : "api_key", - "in" : "query", - "description" : "Api key to authenticate the user", - "required" : true, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "ID of the deleted study", - "examples" : { - "application/json" : "{\n \"study_delete\": {\n \"id\": \"1\"\n }\n}" - }, - "schema" : { - "type" : "object", - "properties" : { - "study_delete" : { - "$ref" : "#/definitions/inline_response_200_24_study_delete" - } - } - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n591 - Please provide API key. In order to remove your content, please authenticate.\n592 - Study does not exists. The study ID could not be linked to an existing study.\n593 - Study deletion failed. Please try again later.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/study" : { - "post" : { - "tags" : [ "study" ], - "summary" : "Create new study", - "description" : "Creates a new study. Upon success, it returns the study id.\n", - "consumes" : [ "multipart/form-data" ], - "parameters" : [ { - "name" : "description", - "in" : "formData", - "description" : "An XML file describing the study. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.study.upload) and an [XML example](https://www.openml.org/api/v1/xml_example/study).", - "required" : true, - "type" : "file" - }, { - "name" : "api_key", - "in" : "query", - "description" : "Api key to authenticate the user", - "required" : true, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "Id of the uploaded study", - "examples" : { - "application/json" : "{\n \"upload_study\": {\n \"id\": \"4328\"\n }\n}" - }, - "schema" : { - "type" : "object", - "properties" : { - "upload_study" : { - "$ref" : "#/definitions/inline_response_200_25_upload_study" - } - } - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n1031 - Description file not present. Please upload the study description.\n1032 - Problem validating uploaded description file. The XML description format does not meet the standards. See the XSD schema.\n1033 - Illegal main entity type. Currently only collections of tasks and can be created.\n1034 - Linked entities are not of the correct type fot this study.\n1035 - Benchmark suites can only be linked to run studies.\n1036 - Referred benchmark suite cannot be found.\n1037 - Referred benchmark suite should be a task collection.\n1038 - Study alias is not unique.\n1039 - Dataset insertion problem. Please contact the administrators.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/study/list/{filters}" : { - "get" : { - "tags" : [ "study" ], - "summary" : "List all studies (collections of items)", - "description" : "List studies, optionally filtered by a range of properties. Any number of properties can be combined by listing them one after the other in the form '/study/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all studies that match the constraints.\n", - "parameters" : [ { - "name" : "filters", - "in" : "path", - "description" : "Any combination of these filters\n/main_entity_type/{type} - only return studies collecting entities of a given type (e.g. 'task' or 'run').\n/uploader/{ids} - return only evaluations uploaded by specific users, specified as a comma-separated list of user IDs, e.g. ''1,2,3''\n/limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, results 11..15 will be returned. Both limit and offset need to be specified.\n", - "required" : true, - "type" : "string" - }, { - "name" : "api_key", - "in" : "query", - "description" : "API key to authenticate the user", - "required" : false, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "A list of studies", - "examples" : { - "application/json" : "{\n \"study_list\":{\n \"study\":[\n {\n \"id\":\"1\",\n \"alias\":\"Study_1\",\n \"name\":\"A large-scale comparison of classification algorithms\",\n \"creation_date\":\"2017-07-20 15:51:20\",\n \"creator\":\"2\"\n },\n {\n \"id\":\"2\",\n \"alias\":\"Study_2\",\n \"name\":\"Fast Algorithm Selection using Learning Curves\",\n \"creation_date\":\"2017-07-20 15:51:20\",\n \"creator\":\"2\"\n }\n ]\n }\n}" - }, - "schema" : { - "$ref" : "#/definitions/StudyList" - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/study/{id}/attach" : { - "post" : { - "tags" : [ "study" ], - "summary" : "Attach a new entity to a study", - "description" : "Attach a new entity to an exising study. Upon success, it returns the study id, type, and linked entities.\n", - "consumes" : [ "multipart/form-data" ], - "parameters" : [ { - "name" : "id", - "in" : "path", - "description" : "Id of the study. Supplied in the URL path.", - "required" : true, - "type" : "number", - "format" : "integer" - }, { - "name" : "ids", - "in" : "formData", - "description" : "Comma-separated list of entity IDs to be attached to the study. For instance, if this is a run study, the list of run IDs that need to be added (attached) to the study. Must be supplied as a POST variable.", - "required" : true, - "type" : "string" - }, { - "name" : "api_key", - "in" : "query", - "description" : "Api key to authenticate the user", - "required" : true, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "Properties of the updated study", - "examples" : { - "application/json" : "{\n \"study_attach\": {\n \"id\": \"1\",\n \"main_entity_type\": \"task\",\n \"linked_entities\": \"5\"\n }\n}" - }, - "schema" : { - "type" : "object", - "properties" : { - "study_attach" : { - "$ref" : "#/definitions/inline_response_200_26_study_attach" - } - } - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n1041 - Could not find study. Check the study ID in your request.\n1042 - Cannnot attach entities to legacy studies.\n1043 - Please provide POST field 'ids'.\n1044 - Please ensure that the 'ids' in the POST field is a list of natural numbers.\n1045 - Could not attach entities to the study. It appears as if the entity does not exist.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/study/{id}/detach" : { - "post" : { - "tags" : [ "study" ], - "summary" : "Detach an entity from a study", - "description" : "Detach an entity from an exising study. Upon success, it returns the study id, type, and linked entities.\n", - "consumes" : [ "multipart/form-data" ], - "parameters" : [ { - "name" : "id", - "in" : "path", - "description" : "Id of the study.", - "required" : true, - "type" : "number", - "format" : "integer" - }, { - "name" : "ids", - "in" : "formData", - "description" : "Comma-separated list of entity IDs to be detached from the study. For instance, if this is a run study, the list of run IDs that need to be removed (detached) from the study. Must be supplied as a POST variable.", - "required" : true, - "type" : "string" - }, { - "name" : "api_key", - "in" : "query", - "description" : "Api key to authenticate the user", - "required" : true, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "Properties of the updated study", - "examples" : { - "application/json" : "{\n \"study_detach\": {\n \"id\": \"1\",\n \"main_entity_type\": \"task\",\n \"linked_entities\": \"5\"\n }\n}" - }, - "schema" : { - "type" : "object", - "properties" : { - "upload_study" : { - "$ref" : "#/definitions/inline_response_200_26_study_attach" - } - } - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n1041 - Could not find study. Check the study ID in your request.\n1042 - Cannot attach entities to legacy studies.\n1043 - Please provide POST field 'ids'.\n1044 - Please ensure that the 'ids' in the POST field is a list of natural numbers.\n1046 - Could not detach entities from the study. It appears as if the entity does not exist. \n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/estimationprocedure/list" : { - "get" : { - "tags" : [ "estimationprocedure" ], - "summary" : "List all estimation procedures", - "description" : "Returns an array with all model performance estimation procedures in the system.\n", - "parameters" : [ { - "name" : "api_key", - "in" : "query", - "description" : "API key to authenticate the user", - "required" : false, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "A list of estimation procedures", - "examples" : { - "application/json" : "{\n \"estimationprocedures\": {\n \"estimationprocedure\": [\n {\n \"id\":\"1\",\n \"ttid\":\"1\",\n \"name\":\"10-fold Crossvalidation\",\n \"type\":\"crossvalidation\",\n \"repeats\":\"1\",\n \"folds\":\"10\",\n \"stratified_sampling\":\"true\"\n },\n {\n \"id\":\"2\",\n \"ttid\":\"1\",\n \"name\":\"5 times 2-fold Crossvalidation\",\n \"type\":\"crossvalidation\",\n \"repeats\":\"5\",\n \"folds\":\"2\",\n \"stratified_sampling\":\"true\"\n }\n ]\n }\n}" - }, - "schema" : { - "$ref" : "#/definitions/EstimationProcedureList" - } - }, - "412" : { - "description" : "Precondition failed. An error code and message are returned.\n500 - No model performance estimation procedures available.\n", - "schema" : { - "$ref" : "#/definitions/Error" - } - } - } - } - }, - "/user/list" : { - "get" : { - "tags" : [ "user" ], - "summary" : "List all users by user id", - "description" : "Returns an array with all user ids and names.\n", - "parameters" : [ { - "name" : "api_key", - "in" : "query", - "description" : "API key to authenticate the user", - "required" : false, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "A list of users", - "examples" : { - "application/json" : "{\n \"users\":{\n \"user\":[\n {\n \"id\":\"1\",\n \"username\":\"janvanrijn@gmail.com\"},\n {\n \"id\":\"2\",\n \"username\":\"joaquin.vanschoren@gmail.com\"}\n ]\n }\n}" - }, - "schema" : { - "$ref" : "#/definitions/UserList" - } - } - } - } - }, - "/evaluationmeasure/list" : { - "get" : { - "tags" : [ "evaluationmeasure" ], - "summary" : "List all evaluation measures", - "description" : "Returns an array with all model evaluation measures in the system.\n", - "parameters" : [ { - "name" : "api_key", - "in" : "query", - "description" : "API key to authenticate the user", - "required" : false, - "type" : "string" - } ], - "responses" : { - "200" : { - "description" : "A list of evaluation measures", - "examples" : { - "application/json" : "{\n \"evaluation_measures\":{\n \"measures\":{\n \"measure\":[\n \"area_under_roc_curve\",\n \"average_cost\",\n \"binominal_test\",\n \"build_cpu_time\"\n ]\n }\n }\n}" - }, - "schema" : { - "$ref" : "#/definitions/EvaluationMeasureList" - } - } - } - } - } - }, - "definitions" : { - "Flow" : { - "type" : "object", - "properties" : { - "flow_description" : { - "$ref" : "#/definitions/Flow_flow_description" - } - } - }, - "FlowList" : { - "type" : "object", - "properties" : { - "flows" : { - "$ref" : "#/definitions/FlowList_flows" - } - } - }, - "UserList" : { - "type" : "object", - "properties" : { - "users" : { - "$ref" : "#/definitions/UserList_users" - } - } - }, - "Task" : { - "type" : "object", - "properties" : { - "task_description" : { - "$ref" : "#/definitions/Task_task_description" - } - } - }, - "TaskList" : { - "type" : "object", - "properties" : { - "task" : { - "$ref" : "#/definitions/TaskList_task" - } - } - }, - "EvaluationMeasureList" : { - "type" : "object", - "properties" : { - "evaluation_measures" : { - "$ref" : "#/definitions/EvaluationMeasureList_evaluation_measures" - } - } - }, - "EstimationProcedureList" : { - "type" : "object", - "properties" : { - "estimationprocedures" : { - "$ref" : "#/definitions/EstimationProcedureList_estimationprocedures" - } - } - }, - "DataList" : { - "type" : "object", - "properties" : { - "data" : { - "$ref" : "#/definitions/DataList_data" - } - } - }, - "DataQualities" : { - "type" : "object", - "properties" : { - "data_qualities" : { - "$ref" : "#/definitions/DataQualities_data_qualities" - } - } - }, - "DataQualityList" : { - "type" : "object", - "properties" : { - "data_qualities_list" : { - "$ref" : "#/definitions/DataQualityList_data_qualities_list" - } - } - }, - "DataFeatures" : { - "type" : "object", - "properties" : { - "data_features" : { - "$ref" : "#/definitions/DataFeatures_data_features" - } - } - }, - "Data" : { - "type" : "object", - "properties" : { - "data_set_description" : { - "$ref" : "#/definitions/Data_data_set_description" - } - } - }, - "RunList" : { - "type" : "object", - "properties" : { - "runs" : { - "$ref" : "#/definitions/RunList_runs" - } - } - }, - "SetupList" : { - "type" : "object", - "properties" : { - "setups" : { - "$ref" : "#/definitions/SetupList_setups" - } - } - }, - "EvaluationList" : { - "type" : "object", - "properties" : { - "evaluations" : { - "$ref" : "#/definitions/EvaluationList_evaluations" - } - } - }, - "EvaluationRequest" : { - "type" : "object", - "properties" : { - "evaluation_request" : { - "$ref" : "#/definitions/EvaluationRequest_evaluation_request" - } - } - }, - "DataUnprocessed" : { - "type" : "object", - "properties" : { - "data_unprocessed" : { - "$ref" : "#/definitions/DataUnprocessed_data_unprocessed" - } - } - }, - "Setup" : { - "type" : "object", - "properties" : { - "setup_parameters" : { - "$ref" : "#/definitions/Setup_setup_parameters" - } - } - }, - "Run" : { - "type" : "object", - "properties" : { - "run_description" : { - "$ref" : "#/definitions/Run_run_description" - } - } - }, - "TaskType" : { - "type" : "object", - "properties" : { - "id" : { - "type" : "string", - "description" : "ID of the task type, a positive integer" - }, - "name" : { - "type" : "string", - "description" : "The name of the task type, e.g. Supervised Classification" - }, - "description" : { - "type" : "string", - "description" : "A description of the task type" - }, - "contributor" : { - "type" : "array", - "items" : { - "type" : "string", - "description" : "A list of people who defined the task type" - } - }, - "date" : { - "type" : "string", - "description" : "The date when the task type was created" - }, - "input" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/TaskType_input" - } - }, - "output" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/TaskType_output" - } - } - } - }, - "TaskTypeList" : { - "type" : "object", - "properties" : { - "task_types" : { - "$ref" : "#/definitions/TaskTypeList_task_types" - } - } - }, - "Study" : { - "type" : "object", - "properties" : { - "study" : { - "$ref" : "#/definitions/Study_study" - } - } - }, - "StudyList" : { - "type" : "object", - "properties" : { - "study_list" : { - "$ref" : "#/definitions/StudyList_study_list" - } - } - }, - "RunTrace" : { - "type" : "object", - "properties" : { - "trace" : { - "$ref" : "#/definitions/RunTrace_trace" - } - } - }, - "Error" : { - "type" : "object", - "properties" : { - "code" : { - "type" : "integer", - "format" : "int32" - }, - "message" : { - "type" : "string" - }, - "additional_message" : { - "type" : "string" - } - } - }, - "inline_response_200_data_delete" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "ID of the deleted dataset, a positive integer" - } - } - }, - "inline_response_200" : { - "properties" : { - "data_delete" : { - "$ref" : "#/definitions/inline_response_200_data_delete" - } - } - }, - "inline_response_200_1_upload_data_set" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "ID of the uploaded dataset, a positive integer" - } - } - }, - "inline_response_200_1" : { - "properties" : { - "upload_data_set" : { - "$ref" : "#/definitions/inline_response_200_1_upload_data_set" - } - } - }, - "inline_response_200_2_data_tag" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "ID of the tagged dataset" - } - } - }, - "inline_response_200_2" : { - "properties" : { - "data_tag" : { - "$ref" : "#/definitions/inline_response_200_2_data_tag" - } - } - }, - "inline_response_200_3_data_untag" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "ID of the untagged dataset" - } - } - }, - "inline_response_200_3" : { - "properties" : { - "data_untag" : { - "$ref" : "#/definitions/inline_response_200_3_data_untag" - } - } - }, - "inline_response_200_4_task_delete" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "ID of the deleted task, a positive integer" - } - } - }, - "inline_response_200_4" : { - "properties" : { - "task_delete" : { - "$ref" : "#/definitions/inline_response_200_4_task_delete" - } - } - }, - "inline_response_200_5_upload_task" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "ID of the uploaded task, a positive integer" - } - } - }, - "inline_response_200_5" : { - "properties" : { - "upload_task" : { - "$ref" : "#/definitions/inline_response_200_5_upload_task" - } - } - }, - "inline_response_200_6_task_tag" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "ID of the tagged task" - } - } - }, - "inline_response_200_6" : { - "properties" : { - "task_tag" : { - "$ref" : "#/definitions/inline_response_200_6_task_tag" - } - } - }, - "inline_response_200_7_task_untag" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "ID of the untagged task" - } - } - }, - "inline_response_200_7" : { - "properties" : { - "task_untag" : { - "$ref" : "#/definitions/inline_response_200_7_task_untag" - } - } - }, - "inline_response_200_8_flow_delete" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "ID of the deleted flow, a positive integer" - } - } - }, - "inline_response_200_8" : { - "properties" : { - "flow_delete" : { - "$ref" : "#/definitions/inline_response_200_8_flow_delete" - } - } - }, - "inline_response_200_9_upload_flow" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "ID of the uploaded flow, a positive integer" - } - } - }, - "inline_response_200_9" : { - "properties" : { - "upload_flow" : { - "$ref" : "#/definitions/inline_response_200_9_upload_flow" - } - } - }, - "inline_response_200_10_flow_exists" : { - "properties" : { - "exists" : { - "type" : "string", - "description" : "true or false" - }, - "id" : { - "type" : "string", - "description" : "The id of the flow with the given name and (external) version" - } - } - }, - "inline_response_200_10" : { - "properties" : { - "flow_exists" : { - "$ref" : "#/definitions/inline_response_200_10_flow_exists" - } - } - }, - "inline_response_200_11_flow_owned" : { - "properties" : { - "id" : { - "type" : "array", - "items" : { - "type" : "string" - } - } - } - }, - "inline_response_200_11" : { - "properties" : { - "flow_owned" : { - "$ref" : "#/definitions/inline_response_200_11_flow_owned" - } - } - }, - "inline_response_200_12_flow_tag" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "ID of the tagged flow" - } - } - }, - "inline_response_200_12" : { - "properties" : { - "flow_tag" : { - "$ref" : "#/definitions/inline_response_200_12_flow_tag" - } - } - }, - "inline_response_200_13_flow_untag" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "ID of the untagged flow" - } - } - }, - "inline_response_200_13" : { - "properties" : { - "flow_untag" : { - "$ref" : "#/definitions/inline_response_200_13_flow_untag" - } - } - }, - "inline_response_200_14_study_delete" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "ID of the deleted setup, a positive integer" - } - } - }, - "inline_response_200_14" : { - "properties" : { - "study_delete" : { - "$ref" : "#/definitions/inline_response_200_14_study_delete" - } - } - }, - "inline_response_200_15_flow_tag" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "ID of the tagged setup" - } - } - }, - "inline_response_200_15" : { - "properties" : { - "flow_tag" : { - "$ref" : "#/definitions/inline_response_200_15_flow_tag" - } - } - }, - "inline_response_200_16_flow_untag" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "ID of the untagged setup" - } - } - }, - "inline_response_200_16" : { - "properties" : { - "flow_untag" : { - "$ref" : "#/definitions/inline_response_200_16_flow_untag" - } - } - }, - "inline_response_200_17_data_delete" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "ID of the deleted run, a positive integer" - } - } - }, - "inline_response_200_17" : { - "properties" : { - "data_delete" : { - "$ref" : "#/definitions/inline_response_200_17_data_delete" - } - } - }, - "inline_response_200_18_upload_flow" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "ID of the uploaded run, a positive integer" - } - } - }, - "inline_response_200_18" : { - "properties" : { - "upload_flow" : { - "$ref" : "#/definitions/inline_response_200_18_upload_flow" - } - } - }, - "inline_response_200_19_run_tag" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "ID of the tagged run" - } - } - }, - "inline_response_200_19" : { - "properties" : { - "run_tag" : { - "$ref" : "#/definitions/inline_response_200_19_run_tag" - } - } - }, - "inline_response_200_20_run_untag" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "ID of the untagged run" - } - } - }, - "inline_response_200_20" : { - "properties" : { - "run_untag" : { - "$ref" : "#/definitions/inline_response_200_20_run_untag" - } - } - }, - "inline_response_200_21_upload_flow" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "ID of the evaluated run, a positive integer" - } - } - }, - "inline_response_200_21" : { - "properties" : { - "upload_flow" : { - "$ref" : "#/definitions/inline_response_200_21_upload_flow" - } - } - }, - "inline_response_200_22" : { - "properties" : { - "run_reset" : { - "$ref" : "#/definitions/inline_response_200_21_upload_flow" - } - } - }, - "inline_response_200_23_upload_flow" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "ID of the run with the trace, a positive integer" - } - } - }, - "inline_response_200_23" : { - "properties" : { - "upload_flow" : { - "$ref" : "#/definitions/inline_response_200_23_upload_flow" - } - } - }, - "inline_response_200_24_study_delete" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "ID of the deleted study, a positive integer" - } - } - }, - "inline_response_200_24" : { - "properties" : { - "study_delete" : { - "$ref" : "#/definitions/inline_response_200_24_study_delete" - } - } - }, - "inline_response_200_25_upload_study" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "ID of the uploaded study, a positive integer" - } - } - }, - "inline_response_200_25" : { - "properties" : { - "upload_study" : { - "$ref" : "#/definitions/inline_response_200_25_upload_study" - } - } - }, - "inline_response_200_26_study_attach" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "ID of the study, a positive integer" - }, - "main_entity_type" : { - "type" : "string", - "description" : "Main entity type of the of the study" - }, - "linked_entities" : { - "type" : "string", - "description" : "The number of linked entities" - } - } - }, - "inline_response_200_26" : { - "properties" : { - "study_attach" : { - "$ref" : "#/definitions/inline_response_200_26_study_attach" - } - } - }, - "inline_response_200_27" : { - "properties" : { - "upload_study" : { - "$ref" : "#/definitions/inline_response_200_26_study_attach" - } - } - }, - "Flow_flow_description_parameter" : { - "properties" : { - "name" : { - "type" : "string", - "description" : "The name of the parameter" - }, - "data_type" : { - "type" : "string", - "description" : "The data type of the parameter" - }, - "default_value" : { - "type" : "string", - "description" : "The default value of the parameter" - }, - "description" : { - "type" : "string", - "description" : "A description of the parameter" - } - } - }, - "Flow_flow_description" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "ID of the flow, a positive integer" - }, - "uploader" : { - "type" : "string", - "description" : "The uploader of the flow" - }, - "name" : { - "type" : "string", - "description" : "The name of the flow" - }, - "version" : { - "type" : "string", - "description" : "The version of the flow, set by OpenML. A positive integer" - }, - "version_label" : { - "type" : "string", - "description" : "The version of the flow, as defined by the uploader, for reference. Can be any format as long as it is unique." - }, - "description" : { - "type" : "string", - "description" : "Wiki description of the flow, in (Git flavoured) markdown format" - }, - "upload_date" : { - "type" : "string", - "description" : "The datetime that the flow was uploaded, format yyyy-MM-dd HH:mm:ss" - }, - "language" : { - "type" : "string", - "description" : "The programming language the flow is written in." - }, - "dependencies" : { - "type" : "string", - "description" : "The libraries that this flow depends on, and their version numbers." - }, - "tag" : { - "type" : "array", - "description" : "Tags added by OpenML users. Includes study tags in the form `study_1`", - "items" : { - "type" : "string" - } - }, - "parameter" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/Flow_flow_description_parameter" - } - } - } - }, - "FlowList_flows_flow" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "The flow ID" - }, - "full_name" : { - "type" : "string", - "description" : "The full flow name (name + internal version number)" - }, - "name" : { - "type" : "string", - "description" : "The flow name" - }, - "version" : { - "type" : "string", - "description" : "The internal flow version" - }, - "external_version" : { - "type" : "string", - "description" : "The external flow version" - }, - "uploader" : { - "type" : "string", - "description" : "The ID of the person who uploaded the flow" - } - } - }, - "FlowList_flows" : { - "properties" : { - "flow" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/FlowList_flows_flow" - } - } - } - }, - "UserList_users_user" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "The user ID" - }, - "username" : { - "type" : "string", - "description" : "The full user name" - } - } - }, - "UserList_users" : { - "properties" : { - "user" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/UserList_users_user" - } - } - } - }, - "Task_task_description_data_set" : { - "properties" : { - "data_set_id" : { - "type" : "string", - "description" : "The id of the dataset" - }, - "target_feature" : { - "type" : "string", - "description" : "The name of the target feature for this task" - } - } - }, - "Task_task_description_estimation_procedure_parameter" : { - "properties" : { - "name" : { - "type" : "string", - "description" : "The name of the parameter" - }, - "value" : { - "type" : "string", - "description" : "The value of the parameter" - } - } - }, - "Task_task_description_estimation_procedure" : { - "properties" : { - "type" : { - "type" : "string", - "description" : "The type of procedure, e.g. crossvalidation" - }, - "data_splits_url" : { - "type" : "string", - "description" : "The url where the data splits can be downloaded" - }, - "parameter" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/Task_task_description_estimation_procedure_parameter" - } - } - } - }, - "Task_task_description_evaluation_measures" : { - "properties" : { - "evaluation_measure" : { - "type" : "string", - "description" : "The evaluation measure to optimize in this task" - } - } - }, - "Task_task_description_input" : { - "properties" : { - "name" : { - "type" : "string", - "description" : "The name of the input, e.g. source_data" - }, - "data_set" : { - "$ref" : "#/definitions/Task_task_description_data_set" - }, - "estimation_procedure" : { - "$ref" : "#/definitions/Task_task_description_estimation_procedure" - }, - "cost_matrix" : { - "type" : "array", - "description" : "The cost matrix, indicating the costs for each type of misclassification", - "items" : { - "type" : "array", - "items" : { - "type" : "integer", - "format" : "int64" - } - } - }, - "evaluation_measures" : { - "$ref" : "#/definitions/Task_task_description_evaluation_measures" - } - } - }, - "Task_task_description_predictions_feature" : { - "properties" : { - "name" : { - "type" : "string", - "description" : "The name of the prediction feature, e.g. row_id" - }, - "type" : { - "type" : "string", - "description" : "The type of the prediction feature, e.g. integer" - } - } - }, - "Task_task_description_predictions" : { - "properties" : { - "format" : { - "type" : "string", - "description" : "The fromat of the predictions, e.g. ARFF" - }, - "feature" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/Task_task_description_predictions_feature" - } - } - } - }, - "Task_task_description_output" : { - "properties" : { - "name" : { - "type" : "string", - "description" : "The name of the output, e.g. predictions" - }, - "predictions" : { - "$ref" : "#/definitions/Task_task_description_predictions" - } - } - }, - "Task_task_description" : { - "properties" : { - "task_id" : { - "type" : "string", - "description" : "ID of the task, a positive integer" - }, - "task_type" : { - "type" : "string", - "description" : "The type of the task, e.g. Supervised Classification" - }, - "input" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/Task_task_description_input" - } - }, - "output" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/Task_task_description_output" - } - }, - "tag" : { - "type" : "array", - "items" : { - "type" : "string", - "description" : "Tags added by OpenML users. Includes study tags in the form `study_1`" - } - } - } - }, - "TaskList_task_input" : { - "properties" : { - "name" : { - "type" : "string", - "description" : "The name of the input" - }, - "value" : { - "type" : "string", - "description" : "The value of the input" - } - } - }, - "TaskList_task_quality" : { - "properties" : { - "name" : { - "type" : "string", - "description" : "The name of the quality" - }, - "value" : { - "type" : "string", - "description" : "The value of the quality" - } - } - }, - "TaskList_task_task" : { - "properties" : { - "task_id" : { - "type" : "string", - "description" : "The ID of the task" - }, - "task_type" : { - "type" : "string", - "description" : "The type of task (e.g. Supervised Classificationr)" - }, - "did" : { - "type" : "string", - "description" : "The id of the source dataset" - }, - "name" : { - "type" : "string", - "description" : "The name of the source dataset" - }, - "status" : { - "type" : "string", - "description" : "The status of the source dataset, active, in_preparation, or deactivated" - }, - "format" : { - "type" : "string", - "description" : "The format of the source dataset" - }, - "input" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/TaskList_task_input" - } - }, - "quality" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/TaskList_task_quality" - } - }, - "tag" : { - "type" : "array", - "items" : { - "type" : "string", - "description" : "Tags added by OpenML users. Includes study tags in the form `study_1`" - } - } - } - }, - "TaskList_task" : { - "properties" : { - "task" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/TaskList_task_task" - } - } - } - }, - "EvaluationMeasureList_evaluation_measures_measures" : { - "properties" : { - "measure" : { - "type" : "array", - "items" : { - "type" : "string", - "description" : "The evaluation measure name" - } - } - } - }, - "EvaluationMeasureList_evaluation_measures" : { - "properties" : { - "measures" : { - "$ref" : "#/definitions/EvaluationMeasureList_evaluation_measures_measures" - } - } - }, - "EstimationProcedureList_estimationprocedures_estimationprocedure" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "The estimation procedure ID" - }, - "ttid" : { - "type" : "string", - "description" : "The task type ID" - }, - "name" : { - "type" : "string", - "description" : "The estimation procedure name, e.g. '10 fold Crossvalidation'" - }, - "type" : { - "type" : "string", - "description" : "The estimation procedure type, e.g. 'crossvalidation'" - }, - "repeats" : { - "type" : "string", - "description" : "The number of repeats, e.g. '10'" - }, - "folds" : { - "type" : "string", - "description" : "The number of cross-validation folds, e.g. '10'" - }, - "stratified_sampling" : { - "type" : "string", - "description" : "Whether or not the sampling is stratified, 'true' or 'false'" - } - } - }, - "EstimationProcedureList_estimationprocedures" : { - "properties" : { - "estimationprocedure" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/EstimationProcedureList_estimationprocedures_estimationprocedure" - } - } - } - }, - "DataList_data_quality" : { - "properties" : { - "name" : { - "type" : "string", - "description" : "The name of the property" - }, - "value" : { - "type" : "string", - "description" : "The value of the property" - } - } - }, - "DataList_data_dataset" : { - "properties" : { - "did" : { - "type" : "string", - "description" : "The dataset ID" - }, - "name" : { - "type" : "string", - "description" : "The dataset name" - }, - "status" : { - "type" : "string", - "description" : "The dataset status, either in_preparation, active, or deactivated" - }, - "format" : { - "type" : "string", - "description" : "The data format of the dataset, e.g. ARFF" - }, - "quality" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/DataList_data_quality" - } - } - } - }, - "DataList_data" : { - "properties" : { - "dataset" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/DataList_data_dataset" - } - } - } - }, - "DataQualities_data_qualities_quality" : { - "properties" : { - "name" : { - "type" : "string", - "description" : "The name of the dataset quality measures" - }, - "value" : { - "type" : "string", - "description" : "The value for this dataset" - } - } - }, - "DataQualities_data_qualities" : { - "properties" : { - "quality" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/DataQualities_data_qualities_quality" - } - } - } - }, - "DataQualityList_data_qualities_list" : { - "properties" : { - "quality" : { - "type" : "array", - "items" : { - "type" : "string" - } - } - } - }, - "DataFeatures_data_features_feature" : { - "properties" : { - "index" : { - "type" : "string", - "description" : "Feature index" - }, - "name" : { - "type" : "string", - "description" : "Feature name" - }, - "data_type" : { - "type" : "string", - "description" : "Feature data type" - }, - "is_target" : { - "type" : "string", - "description" : "Whether this feature is seen as a target feature" - }, - "is_ignore" : { - "type" : "string", - "description" : "Whether this feature should be ignored in modelling (e.g. every value is unique)" - }, - "is_row_identifier" : { - "type" : "string", - "description" : "Whether this feature is a row identifier" - } - } - }, - "DataFeatures_data_features" : { - "properties" : { - "feature" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/DataFeatures_data_features_feature" - } - } - } - }, - "Data_data_set_description" : { - "required" : [ "description", "format", "name" ], - "properties" : { - "id" : { - "type" : "string", - "description" : "ID of the dataset, a positive integer" - }, - "name" : { - "type" : "string", - "description" : "The name of the dataset" - }, - "version" : { - "type" : "string", - "description" : "The version of the dataset, set by OpenML. A positive integer" - }, - "description" : { - "type" : "string", - "description" : "Wiki description of the dataset, in (Git flavoured) markdown format" - }, - "format" : { - "type" : "string", - "description" : "Data format, for instance ARFF" - }, - "upload_date" : { - "type" : "string", - "description" : "The datetime that the dataset was uploaded, format yyyy-MM-dd HH:mm:ss" - }, - "licence" : { - "type" : "string", - "description" : "The licence granted for using the dataset, for instance Public or CC-BY" - }, - "url" : { - "type" : "string", - "description" : "The URL where the data can be downloaded" - }, - "file_id" : { - "type" : "string", - "description" : "The ID of the dataset file stored on the OpenML server" - }, - "default_target_attribute" : { - "type" : "string", - "description" : "For tabular data, the name of the column that is typically used as the target attribute for that data set" - }, - "version_label" : { - "type" : "string", - "description" : "The version of the dataset, as defined by the uploader, for reference. Can be any format as long as it is unique." - }, - "tag" : { - "type" : "array", - "description" : "Tags added by OpenML users. Includes study tags in the form `study_1`", - "items" : { - "type" : "string" - } - }, - "visibility" : { - "type" : "string", - "description" : "Who can see the dataset. For instance `public`." - }, - "original_data_url" : { - "type" : "string", - "description" : "The URL where the original data is hosted." - }, - "status" : { - "type" : "string", - "description" : "active, in_preparation, or deactivated" - }, - "md5_checksum" : { - "type" : "string", - "description" : "Checksum to verify downloads of the dataset" - } - } - }, - "RunList_runs_run" : { - "properties" : { - "run_id" : { - "type" : "string", - "description" : "The run ID" - }, - "task_id" : { - "type" : "string", - "description" : "The ID of the task solved by this run" - }, - "setup_id" : { - "type" : "string", - "description" : "Ignore (internal representation of the parameter setting)" - }, - "flow_id" : { - "type" : "string", - "description" : "The ID of the flow used in this run" - }, - "uploader" : { - "type" : "string", - "description" : "The ID of the person uploading this run" - }, - "error_message" : { - "type" : "string", - "description" : "Error message generated by the run (if any)" - } - } - }, - "RunList_runs" : { - "properties" : { - "run" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/RunList_runs_run" - } - } - } - }, - "SetupList_setups_parameter" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "The parameter ID" - }, - "flow_id" : { - "type" : "string", - "description" : "The (sub)flow ID" - }, - "flow_name" : { - "type" : "string", - "description" : "The (sub)flow name" - }, - "full_name" : { - "type" : "string", - "description" : "The parameter's full name" - }, - "parameter_name" : { - "type" : "string", - "description" : "The parameter's short name" - }, - "data_type" : { - "type" : "string", - "description" : "The parameter's data type" - }, - "default_value" : { - "type" : "string", - "description" : "The parameter's default value" - }, - "value" : { - "type" : "string", - "description" : "The parameter value in this setup" - } - } - }, - "SetupList_setups_setup" : { - "properties" : { - "setup_id" : { - "type" : "string", - "description" : "The setup ID" - }, - "flow_id" : { - "type" : "string", - "description" : "The ID of the flow used by this run" - }, - "parameter" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/SetupList_setups_parameter" - } - } - } - }, - "SetupList_setups" : { - "properties" : { - "setup" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/SetupList_setups_setup" - } - } - } - }, - "EvaluationList_evaluations_evaluation" : { - "properties" : { - "run_id" : { - "type" : "string", - "description" : "The run ID" - }, - "task_id" : { - "type" : "string", - "description" : "The ID of the tasks solved by this run" - }, - "flow_id" : { - "type" : "string", - "description" : "The ID of the flow used by this run" - }, - "function" : { - "type" : "string", - "description" : "The name of the evaluation function" - }, - "value" : { - "type" : "string", - "description" : "The outcome of the evaluation" - }, - "array_data" : { - "type" : "string", - "description" : "For structured evaluation measures, an array of evaluation values (e.g. per-class predictions, evaluation matrices,...)" - } - } - }, - "EvaluationList_evaluations" : { - "properties" : { - "evaluation" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/EvaluationList_evaluations_evaluation" - } - } - } - }, - "EvaluationRequest_evaluation_request_run" : { - "properties" : { - "run_id" : { - "type" : "string", - "description" : "ID of the run, a positive integer" - }, - "task_id" : { - "type" : "string", - "description" : "ID of the task, a positive integer" - }, - "setup_id" : { - "type" : "string", - "description" : "ID of the setup, a positive integer" - }, - "uploader" : { - "type" : "string", - "description" : "ID of the uploader, a positive integer" - }, - "upload_time" : { - "type" : "string", - "description" : "The datetime that the dataset was uploaded, format yyyy-MM-dd HH:mm:ss" - } - } - }, - "EvaluationRequest_evaluation_request" : { - "properties" : { - "run" : { - "$ref" : "#/definitions/EvaluationRequest_evaluation_request_run" - } - } - }, - "DataUnprocessed_data_unprocessed_dataset" : { - "properties" : { - "did" : { - "type" : "string", - "description" : "ID of the dataset a positive integer" - }, - "name" : { - "type" : "string", - "description" : "The name of the dataset" - }, - "version" : { - "type" : "string", - "description" : "Version of the dataset, a positive integer" - }, - "status" : { - "type" : "string", - "description" : "Status of the dataset" - }, - "format" : { - "type" : "string", - "description" : "The dataset format, e.g. ARFF" - } - } - }, - "DataUnprocessed_data_unprocessed" : { - "properties" : { - "dataset" : { - "$ref" : "#/definitions/DataUnprocessed_data_unprocessed_dataset" - } - } - }, - "Setup_setup_parameters_parameter_setting" : { - "properties" : { - "full_name" : { - "type" : "string", - "description" : "The full name of the hyperparameter" - }, - "parameter_name" : { - "type" : "string", - "description" : "The short name of the hyperparameter" - }, - "data_type" : { - "type" : "string", - "description" : "The data type of the hyperparameter value" - }, - "default_value" : { - "type" : "string", - "description" : "The default value of the parameter used" - }, - "value" : { - "type" : "string", - "description" : "The value of the parameter used" - } - }, - "description" : "Hyperparameter settings. Can be multiple." - }, - "Setup_setup_parameters" : { - "properties" : { - "flow_id" : { - "type" : "string", - "description" : "ID of the flow, a positive integer" - }, - "parameter_setting" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/Setup_setup_parameters_parameter_setting" - } - } - } - }, - "Run_run_description_parameter_setting" : { - "properties" : { - "name" : { - "type" : "string", - "description" : "The name of the parameter" - }, - "value" : { - "type" : "string", - "description" : "The value of the parameter used" - } - }, - "description" : "Parameter settings used in this run. Can be multiple." - }, - "Run_run_description_input_data_dataset" : { - "properties" : { - "did" : { - "type" : "string", - "description" : "The id of the dataset" - }, - "name" : { - "type" : "string", - "description" : "The name of the dataset" - }, - "url" : { - "type" : "string", - "description" : "The download url of the dataset" - } - } - }, - "Run_run_description_input_data" : { - "properties" : { - "dataset" : { - "$ref" : "#/definitions/Run_run_description_input_data_dataset" - } - }, - "description" : "The input data for this run." - }, - "Run_run_description_output_data_file" : { - "properties" : { - "did" : { - "type" : "string", - "description" : "The id of the uploaded file" - }, - "file_id" : { - "type" : "string", - "description" : "The reference id of the uploaded file, for downloading afterward" - }, - "name" : { - "type" : "string", - "description" : "The name of the uploaded file (e.g., description, predictions, model,...)" - } - }, - "description" : "Files uploaded by the user, e.g. run description, predictions. Can be multiple." - }, - "Run_run_description_output_data_evaluation" : { - "properties" : { - "name" : { - "type" : "string", - "description" : "The name of the evaluation measure" - }, - "flow_id" : { - "type" : "string", - "description" : "The id of the code used to compute this evaluation method" - }, - "value" : { - "type" : "string", - "description" : "The result of the evaluation" - }, - "array_data" : { - "type" : "string", - "description" : "For composite evaluation measures (e.g. per-class measures, confusion matrix), a string (JSON) representation of the evaluation." - } - }, - "description" : "Evaluations uploaded by the user, e.g. runtimes, or computed by the server (after run upload). Can be multiple." - }, - "Run_run_description_output_data" : { - "properties" : { - "file" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/Run_run_description_output_data_file" - } - }, - "evaluation" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/Run_run_description_output_data_evaluation" - } - } - }, - "description" : "The data generated by this run." - }, - "Run_run_description" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "ID of the run, a positive integer" - }, - "uploader" : { - "type" : "string", - "description" : "The uploader of the run" - }, - "uploader_name" : { - "type" : "string", - "description" : "The name of the uploader of the run" - }, - "task_id" : { - "type" : "string", - "description" : "The id of the task solved by this run" - }, - "task_type" : { - "type" : "string", - "description" : "The type of task solved by this run (e.g., classification)" - }, - "task_evaluation_measure" : { - "type" : "string", - "description" : "The evaluation measure that is supposed to be optimized in the task, if any" - }, - "flow_id" : { - "type" : "string", - "description" : "The id of the flow used in this run" - }, - "flow_name" : { - "type" : "string", - "description" : "The name of the flow used in this run" - }, - "setup_string" : { - "type" : "string", - "description" : "Configuration of the flow as a string, to be interpreted by the flow, its library, or command line interface." - }, - "tag" : { - "type" : "array", - "description" : "Tags added by OpenML users. Includes study tags in the form `study_1`", - "items" : { - "type" : "string" - } - }, - "parameter_setting" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/Run_run_description_parameter_setting" - } - }, - "input_data" : { - "$ref" : "#/definitions/Run_run_description_input_data" - }, - "output_data" : { - "$ref" : "#/definitions/Run_run_description_output_data" - } - } - }, - "TaskType_input" : { - "properties" : { - "name" : { - "type" : "string", - "description" : "The name of the input, e.g. source_data" - }, - "data_set" : { - "$ref" : "#/definitions/Task_task_description_data_set" - }, - "estimation_procedure" : { - "$ref" : "#/definitions/Task_task_description_estimation_procedure" - }, - "cost_matrix" : { - "type" : "array", - "items" : { - "type" : "array", - "description" : "The cost matrix, indicating the costs for each type of misclassification", - "items" : { - "type" : "integer", - "format" : "int64" - } - } - }, - "evaluation_measures" : { - "$ref" : "#/definitions/Task_task_description_evaluation_measures" - } - } - }, - "TaskType_predictions" : { - "properties" : { - "format" : { - "type" : "string", - "description" : "The format of the predictions, e.g. ARFF" - }, - "feature" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/Task_task_description_predictions_feature" - } - } - } - }, - "TaskType_output" : { - "properties" : { - "name" : { - "type" : "string", - "description" : "The name of the output, e.g. predictions" - }, - "predictions" : { - "$ref" : "#/definitions/TaskType_predictions" - } - } - }, - "TaskTypeList_task_types_task_type" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "The ID of the task type" - }, - "name" : { - "type" : "string", - "description" : "The name of the task type" - }, - "description" : { - "type" : "string", - "description" : "A description of the task type" - }, - "creator" : { - "type" : "string", - "description" : "A comma-separated list of the task type creators" - } - } - }, - "TaskTypeList_task_types" : { - "properties" : { - "task_type" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/TaskTypeList_task_types_task_type" - } - } - } - }, - "Study_study_tag" : { - "properties" : { - "name" : { - "type" : "string", - "description" : "The name of the study (e.g. study_1)" - }, - "write_access" : { - "type" : "string", - "description" : "The write access level of the study (e.g. public)" - } - } - }, - "Study_study_data" : { - "properties" : { - "data_id" : { - "type" : "array", - "items" : { - "type" : "string" - } - } - }, - "description" : "The IDs of the datasets that are directly or indirectly linked to the study (e.g. because it is part of a task that belongs to the study)" - }, - "Study_study_tasks" : { - "properties" : { - "task_id" : { - "type" : "array", - "items" : { - "type" : "string" - } - } - }, - "description" : "The IDs of the tasks that are directly or indirectly linked to the study (e.g. because it is part of a run that belongs to the study)" - }, - "Study_study_flows" : { - "properties" : { - "flow_id" : { - "type" : "array", - "items" : { - "type" : "string" - } - } - }, - "description" : "The IDs of the flows that are directly or indirectly linked to the study (e.g. because it is part of a run that belongs to the study)" - }, - "Study_study_runs" : { - "properties" : { - "run_id" : { - "type" : "array", - "items" : { - "type" : "string" - } - } - }, - "description" : "The IDs of the runs attached to this study" - }, - "Study_study" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "The ID of the study" - }, - "alias" : { - "type" : "string", - "description" : "The alias of the study" - }, - "main_entity_type" : { - "type" : "string", - "description" : "The type of entity collected in the study (e.g. task or run)" - }, - "name" : { - "type" : "string", - "description" : "The name of the study" - }, - "creation_date" : { - "type" : "string", - "description" : "The datetime that the dataset was uploaded, format yyyy-MM-dd HH:mm:ss" - }, - "creator" : { - "type" : "string", - "description" : "A comma-separated list of the study creators" - }, - "tag" : { - "$ref" : "#/definitions/Study_study_tag" - }, - "data" : { - "$ref" : "#/definitions/Study_study_data" - }, - "tasks" : { - "$ref" : "#/definitions/Study_study_tasks" - }, - "flows" : { - "$ref" : "#/definitions/Study_study_flows" - }, - "runs" : { - "$ref" : "#/definitions/Study_study_runs" - } - } - }, - "StudyList_study_list_study" : { - "properties" : { - "id" : { - "type" : "string", - "description" : "The ID of the study" - }, - "alias" : { - "type" : "string", - "description" : "The alias of the study" - }, - "name" : { - "type" : "string", - "description" : "The name of the study" - }, - "creation_date" : { - "type" : "string", - "description" : "The datetime that the dataset was uploaded, format yyyy-MM-dd HH:mm:ss" - }, - "creator" : { - "type" : "string", - "description" : "A comma-separated list of the study creators" - } - } - }, - "StudyList_study_list" : { - "properties" : { - "study" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/StudyList_study_list_study" - } - } - } - }, - "RunTrace_trace_trace_iteration" : { - "properties" : { - "repeat" : { - "type" : "string", - "description" : "The number of the repeat in the outer cross-valudation" - }, - "fold" : { - "type" : "string", - "description" : "The number of the fold in the inner cross-validation" - }, - "iteration" : { - "type" : "string", - "description" : "A number of the optimization iteration" - }, - "setup_string" : { - "type" : "string", - "description" : "A JSON representation of the setup (configuration)" - }, - "evaluation" : { - "type" : "string", - "description" : "The evaluation score of the setup" - }, - "selected" : { - "type" : "string", - "description" : "Whether this setup was selected as the best one (true or false)" - } - } - }, - "RunTrace_trace" : { - "properties" : { - "run_id" : { - "type" : "string", - "description" : "run ID" - }, - "trace_iteration" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/RunTrace_trace_trace_iteration" - } - } - } - } - } -} \ No newline at end of file From 83020bb77c87705253f4c6ea0489764bb9a4c8fb Mon Sep 17 00:00:00 2001 From: Joaquin Vanschoren Date: Mon, 9 Sep 2019 21:57:30 +0200 Subject: [PATCH 19/27] Delete swagger.yaml --- swagger.yaml | 4388 -------------------------------------------------- 1 file changed, 4388 deletions(-) delete mode 100755 swagger.yaml diff --git a/swagger.yaml b/swagger.yaml deleted file mode 100755 index 5854f0bcb..000000000 --- a/swagger.yaml +++ /dev/null @@ -1,4388 +0,0 @@ ---- -swagger: "2.0" -info: - description: REST API for sharing, organizing and reusing machine learning datasets, code, and experiments. Follows a predictive URL scheme from endpoint https://www.openml.org/api/v1/json (or /xml). You need to add your `api_key` to every call (see your account settings), or simply log in. See https://www.openml.org/api_data_docs for the file server API. - version: 1.0.0 - title: OpenML API -basePath: /api/v1/json -schemes: -- https -produces: -- application/json -paths: - /data/{id}: - get: - tags: - - data - summary: Get dataset description - description: | - Returns information about a dataset. The information includes the name, information about the creator, URL to download it and more. - parameters: - - name: id - in: path - description: Id of the dataset. - required: true - type: number - format: integer - - name: api_key - in: query - description: Api key to authenticate the user - required: false - type: string - responses: - 200: - description: A dataset description - examples: - application/json: |- - { - "data_set_description": { - "id": "1", - "name": "anneal", - "version": "2", - "description": "...", - "format": "ARFF", - "upload_date": "2014-04-06 23:19:20", - "licence": "Public", - "url": "https://www.openml.org/data/download/1/dataset_1_anneal.arff", - "file_id": "1", - "default_target_attribute": "class", - "version_label": "2", - "tag": [ - "study_1", - "uci" - ], - "visibility": "public", - "original_data_url": "https://www.openml.org/d/2", - "status": "active", - "md5_checksum": "d01f6ccd68c88b749b20bbe897de3713" - } - } - schema: - $ref: '#/definitions/Data' - 412: - description: | - Precondition failed. An error code and message are returned - 110 - Please provide data_id. - 111 - Unknown dataset. Data set description with data_id was not found in the database. - 112 - No access granted. This dataset is not shared with you. - schema: - $ref: '#/definitions/Error' - delete: - tags: - - data - summary: Delete dataset - description: | - Deletes a dataset. Upon success, it returns the ID of the deleted dataset. - parameters: - - name: id - in: path - description: Id of the dataset. - required: true - type: number - format: integer - - name: api_key - in: query - description: Api key to authenticate the user - required: true - type: string - responses: - 200: - description: ID of the deleted dataset - examples: - application/json: |- - { - "data_delete": { - "id": "4328" - } - } - schema: - type: object - properties: - data_delete: - $ref: '#/definitions/inline_response_200_data_delete' - 412: - description: | - Precondition failed. An error code and message are returned - - 350 - Please provide API key. In order to remove your content, please authenticate. - - 351 - Authentication failed. The API key was not valid. Please try to login again, or contact api administrators. - - 352 - Dataset does not exists. The data ID could not be linked to an existing dataset. - - 353 - Dataset is not owned by you. The dataset is owned by another user. Hence you cannot delete it. - - 354 - Dataset is in use by other content. Can not be deleted. The data is used in tasks or runs. Delete other content before deleting this dataset. - - 355 - Deleting dataset failed. Deleting the dataset failed. Please contact support team. - schema: - $ref: '#/definitions/Error' - /data: - post: - tags: - - data - summary: Upload dataset - description: | - Uploads a dataset. Upon success, it returns the data id. - consumes: - - multipart/form-data - parameters: - - name: description - in: formData - description: An XML file describing the dataset. Only name, description, and data format are required. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.data.upload) and an [XML example](https://www.openml.org/api/v1/xml_example/data). - required: true - type: file - - name: dataset - in: formData - description: The actual dataset, being an ARFF file. - required: true - type: file - - name: api_key - in: query - description: Api key to authenticate the user - required: true - type: string - responses: - 200: - description: Id of the uploaded dataset - examples: - application/json: |- - { - "upload_data_set": { - "id": "4328" - } - } - schema: - type: object - properties: - upload_data_set: - $ref: '#/definitions/inline_response_200_1_upload_data_set' - 412: - description: | - Precondition failed. An error code and message are returned. - 130 - Problem with file uploading. There was a problem with the file upload. - 131 - Problem validating uploaded description file. The XML description format does not meet the standards. - 132 - Failed to move the files. Internal server error, please contact API administrators. - 133 - Failed to make checksum of datafile. Internal server error, please contact API administrators. - 134 - Failed to insert record in database. Internal server error, please contact API administrators. - 135 - Please provide description xml. - 136 - File failed format verification. The uploaded file is not valid according to the selected file format. Please check the file format specification and try again. - 137 - Please provide API key. In order to share content, please log in or provide your API key. - 138 - Authentication failed. The API key was not valid. Please try to login again, or contact API administrators - 139 - Combination name / version already exists. Leave version out for auto increment - 140 - Both dataset file and dataset url provided. The system is confused since both a dataset file (post) and a dataset url (xml) are provided. Please remove one. - 141 - Neither dataset file or dataset url are provided. Please provide either a dataset file as POST variable, or a dataset url in the description XML. - 142 - Error in processing arff file. Can be a syntax error, or the specified target feature does not exists. For now, we only check on arff files. If a dataset is claimed to be in such a format, and it can not be parsed, this error is returned. - 143 - Suggested target feature not legal. It is possible to suggest a default target feature (for predictive tasks). However, it should be provided in the data. - 144 - Unable to update dataset. The dataset with id could not be found in the database. If you upload a new dataset, unset the id. - schema: - $ref: '#/definitions/Error' - /data/qualities/list: - get: - tags: - - data - summary: List all data qualities - description: | - Returns a list of all data qualities in the system. - parameters: - - name: api_key - in: query - description: API key to authenticate the user - required: false - type: string - responses: - 200: - description: A list of data qualities - examples: - application/json: |- - { - "data_qualities_list":{ - "quality":[ - "NumberOfClasses", - "NumberOfFeatures", - "NumberOfInstances", - "NumberOfInstancesWithMissingValues", - "NumberOfMissingValues", - "NumberOfNumericFeatures", - "NumberOfSymbolicFeatures" - ] - } - } - schema: - $ref: '#/definitions/DataQualityList' - 412: - description: | - Precondition failed. An error code and message are returned - 370 - No data qualities available. There are no data qualities in the system. - schema: - $ref: '#/definitions/Error' - /data/qualities: - post: - tags: - - data - summary: Upload dataset qualities - description: | - Uploads dataset qualities. Upon success, it returns the data id. - consumes: - - multipart/form-data - parameters: - - name: description - in: formData - description: An XML file describing the dataset. Only name, description, and data format are required. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.data.qualities) and an [XML example](https://www.openml.org/api/v1/xml_example/data.qualities). - required: true - type: file - - name: api_key - in: query - description: Api key to authenticate the user - required: true - type: string - responses: - 412: - description: | - Precondition failed. An error code and message are returned. - 381 - Something wrong with XML, please check did and evaluation_engine_id - 382 - Please provide description xml - 383 - Problem validating uploaded description file - 384 - Dataset not processed yet - schema: - $ref: '#/definitions/Error' - /data/status/update/: - post: - tags: - - data - summary: Change the status of a dataset - description: | - Change the status of a dataset, either 'active' or 'deactivated' - consumes: - - multipart/form-data - parameters: - - name: data_id - in: formData - description: Id of the dataset. - required: true - type: number - format: integer - - name: status - in: formData - description: The status on which to filter the results, either 'active' or 'deactivated'. - required: true - type: string - - name: api_key - in: formData - description: Api key to authenticate the user - required: true - type: string - responses: - 412: - description: | - Precondition failed. An error code and message are returned. - 691 - Illegal status - 692 - Dataset does not exists - 693 - Dataset is not owned by you - 694 - Illegal status transition - 695 - Status update failed - schema: - $ref: '#/definitions/Error' - /data/features: - post: - tags: - - data - summary: Upload dataset feature description - description: | - Uploads dataset feature description. Upon success, it returns the data id. - consumes: - - multipart/form-data - parameters: - - name: description - in: formData - description: An XML file describing the dataset. Only name, description, and data format are required. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.data.features) and an [XML example](https://www.openml.org/api/v1/xml_example/data.features). - required: true - type: file - - name: api_key - in: query - description: Api key to authenticate the user - required: true - type: string - responses: - 412: - description: | - Precondition failed. An error code and message are returned. - 431 - Dataset already processed - 432 - Please provide description xml - 433 - Problem validating uploaded description file - 434 - Could not find dataset - 436 - Something wrong with XML, check data id and evaluation engine id - schema: - $ref: '#/definitions/Error' - /data/features/{id}: - get: - tags: - - data - summary: Get data features - description: | - Returns the features of a dataset. - parameters: - - name: id - in: path - description: Id of the dataset. - required: true - type: number - format: integer - - name: api_key - in: query - description: Api key to authenticate the user - required: false - type: string - responses: - 200: - description: All the features of the dataset - examples: - application/json: |- - { - "data_features": { - "feature": [ - { - "index": "0", - "name": "sepallength", - "data_type": "numeric", - "is_target": "false", - "is_ignore": "false", - "is_row_identifier": "false" - }, - { - "index": "1", - "name": "sepalwidth", - "data_type": "numeric", - "is_target": "false", - "is_ignore": "false", - "is_row_identifier": "false" - }, - { - "index": "2", - "name": "petallength", - "data_type": "numeric", - "is_target": "false", - "is_ignore": "false", - "is_row_identifier": "false" - }, - { - "index": "3", - "name": "petalwidth", - "data_type": "numeric", - "is_target": "false", - "is_ignore": "false", - "is_row_identifier": "false" - }, - { - "index": "4", - "name": "class", - "data_type": "nominal", - "is_target": "true", - "is_ignore": "false", - "is_row_identifier": "false" - } - ] - } - } - schema: - $ref: '#/definitions/DataFeatures' - 412: - description: | - Precondition failed. An error code and message are returned. - 270 - Please provide dataset ID. - 271 - Unknown dataset. Data set with the given data ID was not found (or is not shared with you). - 272 - No features found. The dataset did not contain any features, or we could not extract them. - 273 - Dataset not processed yet. The dataset was not processed yet, features are not yet available. Please wait for a few minutes. - 274 - Dataset processed with error. The feature extractor has run into an error while processing the dataset. Please check whether it is a valid supported file. If so, please contact the API admins. - schema: - $ref: '#/definitions/Error' - /data/qualities/{id}: - get: - tags: - - data - summary: Get data qualities - description: | - Returns the qualities of a dataset. - parameters: - - name: id - in: path - description: Id of the dataset. - required: true - type: number - format: integer - - name: api_key - in: query - description: Api key to authenticate the user - required: false - type: string - responses: - 200: - description: All the qualities of the dataset - examples: - application/json: |- - { - "data_qualities": { - "quality": [ - { - "name": "ClassCount", - "value": "3.0" - }, - { - "name": "ClassEntropy", - "value": "1.584962500721156" - }, - { - "name": "NumberOfClasses", - "value": "3" - }, - { - "name": "NumberOfFeatures", - "value": "5" - }, - { - "name": "NumberOfInstances", - "value": "150" - }, - { - "name": "NumberOfInstancesWithMissingValues", - "value": "0" - }, - { - "name": "NumberOfMissingValues", - "value": "0" - }, - { - "name": "NumberOfNumericFeatures", - "value": "4" - }, - { - "name": "NumberOfSymbolicFeatures", - "value": "0" - } - ] - } - } - schema: - $ref: '#/definitions/DataQualities' - 412: - description: | - Precondition failed. An error code and message are returned. - 360 - Please provide data set ID - 361 - Unknown dataset. The data set with the given ID was not found in the database, or is not shared with you. - 362 - No qualities found. The registered dataset did not contain any calculated qualities. - 363 - Dataset not processed yet. The dataset was not processed yet, no qualities are available. Please wait for a few minutes. - 364 - Dataset processed with error. The quality calculator has run into an error while processing the dataset. Please check whether it is a valid supported file. If so, contact the support team. - 365 - Interval start or end illegal. There was a problem with the interval - start or end. - schema: - $ref: '#/definitions/Error' - /data/list/{filters}: - get: - tags: - - data - summary: List and filter datasets - description: | - List datasets, possibly filtered by a range of properties. Any number of properties can be combined by listing them one after the other in the form '/data/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all datasets that match the constraints. - parameters: - - name: filters - in: path - description: | - Any combination of these filters - /limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, results 11..15 will be returned. Both limit and offset need to be specified. - /status/{status} - returns only datasets with a given status, either 'active', 'deactivated', or 'in_preparation'. - /tag/{tag} - returns only datasets tagged with the given tag. - /{data_quality}/{range} - returns only tasks for which the underlying datasets have certain qualities. {data_quality} can be data_id, data_name, data_version, number_instances, number_features, number_classes, number_missing_values. {range} can be a specific value or a range in the form 'low..high'. Multiple qualities can be combined, as in 'number_instances/0..50/number_features/0..10'. - required: true - type: string - - name: api_key - in: query - description: API key to authenticate the user - required: false - type: string - responses: - 200: - description: A list of datasets with the given task - examples: - application/json: |- - { - "data": { - "dataset": [ - { - "did":"1", - "name":"anneal", - "status":"active", - "format":"ARFF", - "quality":[ - { - "name":"MajorityClassSize", - "value":"684" - }, - { - "name":"MaxNominalAttDistinctValues", - "value":"10.0" - }, - { - "name":"MinorityClassSize" - ,"value":"0" - }, - { - "name":"NumBinaryAtts", - "value":"14.0" - }, - { - "name":"NumberOfClasses", - "value":"6" - }, - { - "name":"NumberOfFeatures", - "value":"39" - }, - { - "name":"NumberOfInstances", - "value":"898" - }, - { - "name":"NumberOfInstancesWithMissingValues", - "value":"0" - }, - { - "name":"NumberOfMissingValues", - "value":"0" - }, - { - "name":"NumberOfNumericFeatures", - "value":"6" - }, - { - "name":"NumberOfSymbolicFeatures", - "value":"32" - } - ] - } - ] - } - } - schema: - $ref: '#/definitions/DataList' - 412: - description: | - Precondition failed. An error code and message are returned. - 370 - Illegal filter specified. - 371 - Filter values/ranges not properly specified. - 372 - No results. There where no matches for the given constraints. - 373 - Can not specify an offset without a limit. - schema: - $ref: '#/definitions/Error' - /data/tag: - post: - tags: - - data - summary: Tag a dataset - description: Tags a dataset. - consumes: - - application/x-www-form-urlencoded - parameters: - - name: data_id - in: formData - description: Id of the dataset. - required: true - type: number - format: integer - - name: tag - in: formData - description: Tag name - required: true - type: string - - name: api_key - in: formData - description: Api key to authenticate the user - required: true - type: string - responses: - 200: - description: The id of the tagged dataset - examples: - application/json: |- - { - "data_tag": { - "id": "2" - } - } - schema: - type: object - properties: - data_tag: - $ref: '#/definitions/inline_response_200_2_data_tag' - 412: - description: | - Precondition failed. An error code and message are returned. - 470 - In order to add a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag). - 471 - Entity not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity. - 472 - Entity already tagged by this tag. The entity {dataset, flow, run} already had this tag. - 473 - Something went wrong inserting the tag. Please contact OpenML Team. - 474 - Internal error tagging the entity. Please contact OpenML Team. - schema: - $ref: '#/definitions/Error' - /data/untag: - post: - tags: - - data - summary: Untag a dataset - description: Untags a dataset. - consumes: - - application/x-www-form-urlencoded - parameters: - - name: data_id - in: formData - description: Id of the dataset. - required: true - type: number - - name: tag - in: formData - description: Tag name - required: true - type: string - - name: api_key - in: formData - description: Api key to authenticate the user - required: true - type: string - responses: - 200: - description: The ID of the untagged dataset - examples: - application/json: |- - { - "data_untag": { - "id": "2" - } - } - schema: - type: object - properties: - data_untag: - $ref: '#/definitions/inline_response_200_3_data_untag' - 412: - description: | - Precondition failed. An error code and message are returned. - 475 - Please give entity_id {data_id, flow_id, run_id} and tag. In order to remove a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag). - 476 - Entity {dataset, flow, run} not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity. - 477 - Tag not found. The provided tag is not associated with the entity {dataset, flow, run}. - 478 - Tag is not owned by you. The entity {dataset, flow, run} was tagged by another user. Hence you cannot delete it. - 479 - Internal error removing the tag. Please contact OpenML Team. - schema: - $ref: '#/definitions/Error' - /data/unprocessed/{data_engine_id}/{order}: - get: - tags: - - data - summary: Get a list of unprocessed datasets - description: | - This call is for people running their own dataset processing engines. It returns the details of datasets that are not yet processed by the given processing engine. It doesn't process the datasets, it just returns the dataset info. - parameters: - - name: data_engine_id - in: path - description: The ID of the data processing engine. You get this ID when you register a new data processing engine with OpenML. The ID of the main data processing engine is 1. - required: true - type: string - - name: order - in: path - description: When there are multiple datasets still to process, this defines which ones to return. Options are 'normal' - the oldest datasets, or 'random'. - required: true - type: string - - name: api_key - in: query - description: API key to authenticate the user - required: false - type: string - responses: - 200: - description: A list of unprocessed datasets - examples: - application/json: - data_unprocessed: - run: - - did: "1" - name: anneal - version: "2" - status: deactivated - format: ARFF - schema: - $ref: '#/definitions/DataUnprocessed' - 412: - description: | - Precondition failed. An error code and message are returned. - 681 - No unprocessed datasets. - schema: - $ref: '#/definitions/Error' - /data/qualities/unprocessed/{data_engine_id}/{order}: - post: - tags: - - data - summary: | - Get a list of datasets with unprocessed qualities - description: | - This call is for people running their own dataset processing engines. It returns the details of datasets for which certain qualities are not yet processed by the given processing engine. It doesn't process the datasets, it just returns the dataset info. - consumes: - - application/x-www-form-urlencoded - parameters: - - name: data_engine_id - in: path - description: The ID of the data processing engine. You get this ID when you register a new data processing engine with OpenML. The ID of the main data processing engine is 1. - required: true - type: string - - name: order - in: path - description: When there are multiple datasets still to process, this defines which ones to return. Options are 'normal' - the oldest datasets, or 'random'. - required: true - type: string - - name: api_key - in: query - description: API key to authenticate the user - required: false - type: string - - name: qualities - in: formData - description: Comma-separated list of (at least two) quality names, e.g. 'NumberOfInstances,NumberOfFeatures'. - required: true - type: string - responses: - 200: - description: A list of unprocessed datasets - examples: - application/json: - data_unprocessed: - run: - - did: "1" - name: anneal - version: "2" - status: deactivated - format: ARFF - schema: - $ref: '#/definitions/DataUnprocessed' - 412: - description: | - Precondition failed. An error code and message are returned. - 686 - Please specify the features the evaluation engine wants to calculate (at least 2). - 687 - No unprocessed datasets according to the given set of meta-features. - 688 - Illegal qualities. - schema: - $ref: '#/definitions/Error' - /task/{id}: - get: - tags: - - task - summary: Get task description - description: | - Returns information about a task. The information includes the task type, input data, train/test sets, and more. - parameters: - - name: id - in: path - description: ID of the task. - required: true - type: number - format: integer - - name: api_key - in: query - description: Api key to authenticate the user - required: false - type: string - responses: - 200: - description: A task description - examples: - application/json: |- - { - "task": { - "task_id":"1", - "task_type":"Supervised Classification", - "input":[ - { - "name":"source_data", - "data_set":{ - "data_set_id":"1", - "target_feature":"class" - } - }, - { - "name":"estimation_procedure", - "estimation_procedure":{ - "type":"crossvalidation", - "data_splits_url":"https://www.openml.org/api_splits/get/1/Task_1_splits.arff", - "parameter":[ - { - "name":"number_repeats", - "value":"1" - }, - { - "name":"number_folds", - "value":"10" - }, - { - "name":"percentage" - }, - { - "name":"stratified_sampling", - "value":"true" - } - ] - } - }, - { - "name":"cost_matrix", - "cost_matrix":[] - }, - { - "name":"evaluation_measures", - "evaluation_measures": - { - "evaluation_measure":"predictive_accuracy" - } - } - ], - "output":{ - "name":"predictions", - "predictions":{ - "format":"ARFF", - "feature":[ - { - "name":"repeat", - "type":"integer" - }, - { - "name":"fold", - "type":"integer" - }, - { - "name":"row_id", - "type":"integer" - }, - { - "name":"confidence.classname", - "type":"numeric" - }, - { - "name":"prediction", - "type":"string" - } - ] - } - }, - "tag":["basic","study_1","under100k","under1m"] - } - } - schema: - $ref: '#/definitions/Task' - 412: - description: | - Precondition failed. An error code and message are returned. - 150 - Please provide task_id. - 151 - Unknown task. The task with the given id was not found in the database - schema: - $ref: '#/definitions/Error' - delete: - tags: - - task - summary: Delete task - description: | - Deletes a task. Upon success, it returns the ID of the deleted task. - parameters: - - name: id - in: path - description: Id of the task. - required: true - type: number - format: integer - - name: api_key - in: query - description: Api key to authenticate the user - required: true - type: string - responses: - 200: - description: ID of the deleted task - examples: - application/json: |- - { - "task_delete": { - "id": "4328" - } - } - schema: - type: object - properties: - task_delete: - $ref: '#/definitions/inline_response_200_4_task_delete' - 412: - description: | - Precondition failed. An error code and message are returned. - 450 - Please provide API key. In order to remove your content, please authenticate. - 451 - Authentication failed. The API key was not valid. Please try to login again, or contact api administrators. - 452 - Task does not exists. The task ID could not be linked to an existing task. - 454 - Task is executed in some runs. Delete these first. - 455 - Deleting the task failed. Please contact support team. - schema: - $ref: '#/definitions/Error' - /task: - post: - tags: - - task - summary: Upload task - description: | - Uploads a task. Upon success, it returns the task id. - consumes: - - multipart/form-data - parameters: - - name: description - in: formData - description: An XML file describing the task. Only name, description, and task format are required. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.task.upload) and an [XML example](https://www.openml.org/api/v1/xml_example/task). - required: true - type: file - - name: api_key - in: query - description: Api key to authenticate the user - required: true - type: string - responses: - 200: - description: Id of the uploaded task - examples: - application/json: |- - { - "upload_task": { - "id": "4328" - } - } - schema: - type: object - properties: - upload_task: - $ref: '#/definitions/inline_response_200_5_upload_task' - 412: - description: | - Precondition failed. An error code and message are returned. - 530 - Description file not present. Please upload the task description. - 531 - Internal error. Please contact api support team - 532 - Problem validating uploaded description file. The XML description format does not meet the standards - 533 - Task already exists. - 534 - Error creating the task. - schema: - $ref: '#/definitions/Error' - /task/list/{filters}: - get: - tags: - - task - summary: List and filter tasks - description: | - List tasks, possibly filtered by a range of properties from the task itself or from the underlying dataset. Any number of properties can be combined by listing them one after the other in the form '/task/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all tasks that match the constraints. - parameters: - - name: filters - in: path - description: | - Any combination of these filters - /limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, tasks 11..15 will be returned. Both limit and offset need to be specified. - /status/{status} - returns only tasks with a given status, either 'active', 'deactivated', or 'in_preparation'. - /type/{type_id} - returns only tasks with a given task type id. See the list of task types of the ID's (e.g. 1 = Supervised Classification). - /tag/{tag} - returns only tasks tagged with the given tag. - /data_tag/{tag} - returns only tasks for which the underlying dataset is tagged with the given tag. - /{data_quality}/{range} - returns only tasks for which the underlying datasets have certain qualities. {data_quality} can be data_id, data_name, number_instances, number_features, number_classes, number_missing_values. {range} can be a specific value or a range in the form 'low..high'. Multiple qualities can be combined, as in 'number_instances/0..50/number_features/0..10'. - required: true - type: string - - name: api_key - in: query - description: API key to authenticate the user - required: false - type: string - responses: - 200: - description: A list of tasks with the given tag - examples: - application/json: |- - { - "task": { - "task": [ - { - "task_id":"1", - "task_type":"Supervised Classification", - "did":"1", - "name":"anneal", - "status":"active", - "format":"ARFF", - "input":[ - { - "name":"estimation_procedure", - "value":"1" - }, - { - "name":"evaluation_measures", - "value":"predictive_accuracy" - }, - { - "name":"source_data", - "value":"1" - }, - { - "name":"target_feature", - "value":"class" - } - ], - "quality":[ - { - "name":"MajorityClassSize", - "value":"684" - }, - { - "name":"MaxNominalAttDistinctValues", - "value":"10.0" - }, - { - "name":"MinorityClassSize", - "value":"0" - }, - { - "name":"NumBinaryAtts", - "value":"14.0" - }, - { - "name":"NumberOfClasses", - "value":"6" - }, - { - "name":"NumberOfFeatures", - "value":"39" - }, - { - "name":"NumberOfInstances", - "value":"898" - }, - { - "name":"NumberOfInstancesWithMissingValues", - "value":"0" - }, - { - "name":"NumberOfMissingValues", - "value":"0" - }, - { - "name":"NumberOfNumericFeatures", - "value":"6" - }, - { - "name":"NumberOfSymbolicFeatures", - "value":"32" - } - ], - "tag":[ - "basic", - "study_1", - "study_7", - "under100k", - "under1m" - ] - } - ] - } - } - schema: - $ref: '#/definitions/TaskList' - 412: - description: | - Precondition failed. An error code and message are returned. - 480 - Illegal filter specified. - 481 - Filter values/ranges not properly specified. - 482 - No results. There where no matches for the given constraints. - 483 - Can not specify an offset without a limit. - schema: - $ref: '#/definitions/Error' - /task/tag: - post: - tags: - - task - summary: Tag a task - description: Tags a task. - consumes: - - application/x-www-form-urlencoded - parameters: - - name: task_id - in: formData - description: Id of the task. - required: true - type: number - format: integer - - name: tag - in: formData - description: Tag name - required: true - type: string - - name: api_key - in: formData - description: Api key to authenticate the user - required: true - type: string - responses: - 200: - description: The id of the tagged task - examples: - application/json: |- - { - "task_tag": { - "id": "2" - } - } - schema: - type: object - properties: - task_tag: - $ref: '#/definitions/inline_response_200_6_task_tag' - 412: - description: | - Precondition failed. An error code and message are returned. - 470 - In order to add a tag, please upload the entity id (either data_id, task_id, flow_id, run_id) and tag (the name of the tag). - 471 - Entity not found. The provided entity_id {data_id, task_id, flow_id, run_id} does not correspond to an existing entity. - 472 - Entity already tagged by this tag. The entity {dataset, task, flow, run} already had this tag. - 473 - Something went wrong inserting the tag. Please contact OpenML Team. - 474 - Internal error tagging the entity. Please contact OpenML Team. - schema: - $ref: '#/definitions/Error' - /task/untag: - post: - tags: - - task - summary: Untag a task - description: Untags a task. - consumes: - - application/x-www-form-urlencoded - parameters: - - name: task_id - in: formData - description: Id of the task. - required: true - type: number - - name: tag - in: formData - description: Tag name - required: true - type: string - - name: api_key - in: formData - description: Api key to authenticate the user - required: true - type: string - responses: - 200: - description: A the features of the task - examples: - application/json: |- - { - "task_untag": { - "id": "2" - } - } - schema: - type: object - properties: - task_untag: - $ref: '#/definitions/inline_response_200_7_task_untag' - 412: - description: | - Precondition failed. An error code and message are returned. - 475 - Please give entity_id {data_id, flow_id, run_id} and tag. In order to remove a tag, please upload the entity id (either data_id, task_id, flow_id, run_id) and tag (the name of the tag). - 476 - Entity {dataset, task, flow, run} not found. The provided entity_id {data_id, task_id, flow_id, run_id} does not correspond to an existing entity. - 477 - Tag not found. The provided tag is not associated with the entity {dataset, task, flow, run}. - 478 - Tag is not owned by you. The entity {dataset, flow, run} was tagged by another user. Hence you cannot delete it. - 479 - Internal error removing the tag. Please contact OpenML Team. - schema: - $ref: '#/definitions/Error' - /tasktype/{id}: - get: - tags: - - tasktype - summary: Get task type description - description: | - Returns information about a task type. The information includes a description, the given inputs and the expected outputs. - parameters: - - name: id - in: path - description: ID of the task. - required: true - type: number - format: integer - - name: api_key - in: query - description: Api key to authenticate the user - required: false - type: string - responses: - 200: - description: A task type description - examples: - application/json: |- - { - "task_type": { - "id": "1", - "name": "Supervised Classification", - "description": "In supervised classification, you are given an input dataset in which instances are labeled with a certain class. The goal is to build a model that predicts the class for future unlabeled instances. The model is evaluated using a train-test procedure, e.g. cross-validation.

\n\nTo make results by different users comparable, you are given the exact train-test folds to be used, and you need to return at least the predictions generated by your model for each of the test instances. OpenML will use these predictions to calculate a range of evaluation measures on the server.

\n\nYou can also upload your own evaluation measures, provided that the code for doing so is available from the implementation used. For extremely large datasets, it may be infeasible to upload all predictions. In those cases, you need to compute and provide the evaluations yourself.

\n\nOptionally, you can upload the model trained on all the input data. There is no restriction on the file format, but please use a well-known format or PMML.", - "creator": [ - "Joaquin Vanschoren", - "Jan van Rijn", - "Luis Torgo", - "Bernd Bischl" - ], - "contributor": [ - "Bo Gao", - "Simon Fischer", - "Venkatesh Umaashankar", - "Michael Berthold", - "Bernd Wiswedel", - "Patrick Winter" - ], - "creation_date": "2013-01-24 00:00:00", - "input": [ - { - "name": "source_data", - "requirement": "required", - "data_type": "numeric" - }, - { - "name": "target_feature", - "requirement": "required", - "data_type": "string" - }, - { - "name": "estimation_procedure", - "requirement": "required", - "data_type": "numeric" - }, - { - "name": "cost_matrix", - "data_type": "json" - }, - { - "name": "custom_testset", - "data_type": "json" - }, - { - "name": "evaluation_measures", - "data_type": "string" - } - ] - } - } - schema: - $ref: '#/definitions/TaskType' - 412: - description: | - Precondition failed. An error code and message are returned. - 240 - Please provide task type ID. - 241 - Unknown task type. The task type with the given id was not found in the database - schema: - $ref: '#/definitions/Error' - /tasktype/list: - get: - tags: - - tasktype - summary: List all task types - description: | - Returns an array with all task types in the system. - parameters: - - name: api_key - in: query - description: API key to authenticate the user - required: false - type: string - responses: - 200: - description: A task description - examples: - application/json: |- - { - "task_types":{ - "task_type":[ - { - "id":"1", - "name":"Supervised Classification", - "description":"In supervised classification, you are given ...", - "creator":"Joaquin Vanschoren, Jan van Rijn, Luis Torgo, Bernd Bischl" - }, - { - "id":"2", - "name":"Supervised Regression", - "description":"Given a dataset with a numeric target ...", - "creator":"Joaquin Vanschoren, Jan van Rijn, Luis Torgo, Bernd Bischl" - },{} - ] - } - } - schema: - $ref: '#/definitions/TaskTypeList' - default: - description: Unexpected error - schema: - $ref: '#/definitions/Error' - /flow/{id}: - get: - tags: - - flow - summary: Get flow description - description: | - Returns information about a flow. The information includes the name, information about the creator, dependencies, parameters, run instructions and more. - parameters: - - name: id - in: path - description: ID of the flow. - required: true - type: number - format: integer - - name: api_key - in: query - description: API key to authenticate the user - required: false - type: string - responses: - 200: - description: A flow description - examples: - application/json: |- - { - "flow": { - "id":"100", - "uploader":"1", - "name":"weka.J48", - "version":"2", - "external_version":"Weka_3.7.5_9117", - "description":"...", - "upload_date":"2014-04-23 18:00:36", - "language":"Java", - "dependencies":"Weka_3.7.5", - "parameter": [ - { - "name":"A", - "data_type":"flag", - "default_value":[], - "description":"Laplace smoothing..." - }, - { - "name":"C", - "data_type":"option", - "default_value":"0.25", - "description":"Set confidence threshold..." - } - ] - } - } - schema: - $ref: '#/definitions/Flow' - 412: - description: | - Precondition failed. An error code and message are returned. - 180 - Please provide flow id. - 181 - Unknown flow. The flow with the given ID was not found in the database. - schema: - $ref: '#/definitions/Error' - delete: - tags: - - flow - summary: Delete a flow - description: | - Deletes a flow. Upon success, it returns the ID of the deleted flow. - parameters: - - name: id - in: path - description: Id of the flow. - required: true - type: number - format: integer - - name: api_key - in: query - description: API key to authenticate the user - required: true - type: string - responses: - 200: - description: ID of the deleted flow - examples: - application/json: |- - { - "flow_delete": { - "id": "4328" - } - } - schema: - type: object - properties: - flow_delete: - $ref: '#/definitions/inline_response_200_8_flow_delete' - 412: - description: | - Precondition failed. An error code and message are returned. - 320 - Please provide API key. In order to remove your content, please authenticate. - 321 - Authentication failed. The API key was not valid. Please try to login again, or contact api administrators. - 322 - Flow does not exists. The flow ID could not be linked to an existing flow. - 323 - Flow is not owned by you. The flow is owned by another user. Hence you cannot delete it. - 324 - Flow is in use by other content. Can not be deleted. The flow is used in runs, evaluations or as a component of another flow. Delete other content before deleting this flow. - 325 - Deleting flow failed. Deleting the flow failed. Please contact - support team. - schema: - $ref: '#/definitions/Error' - /flow: - post: - tags: - - flow - summary: Upload a flow - description: | - Uploads a flow. Upon success, it returns the flow id. - consumes: - - multipart/form-data - parameters: - - name: description - in: formData - description: An XML file describing the flow. Only name and description are required. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.implementation.upload) and an [XML example](https://www.openml.org/api/v1/xml_example/flow). - required: true - type: file - - name: flow - in: formData - description: The actual flow, being a source (or binary) file. - required: false - type: file - - name: api_key - in: query - description: Api key to authenticate the user - required: true - type: string - responses: - 200: - description: Id of the uploaded flow - examples: - application/json: |- - { - "upload_flow": { - "id": "2520" - } - } - schema: - type: object - properties: - upload_flow: - $ref: '#/definitions/inline_response_200_9_upload_flow' - 412: - description: | - Precondition failed. An error code and message are returned. - 160 - Error in file uploading. There was a problem with the file upload. - 161 - Please provide description xml. - 163 - Problem validating uploaded description file. The XML description format does not meet the standards. - 164 - Flow already stored in database. Please change name or version number - 165 - Failed to insert flow. There can be many causes for this error. If you included the implements field, it should be an existing entry in the algorithm or math_function table. Otherwise it could be an internal server error. Please contact API support team. - 166 - Failed to add flow to database. Internal server error, please contact API administrators - 167 - Illegal files uploaded. An non required file was uploaded. - 168 - The provided md5 hash equals not the server generated md5 hash of the file. - 169 - Please provide API key. In order to share content, please authenticate and provide API key. - 170 - Authentication failed. The API key was not valid. Please try to login again, or contact API administrators - 171 - Flow already exists. This flow is already in the database - 172 - XSD not found. Please contact API support team - schema: - $ref: '#/definitions/Error' - /flow/exists/{name}/{version}: - get: - tags: - - flow - summary: Check whether flow exists - description: | - Checks whether a flow with the given name and (external) version exists. - parameters: - - name: name - in: path - description: The name of the flow. - required: true - type: string - - name: version - in: path - description: The external version of the flow - required: true - type: string - - name: api_key - in: query - description: API key to authenticate the user - required: false - type: string - responses: - 200: - description: A list of flows - examples: - application/json: |- - { - "flow_exists": { - "exists": "true", - "id": "65" - } - } - schema: - type: object - properties: - flow_exists: - $ref: '#/definitions/inline_response_200_10_flow_exists' - 412: - description: | - Precondition failed. An error code and message are returned. - 330 - Mandatory fields not present. Please provide name and external_version. - schema: - $ref: '#/definitions/Error' - /flow/list/{filters}: - get: - tags: - - flow - summary: List and filter flows - description: | - List flows, possibly filtered by a range of properties. Any number of properties can be combined by listing them one after the other in the form '/task/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all flows that match the constraints. - parameters: - - name: filters - in: path - description: | - Any combination of these filters - /limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, tasks 11..15 will be returned. Both limit and offset need to be specified. - /tag/{tag} - returns only tasks tagged with the given tag. - /uploader/{id} - return only evaluations uploaded by a specific user, specified by user ID. - required: true - type: string - - name: api_key - in: query - description: API key to authenticate the user - required: false - type: string - responses: - 200: - description: A list of flows - examples: - application/json: |- - { - "flows": - { - "flow":[ - { - "id":"65", - "full_name":"weka.RandomForest(1)", - "name":"weka.RandomForest", - "version":"1", - "external_version":"Weka_3.7.10_9186", - "uploader":"1" - }, - { - "id":"66", - "full_name":"weka.IBk(1)", - "name":"weka.IBk", - "version":"1", - "external_version":"Weka_3.7.10_8034", - "uploader":"1" - }, - { - "id":"67", - "full_name":"weka.BayesNet_K2(1)", - "name":"weka.BayesNet_K2", - "version":"1", - "external_version":"Weka_3.7.10_8034", - "uploader":"1" - } - ] - } - } - schema: - $ref: '#/definitions/FlowList' - 412: - description: | - Precondition failed. An error code and message are returned. - 500 - No results. There where no matches for the given constraints. - 501 - Illegal filter specified. - 502 - Filter values/ranges not properly specified. - 503 - Can not specify an offset without a limit. - schema: - $ref: '#/definitions/Error' - /flow/owned: - get: - tags: - - flow - summary: List flows owned by you - description: | - Returns an array with all flows owned by you. - parameters: - - name: api_key - in: query - description: API key to authenticate the user - required: false - type: string - responses: - 200: - description: A list of flows - examples: - application/json: |- - { - "flow_owned": { - "id": [ - "111", - "112", - "113", - "114", - "115", - "116", - "117" - ] - } - } - schema: - type: object - properties: - flow_owned: - $ref: '#/definitions/inline_response_200_11_flow_owned' - 412: - description: | - Precondition failed. An error code and message are returned. - 310 - Please provide API key to authenticate. - 311 - Authentication failed. The API key was not valid. Please try to login again, or contact api administrators. - 312 - No flows owned by you. - schema: - $ref: '#/definitions/Error' - /flow/tag: - post: - tags: - - flow - summary: Tag a flow - description: Tags a flow. - consumes: - - application/x-www-form-urlencoded - parameters: - - name: flow_id - in: formData - description: Id of the flow. - required: true - type: number - format: integer - - name: tag - in: formData - description: Tag name - required: true - type: string - - name: api_key - in: formData - description: Api key to authenticate the user - required: true - type: string - responses: - 200: - description: The id of the tagged flow - examples: - application/json: |- - { - "flow_tag": { - "id": "2" - } - } - schema: - type: object - properties: - flow_tag: - $ref: '#/definitions/inline_response_200_12_flow_tag' - 412: - description: | - Precondition failed. An error code and message are returned. - 470 - In order to add a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag). - 471 - Entity not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity. - 472 - Entity already tagged by this tag. The entity {dataset, flow, run} already had this tag. - 473 - Something went wrong inserting the tag. Please contact OpenML Team. - 474 - Internal error tagging the entity. Please contact OpenML Team. - schema: - $ref: '#/definitions/Error' - /flow/untag: - post: - tags: - - flow - summary: Untag a flow - description: Untags a flow. - consumes: - - application/x-www-form-urlencoded - parameters: - - name: flow_id - in: formData - description: Id of the flow. - required: true - type: number - - name: tag - in: formData - description: Tag name - required: true - type: string - - name: api_key - in: formData - description: Api key to authenticate the user - required: true - type: string - responses: - 200: - description: The id of the untagged flow - examples: - application/json: |- - { - "flow_untag": { - "id": "2" - } - } - schema: - type: object - properties: - flow_untag: - $ref: '#/definitions/inline_response_200_13_flow_untag' - 412: - description: | - Precondition failed. An error code and message are returned. - 475 - Please give entity_id {data_id, flow_id, run_id} and tag. In order to remove a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag). - 476 - Entity {dataset, flow, run} not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity. - 477 - Tag not found. The provided tag is not associated with the entity {dataset, flow, run}. - 478 - Tag is not owned by you. The entity {dataset, flow, run} was tagged - by another user. Hence you cannot delete it. - 479 - Internal error removing the tag. Please contact OpenML Team. - schema: - $ref: '#/definitions/Error' - /setup/{id}: - get: - tags: - - setup - summary: Get a hyperparameter setup - description: | - Returns information about a setup. The information includes the list of hyperparameters, with name, value, and default value. - parameters: - - name: id - in: path - description: ID of the hyperparameter setup (configuration). These IDs are stated in run descriptions. - required: true - type: number - format: integer - - name: api_key - in: query - description: API key to authenticate the user - required: false - type: string - responses: - 200: - description: A setup description - examples: - application/json: |- - { - "setup_parameters":{ - "flow_id":"59", - "parameter":[ - { - "full_name":"weka.JRip(1)_F", - "parameter_name":"F", - "data_type":"option", - "default_value":"3", - "value":"3" - },{ - "full_name":"weka.JRip(1)_N", - "parameter_name":"N", - "data_type":"option", - "default_value":"2.0", - "value":"2.0" - },{ - "full_name":"weka.JRip(1)_O", - "parameter_name":"O", - "data_type":"option", - "default_value":"2", - "value":"2" - },{ - "full_name":"weka.JRip(1)_S", - "parameter_name":"S", - "data_type":"option", - "default_value":"1", - "value":"1" - }] - } - } - schema: - $ref: '#/definitions/Setup' - 412: - description: | - Precondition failed. An error code and message are returned. - 280 - Please provide setup ID. In order to view setup details, please provide the run ID - 281 - Setup not found. The setup ID was invalid, or setup does not exist (anymore). - schema: - $ref: '#/definitions/Error' - delete: - tags: - - setup - summary: Delete setup - description: | - Deletes a setup. Upon success, it returns the ID of the deleted setup. - parameters: - - name: id - in: path - description: Id of the setup. - required: true - type: number - format: integer - - name: api_key - in: query - description: Api key to authenticate the user - required: true - type: string - responses: - 200: - description: ID of the deleted setup - examples: - application/json: |- - { - "setup_delete": { - "id": "1" - } - } - schema: - type: object - properties: - study_delete: - $ref: '#/definitions/inline_response_200_14_study_delete' - 412: - description: | - Precondition failed. An error code and message are returned. - 401 - Authentication failed. Please provide API key. In order to remove your content, please authenticate. - 402 - Setup does not exists. The setup ID could not be linked to an existing setup. - 404 - Setup deletion failed. Setup is in use by other content (runs, schedules, etc). Can not be deleted. - 405 - Setup deletion failed. Please try again later. - schema: - $ref: '#/definitions/Error' - /setup/tag: - post: - tags: - - setup - summary: Tag a setup - description: Tags a setup. - consumes: - - application/x-www-form-urlencoded - parameters: - - name: setup_id - in: formData - description: Id of the setup. - required: true - type: number - format: integer - - name: tag - in: formData - description: Tag name - required: true - type: string - - name: api_key - in: formData - description: Api key to authenticate the user - required: true - type: string - responses: - 200: - description: The id of the tagged setup - examples: - application/json: |- - { - "setup_tag": { - "id": "2" - } - } - schema: - type: object - properties: - flow_tag: - $ref: '#/definitions/inline_response_200_15_flow_tag' - 412: - description: | - Precondition failed. An error code and message are returned. - 470 - In order to add a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag). - 471 - Entity not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity. - 472 - Entity already tagged by this tag. The entity {dataset, flow, run} already had this tag. - 473 - Something went wrong inserting the tag. Please contact OpenML Team. - 474 - Internal error tagging the entity. Please contact OpenML Team. - schema: - $ref: '#/definitions/Error' - /setup/untag: - post: - tags: - - setup - summary: Untag a setup - description: Untags a setup. - consumes: - - application/x-www-form-urlencoded - parameters: - - name: setup_id - in: formData - description: Id of the setup. - required: true - type: number - - name: tag - in: formData - description: Tag name - required: true - type: string - - name: api_key - in: formData - description: Api key to authenticate the user - required: true - type: string - responses: - 200: - description: The id of the untagged setup - examples: - application/json: |- - { - "setup_untag": { - "id": "2" - } - } - schema: - type: object - properties: - flow_untag: - $ref: '#/definitions/inline_response_200_16_flow_untag' - 412: - description: | - Precondition failed. An error code and message are returned. - 475 - Please give entity_id {data_id, flow_id, run_id} and tag. In order to remove a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag). - 476 - Entity {dataset, flow, run} not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity. - 477 - Tag not found. The provided tag is not associated with the entity {dataset, flow, run}. - 478 - Tag is not owned by you. The entity {dataset, flow, run} was tagged - by another user. Hence you cannot delete it. - 479 - Internal error removing the tag. Please contact OpenML Team. - schema: - $ref: '#/definitions/Error' - /setup/list/{filters}: - get: - tags: - - setup - summary: List and filter setups - description: | - List setups, filtered by a range of properties. Any number of properties can be combined by listing them one after the other in the form '/setup/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all evaluations that match the constraints. A maximum of 1,000 results are returned at a time, an error is returned if the result set is bigger. Use pagination (via limit and offset filters), or limit the results to certain flows, setups, or tags. - parameters: - - name: filters - in: path - description: | - Any combination of these filters - /tag/{tag} - returns only setups tagged with the given tag. - /flow/{ids} - return only setups for specific flows, specified as a comma-separated list of flow IDs, e.g. ''1,2,3'' - /setup/{ids} - return only specific setups, specified as a comma-separated list of setup IDs, e.g. ''1,2,3'' - /limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, results 11..15 will be returned. Both limit and offset need to be specified. - required: true - type: string - - name: api_key - in: query - description: API key to authenticate the user - required: false - type: string - responses: - 200: - description: A list of setup descriptions - examples: - application/json: |- - { - "setups": { - "setup": [ - { - "setup_id":"10", - "flow_id":"65", - "parameter": [ - { - "id":"4144", - "flow_id":"65", - "flow_name":"weka.RandomForest", - "full_name":"weka.RandomForest(1)_I", - "parameter_name":"I", - "data_type":"option", - "default_value":"10", - "value":"10" - }, - { - "id":"4145", - "flow_id":"65", - "flow_name":"weka.RandomForest", - "full_name":"weka.RandomForest(1)_K", - "parameter_name":"K", - "data_type":"option", - "default_value":"0", - "value":"0" - } - ] - } - ] - } - } - schema: - $ref: '#/definitions/SetupList' - 412: - description: | - Precondition failed. An error code and message are returned. - 670 - Please specify at least one filter. - 671 - Illegal filter. - 672 - Illegal filter input. - 673 - Result set too big. Please use one of the filters or the limit option. - 674 - No results, please check the filter. - 675 - Cannot specify offset without limit. - 676 - Requested result limit too high. - schema: - $ref: '#/definitions/Error' - /run/{id}: - get: - tags: - - run - summary: Get run description - description: | - Returns information about a run. The information includes the name, information about the creator, dependencies, parameters, run instructions and more. - parameters: - - name: id - in: path - description: ID of the run. - required: true - type: number - format: integer - - name: api_key - in: query - description: API key to authenticate the user - required: false - type: string - responses: - 200: - description: A run description - examples: - application/json: |- - { - "run": { - "run_id":"100", - "uploader":"1", - "uploader_name":"Jan van Rijn", - "task_id":"28", - "task_type":"Supervised Classification", - "task_evaluation_measure":"predictive_accuracy", - "flow_id":"67", - "flow_name":"weka.BayesNet_K2(1)", - "setup_string":"weka.classifiers.bayes.BayesNet -- -D -Q weka.classifiers.bayes.net.search.local.K2 -- -P 1 -S BAYES -E weka.classifiers.bayes.net.estimate.SimpleEstimator -- -A 0.5", - "parameter_setting": [ - { - "name":"D", - "value":"true" - }, - { - "name":"Q", - "value":"weka.classifiers.bayes.net.search.local.K2" - }, - { - "name":"P", - "value":"1" - }, - { - "name":"S", - "value":"BAYES" - } - ], - "input_data": - { - "dataset": - { - "did":"28", - "name":"optdigits", - "url":"https:\/\/www.openml.org\/data\/download\/28\/dataset_28_optdigits.arff" - } - }, - "output_data": - { - "file": [ - { - "did":"48838", - "file_id":"261", - "name":"description", - "url":"https:\/\/www.openml.org\/data\/download\/261\/weka_generated_run935374685998857626.xml" - }, - { - "did":"48839", - "file_id":"262", - "name":"predictions", - "url":"https:\/\/www.openml.org\/data\/download\/262\/weka_generated_predictions576954524972002741.arff" - } - ], - "evaluation": [ - { - "name":"area_under_roc_curve", - "flow_id":"4", - "value":"0.990288", - "array_data":"[0.99724,0.989212,0.992776,0.994279,0.980578,0.98649,0.99422,0.99727,0.994858,0.976143]" - }, - { - "name":"confusion_matrix", - "flow_id":"10", - "array_data":"[[544,1,0,0,7,0,1,0,0,1],[0,511,21,1,0,1,3,1,5,28],[0,7,511,1,0,1,0,3,23,11],[0,2,2,519,0,3,0,12,16,18],[0,3,0,0,528,0,4,21,6,6],[0,1,0,7,5,488,2,0,4,51],[1,7,0,0,2,0,548,0,0,0],[0,2,0,1,9,1,0,545,4,4],[1,25,2,2,3,6,2,1,503,9],[0,7,0,20,16,5,0,19,9,486]]" - }, - { - "name":"f_measure", - "flow_id":"12", - "value":"0.922723", - "array_data":"[0.989091,0.898857,0.935041,0.92431,0.927944,0.918156,0.980322,0.933219,0.895018,0.826531]" - }, - { - "name":"kappa", - "flow_id":"13", - "value":"0.913601" - } - ] - } - } - } - schema: - $ref: '#/definitions/Run' - 412: - description: | - Precondition failed. An error code and message are returned. - 220 - Please provide run ID. In order to view run details, please provide the run ID. - 221 - Run not found. The run ID was invalid, run does not exist (anymore). - schema: - $ref: '#/definitions/Error' - delete: - tags: - - run - summary: Delete run - description: | - Deletes a run. Upon success, it returns the ID of the deleted run. - parameters: - - name: id - in: path - description: Id of the run. - required: true - type: number - format: integer - - name: api_key - in: query - description: API key to authenticate the user - required: true - type: string - responses: - 200: - description: ID of the deleted run - examples: - application/json: |- - { - "run_delete": { - "id": "2520" - } - } - schema: - type: object - properties: - data_delete: - $ref: '#/definitions/inline_response_200_17_data_delete' - 412: - description: | - Precondition failed. An error code and message are returned. - 390 - Please provide API key. In order to remove your content, please authenticate. - 391 - Authentication failed. The API key was not valid. Please try to login again, or contact api administrators - 392 - Run does not exists. The run ID could not be linked to an existing run. - 393 - Run is not owned by you. The run was owned by another user. Hence you cannot delete it. - 394 - Deleting run failed. Deleting the run failed. Please contact support team. - schema: - $ref: '#/definitions/Error' - /run: - post: - tags: - - run - summary: Upload run - description: | - Uploads a run. Upon success, it returns the run id. - consumes: - - multipart/form-data - parameters: - - name: description - in: formData - description: An XML file describing the dataset. Only name, description, and data format are required. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.run.upload) and an [XML example](https://www.openml.org/api/v1/xml_example/run). - required: true - type: file - - name: predictions - in: formData - description: The predictions generated by the run - required: true - type: file - - name: model_readable - in: formData - description: The human-readable model generated by the run - required: false - type: file - - name: model_serialized - in: formData - description: The serialized model generated by the run - required: false - type: file - - name: api_key - in: query - description: Api key to authenticate the user - required: true - type: string - responses: - 200: - description: Id of the uploaded run - examples: - application/json: |- - { - "upload_run": { - "id": "2520" - } - } - schema: - type: object - properties: - upload_flow: - $ref: '#/definitions/inline_response_200_18_upload_flow' - 412: - description: | - Precondition failed. An error code and message are returned. - 201 - Authentication failed. The API key was not valid. Please try to login again, or contact api administrators. - 202 - Please provide run XML. - 203 - Could not validate run xml by XSD. Please double check that the xml is valid. - 204 - Unknown task. The task with the given ID was not found in the database. - 205 - Unknown flow. The flow with the given ID was not found in the database. - 206 - Invalid number of files. The number of uploaded files did not match the number of files expected for the task type - 207 - File upload failed. One of the files uploaded has a problem. - 208 - Error inserting setup record. Please contact api administrators - 210 - Unable to store run. Please contact api administrators. - 211 - Dataset not in database. One of the datasets of the task was not included in database, please contact api administrators. - 212 - Unable to store file. Please contact api administrators. - 213 - Parameter in run xml unknown. One of the parameters provided in the run xml is not registered as parameter for the flow nor its components. - 214 - Unable to store input setting. Please contact API support team. - 215 - Unable to evaluate predictions. Please contact API support team. - 216 - Error thrown by Java Application. Additional information field is provided. - 217 - Error processing output data. Unknown or inconsistent evaluation measure. One of the provided evaluation measures could not be matched with a record in the math_function or flow table. - 218 - Wrong flow associated with run. The flow implements a math_function, which is unable to generate predictions. Please select another flow. - 219 - Error reading the XML document. The XML description file could not be verified. - schema: - $ref: '#/definitions/Error' - /run/list/{filters}: - get: - tags: - - run - summary: List and filter runs - description: "List runs, filtered by a range of properties. Any number of properties can be combined by listing them one after the other in the form '/run/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all runs that match the constraints. A maximum of 10,000 results are returned, an error is returned if the result set is bigger. Use pagination (via limit and offset filters), or limit the results to certain tasks, flows, setups, or uploaders. \n" - parameters: - - name: filters - in: path - description: | - Any combination of these filters - /tag/{tag} - return only runs tagged with the given tag. - /run/{ids} - return only specific runs, specified as a comma-separated list of run IDs, e.g. ''1,2,3'' - /task/{ids} - return only runs on specific tasks, specified as a comma-separated list of task IDs, e.g. ''1,2,3'' - /flow/{ids} - return only runs on specific flows, specified as a comma-separated list of flow IDs, e.g. ''1,2,3'' - /setup/{ids} - return only runs with specific setups, specified as a comma-separated list of setup IDs, e.g. ''1,2,3'' - /uploader/{ids} - return only runs uploaded by specific users, specified as a comma-separated list of user IDs, e.g. ''1,2,3'' - /limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, results 11..15 will be returned. Both limit and offset need to be specified. - required: true - type: string - - name: api_key - in: query - description: API key to authenticate the user - required: false - type: string - responses: - 200: - description: A list of runs descriptions - examples: - application/json: - runs: - run: - - run_id: "100" - task_id: "28" - setup_id: "12" - flow_id: "67" - uploader: "1" - upload_time: 2014-04-06 23:30:40 - error_message: [] - - run_id: "101" - task_id: "48" - setup_id: "6" - flow_id: "61" - uploader: "1" - upload_time: 2014-04-06 23:30:40 - error_message: [] - - run_id: "102" - task_id: "41" - setup_id: "3" - flow_id: "58" - uploader: "1" - upload_time: 2014-04-06 23:30:40 - error_message: [] - schema: - $ref: '#/definitions/RunList' - 412: - description: | - Precondition failed. An error code and message are returned. - 510 - Please provide at least task, flow or setup, uploader or run, to filter results, or limit the number of responses. The number of runs is huge. Please limit the result space. - 511 - Input not safe. The input parameters (task_id, setup_id, flow_id, run_id, uploader_id) did not meet the constraints (comma separated list of integers). - 512 - There where no results. Check whether there are runs under the given constraint. - 513 - Too many results. Given the constraints, there were still too many results. Please add filters to narrow down the list. - 514 - Illegal filter specified. - 515 - Offset specified without limit. - 516 - Requested result limit too high. - schema: - $ref: '#/definitions/Error' - /run/tag: - post: - tags: - - run - summary: Tag a run - description: Tags a run. - consumes: - - application/x-www-form-urlencoded - parameters: - - name: run_id - in: formData - description: Id of the run. - required: true - type: number - format: integer - - name: tag - in: formData - description: Tag name - required: true - type: string - - name: api_key - in: formData - description: Api key to authenticate the user - required: true - type: string - responses: - 200: - description: The id of the tagged run - examples: - application/json: |- - { - "run_tag": { - "id": "2" - } - } - schema: - type: object - properties: - run_tag: - $ref: '#/definitions/inline_response_200_19_run_tag' - 412: - description: | - Precondition failed. An error code and message are returned. - 470 - In order to add a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag). - 471 - Entity not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity. - 472 - Entity already tagged by this tag. The entity {dataset, flow, run} already had this tag. - 473 - Something went wrong inserting the tag. Please contact OpenML Team. - 474 - Internal error tagging the entity. Please contact OpenML Team. - schema: - $ref: '#/definitions/Error' - /run/untag: - post: - tags: - - run - summary: Untag a run - description: Untags a run. - consumes: - - application/x-www-form-urlencoded - parameters: - - name: run_id - in: formData - description: Id of the run. - required: true - type: number - - name: tag - in: formData - description: Tag name - required: true - type: string - - name: api_key - in: formData - description: Api key to authenticate the user - required: true - type: string - responses: - 200: - description: The id of the untagged run - examples: - application/json: |- - { - "run_untag": { - "id": "2" - } - } - schema: - type: object - properties: - run_untag: - $ref: '#/definitions/inline_response_200_20_run_untag' - 412: - description: | - Precondition failed. An error code and message are returned. - 475 - Please give entity_id {data_id, flow_id, run_id} and tag. In order to remove a tag, please upload the entity id (either data_id, flow_id, run_id) and tag (the name of the tag). - 476 - Entity {dataset, flow, run} not found. The provided entity_id {data_id, flow_id, run_id} does not correspond to an existing entity. - 477 - Tag not found. The provided tag is not associated with the entity {dataset, flow, run}. - 478 - Tag is not owned by you. The entity {dataset, flow, run} was tagged by another user. Hence you cannot delete it. - 479 - Internal error removing the tag. Please contact OpenML Team. - schema: - $ref: '#/definitions/Error' - /run/evaluate: - post: - tags: - - run - summary: Uploads a run evaluation - description: | - Uploads a run evaluation. When successful, it returns the run id. - consumes: - - multipart/form-data - parameters: - - name: description - in: formData - description: An XML file describing the run evaluation.Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.run.evaluate) and an [XML example](https://www.openml.org/api/v1/xml_example/run.evaluate). - required: true - type: file - - name: api_key - in: query - description: Api key to authenticate the user - required: true - type: string - responses: - 200: - description: Id of the evaluated run - examples: - application/json: |- - { - "run_evaluate": { - "id": "2520" - } - } - schema: - type: object - properties: - upload_flow: - $ref: '#/definitions/inline_response_200_21_upload_flow' - 412: - description: | - Precondition failed. An error code and message are returned. - 422 - Upload problem description XML - 423 - Problem validating uploaded description file - 424 - Problem opening description xml - schema: - $ref: '#/definitions/Error' - /run/reset/{id}: - get: - tags: - - run - summary: Resets a run. - description: | - Removes all run evaluations. When a run is reset, the runs will automatically be evaluated as soon as they are picked up by the evaluation engine again. - parameters: - - name: id - in: path - description: Run ID. - required: true - type: string - - name: api_key - in: query - description: API key to authenticate the user - required: false - type: string - responses: - 200: - description: Id of the evaluated run - examples: - application/json: |- - { - "run_reset": { - "id": "2520" - } - } - schema: - type: object - properties: - run_reset: - $ref: '#/definitions/inline_response_200_21_upload_flow' - 412: - description: | - Precondition failed. An error code and message are returned. - 412 - Run does not exist - 413 - Run is not owned by you - 394 - Resetting run failed - schema: - $ref: '#/definitions/Error' - /run/trace/{id}: - get: - tags: - - run - summary: Get run trace - description: | - Returns the optimization trace of run. The trace contains every setup tried, its evaluation, and whether it was selected. - parameters: - - name: id - in: path - description: ID of the run. - required: true - type: number - format: integer - - name: api_key - in: query - description: API key to authenticate the user - required: false - type: string - responses: - 200: - description: A run trace description - examples: - application/json: |- - { - "trace": { - "run_id":"573055", - "trace_iteration": { - "repeat":"0", - "fold":"0", - "repeat":"0", - "iteration":"0", - "setup_string":{"parameter_minNumObj": "1", - "parameter_confidenceFactor": "0.1"}, - "evaluation":"94.814815", - "selected": "true" - }, - "trace_iteration": { - "repeat":"0", - "fold":"0", - "repeat":"0", - "iteration":"1", - "setup_string":{"parameter_minNumObj": "1", - "parameter_confidenceFactor": "0.25"}, - "evaluation": "94.074074", - "selected": "true" - } - } - } - schema: - $ref: '#/definitions/RunTrace' - 412: - description: | - Precondition failed. An error code and message are returned. - 570 - No successful trace associated with this run - schema: - $ref: '#/definitions/Error' - post: - tags: - - run - summary: Upload run trace - description: | - Uploads a run trace. Upon success, it returns the run id. - consumes: - - multipart/form-data - parameters: - - name: id - in: path - description: ID of the run. - required: true - type: number - format: integer - - name: description - in: formData - description: An XML file describing the trace. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.run.trace) and an [XML example](https://www.openml.org/api/v1/xml_example/run.trace). - required: true - type: file - - name: api_key - in: query - description: Api key to authenticate the user - required: true - type: string - responses: - 200: - description: Id of the run with the trace - examples: - application/json: |- - { - "run_trace": { - "id": "2520" - } - } - schema: - type: object - properties: - upload_flow: - $ref: '#/definitions/inline_response_200_23_upload_flow' - 412: - description: | - Precondition failed. An error code and message are returned. - 561 - Problem with uploaded trace file. - 562 - Problem validating xml trace file. - 563 - Problem loading xml trace file. - schema: - $ref: '#/definitions/Error' - /evaluation/list/{filters}: - get: - tags: - - evaluation - summary: List and filter evaluations - description: "List evaluations, filtered by a range of properties. Any number of properties can be combined by listing them one after the other in the form '/evaluation/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all evaluations that match the constraints. A maximum of 10,000 results are returned, an error is returned if the result set is bigger. Use pagination (via limit and offset filters), or limit the results to certain tasks, flows, setups, uploaders or runs. \n" - parameters: - - name: filters - in: path - description: | - Any combination of these filters - /function/{name} - name of the evaluation measure, e.g. area_under_auc or predictive_accuracy. See the OpenML website for the complete list of measures. - /tag/{tag} - returns only evaluations of runs tagged with the given tag. - /run/{ids} - return only evaluations for specific runs, specified as a comma-separated list of run IDs, e.g. ''1,2,3'' - /task/{ids} - return only evaluations for specific tasks, specified as a comma-separated list of task IDs, e.g. ''1,2,3'' - /flow/{ids} - return only evaluations for specific flows, specified as a comma-separated list of flow IDs, e.g. ''1,2,3'' - /setup/{ids} - return only evaluations for specific setups, specified as a comma-separated list of setup IDs, e.g. ''1,2,3'' - /uploader/{ids} - return only evaluations uploaded by specific users, specified as a comma-separated list of user IDs, e.g. ''1,2,3'' - /limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, results 11..15 will be returned. Both limit and offset need to be specified. - /per_fold/{true,false} - whether or not to return crossvalidation scores per fold. Defaults to 'false'. Setting it to 'true' leads to large numbers of results, use only for very specific sets of runs. - /sort_order/{asc,desc} - sorts the results by the evaluation value, according to the selected evaluation measure (function) - required: true - type: string - - name: api_key - in: query - description: API key to authenticate the user - required: false - type: string - responses: - 200: - description: A list of evaluations descriptions - examples: - application/json: - evaluations: - evaluation: - - run_id: "1" - task_id: "68" - uploader: "1" - flow_id: "61" - function: area_under_roc_curve - upload_time: 2014-04-06 23:30:40 - value: "0.839359" - array_data: '[0,0.99113,0.898048,0.874862,0.791282,0.807343,0.820674]' - - run_id: "1" - task_id: "68" - uploader: "1" - flow_id: "61" - function: f_measure - upload_time: 2014-04-06 23:30:40 - value: "0.600026" - array_data: '[0,0,0.711934,0.735714,0.601363,0.435678,0.430913]' - - run_id: "1" - task_id: "68" - uploader: "1" - flow_id: "61" - function: predictive_accuracy - upload_time: 2014-04-06 23:30:40 - value: "0.614634" - array_data: [] - schema: - $ref: '#/definitions/EvaluationList' - 412: - description: | - Precondition failed. An error code and message are returned. - 540 - Please provide at least task, flow or setup, uploader or run, to - filter results, or limit the number of responses. - 541 - The input parameters (task_id, setup_id, flow_id, run_id, uploader_id) did not meet the constraints (comma separated list of integers). - 542 - There where no results. Check whether there are runs under the given constraint. - 543 - Too many results. Given the constraints, there were still too many results. Please add filters to narrow down the list. - 544 - Illegal filter specified. - 545 - Offset specified without limit. - 546 - Requested result limit too high. - 547 - Per fold can only be set to value "true" or "false". - 548 - Per fold queries are experimental and require a fair amount of filters on resulting run records to keep the query fast (use, e.g., flow, setup, task and uploader filter) - schema: - $ref: '#/definitions/Error' - /evaluation/request/{evaluation_engine_id}/{order}: - get: - tags: - - evaluation - summary: Get an unevaluated run - description: | - This call is for people running their own evaluation engines. It returns the details of a run that is not yet evaluated by the given evaluation engine. It doesn't evaluate the run, it just returns the run info. - parameters: - - name: evaluation_engine_id - in: path - description: The ID of the evaluation engine. You get this ID when you register a new evaluation engine with OpenML. The ID of the main evaluation engine is 1. - required: true - type: string - - name: order - in: path - description: When there are multiple runs still to evaluate, this defines which one to return. Options are 'normal' - the oldest run, 'reverse' - the newest run, or 'random' - a random run. - required: true - type: string - - name: api_key - in: query - description: API key to authenticate the user - required: false - type: string - responses: - 200: - description: A list of evaluations descriptions - examples: - application/json: - evaluation_request: - run: - - run_id: "8943712" - task_id: "3021" - setup_id: "68799271" - uploader: "1935" - upload_time: 2018-04-03 21:05:38 - schema: - $ref: '#/definitions/EvaluationRequest' - 412: - description: | - Precondition failed. An error code and message are returned. - 100 - Function not valid. - 545 - No unevaluated runs according to the criteria. - 546 - Illegal filter. - schema: - $ref: '#/definitions/Error' - /study/{id}: - get: - tags: - - study - summary: Get study description by study id or alias - description: "Returns information about the study with the given id or alias. \n" - parameters: - - name: id - in: path - description: ID or alias of the study. - required: true - type: string - - name: api_key - in: query - description: Api key to authenticate the user - required: false - type: string - responses: - 200: - description: A study description - examples: - application/json: |- - { - "study": { - "id": "99", - "main_entity_type": "task", - "name": "CC18 benchmark suite", - "description": "CC18 benchmark suite", - "creation_date": "2019-02-16T17:35:58", - "creator": "1159", - "data": {"data_id": ["1","2","3"]}, - "tasks": {"task_id": ["1","2","3"]} - } - } - schema: - $ref: '#/definitions/Study' - 412: - description: | - Precondition failed. An error code and message are returned. - 601 - Unknown study. The study with the given id or alias was not found in the database - schema: - $ref: '#/definitions/Error' - delete: - tags: - - study - summary: Delete study - description: | - Deletes a study. Upon success, it returns the ID of the deleted study. - parameters: - - name: id - in: path - description: Id of the study. - required: true - type: number - format: integer - - name: api_key - in: query - description: Api key to authenticate the user - required: true - type: string - responses: - 200: - description: ID of the deleted study - examples: - application/json: |- - { - "study_delete": { - "id": "1" - } - } - schema: - type: object - properties: - study_delete: - $ref: '#/definitions/inline_response_200_24_study_delete' - 412: - description: | - Precondition failed. An error code and message are returned. - 591 - Please provide API key. In order to remove your content, please authenticate. - 592 - Study does not exists. The study ID could not be linked to an existing study. - 593 - Study deletion failed. Please try again later. - schema: - $ref: '#/definitions/Error' - /study: - post: - tags: - - study - summary: Create new study - description: | - Creates a new study. Upon success, it returns the study id. - consumes: - - multipart/form-data - parameters: - - name: description - in: formData - description: An XML file describing the study. Also see the [XSD schema](https://www.openml.org/api/v1/xsd/openml.study.upload) and an [XML example](https://www.openml.org/api/v1/xml_example/study). - required: true - type: file - - name: api_key - in: query - description: Api key to authenticate the user - required: true - type: string - responses: - 200: - description: Id of the uploaded study - examples: - application/json: |- - { - "upload_study": { - "id": "4328" - } - } - schema: - type: object - properties: - upload_study: - $ref: '#/definitions/inline_response_200_25_upload_study' - 412: - description: | - Precondition failed. An error code and message are returned. - 1031 - Description file not present. Please upload the study description. - 1032 - Problem validating uploaded description file. The XML description format does not meet the standards. See the XSD schema. - 1033 - Illegal main entity type. Currently only collections of tasks and can be created. - 1034 - Linked entities are not of the correct type fot this study. - 1035 - Benchmark suites can only be linked to run studies. - 1036 - Referred benchmark suite cannot be found. - 1037 - Referred benchmark suite should be a task collection. - 1038 - Study alias is not unique. - 1039 - Dataset insertion problem. Please contact the administrators. - schema: - $ref: '#/definitions/Error' - /study/list/{filters}: - get: - tags: - - study - summary: List all studies (collections of items) - description: | - List studies, optionally filtered by a range of properties. Any number of properties can be combined by listing them one after the other in the form '/study/list/{filter}/{value}/{filter}/{value}/...' Returns an array with all studies that match the constraints. - parameters: - - name: filters - in: path - description: | - Any combination of these filters - /main_entity_type/{type} - only return studies collecting entities of a given type (e.g. 'task' or 'run'). - /uploader/{ids} - return only evaluations uploaded by specific users, specified as a comma-separated list of user IDs, e.g. ''1,2,3'' - /limit/{limit}/offset/{offset} - returns only {limit} results starting from result number {offset}. Useful for paginating results. With /limit/5/offset/10, results 11..15 will be returned. Both limit and offset need to be specified. - required: true - type: string - - name: api_key - in: query - description: API key to authenticate the user - required: false - type: string - responses: - 200: - description: A list of studies - examples: - application/json: |- - { - "study_list":{ - "study":[ - { - "id":"1", - "alias":"Study_1", - "name":"A large-scale comparison of classification algorithms", - "creation_date":"2017-07-20 15:51:20", - "creator":"2" - }, - { - "id":"2", - "alias":"Study_2", - "name":"Fast Algorithm Selection using Learning Curves", - "creation_date":"2017-07-20 15:51:20", - "creator":"2" - } - ] - } - } - schema: - $ref: '#/definitions/StudyList' - 412: - description: | - Precondition failed. An error code and message are returned. - schema: - $ref: '#/definitions/Error' - /study/{id}/attach: - post: - tags: - - study - summary: Attach a new entity to a study - description: | - Attach a new entity to an exising study. Upon success, it returns the study id, type, and linked entities. - consumes: - - multipart/form-data - parameters: - - name: id - in: path - description: Id of the study. Supplied in the URL path. - required: true - type: number - format: integer - - name: ids - in: formData - description: Comma-separated list of entity IDs to be attached to the study. For instance, if this is a run study, the list of run IDs that need to be added (attached) to the study. Must be supplied as a POST variable. - required: true - type: string - - name: api_key - in: query - description: Api key to authenticate the user - required: true - type: string - responses: - 200: - description: Properties of the updated study - examples: - application/json: |- - { - "study_attach": { - "id": "1", - "main_entity_type": "task", - "linked_entities": "5" - } - } - schema: - type: object - properties: - study_attach: - $ref: '#/definitions/inline_response_200_26_study_attach' - 412: - description: | - Precondition failed. An error code and message are returned. - 1041 - Could not find study. Check the study ID in your request. - 1042 - Cannnot attach entities to legacy studies. - 1043 - Please provide POST field 'ids'. - 1044 - Please ensure that the 'ids' in the POST field is a list of natural numbers. - 1045 - Could not attach entities to the study. It appears as if the entity does not exist. - schema: - $ref: '#/definitions/Error' - /study/{id}/detach: - post: - tags: - - study - summary: Detach an entity from a study - description: | - Detach an entity from an exising study. Upon success, it returns the study id, type, and linked entities. - consumes: - - multipart/form-data - parameters: - - name: id - in: path - description: Id of the study. - required: true - type: number - format: integer - - name: ids - in: formData - description: Comma-separated list of entity IDs to be detached from the study. For instance, if this is a run study, the list of run IDs that need to be removed (detached) from the study. Must be supplied as a POST variable. - required: true - type: string - - name: api_key - in: query - description: Api key to authenticate the user - required: true - type: string - responses: - 200: - description: Properties of the updated study - examples: - application/json: |- - { - "study_detach": { - "id": "1", - "main_entity_type": "task", - "linked_entities": "5" - } - } - schema: - type: object - properties: - upload_study: - $ref: '#/definitions/inline_response_200_26_study_attach' - 412: - description: "Precondition failed. An error code and message are returned.\n1041 - Could not find study. Check the study ID in your request.\n1042 - Cannot attach entities to legacy studies.\n1043 - Please provide POST field 'ids'.\n1044 - Please ensure that the 'ids' in the POST field is a list of natural numbers.\n1046 - Could not detach entities from the study. It appears as if the entity does not exist. \n" - schema: - $ref: '#/definitions/Error' - /estimationprocedure/list: - get: - tags: - - estimationprocedure - summary: List all estimation procedures - description: | - Returns an array with all model performance estimation procedures in the system. - parameters: - - name: api_key - in: query - description: API key to authenticate the user - required: false - type: string - responses: - 200: - description: A list of estimation procedures - examples: - application/json: |- - { - "estimationprocedures": { - "estimationprocedure": [ - { - "id":"1", - "ttid":"1", - "name":"10-fold Crossvalidation", - "type":"crossvalidation", - "repeats":"1", - "folds":"10", - "stratified_sampling":"true" - }, - { - "id":"2", - "ttid":"1", - "name":"5 times 2-fold Crossvalidation", - "type":"crossvalidation", - "repeats":"5", - "folds":"2", - "stratified_sampling":"true" - } - ] - } - } - schema: - $ref: '#/definitions/EstimationProcedureList' - 412: - description: | - Precondition failed. An error code and message are returned. - 500 - No model performance estimation procedures available. - schema: - $ref: '#/definitions/Error' - /user/list: - get: - tags: - - user - summary: List all users by user id - description: | - Returns an array with all user ids and names. - parameters: - - name: api_key - in: query - description: API key to authenticate the user - required: false - type: string - responses: - 200: - description: A list of users - examples: - application/json: |- - { - "users":{ - "user":[ - { - "id":"1", - "username":"janvanrijn@gmail.com"}, - { - "id":"2", - "username":"joaquin.vanschoren@gmail.com"} - ] - } - } - schema: - $ref: '#/definitions/UserList' - /evaluationmeasure/list: - get: - tags: - - evaluationmeasure - summary: List all evaluation measures - description: | - Returns an array with all model evaluation measures in the system. - parameters: - - name: api_key - in: query - description: API key to authenticate the user - required: false - type: string - responses: - 200: - description: A list of evaluation measures - examples: - application/json: |- - { - "evaluation_measures":{ - "measures":{ - "measure":[ - "area_under_roc_curve", - "average_cost", - "binominal_test", - "build_cpu_time" - ] - } - } - } - schema: - $ref: '#/definitions/EvaluationMeasureList' -definitions: - Flow: - type: object - properties: - flow_description: - $ref: '#/definitions/Flow_flow_description' - FlowList: - type: object - properties: - flows: - $ref: '#/definitions/FlowList_flows' - UserList: - type: object - properties: - users: - $ref: '#/definitions/UserList_users' - Task: - type: object - properties: - task_description: - $ref: '#/definitions/Task_task_description' - TaskList: - type: object - properties: - task: - $ref: '#/definitions/TaskList_task' - EvaluationMeasureList: - type: object - properties: - evaluation_measures: - $ref: '#/definitions/EvaluationMeasureList_evaluation_measures' - EstimationProcedureList: - type: object - properties: - estimationprocedures: - $ref: '#/definitions/EstimationProcedureList_estimationprocedures' - DataList: - type: object - properties: - data: - $ref: '#/definitions/DataList_data' - DataQualities: - type: object - properties: - data_qualities: - $ref: '#/definitions/DataQualities_data_qualities' - DataQualityList: - type: object - properties: - data_qualities_list: - $ref: '#/definitions/DataQualityList_data_qualities_list' - DataFeatures: - type: object - properties: - data_features: - $ref: '#/definitions/DataFeatures_data_features' - Data: - type: object - properties: - data_set_description: - $ref: '#/definitions/Data_data_set_description' - RunList: - type: object - properties: - runs: - $ref: '#/definitions/RunList_runs' - SetupList: - type: object - properties: - setups: - $ref: '#/definitions/SetupList_setups' - EvaluationList: - type: object - properties: - evaluations: - $ref: '#/definitions/EvaluationList_evaluations' - EvaluationRequest: - type: object - properties: - evaluation_request: - $ref: '#/definitions/EvaluationRequest_evaluation_request' - DataUnprocessed: - type: object - properties: - data_unprocessed: - $ref: '#/definitions/DataUnprocessed_data_unprocessed' - Setup: - type: object - properties: - setup_parameters: - $ref: '#/definitions/Setup_setup_parameters' - Run: - type: object - properties: - run_description: - $ref: '#/definitions/Run_run_description' - TaskType: - type: object - properties: - id: - type: string - description: ID of the task type, a positive integer - name: - type: string - description: The name of the task type, e.g. Supervised Classification - description: - type: string - description: A description of the task type - contributor: - type: array - items: - type: string - description: A list of people who defined the task type - date: - type: string - description: The date when the task type was created - input: - type: array - items: - $ref: '#/definitions/TaskType_input' - output: - type: array - items: - $ref: '#/definitions/TaskType_output' - TaskTypeList: - type: object - properties: - task_types: - $ref: '#/definitions/TaskTypeList_task_types' - Study: - type: object - properties: - study: - $ref: '#/definitions/Study_study' - StudyList: - type: object - properties: - study_list: - $ref: '#/definitions/StudyList_study_list' - RunTrace: - type: object - properties: - trace: - $ref: '#/definitions/RunTrace_trace' - Error: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - additional_message: - type: string - inline_response_200_data_delete: - properties: - id: - type: string - description: ID of the deleted dataset, a positive integer - inline_response_200: - properties: - data_delete: - $ref: '#/definitions/inline_response_200_data_delete' - inline_response_200_1_upload_data_set: - properties: - id: - type: string - description: ID of the uploaded dataset, a positive integer - inline_response_200_1: - properties: - upload_data_set: - $ref: '#/definitions/inline_response_200_1_upload_data_set' - inline_response_200_2_data_tag: - properties: - id: - type: string - description: ID of the tagged dataset - inline_response_200_2: - properties: - data_tag: - $ref: '#/definitions/inline_response_200_2_data_tag' - inline_response_200_3_data_untag: - properties: - id: - type: string - description: ID of the untagged dataset - inline_response_200_3: - properties: - data_untag: - $ref: '#/definitions/inline_response_200_3_data_untag' - inline_response_200_4_task_delete: - properties: - id: - type: string - description: ID of the deleted task, a positive integer - inline_response_200_4: - properties: - task_delete: - $ref: '#/definitions/inline_response_200_4_task_delete' - inline_response_200_5_upload_task: - properties: - id: - type: string - description: ID of the uploaded task, a positive integer - inline_response_200_5: - properties: - upload_task: - $ref: '#/definitions/inline_response_200_5_upload_task' - inline_response_200_6_task_tag: - properties: - id: - type: string - description: ID of the tagged task - inline_response_200_6: - properties: - task_tag: - $ref: '#/definitions/inline_response_200_6_task_tag' - inline_response_200_7_task_untag: - properties: - id: - type: string - description: ID of the untagged task - inline_response_200_7: - properties: - task_untag: - $ref: '#/definitions/inline_response_200_7_task_untag' - inline_response_200_8_flow_delete: - properties: - id: - type: string - description: ID of the deleted flow, a positive integer - inline_response_200_8: - properties: - flow_delete: - $ref: '#/definitions/inline_response_200_8_flow_delete' - inline_response_200_9_upload_flow: - properties: - id: - type: string - description: ID of the uploaded flow, a positive integer - inline_response_200_9: - properties: - upload_flow: - $ref: '#/definitions/inline_response_200_9_upload_flow' - inline_response_200_10_flow_exists: - properties: - exists: - type: string - description: true or false - id: - type: string - description: The id of the flow with the given name and (external) version - inline_response_200_10: - properties: - flow_exists: - $ref: '#/definitions/inline_response_200_10_flow_exists' - inline_response_200_11_flow_owned: - properties: - id: - type: array - items: - type: string - inline_response_200_11: - properties: - flow_owned: - $ref: '#/definitions/inline_response_200_11_flow_owned' - inline_response_200_12_flow_tag: - properties: - id: - type: string - description: ID of the tagged flow - inline_response_200_12: - properties: - flow_tag: - $ref: '#/definitions/inline_response_200_12_flow_tag' - inline_response_200_13_flow_untag: - properties: - id: - type: string - description: ID of the untagged flow - inline_response_200_13: - properties: - flow_untag: - $ref: '#/definitions/inline_response_200_13_flow_untag' - inline_response_200_14_study_delete: - properties: - id: - type: string - description: ID of the deleted setup, a positive integer - inline_response_200_14: - properties: - study_delete: - $ref: '#/definitions/inline_response_200_14_study_delete' - inline_response_200_15_flow_tag: - properties: - id: - type: string - description: ID of the tagged setup - inline_response_200_15: - properties: - flow_tag: - $ref: '#/definitions/inline_response_200_15_flow_tag' - inline_response_200_16_flow_untag: - properties: - id: - type: string - description: ID of the untagged setup - inline_response_200_16: - properties: - flow_untag: - $ref: '#/definitions/inline_response_200_16_flow_untag' - inline_response_200_17_data_delete: - properties: - id: - type: string - description: ID of the deleted run, a positive integer - inline_response_200_17: - properties: - data_delete: - $ref: '#/definitions/inline_response_200_17_data_delete' - inline_response_200_18_upload_flow: - properties: - id: - type: string - description: ID of the uploaded run, a positive integer - inline_response_200_18: - properties: - upload_flow: - $ref: '#/definitions/inline_response_200_18_upload_flow' - inline_response_200_19_run_tag: - properties: - id: - type: string - description: ID of the tagged run - inline_response_200_19: - properties: - run_tag: - $ref: '#/definitions/inline_response_200_19_run_tag' - inline_response_200_20_run_untag: - properties: - id: - type: string - description: ID of the untagged run - inline_response_200_20: - properties: - run_untag: - $ref: '#/definitions/inline_response_200_20_run_untag' - inline_response_200_21_upload_flow: - properties: - id: - type: string - description: ID of the evaluated run, a positive integer - inline_response_200_21: - properties: - upload_flow: - $ref: '#/definitions/inline_response_200_21_upload_flow' - inline_response_200_22: - properties: - run_reset: - $ref: '#/definitions/inline_response_200_21_upload_flow' - inline_response_200_23_upload_flow: - properties: - id: - type: string - description: ID of the run with the trace, a positive integer - inline_response_200_23: - properties: - upload_flow: - $ref: '#/definitions/inline_response_200_23_upload_flow' - inline_response_200_24_study_delete: - properties: - id: - type: string - description: ID of the deleted study, a positive integer - inline_response_200_24: - properties: - study_delete: - $ref: '#/definitions/inline_response_200_24_study_delete' - inline_response_200_25_upload_study: - properties: - id: - type: string - description: ID of the uploaded study, a positive integer - inline_response_200_25: - properties: - upload_study: - $ref: '#/definitions/inline_response_200_25_upload_study' - inline_response_200_26_study_attach: - properties: - id: - type: string - description: ID of the study, a positive integer - main_entity_type: - type: string - description: Main entity type of the of the study - linked_entities: - type: string - description: The number of linked entities - inline_response_200_26: - properties: - study_attach: - $ref: '#/definitions/inline_response_200_26_study_attach' - inline_response_200_27: - properties: - upload_study: - $ref: '#/definitions/inline_response_200_26_study_attach' - Flow_flow_description_parameter: - properties: - name: - type: string - description: The name of the parameter - data_type: - type: string - description: The data type of the parameter - default_value: - type: string - description: The default value of the parameter - description: - type: string - description: A description of the parameter - Flow_flow_description: - properties: - id: - type: string - description: ID of the flow, a positive integer - uploader: - type: string - description: The uploader of the flow - name: - type: string - description: The name of the flow - version: - type: string - description: The version of the flow, set by OpenML. A positive integer - version_label: - type: string - description: The version of the flow, as defined by the uploader, for reference. Can be any format as long as it is unique. - description: - type: string - description: Wiki description of the flow, in (Git flavoured) markdown format - upload_date: - type: string - description: The datetime that the flow was uploaded, format yyyy-MM-dd HH:mm:ss - language: - type: string - description: The programming language the flow is written in. - dependencies: - type: string - description: The libraries that this flow depends on, and their version numbers. - tag: - type: array - description: Tags added by OpenML users. Includes study tags in the form `study_1` - items: - type: string - parameter: - type: array - items: - $ref: '#/definitions/Flow_flow_description_parameter' - FlowList_flows_flow: - properties: - id: - type: string - description: The flow ID - full_name: - type: string - description: The full flow name (name + internal version number) - name: - type: string - description: The flow name - version: - type: string - description: The internal flow version - external_version: - type: string - description: The external flow version - uploader: - type: string - description: The ID of the person who uploaded the flow - FlowList_flows: - properties: - flow: - type: array - items: - $ref: '#/definitions/FlowList_flows_flow' - UserList_users_user: - properties: - id: - type: string - description: The user ID - username: - type: string - description: The full user name - UserList_users: - properties: - user: - type: array - items: - $ref: '#/definitions/UserList_users_user' - Task_task_description_data_set: - properties: - data_set_id: - type: string - description: The id of the dataset - target_feature: - type: string - description: The name of the target feature for this task - Task_task_description_estimation_procedure_parameter: - properties: - name: - type: string - description: The name of the parameter - value: - type: string - description: The value of the parameter - Task_task_description_estimation_procedure: - properties: - type: - type: string - description: The type of procedure, e.g. crossvalidation - data_splits_url: - type: string - description: The url where the data splits can be downloaded - parameter: - type: array - items: - $ref: '#/definitions/Task_task_description_estimation_procedure_parameter' - Task_task_description_evaluation_measures: - properties: - evaluation_measure: - type: string - description: The evaluation measure to optimize in this task - Task_task_description_input: - properties: - name: - type: string - description: The name of the input, e.g. source_data - data_set: - $ref: '#/definitions/Task_task_description_data_set' - estimation_procedure: - $ref: '#/definitions/Task_task_description_estimation_procedure' - cost_matrix: - type: array - description: The cost matrix, indicating the costs for each type of misclassification - items: - type: array - items: - type: integer - format: int64 - evaluation_measures: - $ref: '#/definitions/Task_task_description_evaluation_measures' - Task_task_description_predictions_feature: - properties: - name: - type: string - description: The name of the prediction feature, e.g. row_id - type: - type: string - description: The type of the prediction feature, e.g. integer - Task_task_description_predictions: - properties: - format: - type: string - description: The fromat of the predictions, e.g. ARFF - feature: - type: array - items: - $ref: '#/definitions/Task_task_description_predictions_feature' - Task_task_description_output: - properties: - name: - type: string - description: The name of the output, e.g. predictions - predictions: - $ref: '#/definitions/Task_task_description_predictions' - Task_task_description: - properties: - task_id: - type: string - description: ID of the task, a positive integer - task_type: - type: string - description: The type of the task, e.g. Supervised Classification - input: - type: array - items: - $ref: '#/definitions/Task_task_description_input' - output: - type: array - items: - $ref: '#/definitions/Task_task_description_output' - tag: - type: array - items: - type: string - description: Tags added by OpenML users. Includes study tags in the form `study_1` - TaskList_task_input: - properties: - name: - type: string - description: The name of the input - value: - type: string - description: The value of the input - TaskList_task_quality: - properties: - name: - type: string - description: The name of the quality - value: - type: string - description: The value of the quality - TaskList_task_task: - properties: - task_id: - type: string - description: The ID of the task - task_type: - type: string - description: The type of task (e.g. Supervised Classificationr) - did: - type: string - description: The id of the source dataset - name: - type: string - description: The name of the source dataset - status: - type: string - description: The status of the source dataset, active, in_preparation, or deactivated - format: - type: string - description: The format of the source dataset - input: - type: array - items: - $ref: '#/definitions/TaskList_task_input' - quality: - type: array - items: - $ref: '#/definitions/TaskList_task_quality' - tag: - type: array - items: - type: string - description: Tags added by OpenML users. Includes study tags in the form `study_1` - TaskList_task: - properties: - task: - type: array - items: - $ref: '#/definitions/TaskList_task_task' - EvaluationMeasureList_evaluation_measures_measures: - properties: - measure: - type: array - items: - type: string - description: The evaluation measure name - EvaluationMeasureList_evaluation_measures: - properties: - measures: - $ref: '#/definitions/EvaluationMeasureList_evaluation_measures_measures' - EstimationProcedureList_estimationprocedures_estimationprocedure: - properties: - id: - type: string - description: The estimation procedure ID - ttid: - type: string - description: The task type ID - name: - type: string - description: The estimation procedure name, e.g. '10 fold Crossvalidation' - type: - type: string - description: The estimation procedure type, e.g. 'crossvalidation' - repeats: - type: string - description: The number of repeats, e.g. '10' - folds: - type: string - description: The number of cross-validation folds, e.g. '10' - stratified_sampling: - type: string - description: Whether or not the sampling is stratified, 'true' or 'false' - EstimationProcedureList_estimationprocedures: - properties: - estimationprocedure: - type: array - items: - $ref: '#/definitions/EstimationProcedureList_estimationprocedures_estimationprocedure' - DataList_data_quality: - properties: - name: - type: string - description: The name of the property - value: - type: string - description: The value of the property - DataList_data_dataset: - properties: - did: - type: string - description: The dataset ID - name: - type: string - description: The dataset name - status: - type: string - description: The dataset status, either in_preparation, active, or deactivated - format: - type: string - description: The data format of the dataset, e.g. ARFF - quality: - type: array - items: - $ref: '#/definitions/DataList_data_quality' - DataList_data: - properties: - dataset: - type: array - items: - $ref: '#/definitions/DataList_data_dataset' - DataQualities_data_qualities_quality: - properties: - name: - type: string - description: The name of the dataset quality measures - value: - type: string - description: The value for this dataset - DataQualities_data_qualities: - properties: - quality: - type: array - items: - $ref: '#/definitions/DataQualities_data_qualities_quality' - DataQualityList_data_qualities_list: - properties: - quality: - type: array - items: - type: string - DataFeatures_data_features_feature: - properties: - index: - type: string - description: Feature index - name: - type: string - description: Feature name - data_type: - type: string - description: Feature data type - is_target: - type: string - description: Whether this feature is seen as a target feature - is_ignore: - type: string - description: Whether this feature should be ignored in modelling (e.g. every value is unique) - is_row_identifier: - type: string - description: Whether this feature is a row identifier - DataFeatures_data_features: - properties: - feature: - type: array - items: - $ref: '#/definitions/DataFeatures_data_features_feature' - Data_data_set_description: - required: - - description - - format - - name - properties: - id: - type: string - description: ID of the dataset, a positive integer - name: - type: string - description: The name of the dataset - version: - type: string - description: The version of the dataset, set by OpenML. A positive integer - description: - type: string - description: Wiki description of the dataset, in (Git flavoured) markdown format - format: - type: string - description: Data format, for instance ARFF - upload_date: - type: string - description: The datetime that the dataset was uploaded, format yyyy-MM-dd HH:mm:ss - licence: - type: string - description: The licence granted for using the dataset, for instance Public or CC-BY - url: - type: string - description: The URL where the data can be downloaded - file_id: - type: string - description: The ID of the dataset file stored on the OpenML server - default_target_attribute: - type: string - description: For tabular data, the name of the column that is typically used as the target attribute for that data set - version_label: - type: string - description: The version of the dataset, as defined by the uploader, for reference. Can be any format as long as it is unique. - tag: - type: array - description: Tags added by OpenML users. Includes study tags in the form `study_1` - items: - type: string - visibility: - type: string - description: Who can see the dataset. For instance `public`. - original_data_url: - type: string - description: The URL where the original data is hosted. - status: - type: string - description: active, in_preparation, or deactivated - md5_checksum: - type: string - description: Checksum to verify downloads of the dataset - RunList_runs_run: - properties: - run_id: - type: string - description: The run ID - task_id: - type: string - description: The ID of the task solved by this run - setup_id: - type: string - description: Ignore (internal representation of the parameter setting) - flow_id: - type: string - description: The ID of the flow used in this run - uploader: - type: string - description: The ID of the person uploading this run - error_message: - type: string - description: Error message generated by the run (if any) - RunList_runs: - properties: - run: - type: array - items: - $ref: '#/definitions/RunList_runs_run' - SetupList_setups_parameter: - properties: - id: - type: string - description: The parameter ID - flow_id: - type: string - description: The (sub)flow ID - flow_name: - type: string - description: The (sub)flow name - full_name: - type: string - description: The parameter's full name - parameter_name: - type: string - description: The parameter's short name - data_type: - type: string - description: The parameter's data type - default_value: - type: string - description: The parameter's default value - value: - type: string - description: The parameter value in this setup - SetupList_setups_setup: - properties: - setup_id: - type: string - description: The setup ID - flow_id: - type: string - description: The ID of the flow used by this run - parameter: - type: array - items: - $ref: '#/definitions/SetupList_setups_parameter' - SetupList_setups: - properties: - setup: - type: array - items: - $ref: '#/definitions/SetupList_setups_setup' - EvaluationList_evaluations_evaluation: - properties: - run_id: - type: string - description: The run ID - task_id: - type: string - description: The ID of the tasks solved by this run - flow_id: - type: string - description: The ID of the flow used by this run - function: - type: string - description: The name of the evaluation function - value: - type: string - description: The outcome of the evaluation - array_data: - type: string - description: For structured evaluation measures, an array of evaluation values (e.g. per-class predictions, evaluation matrices,...) - EvaluationList_evaluations: - properties: - evaluation: - type: array - items: - $ref: '#/definitions/EvaluationList_evaluations_evaluation' - EvaluationRequest_evaluation_request_run: - properties: - run_id: - type: string - description: ID of the run, a positive integer - task_id: - type: string - description: ID of the task, a positive integer - setup_id: - type: string - description: ID of the setup, a positive integer - uploader: - type: string - description: ID of the uploader, a positive integer - upload_time: - type: string - description: The datetime that the dataset was uploaded, format yyyy-MM-dd HH:mm:ss - EvaluationRequest_evaluation_request: - properties: - run: - $ref: '#/definitions/EvaluationRequest_evaluation_request_run' - DataUnprocessed_data_unprocessed_dataset: - properties: - did: - type: string - description: ID of the dataset a positive integer - name: - type: string - description: The name of the dataset - version: - type: string - description: Version of the dataset, a positive integer - status: - type: string - description: Status of the dataset - format: - type: string - description: The dataset format, e.g. ARFF - DataUnprocessed_data_unprocessed: - properties: - dataset: - $ref: '#/definitions/DataUnprocessed_data_unprocessed_dataset' - Setup_setup_parameters_parameter_setting: - properties: - full_name: - type: string - description: The full name of the hyperparameter - parameter_name: - type: string - description: The short name of the hyperparameter - data_type: - type: string - description: The data type of the hyperparameter value - default_value: - type: string - description: The default value of the parameter used - value: - type: string - description: The value of the parameter used - description: Hyperparameter settings. Can be multiple. - Setup_setup_parameters: - properties: - flow_id: - type: string - description: ID of the flow, a positive integer - parameter_setting: - type: array - items: - $ref: '#/definitions/Setup_setup_parameters_parameter_setting' - Run_run_description_parameter_setting: - properties: - name: - type: string - description: The name of the parameter - value: - type: string - description: The value of the parameter used - description: Parameter settings used in this run. Can be multiple. - Run_run_description_input_data_dataset: - properties: - did: - type: string - description: The id of the dataset - name: - type: string - description: The name of the dataset - url: - type: string - description: The download url of the dataset - Run_run_description_input_data: - properties: - dataset: - $ref: '#/definitions/Run_run_description_input_data_dataset' - description: The input data for this run. - Run_run_description_output_data_file: - properties: - did: - type: string - description: The id of the uploaded file - file_id: - type: string - description: The reference id of the uploaded file, for downloading afterward - name: - type: string - description: The name of the uploaded file (e.g., description, predictions, model,...) - description: Files uploaded by the user, e.g. run description, predictions. Can be multiple. - Run_run_description_output_data_evaluation: - properties: - name: - type: string - description: The name of the evaluation measure - flow_id: - type: string - description: The id of the code used to compute this evaluation method - value: - type: string - description: The result of the evaluation - array_data: - type: string - description: For composite evaluation measures (e.g. per-class measures, confusion matrix), a string (JSON) representation of the evaluation. - description: Evaluations uploaded by the user, e.g. runtimes, or computed by the server (after run upload). Can be multiple. - Run_run_description_output_data: - properties: - file: - type: array - items: - $ref: '#/definitions/Run_run_description_output_data_file' - evaluation: - type: array - items: - $ref: '#/definitions/Run_run_description_output_data_evaluation' - description: The data generated by this run. - Run_run_description: - properties: - id: - type: string - description: ID of the run, a positive integer - uploader: - type: string - description: The uploader of the run - uploader_name: - type: string - description: The name of the uploader of the run - task_id: - type: string - description: The id of the task solved by this run - task_type: - type: string - description: The type of task solved by this run (e.g., classification) - task_evaluation_measure: - type: string - description: The evaluation measure that is supposed to be optimized in the task, if any - flow_id: - type: string - description: The id of the flow used in this run - flow_name: - type: string - description: The name of the flow used in this run - setup_string: - type: string - description: Configuration of the flow as a string, to be interpreted by the flow, its library, or command line interface. - tag: - type: array - description: Tags added by OpenML users. Includes study tags in the form `study_1` - items: - type: string - parameter_setting: - type: array - items: - $ref: '#/definitions/Run_run_description_parameter_setting' - input_data: - $ref: '#/definitions/Run_run_description_input_data' - output_data: - $ref: '#/definitions/Run_run_description_output_data' - TaskType_input: - properties: - name: - type: string - description: The name of the input, e.g. source_data - data_set: - $ref: '#/definitions/Task_task_description_data_set' - estimation_procedure: - $ref: '#/definitions/Task_task_description_estimation_procedure' - cost_matrix: - type: array - items: - type: array - description: The cost matrix, indicating the costs for each type of misclassification - items: - type: integer - format: int64 - evaluation_measures: - $ref: '#/definitions/Task_task_description_evaluation_measures' - TaskType_predictions: - properties: - format: - type: string - description: The format of the predictions, e.g. ARFF - feature: - type: array - items: - $ref: '#/definitions/Task_task_description_predictions_feature' - TaskType_output: - properties: - name: - type: string - description: The name of the output, e.g. predictions - predictions: - $ref: '#/definitions/TaskType_predictions' - TaskTypeList_task_types_task_type: - properties: - id: - type: string - description: The ID of the task type - name: - type: string - description: The name of the task type - description: - type: string - description: A description of the task type - creator: - type: string - description: A comma-separated list of the task type creators - TaskTypeList_task_types: - properties: - task_type: - type: array - items: - $ref: '#/definitions/TaskTypeList_task_types_task_type' - Study_study_tag: - properties: - name: - type: string - description: The name of the study (e.g. study_1) - write_access: - type: string - description: The write access level of the study (e.g. public) - Study_study_data: - properties: - data_id: - type: array - items: - type: string - description: The IDs of the datasets that are directly or indirectly linked to the study (e.g. because it is part of a task that belongs to the study) - Study_study_tasks: - properties: - task_id: - type: array - items: - type: string - description: The IDs of the tasks that are directly or indirectly linked to the study (e.g. because it is part of a run that belongs to the study) - Study_study_flows: - properties: - flow_id: - type: array - items: - type: string - description: The IDs of the flows that are directly or indirectly linked to the study (e.g. because it is part of a run that belongs to the study) - Study_study_runs: - properties: - run_id: - type: array - items: - type: string - description: The IDs of the runs attached to this study - Study_study: - properties: - id: - type: string - description: The ID of the study - alias: - type: string - description: The alias of the study - main_entity_type: - type: string - description: The type of entity collected in the study (e.g. task or run) - name: - type: string - description: The name of the study - creation_date: - type: string - description: The datetime that the dataset was uploaded, format yyyy-MM-dd HH:mm:ss - creator: - type: string - description: A comma-separated list of the study creators - tag: - $ref: '#/definitions/Study_study_tag' - data: - $ref: '#/definitions/Study_study_data' - tasks: - $ref: '#/definitions/Study_study_tasks' - flows: - $ref: '#/definitions/Study_study_flows' - runs: - $ref: '#/definitions/Study_study_runs' - StudyList_study_list_study: - properties: - id: - type: string - description: The ID of the study - alias: - type: string - description: The alias of the study - name: - type: string - description: The name of the study - creation_date: - type: string - description: The datetime that the dataset was uploaded, format yyyy-MM-dd HH:mm:ss - creator: - type: string - description: A comma-separated list of the study creators - StudyList_study_list: - properties: - study: - type: array - items: - $ref: '#/definitions/StudyList_study_list_study' - RunTrace_trace_trace_iteration: - properties: - repeat: - type: string - description: The number of the repeat in the outer cross-valudation - fold: - type: string - description: The number of the fold in the inner cross-validation - iteration: - type: string - description: A number of the optimization iteration - setup_string: - type: string - description: A JSON representation of the setup (configuration) - evaluation: - type: string - description: The evaluation score of the setup - selected: - type: string - description: Whether this setup was selected as the best one (true or false) - RunTrace_trace: - properties: - run_id: - type: string - description: run ID - trace_iteration: - type: array - items: - $ref: '#/definitions/RunTrace_trace_trace_iteration' From 79c587aa2128c2bead779254b2f0825a44d7569b Mon Sep 17 00:00:00 2001 From: sahithyaravi1493 Date: Thu, 12 Sep 2019 13:57:30 +0200 Subject: [PATCH 20/27] review comments --- openml_OS/models/api/v1/Api_user.php | 6 ++---- openml_OS/views/pages/api_new/v1/xml/user-name.tpl.php | 10 +++++----- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/openml_OS/models/api/v1/Api_user.php b/openml_OS/models/api/v1/Api_user.php index 2896fca0a..0fbf42459 100644 --- a/openml_OS/models/api/v1/Api_user.php +++ b/openml_OS/models/api/v1/Api_user.php @@ -82,8 +82,7 @@ function bootstrap($format, $segments, $request_type, $user_id) { } */ - private function username_list($segs) - { + private function username_list($segs){ # pass uploader list to get username list $legal_filters = array('user_id'); $query_string = array(); @@ -95,8 +94,7 @@ private function username_list($segs) } } $user_id = element('user_id', $query_string); - $sql = 'SELECT `username`,`id` FROM `users` WHERE `id` In ('. $user_id.')'; - $users = $this->Author->query($sql); + $users = $this->Author->getWhere('`id` IN (' . $user_id . ')'); $this->xmlContents('user-name', $this->version, array('users' => $users)); } diff --git a/openml_OS/views/pages/api_new/v1/xml/user-name.tpl.php b/openml_OS/views/pages/api_new/v1/xml/user-name.tpl.php index 8836f8c58..a95bed5ea 100644 --- a/openml_OS/views/pages/api_new/v1/xml/user-name.tpl.php +++ b/openml_OS/views/pages/api_new/v1/xml/user-name.tpl.php @@ -1,8 +1,8 @@ - - id ?> - username ?> - - + + id ?> + username ?> + + From 87748a330cf150fbb9f2800edcc73ab1dca1b31c Mon Sep 17 00:00:00 2001 From: sahithyaravi1493 Date: Thu, 12 Sep 2019 14:02:21 +0200 Subject: [PATCH 21/27] add space --- openml_OS/models/api/v1/Api_user.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openml_OS/models/api/v1/Api_user.php b/openml_OS/models/api/v1/Api_user.php index 0fbf42459..47a1e34cc 100644 --- a/openml_OS/models/api/v1/Api_user.php +++ b/openml_OS/models/api/v1/Api_user.php @@ -82,7 +82,7 @@ function bootstrap($format, $segments, $request_type, $user_id) { } */ - private function username_list($segs){ + private function username_list($segs) { # pass uploader list to get username list $legal_filters = array('user_id'); $query_string = array(); From aeab1e778b351d18e71b27861b5ca4ee4ba58dc9 Mon Sep 17 00:00:00 2001 From: janvanrijn Date: Mon, 16 Sep 2019 18:22:56 +0200 Subject: [PATCH 22/27] extended error messages --- openml_OS/models/api/v1/Api_study.php | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/openml_OS/models/api/v1/Api_study.php b/openml_OS/models/api/v1/Api_study.php index 40d6b49d1..035cb995d 100644 --- a/openml_OS/models/api/v1/Api_study.php +++ b/openml_OS/models/api/v1/Api_study.php @@ -143,6 +143,11 @@ private function study_create() { ); $study_id = $this->Study->insert($schedule_data); + if (!$study_id) { + $this->db->trans_rollback(); + $this->returnError(1039, $this->version, $this->openmlGeneralErrorCode, 'Problem creating study record. Please check whether the alias is unique. '); + return; + } $res = $this->_link_entities($study_id, $this->user_id, $link_entities); From d673142fe279a95cab92300c9933fe6ad2839288 Mon Sep 17 00:00:00 2001 From: janvanrijn Date: Mon, 16 Sep 2019 18:33:40 +0200 Subject: [PATCH 23/27] better error handling --- openml_OS/models/api/v1/Api_study.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/openml_OS/models/api/v1/Api_study.php b/openml_OS/models/api/v1/Api_study.php index 035cb995d..8bb45dfb6 100644 --- a/openml_OS/models/api/v1/Api_study.php +++ b/openml_OS/models/api/v1/Api_study.php @@ -524,7 +524,10 @@ private function _link_entities($study_id, $uploader_id, $link_entities) { 'uploader' => $uploader_id, 'date' => now(), ); - $this->{$model}->insert($data); + $result = $this->{$model}->insert($data); + if (!$result) { + return false; + } } return true; } From 582042e545293d7512d36da66260daf6fed320a7 Mon Sep 17 00:00:00 2001 From: JoaquinVanschoren Date: Tue, 24 Sep 2019 10:36:47 +0200 Subject: [PATCH 24/27] increase stat circles on cover page --- css/expdb.css | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/css/expdb.css b/css/expdb.css index d1bafb19a..f644322d7 100644 --- a/css/expdb.css +++ b/css/expdb.css @@ -2762,11 +2762,10 @@ a.bold:hover{ font-weight: 100; - width: 76px; - height: 76px; + width: 100px; + height: 100px; padding: 0px; - background: #fff; color: #fff; display:block; position: relative; @@ -2793,10 +2792,9 @@ a.bold:hover{ } .arc { - height: 84px; - width: 84px; - left: -3px; - top: -5px; + height: 100px; + width: 100px; + top: -15px; position: absolute; box-shadow: 0 0 4px rgba(0,0,0,.14),0 4px 8px rgba(0,0,0,.28); From 2253cd7f27f926419f616f0e61b799b105010699 Mon Sep 17 00:00:00 2001 From: sahithyaravi1493 Date: Wed, 25 Sep 2019 10:53:55 +0200 Subject: [PATCH 25/27] indentation changes --- .../views/pages/api_new/v1/xml/user-name.tpl.php | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/openml_OS/views/pages/api_new/v1/xml/user-name.tpl.php b/openml_OS/views/pages/api_new/v1/xml/user-name.tpl.php index a95bed5ea..235081032 100644 --- a/openml_OS/views/pages/api_new/v1/xml/user-name.tpl.php +++ b/openml_OS/views/pages/api_new/v1/xml/user-name.tpl.php @@ -1,8 +1,8 @@ - - - id ?> - username ?> - - + + + id ?> + username ?> + + From 9e45e3d56ca296e5c06d855c4413566fa88acec0 Mon Sep 17 00:00:00 2001 From: sahithyaravi1493 Date: Wed, 25 Sep 2019 17:27:23 +0200 Subject: [PATCH 26/27] two spaces --- openml_OS/helpers/api_helper.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openml_OS/helpers/api_helper.php b/openml_OS/helpers/api_helper.php index 2f26fda84..f3e194580 100644 --- a/openml_OS/helpers/api_helper.php +++ b/openml_OS/helpers/api_helper.php @@ -19,7 +19,7 @@ function validateXml( $xmlDocument, $xsdDocument, &$xmlErrors, $from_file = true } else { $xmlErrors .= 'XML does not correspond to XSD schema. '; foreach (libxml_get_errors() as $error) { - $xmlErrors .= 'Error ' . $error->message . ' on line ' . $error->line . ' column ' . $error->column . '. '; + $xmlErrors .= 'Error ' . $error->message . ' on line ' . $error->line . ' column ' . $error->column . '. '; } return false; } From 9bf927c0cf466e3178af76fe0d3c1cb727d362df Mon Sep 17 00:00:00 2001 From: sahithyaravi1493 Date: Fri, 27 Sep 2019 11:01:45 +0200 Subject: [PATCH 27/27] fix code style --- openml_OS/models/api/v1/Api_user.php | 28 +++++++++---------- .../pages/api_new/v1/xml/user-name.tpl.php | 12 ++++---- 2 files changed, 20 insertions(+), 20 deletions(-) diff --git a/openml_OS/models/api/v1/Api_user.php b/openml_OS/models/api/v1/Api_user.php index 47a1e34cc..14a988483 100644 --- a/openml_OS/models/api/v1/Api_user.php +++ b/openml_OS/models/api/v1/Api_user.php @@ -82,20 +82,20 @@ function bootstrap($format, $segments, $request_type, $user_id) { } */ - private function username_list($segs) { - # pass uploader list to get username list - $legal_filters = array('user_id'); - $query_string = array(); - for ($i = 0; $i < count($segs); $i += 2) { - $query_string[$segs[$i]] = urldecode($segs[$i+1]); - if (in_array($segs[$i], $legal_filters) == false) { - $this->returnError(370, $this->version, $this->openmlGeneralErrorCode, 'Legal filter operators: ' . implode(',', $legal_filters) .'. Found illegal filter: ' . $segs[$i]); - return; - } - } - $user_id = element('user_id', $query_string); - $users = $this->Author->getWhere('`id` IN (' . $user_id . ')'); - $this->xmlContents('user-name', $this->version, array('users' => $users)); + private function username_list($segs) { + # pass uploader list to get username list + $legal_filters = array('user_id'); + $query_string = array(); + for ($i = 0; $i < count($segs); $i += 2) { + $query_string[$segs[$i]] = urldecode($segs[$i+1]); + if (in_array($segs[$i], $legal_filters) == false) { + $this->returnError(370, $this->version, $this->openmlGeneralErrorCode, 'Legal filter operators: ' . implode(',', $legal_filters) .'. Found illegal filter: ' . $segs[$i]); + return; + } + } + $user_id = element('user_id', $query_string); + $users = $this->Author->getWhere('`id` IN (' . $user_id . ')'); + $this->xmlContents('user-name', $this->version, array('users' => $users)); } } diff --git a/openml_OS/views/pages/api_new/v1/xml/user-name.tpl.php b/openml_OS/views/pages/api_new/v1/xml/user-name.tpl.php index 235081032..e4abfd777 100644 --- a/openml_OS/views/pages/api_new/v1/xml/user-name.tpl.php +++ b/openml_OS/views/pages/api_new/v1/xml/user-name.tpl.php @@ -1,8 +1,8 @@ - - - id ?> - username ?> - - + + + id ?> + username ?> + +