{"access":{"available_views":[],"bbox_filter":"read station latitude/longitude from group .zattrs, select stations in range, then open those groups and slice their time_<gas> axis","combined_view":"","entity_groups":"top-level groups not starting with '_' are individual stations; open a group to read its series","lat_coord":"latitude (station group .zattr)","layout":"per-station groups — each top-level group (not starting with '_') is one station = (site, sampling type, intake height). Inside a group, co2/ch4 are 1-D along per-gas time axes (time_co2 / time_ch4). There is NO dense (station x time) combined view, by design (hundreds of stations with non-aligned, decades-long, sub-hourly time axes).","lon_coord":"longitude (station group .zattr)","open":"xarray.open_zarr(store, group=\"<STATION_ID>\", consolidated=True)","station_dim":"(none — one group per station)","station_list":"read each group's .zattrs from the consolidated root .zmetadata (latitude, longitude, elevation, sampling_height, station_name, sampling, gases, network, country, citation) — one fetch, no array reads","time_coord":"time_co2 / time_ch4 (per gas, inside each station group)","variables":"per station group: <gas> (dry-air mole fraction; co2 in ppm, ch4 in ppb), <gas>_std_dev, <gas>_nvalue, <gas>_qc"},"audience":"automated agents and LLMs accessing this Zarr store","conventions":{"identity_attrs":["station_id","station_name","latitude","longitude","elevation","sampling_height","sampling","gases","network","country","source_doi","citation","license","license_url"],"metadata":"CF-1.12 + ACDD-1.3 with a canonical cross-store attribute vocabulary","quality_control":"<gas>_qc_flag is a categorical STRING flag. Keep where the first character is 'U' or 'O' (the ICOS ATC usable convention). (NOAA ObsPack instead uses <gas>_qc is a uint8 use flag derived from obs_flag: 0=use, 1=reject. Keep == 0.)","units":"co2 in ppm, ch4 in ppb; per-gas time axes are datetime64"},"discovery":{"collection_doi":"","croissant":"noaa-obspack.croissant.jsonld (sibling of the store directory)","croissant_url":"ICOS zarr proxy: GET /noaa-obspack.zarr/croissant — same Croissant, also linked (with @id) from the proxy-root schema.org DataCatalog when fetched with Accept: application/ld+json","variable_catalog":"none — the viewer reads the store directly (no proxy /query)","api":"ICOS zarr proxy — GET /variables, /variables/{id}, /query?id=..&station=..&cruise=..&lat_min=..&lat_max=..&lon_min=..&lon_max=..&start=..&end=..&apply_qc=true ; station/cruise ids are CASE-SENSITIVE, end is EXCLUSIVE, apply_qc DROPS rows failing the store's keep rule (unknown/unusable filters answer 400 naming the problem); machine-readable contract at /openapi.json"},"docs":["ZARR_CONVENTIONS.md","ZARR_CONSUMER_MIGRATION.md"],"domain":"atmosphere","schema_version":"1.0"}