{"apiVersion":"v3","swaggerVersion":"1.2","resourcePath":"/search","produces":["application/json"],"apis":[{"path":"/v3/search","operations":[{"notes":"\u003cp\u003e\u003ccode\u003estolenness\u003c/code\u003e is the sort of bikes to match. “\u003cstrong\u003eall\u003c/strong\u003e”: every bike, “\u003cstrong\u003enon\u003c/strong\u003e”: only not-stolen, “\u003cstrong\u003estolen\u003c/strong\u003e”: all stolen, “\u003cstrong\u003eproximity\u003c/strong\u003e”: only stolen within \u003ccode\u003edistance\u003c/code\u003e of included \u003ccode\u003elocation\u003c/code\u003e.\u003c/p\u003e\n\n\u003cp\u003e\u003ccode\u003elocation\u003c/code\u003e is ignored unless \u003ccode\u003estolenness\u003c/code\u003e is “\u003cstrong\u003eproximity\u003c/strong\u003e”\u003c/p\u003e\n\n\u003cp\u003e\u003ccode\u003elocation\u003c/code\u003e can be an address, zipcode, city, or latitude,longitude. e.g. “\u003cstrong\u003e210 NW 11th Ave, Portland, OR\u003c/strong\u003e”, “\u003cstrong\u003e60647\u003c/strong\u003e”, “\u003cstrong\u003eChicago, IL\u003c/strong\u003e”, or “\u003cstrong\u003e45.521728,-122.67326\u003c/strong\u003e”\u003c/p\u003e\n\n\u003cp\u003eIf \u003ccode\u003elocation\u003c/code\u003e is “\u003cstrong\u003eIP\u003c/strong\u003e” (the default), the location is determined via geolocation of your IP address.\u003c/p\u003e\n","summary":"Search for bikes","nickname":"GET--version-search---format-","method":"GET","parameters":[{"paramType":"query","name":"page","description":"\u003cp\u003ePage of results to fetch.\u003c/p\u003e\n","type":"integer","required":false,"allowMultiple":false,"format":"int32","defaultValue":1},{"paramType":"query","name":"per_page","description":"\u003cp\u003eBikes per page (max 100)\u003c/p\u003e\n","type":"integer","required":false,"allowMultiple":false,"format":"int32","defaultValue":25},{"paramType":"query","name":"serial","description":"\u003cp\u003eSerial, homoglyph matched\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false},{"paramType":"query","name":"query","description":"\u003cp\u003eFull text search\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false},{"paramType":"query","name":"manufacturer","description":"\n","type":"string","required":false,"allowMultiple":false},{"paramType":"query","name":"cycle_type","description":"\u003cp\u003eCycle Type slug or name (see \u003cstrong\u003eSelections: cycle_types\u003c/strong\u003e)\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false},{"paramType":"query","name":"propulsion_type","description":"\u003cp\u003ePropulsion Type slug or name (see \u003cstrong\u003eSelections: propulsion_types\u003c/strong\u003e). Also accepts ‘motorized’ to match any e-vehicle.\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false},{"paramType":"query","name":"colors","description":"\u003cp\u003eColor slugs or ids, comma delineated (see \u003cstrong\u003eSelections: colors\u003c/strong\u003e)\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false},{"paramType":"query","name":"location","description":"\u003cp\u003eLocation for proximity search (must set stolenness to \u003ccode\u003eproximity\u003c/code\u003e)\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false,"defaultValue":"IP"},{"paramType":"query","name":"distance","description":"\u003cp\u003eDistance in miles from \u003ccode\u003elocation\u003c/code\u003e for proximity search (must set stolenness to \u003ccode\u003eproximity\u003c/code\u003e)\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false,"defaultValue":10},{"paramType":"query","name":"stolenness","description":"\u003cp\u003eBikes matching Stolen status\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false,"defaultValue":"stolen","enum":["non","stolen","proximity","all",""]},{"paramType":"query","name":"query_items","description":"\u003cp\u003eOur Fancy select query items, DO NOT USE, may change without notice\u003c/p\u003e\n","type":"Array","required":false,"allowMultiple":false}],"type":"void"}]},{"path":"/v3/search/count","operations":[{"notes":"\u003cp\u003eInclude all the options passed in your search. This endpoint accepts the same parameters as the root \u003ccode\u003e/search\u003c/code\u003e endpoint.\u003c/p\u003e\n\n\u003cp\u003eResponds with a hash of the total number of bikes matching your search for each type.\u003c/p\u003e\n\n\u003cp\u003e\u003ccode\u003eproximity\u003c/code\u003e is the count of matching stolen bikes within the proximity of your search.\u003c/p\u003e\n\n\u003cpre\u003e\u003ccode class=\"language-javascript\"\u003e{\n  \"proximity\": 19,\n  \"stolen\": 100,\n  \"non\": 111\n}\n\u003c/code\u003e\u003c/pre\u003e\n\n\u003cp\u003e\u003cem\u003eThe \u003ccode\u003estolenness\u003c/code\u003e paramater is ignored but allowed here for consistency\u003c/em\u003e\u003c/p\u003e\n","summary":"Count of bikes matching search","nickname":"GET--version-search-count---format-","method":"GET","parameters":[{"paramType":"query","name":"serial","description":"\u003cp\u003eSerial, homoglyph matched\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false},{"paramType":"query","name":"query","description":"\u003cp\u003eFull text search\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false},{"paramType":"query","name":"manufacturer","description":"\n","type":"string","required":false,"allowMultiple":false},{"paramType":"query","name":"cycle_type","description":"\u003cp\u003eCycle Type slug or name (see \u003cstrong\u003eSelections: cycle_types\u003c/strong\u003e)\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false},{"paramType":"query","name":"propulsion_type","description":"\u003cp\u003ePropulsion Type slug or name (see \u003cstrong\u003eSelections: propulsion_types\u003c/strong\u003e). Also accepts ‘motorized’ to match any e-vehicle.\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false},{"paramType":"query","name":"colors","description":"\u003cp\u003eColor slugs or ids, comma delineated (see \u003cstrong\u003eSelections: colors\u003c/strong\u003e)\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false},{"paramType":"query","name":"location","description":"\u003cp\u003eLocation for proximity search (must set stolenness to \u003ccode\u003eproximity\u003c/code\u003e)\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false,"defaultValue":"IP"},{"paramType":"query","name":"distance","description":"\u003cp\u003eDistance in miles from \u003ccode\u003elocation\u003c/code\u003e for proximity search (must set stolenness to \u003ccode\u003eproximity\u003c/code\u003e)\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false,"defaultValue":10},{"paramType":"query","name":"stolenness","description":"\u003cp\u003eBikes matching Stolen status\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false,"defaultValue":"stolen","enum":["non","stolen","proximity","all",""]},{"paramType":"query","name":"query_items","description":"\u003cp\u003eOur Fancy select query items, DO NOT USE, may change without notice\u003c/p\u003e\n","type":"Array","required":false,"allowMultiple":false}],"type":"void"}]},{"path":"/v3/search/close_serials","operations":[{"notes":"\u003cp\u003eThis endpoint accepts the same parameters as the root \u003ccode\u003e/search\u003c/code\u003e endpoint.\u003c/p\u003e\n\n\u003cp\u003eIt returns matches that are off of the submitted \u003ccode\u003eserial\u003c/code\u003e by less than 3 characters (postgres levenshtein, if you’re curious).\u003c/p\u003e\n","summary":"Search close serials","nickname":"GET--version-search-close_serials---format-","method":"GET","parameters":[{"paramType":"query","name":"page","description":"\u003cp\u003ePage of results to fetch.\u003c/p\u003e\n","type":"integer","required":false,"allowMultiple":false,"format":"int32","defaultValue":1},{"paramType":"query","name":"per_page","description":"\u003cp\u003eBikes per page (max 100)\u003c/p\u003e\n","type":"integer","required":false,"allowMultiple":false,"format":"int32","defaultValue":25},{"paramType":"query","name":"serial","description":"\u003cp\u003eSerial, homoglyph matched\u003c/p\u003e\n","type":"string","required":true,"allowMultiple":false},{"paramType":"query","name":"query","description":"\u003cp\u003eFull text search\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false},{"paramType":"query","name":"manufacturer","description":"\n","type":"string","required":false,"allowMultiple":false},{"paramType":"query","name":"cycle_type","description":"\u003cp\u003eCycle Type slug or name (see \u003cstrong\u003eSelections: cycle_types\u003c/strong\u003e)\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false},{"paramType":"query","name":"propulsion_type","description":"\u003cp\u003ePropulsion Type slug or name (see \u003cstrong\u003eSelections: propulsion_types\u003c/strong\u003e). Also accepts ‘motorized’ to match any e-vehicle.\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false},{"paramType":"query","name":"colors","description":"\u003cp\u003eColor slugs or ids, comma delineated (see \u003cstrong\u003eSelections: colors\u003c/strong\u003e)\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false},{"paramType":"query","name":"location","description":"\u003cp\u003eLocation for proximity search (must set stolenness to \u003ccode\u003eproximity\u003c/code\u003e)\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false,"defaultValue":"IP"},{"paramType":"query","name":"distance","description":"\u003cp\u003eDistance in miles from \u003ccode\u003elocation\u003c/code\u003e for proximity search (must set stolenness to \u003ccode\u003eproximity\u003c/code\u003e)\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false,"defaultValue":10},{"paramType":"query","name":"stolenness","description":"\u003cp\u003eBikes matching Stolen status\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false,"defaultValue":"stolen","enum":["non","stolen","proximity","all",""]},{"paramType":"query","name":"query_items","description":"\u003cp\u003eOur Fancy select query items, DO NOT USE, may change without notice\u003c/p\u003e\n","type":"Array","required":false,"allowMultiple":false}],"type":"void"}]},{"path":"/v3/search/serials_containing","operations":[{"notes":"\u003cp\u003eThis endpoint accepts the same parameters as the root \u003ccode\u003e/search\u003c/code\u003e endpoint.\u003c/p\u003e\n\n\u003cp\u003eIt returns bikes with partially-matching serial numbers (for which the requested serial is a substring).\u003c/p\u003e\n","summary":"Search by substring-match against serial number","nickname":"GET--version-search-serials_containing---format-","method":"GET","parameters":[{"paramType":"query","name":"page","description":"\u003cp\u003ePage of results to fetch.\u003c/p\u003e\n","type":"integer","required":false,"allowMultiple":false,"format":"int32","defaultValue":1},{"paramType":"query","name":"per_page","description":"\u003cp\u003eBikes per page (max 100)\u003c/p\u003e\n","type":"integer","required":false,"allowMultiple":false,"format":"int32","defaultValue":25},{"paramType":"query","name":"serial","description":"\u003cp\u003eSerial, homoglyph matched\u003c/p\u003e\n","type":"string","required":true,"allowMultiple":false},{"paramType":"query","name":"query","description":"\u003cp\u003eFull text search\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false},{"paramType":"query","name":"manufacturer","description":"\n","type":"string","required":false,"allowMultiple":false},{"paramType":"query","name":"cycle_type","description":"\u003cp\u003eCycle Type slug or name (see \u003cstrong\u003eSelections: cycle_types\u003c/strong\u003e)\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false},{"paramType":"query","name":"propulsion_type","description":"\u003cp\u003ePropulsion Type slug or name (see \u003cstrong\u003eSelections: propulsion_types\u003c/strong\u003e). Also accepts ‘motorized’ to match any e-vehicle.\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false},{"paramType":"query","name":"colors","description":"\u003cp\u003eColor slugs or ids, comma delineated (see \u003cstrong\u003eSelections: colors\u003c/strong\u003e)\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false},{"paramType":"query","name":"location","description":"\u003cp\u003eLocation for proximity search (must set stolenness to \u003ccode\u003eproximity\u003c/code\u003e)\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false,"defaultValue":"IP"},{"paramType":"query","name":"distance","description":"\u003cp\u003eDistance in miles from \u003ccode\u003elocation\u003c/code\u003e for proximity search (must set stolenness to \u003ccode\u003eproximity\u003c/code\u003e)\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false,"defaultValue":10},{"paramType":"query","name":"stolenness","description":"\u003cp\u003eBikes matching Stolen status\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false,"defaultValue":"stolen","enum":["non","stolen","proximity","all",""]},{"paramType":"query","name":"query_items","description":"\u003cp\u003eOur Fancy select query items, DO NOT USE, may change without notice\u003c/p\u003e\n","type":"Array","required":false,"allowMultiple":false}],"type":"void"}]},{"path":"/v3/search/external_registries","operations":[{"notes":"\u003cp\u003eThis endpoint accepts a serial number and searches external\u003cbr /\u003e\nbike registries for it.\u003c/p\u003e\n\n\u003cp\u003eIf exact matches are found, only those will be returned.\u003cbr /\u003e\nIf no exact matches are found, partial matches are returned.\u003c/p\u003e\n","summary":"Search external registries","nickname":"GET--version-search-external_registries---format-","method":"GET","parameters":[{"paramType":"query","name":"page","description":"\u003cp\u003ePage of results to fetch.\u003c/p\u003e\n","type":"integer","required":false,"allowMultiple":false,"format":"int32","defaultValue":1},{"paramType":"query","name":"per_page","description":"\u003cp\u003eBikes per page (max 100)\u003c/p\u003e\n","type":"integer","required":false,"allowMultiple":false,"format":"int32","defaultValue":25},{"paramType":"query","name":"serial","description":"\u003cp\u003eSerial, homoglyph matched\u003c/p\u003e\n","type":"string","required":true,"allowMultiple":false},{"paramType":"query","name":"query","description":"\u003cp\u003eFull text search\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false},{"paramType":"query","name":"manufacturer","description":"\n","type":"string","required":false,"allowMultiple":false},{"paramType":"query","name":"cycle_type","description":"\u003cp\u003eCycle Type slug or name (see \u003cstrong\u003eSelections: cycle_types\u003c/strong\u003e)\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false},{"paramType":"query","name":"propulsion_type","description":"\u003cp\u003ePropulsion Type slug or name (see \u003cstrong\u003eSelections: propulsion_types\u003c/strong\u003e). Also accepts ‘motorized’ to match any e-vehicle.\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false},{"paramType":"query","name":"colors","description":"\u003cp\u003eColor slugs or ids, comma delineated (see \u003cstrong\u003eSelections: colors\u003c/strong\u003e)\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false},{"paramType":"query","name":"location","description":"\u003cp\u003eLocation for proximity search (must set stolenness to \u003ccode\u003eproximity\u003c/code\u003e)\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false,"defaultValue":"IP"},{"paramType":"query","name":"distance","description":"\u003cp\u003eDistance in miles from \u003ccode\u003elocation\u003c/code\u003e for proximity search (must set stolenness to \u003ccode\u003eproximity\u003c/code\u003e)\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false,"defaultValue":10},{"paramType":"query","name":"stolenness","description":"\u003cp\u003eBikes matching Stolen status\u003c/p\u003e\n","type":"string","required":false,"allowMultiple":false,"defaultValue":"stolen","enum":["non","stolen","proximity","all",""]},{"paramType":"query","name":"query_items","description":"\u003cp\u003eOur Fancy select query items, DO NOT USE, may change without notice\u003c/p\u003e\n","type":"Array","required":false,"allowMultiple":false}],"type":"void"}]}],"basePath":"https://bikeindex.org/api"}
