{"openapi":"3.1.0","info":{"title":"Robot dataset index","description":"Search and list robotics datasets: about 3,400 researched datasets with size, licence and access, and all 86,000 robotics uploads on the Hugging Face Hub with robot, episodes and hours. Read only, no key. Compiled October 2026. Sizes and licences were read once from one source each, so confirm at the source. A plain text guide is at /llms.txt.","version":"0.4.0"},"servers":[{"url":"https://datasets.gurasees.com"}],"paths":{"/api/search":{"get":{"summary":"Search with a sentence, filters, or both","operationId":"searchDatasets","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","maxLength":300,"description":"A plain sentence. Sizes, years, licence wishes and 'on Hugging Face' in it become hard filters. The response says how it was read.","default":"","title":"Q"},"description":"A plain sentence. Sizes, years, licence wishes and 'on Hugging Face' in it become hard filters. The response says how it was read."},{"name":"category","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Comma separated kinds, from /api/facets. Hard filter.","title":"Category"},"description":"Comma separated kinds, from /api/facets. Hard filter."},{"name":"embodiment_class","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Comma separated robot classes, from /api/facets. Hard filter.","title":"Embodiment Class"},"description":"Comma separated robot classes, from /api/facets. Hard filter."},{"name":"licence_class","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"open, non commercial, no derivatives, custom terms, unclear or not stated. license_class is accepted too.","title":"Licence Class"},"description":"open, non commercial, no derivatives, custom terms, unclear or not stated. license_class is accepted too."},{"name":"access_class","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"open, gated, on request, commercial or not stated","title":"Access Class"},"description":"open, gated, on request, commercial or not stated"},{"name":"min_hours","in":"query","required":false,"schema":{"anyOf":[{"type":"number","minimum":0},{"type":"null"}],"description":"Lowest stated hours. Rows with no stated hours are dropped.","title":"Min Hours"},"description":"Lowest stated hours. Rows with no stated hours are dropped."},{"name":"max_hours","in":"query","required":false,"schema":{"anyOf":[{"type":"number","minimum":0},{"type":"null"}],"description":"Highest stated hours","title":"Max Hours"},"description":"Highest stated hours"},{"name":"min_episodes","in":"query","required":false,"schema":{"anyOf":[{"type":"integer","minimum":0},{"type":"null"}],"description":"Lowest stated episode count","title":"Min Episodes"},"description":"Lowest stated episode count"},{"name":"max_episodes","in":"query","required":false,"schema":{"anyOf":[{"type":"integer","minimum":0},{"type":"null"}],"description":"Highest stated episode count","title":"Max Episodes"},"description":"Highest stated episode count"},{"name":"year_from","in":"query","required":false,"schema":{"anyOf":[{"type":"integer","maximum":2100,"minimum":1980},{"type":"null"}],"description":"Earliest release year","title":"Year From"},"description":"Earliest release year"},{"name":"year_to","in":"query","required":false,"schema":{"anyOf":[{"type":"integer","maximum":2100,"minimum":1980},{"type":"null"}],"description":"Latest release year","title":"Year To"},"description":"Latest release year"},{"name":"on_hub","in":"query","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"true for datasets on the Hugging Face Hub only, false for those not on it","title":"On Hub"},"description":"true for datasets on the Hugging Face Hub only, false for those not on it"},{"name":"checked_only","in":"query","required":false,"schema":{"type":"boolean","description":"Drop rows whose source page could not be opened","default":false,"title":"Checked Only"},"description":"Drop rows whose source page could not be opened"},{"name":"source","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"researched or hub","title":"Source"},"description":"researched or hub"},{"name":"sort","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"relevance, hours, episodes, year, downloads, name, oldest or smallest","title":"Sort"},"description":"relevance, hours, episodes, year, downloads, name, oldest or smallest"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"description":"How many results to return","default":10,"title":"Limit"},"description":"How many results to return"},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"description":"How many results to skip","default":0,"title":"Offset"},"description":"How many results to skip"},{"name":"hub_limit","in":"query","required":false,"schema":{"type":"integer","maximum":50,"minimum":0,"description":"How many matching Hugging Face uploads to add under hub_uploads. 0 leaves them out.","default":5,"title":"Hub Limit"},"description":"How many matching Hugging Face uploads to add under hub_uploads. 0 leaves them out."},{"name":"on_topic_only","in":"query","required":false,"schema":{"type":"boolean","description":"true leaves out rows that pass the filters without being about the question. total then counts only the rows about it, and passing_filters the rest.","default":false,"title":"On Topic Only"},"description":"true leaves out rows that pass the filters without being about the question. total then counts only the rows about it, and passing_filters the rest."}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/datasets/{dataset_id}":{"get":{"summary":"One dataset in full, by catalogue id or Hub repository id","operationId":"getDataset","parameters":[{"name":"dataset_id","in":"path","required":true,"schema":{"type":"string","title":"Dataset Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/facets":{"get":{"summary":"Allowed filter values and their counts","operationId":"listFacets","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/browse":{"get":{"summary":"What kinds of dataset and which robots exist, with counts","operationId":"browse","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/stats":{"get":{"summary":"Catalogue size and the Hugging Face Hub census","operationId":"getStats","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/hub":{"get":{"summary":"List and filter all 86,000 robotics uploads on the Hugging Face Hub","operationId":"listHubUploads","parameters":[{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":300},{"type":"null"}],"description":"Words to look for in the repository name, its card and its robot. Every word must match.","title":"Q"},"description":"Words to look for in the repository name, its card and its robot. Every word must match."},{"name":"robot","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":60},{"type":"null"}],"description":"A robot spelled any way: SO-101, so101, Franka, ALOHA, Unitree G1. Comma separated for several. Matches loosely: so101 also returns uploads that only say SO follower.","title":"Robot"},"description":"A robot spelled any way: SO-101, so101, Franka, ALOHA, Unitree G1. Comma separated for several. Matches loosely: so101 also returns uploads that only say SO follower."},{"name":"robot_family","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"An exact robot family name from /api/browse, such as SO-101 or YAM, two arms. Repeat the parameter for several. Returns exactly the uploads that /api/browse counts under it.","title":"Robot Family"},"description":"An exact robot family name from /api/browse, such as SO-101 or YAM, two arms. Repeat the parameter for several. Returns exactly the uploads that /api/browse counts under it."},{"name":"over_episodes","in":"query","required":false,"schema":{"anyOf":[{"type":"integer","minimum":0},{"type":"null"}],"description":"More than this many episodes","title":"Over Episodes"},"description":"More than this many episodes"},{"name":"under_episodes","in":"query","required":false,"schema":{"anyOf":[{"type":"integer","minimum":0},{"type":"null"}],"description":"Fewer than this many episodes","title":"Under Episodes"},"description":"Fewer than this many episodes"},{"name":"over_hours","in":"query","required":false,"schema":{"anyOf":[{"type":"number","minimum":0},{"type":"null"}],"description":"More than this many hours","title":"Over Hours"},"description":"More than this many hours"},{"name":"under_hours","in":"query","required":false,"schema":{"anyOf":[{"type":"number","minimum":0},{"type":"null"}],"description":"Fewer than this many hours","title":"Under Hours"},"description":"Fewer than this many hours"},{"name":"embodiment_class","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Comma separated robot classes, from /api/browse","title":"Embodiment Class"},"description":"Comma separated robot classes, from /api/browse"},{"name":"kind","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"recording, evaluation rollout, simulation, conversion of a public dataset, test or scratch, empty or other. Comma separated.","title":"Kind"},"description":"recording, evaluation rollout, simulation, conversion of a public dataset, test or scratch, empty or other. Comma separated."},{"name":"category","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"teleop, synthetic or generated, handheld gripper, real manipulation scripted or autonomous, or other. Inferred from the name.","title":"Category"},"description":"teleop, synthetic or generated, handheld gripper, real manipulation scripted or autonomous, or other. Inferred from the name."},{"name":"licence_class","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"open, non commercial, no derivatives, custom terms, unclear or not stated","title":"Licence Class"},"description":"open, non commercial, no derivatives, custom terms, unclear or not stated"},{"name":"gated","in":"query","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"true for gated uploads only, false for open ones","title":"Gated"},"description":"true for gated uploads only, false for open ones"},{"name":"min_episodes","in":"query","required":false,"schema":{"anyOf":[{"type":"integer","minimum":0},{"type":"null"}],"description":"Lowest episode count. Uploads that do not state one are dropped.","title":"Min Episodes"},"description":"Lowest episode count. Uploads that do not state one are dropped."},{"name":"max_episodes","in":"query","required":false,"schema":{"anyOf":[{"type":"integer","minimum":0},{"type":"null"}],"description":"Highest episode count","title":"Max Episodes"},"description":"Highest episode count"},{"name":"min_hours","in":"query","required":false,"schema":{"anyOf":[{"type":"number","minimum":0},{"type":"null"}],"description":"Lowest hours, worked out from frames and frame rate","title":"Min Hours"},"description":"Lowest hours, worked out from frames and frame rate"},{"name":"max_hours","in":"query","required":false,"schema":{"anyOf":[{"type":"number","minimum":0},{"type":"null"}],"description":"Highest hours","title":"Max Hours"},"description":"Highest hours"},{"name":"year_from","in":"query","required":false,"schema":{"anyOf":[{"type":"integer","maximum":2100,"minimum":2015},{"type":"null"}],"description":"Created in this year or later","title":"Year From"},"description":"Created in this year or later"},{"name":"year_to","in":"query","required":false,"schema":{"anyOf":[{"type":"integer","maximum":2100,"minimum":2015},{"type":"null"}],"description":"Created in this year or earlier","title":"Year To"},"description":"Created in this year or earlier"},{"name":"uploader","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":80},{"type":"null"}],"description":"The account or organisation that uploaded it, exactly","title":"Uploader"},"description":"The account or organisation that uploaded it, exactly"},{"name":"min_downloads","in":"query","required":false,"schema":{"type":"integer","minimum":0,"description":"Lowest 30 day download count","default":0,"title":"Min Downloads"},"description":"Lowest 30 day download count"},{"name":"sort","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"relevance, downloads, likes, newest, updated, oldest, episodes, hours, smallest or name. Default is relevance with words, downloads without.","title":"Sort"},"description":"relevance, downloads, likes, newest, updated, oldest, episodes, hours, smallest or name. Default is relevance with words, downloads without."},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"description":"How many results to return","default":20,"title":"Limit"},"description":"How many results to return"},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"description":"How many results to skip. Use next_offset from the last answer.","default":0,"title":"Offset"},"description":"How many results to skip. Use next_offset from the last answer."},{"name":"lean","in":"query","required":false,"schema":{"type":"boolean","description":"Leave out empty fields and the less used ones, to save space","default":false,"title":"Lean"},"description":"Leave out empty fields and the less used ones, to save space"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}}}