{"swagger":"2.0","info":{"title":"Weather Citizen API","description":"API to access data uploaded from the WeatherCitizen applications","contact":{"name":"Creare","url":"https://creare.com"},"version":"0.6.0"},"host":"api.weathercitizen.org","schemes":["https"],"consumes":["application/json"],"produces":["application/xml","application/json"],"paths":{"/device":{"get":{"summary":"Retrieves one or more device","responses":{"200":{"description":"An array of device","schema":{"type":"array","items":{"$ref":"#/definitions/Device"}}}},"tags":["Device"]},"post":{"summary":"Stores one or more device","parameters":[{"in":"body","name":"Device","required":true,"schema":{"$ref":"#/definitions/Device"}}],"responses":{"201":{"description":"operation has been successful"}},"tags":["Device"]}},"/device/{deviceId}":{"get":{"summary":"Retrieves a Device document","responses":{"200":{"description":"Device document fetched successfully","schema":{"$ref":"#/definitions/Device"}}},"parameters":[{"$ref":"#/parameters/Device__id"}],"tags":["Device"]},"patch":{"summary":"Updates a Device document","responses":{"200":{"description":"Device document updated successfully"}},"parameters":[{"$ref":"#/parameters/Device__id"},{"in":"body","name":"Device","required":true,"schema":{"$ref":"#/definitions/Device"}},{"in":"header","name":"If-Match","description":"Current value of the _etag field","required":true,"type":"string"}],"tags":["Device"]}},"/sensors":{"get":{"summary":"Retrieves one or more sensors","responses":{"200":{"description":"An array of sensors","schema":{"type":"array","items":{"$ref":"#/definitions/Sensor"}}}},"tags":["Sensor"]},"post":{"summary":"Stores one or more sensors","parameters":[{"in":"body","name":"Sensor","required":true,"schema":{"$ref":"#/definitions/Sensor"}}],"responses":{"201":{"description":"operation has been successful"}},"tags":["Sensor"]}},"/sensors/{sensorId}":{"get":{"summary":"Retrieves a Sensor document","responses":{"200":{"description":"Sensor document fetched successfully","schema":{"$ref":"#/definitions/Sensor"}}},"parameters":[{"$ref":"#/parameters/Sensor__id"}],"tags":["Sensor"]},"patch":{"summary":"Updates a Sensor document","responses":{"200":{"description":"Sensor document updated successfully"}},"parameters":[{"$ref":"#/parameters/Sensor__id"},{"in":"body","name":"Sensor","required":true,"schema":{"$ref":"#/definitions/Sensor"}},{"in":"header","name":"If-Match","description":"Current value of the _etag field","required":true,"type":"string"}],"tags":["Sensor"]}},"/geosensors":{"get":{"summary":"Retrieves one or more geosensors","responses":{"200":{"description":"An array of geosensors","schema":{"type":"array","items":{"$ref":"#/definitions/Geosensor"}}}},"tags":["Geosensor"]},"post":{"summary":"Stores one or more geosensors","parameters":[{"in":"body","name":"Geosensor","required":true,"schema":{"$ref":"#/definitions/Geosensor"}}],"responses":{"201":{"description":"operation has been successful"}},"tags":["Geosensor"]}},"/geosensors/{geosensorId}":{"get":{"summary":"Retrieves a Geosensor document","responses":{"200":{"description":"Geosensor document fetched successfully","schema":{"$ref":"#/definitions/Geosensor"}}},"parameters":[{"$ref":"#/parameters/Geosensor__id"}],"tags":["Geosensor"]},"patch":{"summary":"Updates a Geosensor document","responses":{"200":{"description":"Geosensor document updated successfully"}},"parameters":[{"$ref":"#/parameters/Geosensor__id"},{"in":"body","name":"Geosensor","required":true,"schema":{"$ref":"#/definitions/Geosensor"}},{"in":"header","name":"If-Match","description":"Current value of the _etag field","required":true,"type":"string"}],"tags":["Geosensor"]}},"/media":{"get":{"summary":"Retrieves one or more media","responses":{"200":{"description":"An array of media","schema":{"type":"array","items":{"$ref":"#/definitions/Media"}}}},"tags":["Media"]},"post":{"summary":"Stores one or more media","parameters":[{"in":"body","name":"Media","required":true,"schema":{"$ref":"#/definitions/Media"}}],"responses":{"201":{"description":"operation has been successful"}},"tags":["Media"]}},"/media/{mediaId}":{"get":{"summary":"Retrieves a Media document","responses":{"200":{"description":"Media document fetched successfully","schema":{"$ref":"#/definitions/Media"}}},"parameters":[{"$ref":"#/parameters/Media__id"}],"tags":["Media"]},"patch":{"summary":"Updates a Media document","responses":{"200":{"description":"Media document updated successfully"}},"parameters":[{"$ref":"#/parameters/Media__id"},{"in":"body","name":"Media","required":true,"schema":{"$ref":"#/definitions/Media"}},{"in":"header","name":"If-Match","description":"Current value of the _etag field","required":true,"type":"string"}],"tags":["Media"]}},"/geomedia":{"get":{"summary":"Retrieves one or more geomedia","responses":{"200":{"description":"An array of geomedia","schema":{"type":"array","items":{"$ref":"#/definitions/Geomedia"}}}},"tags":["Geomedia"]},"post":{"summary":"Stores one or more geomedia","parameters":[{"in":"body","name":"Geomedia","required":true,"schema":{"$ref":"#/definitions/Geomedia"}}],"responses":{"201":{"description":"operation has been successful"}},"tags":["Geomedia"]}},"/geomedia/{geomediaId}":{"get":{"summary":"Retrieves a Geomedia document","responses":{"200":{"description":"Geomedia document fetched successfully","schema":{"$ref":"#/definitions/Geomedia"}}},"parameters":[{"$ref":"#/parameters/Geomedia__id"}],"tags":["Geomedia"]},"patch":{"summary":"Updates a Geomedia document","responses":{"200":{"description":"Geomedia document updated successfully"}},"parameters":[{"$ref":"#/parameters/Geomedia__id"},{"in":"body","name":"Geomedia","required":true,"schema":{"$ref":"#/definitions/Geomedia"}},{"in":"header","name":"If-Match","description":"Current value of the _etag field","required":true,"type":"string"}],"tags":["Geomedia"]}},"/geosensorsnearby":{"get":{"summary":"Retrieves one or more geosensorsnearby","responses":{"200":{"description":"An array of geosensorsnearby","schema":{"type":"array","items":{"$ref":"#/definitions/Geosensorsnearby"}}}},"tags":["Geosensorsnearby"]}},"/geosensorsnearby/{geosensorsnearbyId}":{"get":{"summary":"Retrieves a Geosensorsnearby document","responses":{"200":{"description":"Geosensorsnearby document fetched successfully","schema":{"$ref":"#/definitions/Geosensorsnearby"}}},"parameters":[{"$ref":"#/parameters/Geosensorsnearby__id"}],"tags":["Geosensorsnearby"]}},"/buoys":{"get":{"summary":"Retrieves one or more buoys","responses":{"200":{"description":"An array of buoys","schema":{"type":"array","items":{"$ref":"#/definitions/Buoy"}}}},"tags":["Buoy"]}},"/buoys/{buoyId}":{"get":{"summary":"Retrieves a Buoy document","responses":{"200":{"description":"Buoy document fetched successfully","schema":{"$ref":"#/definitions/Buoy"}}},"parameters":[{"$ref":"#/parameters/Buoy__id"}],"tags":["Buoy"]}},"/buoycam":{"get":{"summary":"Retrieves one or more buoycam","responses":{"200":{"description":"An array of buoycam","schema":{"type":"array","items":{"$ref":"#/definitions/Buoycam"}}}},"tags":["Buoycam"]}},"/buoycam/{buoycamId}":{"get":{"summary":"Retrieves a Buoycam document","responses":{"200":{"description":"Buoycam document fetched successfully","schema":{"$ref":"#/definitions/Buoycam"}}},"parameters":[{"$ref":"#/parameters/Buoycam__id"}],"tags":["Buoycam"]}}},"definitions":{"Device":{"type":"object","properties":{"version":{"description":"weather citizen client version","type":"string"},"geometry":{"type":"object","properties":{"type":{"enum":["Point"],"type":"string"},"coordinates":{"minItems":2,"maxItems":2,"type":"array","items":{"type":"integer"}}},"required":["type","coordinates"]},"type":{"enum":["Feature"],"type":"string"},"properties":{"type":"object","properties":{"time":{"type":"string","format":"date-time"},"uuid":{"description":"device generated unique id","type":"string"},"model":{"description":"device model type","type":"string"},"version":{"description":"application version","type":"string"},"platform":{"description":"mobile os type","type":"string"},"platform_version":{"description":"mobile os version","type":"string"},"calibrated":{"description":"time of last calibration change","type":"string","format":"date-time"},"calibration":{"description":"json object of calibration table on device","type":"string"},"battery_technology":{"description":"type of battery in the device","type":"string"},"pressure_name":{"description":"pressure sensor name","type":"string"},"pressure_type_int":{"description":"pressure sensor type_int according to Android documenation","type":"number"},"pressure_type":{"description":"pressure sensor type in string format","type":"string"},"pressure_vendor":{"description":"pressure sensor vendor","type":"string"},"pressure_resolution":{"description":"pressure sensor resolution, if defined","type":"number"},"pressure_units":{"description":"pressure sensor units","type":"string"},"pressure_labels":{"description":"pressure sensor value labels, if necessary","type":"array","items":{"type":"string"}},"temperature_name":{"description":"temperature sensor name","type":"string"},"temperature_type_int":{"description":"temperature sensor type_int according to Android documenation","type":"number"},"temperature_type":{"description":"temperature sensor type in string format","type":"string"},"temperature_vendor":{"description":"temperature sensor vendor","type":"string"},"temperature_resolution":{"description":"temperature sensor resolution, if defined","type":"number"},"temperature_units":{"description":"temperature sensor units","type":"string"},"temperature_labels":{"description":"temperature sensor value labels, if necessary","type":"array","items":{"type":"string"}},"relative_humidity_name":{"description":"relative_humidity sensor name","type":"string"},"relative_humidity_type_int":{"description":"relative_humidity sensor type_int according to Android documenation","type":"number"},"relative_humidity_type":{"description":"relative_humidity sensor type in string format","type":"string"},"relative_humidity_vendor":{"description":"relative_humidity sensor vendor","type":"string"},"relative_humidity_resolution":{"description":"relative_humidity sensor resolution, if defined","type":"number"},"relative_humidity_units":{"description":"relative_humidity sensor units","type":"string"},"relative_humidity_labels":{"description":"relative_humidity sensor value labels, if necessary","type":"array","items":{"type":"string"}},"proximity_name":{"description":"proximity sensor name","type":"string"},"proximity_type_int":{"description":"proximity sensor type_int according to Android documenation","type":"number"},"proximity_type":{"description":"proximity sensor type in string format","type":"string"},"proximity_vendor":{"description":"proximity sensor vendor","type":"string"},"proximity_resolution":{"description":"proximity sensor resolution, if defined","type":"number"},"proximity_units":{"description":"proximity sensor units","type":"string"},"proximity_labels":{"description":"proximity sensor value labels, if necessary","type":"array","items":{"type":"string"}},"light_name":{"description":"light sensor name","type":"string"},"light_type_int":{"description":"light sensor type_int according to Android documenation","type":"number"},"light_type":{"description":"light sensor type in string format","type":"string"},"light_vendor":{"description":"light sensor vendor","type":"string"},"light_resolution":{"description":"light sensor resolution, if defined","type":"number"},"light_units":{"description":"light sensor units","type":"string"},"light_labels":{"description":"light sensor value labels, if necessary","type":"array","items":{"type":"string"}},"step_counter_name":{"description":"step_counter sensor name","type":"string"},"step_counter_type_int":{"description":"step_counter sensor type_int according to Android documenation","type":"number"},"step_counter_type":{"description":"step_counter sensor type in string format","type":"string"},"step_counter_vendor":{"description":"step_counter sensor vendor","type":"string"},"step_counter_resolution":{"description":"step_counter sensor resolution, if defined","type":"number"},"step_counter_units":{"description":"step_counter sensor units","type":"string"},"step_counter_labels":{"description":"step_counter sensor value labels, if necessary","type":"array","items":{"type":"string"}},"orientation_name":{"description":"orientation sensor name","type":"string"},"orientation_type_int":{"description":"orientation sensor type_int according to Android documenation","type":"number"},"orientation_type":{"description":"orientation sensor type in string format","type":"string"},"orientation_vendor":{"description":"orientation sensor vendor","type":"string"},"orientation_resolution":{"description":"orientation sensor resolution, if defined","type":"number"},"orientation_units":{"description":"orientation sensor units","type":"string"},"orientation_labels":{"description":"orientation sensor value labels, if necessary","type":"array","items":{"type":"string"}},"rotation_vector_name":{"description":"rotation_vector sensor name","type":"string"},"rotation_vector_type_int":{"description":"rotation_vector sensor type_int according to Android documenation","type":"number"},"rotation_vector_type":{"description":"rotation_vector sensor type in string format","type":"string"},"rotation_vector_vendor":{"description":"rotation_vector sensor vendor","type":"string"},"rotation_vector_resolution":{"description":"rotation_vector sensor resolution, if defined","type":"number"},"rotation_vector_units":{"description":"rotation_vector sensor units","type":"string"},"rotation_vector_labels":{"description":"rotation_vector sensor value labels, if necessary","type":"array","items":{"type":"string"}},"accelerometer_name":{"description":"accelerometer sensor name","type":"string"},"accelerometer_type_int":{"description":"accelerometer sensor type_int according to Android documenation","type":"number"},"accelerometer_type":{"description":"accelerometer sensor type in string format","type":"string"},"accelerometer_vendor":{"description":"accelerometer sensor vendor","type":"string"},"accelerometer_resolution":{"description":"accelerometer sensor resolution, if defined","type":"number"},"accelerometer_units":{"description":"accelerometer sensor units","type":"string"},"accelerometer_labels":{"description":"accelerometer sensor value labels, if necessary","type":"array","items":{"type":"string"}},"linear_acceleration_name":{"description":"linear_acceleration sensor name","type":"string"},"linear_acceleration_type_int":{"description":"linear_acceleration sensor type_int according to Android documenation","type":"number"},"linear_acceleration_type":{"description":"linear_acceleration sensor type in string format","type":"string"},"linear_acceleration_vendor":{"description":"linear_acceleration sensor vendor","type":"string"},"linear_acceleration_resolution":{"description":"linear_acceleration sensor resolution, if defined","type":"number"},"linear_acceleration_units":{"description":"linear_acceleration sensor units","type":"string"},"linear_acceleration_labels":{"description":"linear_acceleration sensor value labels, if necessary","type":"array","items":{"type":"string"}},"magnetic_field_name":{"description":"magnetic_field sensor name","type":"string"},"magnetic_field_type_int":{"description":"magnetic_field sensor type_int according to Android documenation","type":"number"},"magnetic_field_type":{"description":"magnetic_field sensor type in string format","type":"string"},"magnetic_field_vendor":{"description":"magnetic_field sensor vendor","type":"string"},"magnetic_field_resolution":{"description":"magnetic_field sensor resolution, if defined","type":"number"},"magnetic_field_units":{"description":"magnetic_field sensor units","type":"string"},"magnetic_field_labels":{"description":"magnetic_field sensor value labels, if necessary","type":"array","items":{"type":"string"}},"gravity_name":{"description":"gravity sensor name","type":"string"},"gravity_type_int":{"description":"gravity sensor type_int according to Android documenation","type":"number"},"gravity_type":{"description":"gravity sensor type in string format","type":"string"},"gravity_vendor":{"description":"gravity sensor vendor","type":"string"},"gravity_resolution":{"description":"gravity sensor resolution, if defined","type":"number"},"gravity_units":{"description":"gravity sensor units","type":"string"},"gravity_labels":{"description":"gravity sensor value labels, if necessary","type":"array","items":{"type":"string"}},"gyroscope_name":{"description":"gyroscope sensor name","type":"string"},"gyroscope_type_int":{"description":"gyroscope sensor type_int according to Android documenation","type":"number"},"gyroscope_type":{"description":"gyroscope sensor type in string format","type":"string"},"gyroscope_vendor":{"description":"gyroscope sensor vendor","type":"string"},"gyroscope_resolution":{"description":"gyroscope sensor resolution, if defined","type":"number"},"gyroscope_units":{"description":"gyroscope sensor units","type":"string"},"gyroscope_labels":{"description":"gyroscope sensor value labels, if necessary","type":"array","items":{"type":"string"}}},"required":["time","uuid"]},"_id":{"$ref":"#/definitions/Device__id"}},"required":["type"],"description":"WeatherCitizen client device records"},"Sensor":{"type":"object","properties":{"version":{"description":"weather citizen client version","type":"string"},"type":{"enum":["Feature"],"type":"string"},"properties":{"type":"object","properties":{"uuid":{"description":"device generated unique id","type":"string"},"device":{"$ref":"#/definitions/Device__id"},"image":{"description":"id referring to entry in `(geo)media` collection taken concurrently","type":"string","format":"objectid"},"audio":{"description":"id referring to entry in `(geo)media` collection taken concurrently","type":"string","format":"objectid"},"sensorburst":{"description":"id referring to entry in `(geo)media` collection taken concurrently","type":"string","format":"objectid"},"video":{"description":"id referring to entry in `(geo)media` collection taken concurrently","type":"string","format":"objectid"},"time":{"type":"string","format":"date-time"},"timezone":{"description":"minutes +/- UTC timezone offset","type":"number"},"bearing":{"description":"device heading","type":"number"},"altitude":{"description":"device altitude","type":"number"},"speed":{"description":"device instantaneous velocity","type":"number"},"loc_accuracy":{"description":"location accuracy","type":"number"},"battery_status":{"description":"battery status of the device: 1 = unknown, 2 = charging, 3 = discharging, 5 = full","type":"number"},"battery_temperature":{"description":"battery temperature of the device","type":"number"},"battery_percent":{"description":"battery percent charge of the device","type":"number"},"battery_voltage":{"description":"battery voltage of the device","type":"number"},"mem_current":{"description":"current instantaneous memory usage on the device","type":"number"},"cpu_current":{"description":"current instantaneous cpu usage on the device","type":"number"},"cpu_average":{"description":"average cpu usage over the last 10 seconds","type":"number"},"ble":{"description":"Bluetooth low energy perhipheral data. each key in this dict corresponds to the name of an individual ble device","type":"object"},"ble_map":{"description":"Map of sensor readings available in ble sensor devices. The keys in this dict correspond to sensor keys in these records (i.e. pressure, relative_humidity)","type":"object"},"pressure":{"description":"pressure sensor value","type":"number"},"temperature":{"description":"temperature sensor value","type":"number"},"relative_humidity":{"description":"relative_humidity sensor value","type":"number"},"proximity":{"description":"proximity sensor value","type":"number"},"light":{"description":"light sensor value","type":"number"},"step_counter":{"description":"step_counter sensor value","type":"number"},"orientation":{"description":"orientation sensor value","type":"array","items":{"type":"number"}},"rotation_vector":{"description":"rotation_vector sensor value","type":"array","items":{"type":"number"}},"accelerometer":{"description":"accelerometer sensor value","type":"array","items":{"type":"number"}},"linear_acceleration":{"description":"linear_acceleration sensor value","type":"array","items":{"type":"number"}},"magnetic_field":{"description":"magnetic_field sensor value","type":"array","items":{"type":"number"}},"gravity":{"description":"gravity sensor value","type":"array","items":{"type":"number"}},"gyroscope":{"description":"gyroscope sensor value","type":"array","items":{"type":"number"}}},"required":["device","time","timezone"]},"post_process":{"type":"object","properties":{"usgs_elevation":{"description":"elevation result of usgs point query service","type":"number"}}},"_id":{"type":"string","format":"objectid"}},"required":["type"],"description":"WeatherCitizen device sensor readings without geolocation"},"Geosensor":{"type":"object","properties":{"version":{"description":"weather citizen client version","type":"string"},"geometry":{"type":"object","properties":{"type":{"enum":["Point"],"type":"string"},"coordinates":{"minItems":2,"maxItems":2,"type":"array","items":{"type":"integer"}}},"required":["type","coordinates"]},"type":{"enum":["Feature"],"type":"string"},"properties":{"type":"object","properties":{"uuid":{"description":"device generated unique id","type":"string"},"device":{"$ref":"#/definitions/Device__id"},"image":{"description":"id referring to entry in `(geo)media` collection taken concurrently","type":"string","format":"objectid"},"audio":{"description":"id referring to entry in `(geo)media` collection taken concurrently","type":"string","format":"objectid"},"sensorburst":{"description":"id referring to entry in `(geo)media` collection taken concurrently","type":"string","format":"objectid"},"video":{"description":"id referring to entry in `(geo)media` collection taken concurrently","type":"string","format":"objectid"},"time":{"type":"string","format":"date-time"},"timezone":{"description":"minutes +/- UTC timezone offset","type":"number"},"bearing":{"description":"device heading","type":"number"},"altitude":{"description":"device altitude","type":"number"},"speed":{"description":"device instantaneous velocity","type":"number"},"loc_accuracy":{"description":"location accuracy","type":"number"},"battery_status":{"description":"battery status of the device: 1 = unknown, 2 = charging, 3 = discharging, 5 = full","type":"number"},"battery_temperature":{"description":"battery temperature of the device","type":"number"},"battery_percent":{"description":"battery percent charge of the device","type":"number"},"battery_voltage":{"description":"battery voltage of the device","type":"number"},"mem_current":{"description":"current instantaneous memory usage on the device","type":"number"},"cpu_current":{"description":"current instantaneous cpu usage on the device","type":"number"},"cpu_average":{"description":"average cpu usage over the last 10 seconds","type":"number"},"ble":{"description":"Bluetooth low energy perhipheral data. each key in this dict corresponds to the name of an individual ble device","type":"object"},"ble_map":{"description":"Map of sensor readings available in ble sensor devices. The keys in this dict correspond to sensor keys in these records (i.e. pressure, relative_humidity)","type":"object"},"pressure":{"description":"pressure sensor value","type":"number"},"temperature":{"description":"temperature sensor value","type":"number"},"relative_humidity":{"description":"relative_humidity sensor value","type":"number"},"proximity":{"description":"proximity sensor value","type":"number"},"light":{"description":"light sensor value","type":"number"},"step_counter":{"description":"step_counter sensor value","type":"number"},"orientation":{"description":"orientation sensor value","type":"array","items":{"type":"number"}},"rotation_vector":{"description":"rotation_vector sensor value","type":"array","items":{"type":"number"}},"accelerometer":{"description":"accelerometer sensor value","type":"array","items":{"type":"number"}},"linear_acceleration":{"description":"linear_acceleration sensor value","type":"array","items":{"type":"number"}},"magnetic_field":{"description":"magnetic_field sensor value","type":"array","items":{"type":"number"}},"gravity":{"description":"gravity sensor value","type":"array","items":{"type":"number"}},"gyroscope":{"description":"gyroscope sensor value","type":"array","items":{"type":"number"}}},"required":["device","time","timezone"]},"post_process":{"type":"object","properties":{"usgs_elevation":{"description":"elevation result of usgs point query service","type":"number"}}},"_id":{"type":"string","format":"objectid"}},"required":["geometry","type"],"description":"WeatherCitizen device sensor readings with geolocation"},"Media":{"type":"object","properties":{"version":{"description":"weather citizen client version","type":"string"},"type":{"enum":["Feature"],"type":"string"},"properties":{"type":"object","properties":{"uuid":{"description":"device generated unique id","type":"string"},"device":{"$ref":"#/definitions/Device__id"},"sensors":{"description":"id referring to entry in the `geosensors` or `sensors` collection with","type":"string","format":"objectid"},"time":{"type":"string","format":"date-time"},"filename":{"description":"filename of the media file","type":"string"},"type":{"description":"type of media","enum":["image","audio","video","sensorburst"],"type":"string"},"mime":{"description":"mime-type of media (i.e. image/jpeg, audio/mp4, application/octet-stream). This hould match the `content_type` metadata directly on `file`","type":"string"}},"required":["device","sensors","time","filename","type","mime"]},"file":{"type":"media"},"_id":{"type":"string","format":"objectid"}},"required":["type"],"description":"WeatherCitizen device media records without geolocation"},"Geomedia":{"type":"object","properties":{"version":{"description":"weather citizen client version","type":"string"},"geometry":{"type":"object","properties":{"type":{"enum":["Point"],"type":"string"},"coordinates":{"minItems":2,"maxItems":2,"type":"array","items":{"type":"integer"}}},"required":["type","coordinates"]},"type":{"enum":["Feature"],"type":"string"},"properties":{"type":"object","properties":{"uuid":{"description":"device generated unique id","type":"string"},"device":{"$ref":"#/definitions/Device__id"},"sensors":{"description":"id referring to entry in the `geosensors` or `sensors` collection with","type":"string","format":"objectid"},"time":{"type":"string","format":"date-time"},"filename":{"description":"filename of the media file","type":"string"},"type":{"description":"type of media","enum":["image","audio","video","sensorburst"],"type":"string"},"mime":{"description":"mime-type of media (i.e. image/jpeg, audio/mp4, application/octet-stream). This hould match the `content_type` metadata directly on `file`","type":"string"}},"required":["device","sensors","time","filename","type","mime"]},"file":{"type":"media"},"_id":{"type":"string","format":"objectid"}},"required":["type"],"description":"WeatherCitizen device media records with geolocation"},"Geosensorsnearby":{"type":"object","properties":{"version":{"description":"weather citizen client version","type":"string"},"geometry":{"type":"object","properties":{"type":{"enum":["Point"],"type":"string"},"coordinates":{"minItems":2,"maxItems":2,"type":"array","items":{"type":"integer"}}},"required":["type","coordinates"]},"type":{"enum":["Feature"],"type":"string"},"properties":{"type":"object","properties":{"uuid":{"description":"device generated unique id","type":"string"},"device":{"$ref":"#/definitions/Device__id"},"image":{"description":"id referring to entry in `(geo)media` collection taken concurrently","type":"string","format":"objectid"},"audio":{"description":"id referring to entry in `(geo)media` collection taken concurrently","type":"string","format":"objectid"},"sensorburst":{"description":"id referring to entry in `(geo)media` collection taken concurrently","type":"string","format":"objectid"},"video":{"description":"id referring to entry in `(geo)media` collection taken concurrently","type":"string","format":"objectid"},"time":{"type":"string","format":"date-time"},"timezone":{"description":"minutes +/- UTC timezone offset","type":"number"},"bearing":{"description":"device heading","type":"number"},"altitude":{"description":"device altitude","type":"number"},"speed":{"description":"device instantaneous velocity","type":"number"},"loc_accuracy":{"description":"location accuracy","type":"number"},"battery_status":{"description":"battery status of the device: 1 = unknown, 2 = charging, 3 = discharging, 5 = full","type":"number"},"battery_temperature":{"description":"battery temperature of the device","type":"number"},"battery_percent":{"description":"battery percent charge of the device","type":"number"},"battery_voltage":{"description":"battery voltage of the device","type":"number"},"mem_current":{"description":"current instantaneous memory usage on the device","type":"number"},"cpu_current":{"description":"current instantaneous cpu usage on the device","type":"number"},"cpu_average":{"description":"average cpu usage over the last 10 seconds","type":"number"},"ble":{"description":"Bluetooth low energy perhipheral data. each key in this dict corresponds to the name of an individual ble device","type":"object"},"ble_map":{"description":"Map of sensor readings available in ble sensor devices. The keys in this dict correspond to sensor keys in these records (i.e. pressure, relative_humidity)","type":"object"},"pressure":{"description":"pressure sensor value","type":"number"},"temperature":{"description":"temperature sensor value","type":"number"},"relative_humidity":{"description":"relative_humidity sensor value","type":"number"},"proximity":{"description":"proximity sensor value","type":"number"},"light":{"description":"light sensor value","type":"number"},"step_counter":{"description":"step_counter sensor value","type":"number"},"orientation":{"description":"orientation sensor value","type":"array","items":{"type":"number"}},"rotation_vector":{"description":"rotation_vector sensor value","type":"array","items":{"type":"number"}},"accelerometer":{"description":"accelerometer sensor value","type":"array","items":{"type":"number"}},"linear_acceleration":{"description":"linear_acceleration sensor value","type":"array","items":{"type":"number"}},"magnetic_field":{"description":"magnetic_field sensor value","type":"array","items":{"type":"number"}},"gravity":{"description":"gravity sensor value","type":"array","items":{"type":"number"}},"gyroscope":{"description":"gyroscope sensor value","type":"array","items":{"type":"number"}}},"required":["device","time","timezone"]},"post_process":{"type":"object","properties":{"usgs_elevation":{"description":"elevation result of usgs point query service","type":"number"}}},"_id":{"type":"string","format":"objectid"}},"required":["geometry","type"],"description":"Recent WeatherCitizen observations in proximity to input coordinates"},"Buoy":{"type":"object","properties":{"version":{"description":"server application version","default":"0.6.0","type":"string"},"geometry":{"type":"object","properties":{"type":{"enum":["Point"],"type":"string"},"coordinates":{"minItems":2,"maxItems":2,"type":"array","items":{"type":"integer"}}},"required":["type","coordinates"]},"type":{"enum":["Feature"],"type":"string"},"properties":{"type":"object","properties":{"station_id":{"type":"string"},"wind_direction":{"type":"number"},"wind_speed":{"type":"number"},"peak_gust_speed":{"type":"number"},"wave_height":{"type":"number"},"dominant_wave_period":{"type":"number"},"average_wave_period":{"type":"number"},"dominant_wave_direction":{"type":"number"},"pressure":{"type":"number"},"pressure_tendency":{"type":"number"},"air_tempurature":{"type":"number"},"sea_surface_temperature":{"type":"number"},"dew_point_temperature":{"type":"number"},"visibility":{"type":"number"},"tide":{"type":"number"},"year":{"type":"number"},"month":{"type":"number"},"day":{"type":"number"},"hour":{"type":"number"},"minute":{"type":"number"},"lat":{"type":"number"},"lon":{"type":"number"},"time":{"type":"string","format":"date-time"}},"required":["station_id","time"]},"_id":{"type":"string","format":"objectid"}},"required":["type"],"description":"NOAA Buoys"},"Buoycam":{"type":"object","properties":{"version":{"description":"server application version","default":"0.6.0","type":"string"},"geometry":{"type":"object","properties":{"type":{"enum":["Point"],"type":"string"},"coordinates":{"minItems":2,"maxItems":2,"type":"array","items":{"type":"integer"}}},"required":["type","coordinates"]},"type":{"enum":["Feature"],"type":"string"},"properties":{"type":"object","properties":{"station_id":{"type":"string"},"coordinates":{"type":"string"},"longitude":{"type":"number"},"latitude":{"type":"number"},"altitude":{"type":"number"},"range":{"type":"number"},"tilt":{"type":"number"},"heading":{"type":"number"},"altitudeMode":{"type":"string"},"description":{"type":"string"},"url":{"type":"string"},"width":{"type":"number"},"height":{"type":"number"},"snippet":{"type":"string"},"visibility":{"type":"number"},"filename":{"type":"string"},"time":{"type":"string","format":"date-time"}},"required":["station_id","time"]},"image":{"type":"media"},"subimage0":{"type":"media"},"subimage1":{"type":"media"},"subimage2":{"type":"media"},"subimage3":{"type":"media"},"subimage4":{"type":"media"},"subimage5":{"type":"media"},"s3":{"type":"object","properties":{"bucket":{"type":"string"},"prefix":{"type":"string"},"filename":{"type":"string"}}},"subimages":{"type":"array","items":{"type":"object","properties":{"image":{"type":"media"},"s3":{"type":"object","properties":{"bucket":{"type":"string"},"prefix":{"type":"string"},"filename":{"type":"string"}}}}}},"links":{"type":"object","properties":{"darksky":{"$ref":"#/definitions/Darksky__id"}}},"_id":{"type":"string","format":"objectid"}},"required":["type"],"description":"NOAA Buoy Camera images"},"Device__id":{"type":"string","format":"objectid"},"Darksky__id":null},"parameters":{"Device__id":{"in":"path","name":"deviceId","required":true,"description":"","example":"","type":"string","format":"objectid"},"Sensor__id":{"in":"path","name":"sensorId","required":true,"description":"","example":"","type":"string","format":"objectid"},"Geosensor__id":{"in":"path","name":"geosensorId","required":true,"description":"","example":"","type":"string","format":"objectid"},"Media__id":{"in":"path","name":"mediaId","required":true,"description":"","example":"","type":"string","format":"objectid"},"Geomedia__id":{"in":"path","name":"geomediaId","required":true,"description":"","example":"","type":"string","format":"objectid"},"Geosensorsnearby__id":{"in":"path","name":"geosensorsnearbyId","required":true,"description":"","example":"","type":"string","format":"objectid"},"Buoy__id":{"in":"path","name":"buoyId","required":true,"description":"","example":"","type":"string","format":"objectid"},"Buoycam__id":{"in":"path","name":"buoycamId","required":true,"description":"","example":"","type":"string","format":"objectid"}},"tags":[{"name":"Device","description":"WeatherCitizen client device records"},{"name":"Sensor","description":"WeatherCitizen device sensor readings without geolocation"},{"name":"Geosensor","description":"WeatherCitizen device sensor readings with geolocation"},{"name":"Media","description":"WeatherCitizen device media records without geolocation"},{"name":"Geomedia","description":"WeatherCitizen device media records with geolocation"},{"name":"Geosensorsnearby","description":"Recent WeatherCitizen observations in proximity to input coordinates"},{"name":"Buoy","description":"NOAA Buoys"},{"name":"Buoycam","description":"NOAA Buoy Camera images"}]}
