{"openapi":"3.0.0","info":{"title":"Studio Otwartych Danych API","version":"0.9.234.0","description":"Public API for datasets and resources. Supports JSON\/CSV\/GeoJSON, pagination, and field selection."},"servers":[{"url":"https:\/\/dane.przemysl.eu\/wp-json\/sod\/v1"}],"paths":{"\/datasets":{"get":{"summary":"List datasets","responses":{"200":{"description":"OK"}}}},"\/datasets\/{id}":{"get":{"summary":"Get dataset","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"OK"},"404":{"description":"Not found"}}}},"\/resources":{"get":{"summary":"List resources","responses":{"200":{"description":"OK"}}}},"\/resources\/{id}":{"get":{"summary":"Get resource metadata","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"OK"},"404":{"description":"Not found"}}}},"\/resources\/{id}\/data":{"get":{"summary":"Get resource data (preview\/cached)","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer"}},{"name":"format","in":"query","required":false,"schema":{"type":"string","enum":["json","csv","geojson"]}},{"name":"fields","in":"query","required":false,"schema":{"type":"string"},"description":"Comma-separated column names"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer"}}],"responses":{"200":{"description":"OK"}}}},"\/resources\/{id}\/geojson":{"get":{"summary":"Get linked polygon layer as GeoJSON","description":"If the resource is linked to a GEO layer, this endpoint returns the polygon geometry (GeoJSON FeatureCollection).","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"OK"},"404":{"description":"Not found"}}}},"\/resources\/{id}\/kml":{"get":{"summary":"Get linked polygon layer as KML","description":"If the resource is linked to a GEO layer, this endpoint returns the polygon geometry as KML.","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"OK"},"404":{"description":"Not found"}}}},"\/resources\/{id}\/shp.zip":{"get":{"summary":"Get linked polygon layer as Shapefile ZIP (SHP)","description":"If the resource is linked to a GEO layer, this endpoint returns the polygon geometry as an ESRI Shapefile packed into a ZIP. Requires GDAL\/ogr2ogr on the server; otherwise returns 501.","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"OK"},"404":{"description":"Not found"},"501":{"description":"SHP export unavailable"}}}},"\/dataservices":{"get":{"summary":"List data services (DCAT DataService)","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string"},"description":"Search by title"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer"}}],"responses":{"200":{"description":"OK"}}}},"\/dataservices\/{id}":{"get":{"summary":"Get data service (DCAT DataService)","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"OK"},"404":{"description":"Not found"}}}},"\/dataservices.openapi.json":{"get":{"summary":"Index of OpenAPI\/Swagger hints for Data Services","description":"Returns an OpenAPI 3 document with vendor extension x-sod-dataservices containing best-effort links to OpenAPI\/Swagger definitions for DataServices.","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string"},"description":"Search by title (same as \/dataservices)"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer"}}],"responses":{"200":{"description":"OK"}}}},"\/forms":{"get":{"summary":"List data forms (forms generator)","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer"}},{"name":"category","in":"query","required":false,"schema":{"type":"string"},"description":"Filter by form_category slug"}],"responses":{"200":{"description":"OK"}}}},"\/forms\/categories":{"get":{"summary":"List form categories","responses":{"200":{"description":"OK"}}}},"\/forms\/{id}":{"get":{"summary":"Get form metadata","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"OK"},"404":{"description":"Not found"}}}},"\/forms\/{id}\/data":{"get":{"summary":"Get form data (JSON\/CSV)","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer"}},{"name":"format","in":"query","required":false,"schema":{"type":"string","enum":["json","csv"]}},{"name":"refresh","in":"query","required":false,"schema":{"type":"integer"},"description":"1 to regenerate export files"}],"responses":{"200":{"description":"OK"}}}}}}