{"openapi":"3.0.3","info":{"title":"skins.spraybase.de API","version":"1.0.0","description":"CS2-Skin-Plattform — Skins, Kisten, Collections, Preise und Inventar-Bewertung. Alle `/api/v1/**`-Endpoints erfordern den Header `x-api-key`."},"servers":[{"url":"https://skins.spraybase.de"}],"security":[{"ApiKeyAuth":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"x-api-key"}}},"paths":{"/api/v1/health":{"get":{"summary":"Health-Check","tags":["Meta"],"responses":{"200":{"description":"OK"}}}},"/api/v1/skins":{"get":{"summary":"Skins suchen/listen","tags":["Skins"],"parameters":[{"name":"search","in":"query","schema":{"type":"string"}},{"name":"weapon","in":"query","schema":{"type":"string"}},{"name":"rarity","in":"query","schema":{"type":"string"}},{"name":"collection","in":"query","schema":{"type":"string"}},{"name":"limit","in":"query","schema":{"type":"integer","default":50,"maximum":200}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}}],"responses":{"200":{"description":"Liste mit total/limit/offset/items"}}}},"/api/v1/skins/{id}":{"get":{"summary":"Einzelner Skin","tags":["Skins"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Skin"},"404":{"description":"Nicht gefunden"}}}},"/api/v1/cases":{"get":{"summary":"Kisten listen","tags":["Cases"],"responses":{"200":{"description":"Liste"}}}},"/api/v1/cases/{id}":{"get":{"summary":"Kiste inkl. Drop-Pool","tags":["Cases"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Kiste mit contains[]"}}}},"/api/v1/collections":{"get":{"summary":"Collections listen","tags":["Collections"],"responses":{"200":{"description":"Liste"}}}},"/api/v1/prices":{"get":{"summary":"Preis-Aggregat (best/median)","tags":["Preise"],"parameters":[{"name":"skinId","in":"query","required":true,"schema":{"type":"string"}},{"name":"wear","in":"query","schema":{"type":"string","enum":["fn","mw","ft","ww","bs","none"],"default":"none"}},{"name":"stattrak","in":"query","schema":{"type":"string","enum":["0","1"],"default":"0"}}],"responses":{"200":{"description":"Aggregat"},"404":{"description":"Kein Preis"}}}},"/api/v1/prices/refresh":{"post":{"summary":"On-Demand-Preis-Refresh (Single-Quellen)","tags":["Preise"],"requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["skinId"],"properties":{"skinId":{"type":"string"},"wear":{"type":"string","enum":["fn","mw","ft","ww","bs","none"]},"stattrak":{"type":"boolean"}}}}}},"responses":{"200":{"description":"Refresh-Ergebnis"}}}},"/api/v1/featured":{"get":{"summary":"Featured-Skins (Landing)","tags":["Meta"],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","default":6,"maximum":24}}],"responses":{"200":{"description":"kuratiert + teuerste + Hot-Set"}}}},"/api/v1/inventory/{id}":{"get":{"summary":"Inventar bewerten","description":"id = SteamID64, Vanity-Name oder Profil-URL.","tags":["Inventar"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Bewertetes Inventar inkl. totalValue"},"403":{"description":"Inventar privat"}}}}},"tags":[{"name":"Skins"},{"name":"Cases"},{"name":"Collections"},{"name":"Preise"},{"name":"Inventar"},{"name":"Meta"}]}