Water Level Time Series

Download as ASCII

# Import package
from dahitiapi.DAHITI import DAHITI

# Initialize DAHITI Class
dahiti = DAHITI()

# Select DAHITI target by DAHITI id
dahiti_id = 10146

# Download Water Level Time Series in ASCII format
response = dahiti.download_water_level_ascii(dahiti_id)

# Download Water Level Time Series in ASCII format and write response to file
response = dahiti.download_water_level_ascii_to_file(dahiti_id,'/tmp/10146_wse.txt')

Output of ASCII response:

2008-07-23 23:22:08 192.497 0.003 J2 NO NTC 002 052
2008-08-12 19:19:11 192.625 0.086 J2 NO NTC 004 052
...
2026-02-15 09:30:27 192.674 0.025 S6A NO NTC 194 052
2026-02-25 07:28:59 192.684 0.034 S6A NO NTC 195 052

Download as JSON

# Import package
from dahitiapi.DAHITI import DAHITI

# Initialize DAHITI Class
dahiti = DAHITI()

# Select DAHITI target by DAHITI id
dahiti_id = 10146

# Download Water Level Time Series in JSON format
response = dahiti.download_water_level_json(dahiti_id)

# Download Water Level Time Series in JSON format and write response to file
response = dahiti.download_water_level_json_to_file(dahiti_id,'/tmp/10146_wse.json')

Output of JSON response:

 [
    {'datetime': '2008-07-23 23:22:08', 'wse': 192.497, 'wse_u': 0.003, 'cycle': '002', 'pass_nr': '052', 'mission': 'J2', 'phase': 'NO', 'timeliness': 'NTC'},
    {'datetime': '2008-08-12 19:19:11', 'wse': 192.625, 'wse_u': 0.086, 'cycle': '006', 'pass_nr': '052', 'mission': 'J2', 'phase': 'NO', 'timeliness': 'NTC'},
    ...
    {'datetime': '2026-02-15 09:30:27', 'wse': 192.674, 'wse_u': 0.025, 'cycle': '194', 'pass_nr': '052', 'mission': 'S6A',
'phase': 'NO',  'timeliness': 'NTC'},
    { 'datetime': '2026-02-25 07:28:59', 'wse': 192.684, 'wse_u': 0.034, 'cycle': '195', 'pass_nr': '052', 'mission': 'S6A', 'phase': 'NO', 'timeliness': 'NTC'}
 ]

Download as CSV

# Import package
from dahitiapi.DAHITI import DAHITI

# Initialize DAHITI Class
dahiti = DAHITI()

# Select DAHITI target by DAHITI id
dahiti_id = 10146

# Download Water Level Time Series in CSV format
response = dahiti.download_water_level_csv(dahiti_id)

# Download Water Level Time Series in CSV format and write response to file
response = dahiti.download_water_level_csv_to_file(dahiti_id,'/tmp/10146_wse.csv')

Output of CSV response:

datetime;wse;wse_u;mission;phase;timeliness
2008-07-23 23:22:08;192.497;0.003;J2;NO;NTC;002;052
2008-08-12 19:19:11;192.625;0.086;J2;NO;NTC;004;052
...
2026-02-15 09:30:27;192.674;0.025;S6A;NO;NTC;194;052
2026-02-25 07:28:59;192.684;0.034;S6A;NO;NTC;195;052

Download as NetCDF

# Import package
from dahitiapi.DAHITI import DAHITI

# Initialize DAHITI Class
dahiti = DAHITI()

# Select DAHITI target by DAHITI id
dahiti_id = 10146

# Download Water Level Time Series in NetCDF format and write to file
response = dahiti.download_water_level_netcdf_to_file(dahiti_id,'/tmp/10146_wse.nc')

Content of NetCDF file:

netcdf \10146_wse {
dimensions:
   time = 682 ;
variables:
   string datetime(time) ;
      datetime:standard_name = "UTC Datetime (YYYY-MM-DD HH:MM:SS)" ;
      datetime:valid_min = "2008-07-23 23:22:08" ;
      datetime:valid_max = "2025-10-09 11:49:34" ;
   float wse(time) ;
      wse:standard_name = "Water level derived from satellite altimetry" ;
      wse:unit = "m" ;
      wse:valid_min = 189.951 ;
      wse:valid_max = 195.791 ;
   float wse_u(time) ;
      wse_u:standard_name = "Water level uncertainty" ;
      wse_u:unit = "m" ;
      wse_u:valid_min = 0.f ;
      wse_u:valid_max = 0.58 ;
   string mission(time) ;
      mission:standard_name = "Mission name" ;
   string phase(time) ;
      phase:standard_name = "Mission phase" ;
   string timeliness(time) ;
      timeliness:standard_name = "Timeliness of dataset" ;
   string cycle(time) ;
      cycle:standard_name = "Cycle number" ;
   string pass_nr(time) ;
      pass_nr:standard_name = "Pass number" ;

   // global attributes:
      :dahiti_id = "10146" ;
      :dataset = "water-level-altimetry" ;
      :target_name = "Ray Roberts, Reservoir" ;
      :location = "None" ;
      :country = "United States of America" ;
      :continent = "North America" ;
      :longitude = -97.0557 ;
      :latitude = 33.3615 ;
      :geoid = -26.2027 ;
      :software = "8.0" ;
      :institution = "DGFI-TUM" ;
      :source = "DAHITI" ;
      :url = "https://dahiti.dgfi.tum.de/10146/" ;
      :creation_date = "2026-04-09 06:39:24" ;

   data:

   datetime = "2008-07-23 23:22:08", "2008-08-12 19:19:11",
      "2008-09-01 15:16:14", "2008-09-11 13:14:46", "2008-09-21 11:13:18",
      ...
      "2025-09-29 13:51:03", "2025-10-09 11:49:34" ;

   wse = 192.497, 192.625, 192.464, 193.026, 192.797, 192.396, 192.274,
      192.299, 192.136, 191.995, 192.097, 191.87, 191.947, 191.929, 191.956,
      ...
      192.436, 192.522, 192.412 ;

   wse_u = 0.003, 0.086, 0.021, 0.064, 0.172, 0.155, 0.067, 0.049, 0.023,
      0.081, 0.012, 0, 0.092, 0.173, 0.091, 0.08, 0.03, 0.014, 0.005, 0.088,
      ...
      0.19, 0.013, 0.02 ;

   mission = "J2", "J2", "J2", "J2", "J2", "J2", "J2", "J2", "J2", "J2", "J2",
      ...
      "S6A", "S6A", "S6A", "S6A", "S6A", "S6A", "S6A", "S6A", "S6A" ;

   phase = "NO", "NO", "NO", "NO", "NO", "NO", "NO", "NO", "NO", "NO", "NO",
      ...
      "NO", "NO", "NO", "NO", "NO" ;

   timeliness = "NTC", "NTC", "NTC", "NTC", "NTC", "NTC", "NTC", "NTC", "NTC",
      ...
      "NTC", "NTC", "NTC", "NTC" ;

   cycle = "002", "004", "006", "007", "008", "010", "011", "012", "013",
      ...
      "192", "193", "194", "195" ;

   pass_nr = "052", "052", "052", "052", "052", "052", "052", "052", "052",
      ...
      "052", "052", "052" ;

}