From 5ef7de64b2f589d838e23ada582183fd8d652f75 Mon Sep 17 00:00:00 2001 From: jankovicgd Date: Mon, 3 Mar 2025 18:56:11 +0100 Subject: [PATCH 1/6] feat: added odata implementation --- src/eodm/extract.py | 20 +++++++- src/eodm/odata.py | 113 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 132 insertions(+), 1 deletion(-) create mode 100644 src/eodm/odata.py diff --git a/src/eodm/extract.py b/src/eodm/extract.py index ce2add9..8e6709b 100644 --- a/src/eodm/extract.py +++ b/src/eodm/extract.py @@ -3,6 +3,7 @@ import pystac_client from pystac import Collection, Item +from .odata import ODataClient, ODataCollection, ODataQuery from .opensearch import OpenSearchClient, OpenSearchFeature @@ -67,7 +68,7 @@ def extract_opensearch_features( Args: url (str): Link to OpenSearch API endpoint - productTypes (list[str]): List of productTypes to search for + product_types (list[str]): List of productTypes to search for Yields: Iterator[OpenSearchFeature]: OpenSearch Features @@ -83,3 +84,20 @@ def extract_opensearch_features( if limit and i >= limit: break yield feature + + +def extract_odata_products( + url: str, + collections: list[ODataCollection], +): + """Extracts OData Products from an OData API + + Args: + url (str): Link to OData API endpoint + collections (list[ODataCollection]): List of collections to search for + """ + client = ODataClient(url) + for collection in collections: + query = ODataQuery(collection=collection.value) + for product in client.search(query): + yield product diff --git a/src/eodm/odata.py b/src/eodm/odata.py new file mode 100644 index 0000000..7886bed --- /dev/null +++ b/src/eodm/odata.py @@ -0,0 +1,113 @@ +from datetime import datetime +from enum import Enum +from typing import Annotated, Iterator + +import httpx +from geojson_pydantic.geometries import Geometry +from pydantic import BaseModel, Field + + +class ODataCollection(Enum): + SENTINEL_1 = "SENTINEL-1" + SENTINEL_2 = "SENTINEL-2" + SENTINEL_3 = "SENTINEL-3" + SENTINEL_5P = "SENTINEL-5P" + SENTINEL_6 = "SENTINEL-6" + SENTINEL_1_RTC = "SENTINEL-1-RTC" + GLOBAL_MOSAICS = "GLOBAL-MOSAICS" + SMOS = "SMOS" + ENVISAT = "ENVISAT" + LANDSAT_5 = "LANDSAT-5" + LANDSAT_7 = "LANDSAT-7" + LANDSAT_8 = "LANDSAT-8" + COP_DEM = "COP-DEM" + TERRAAQUA = "TERRAAQUA" + S2GLC = "S2GLC" + CCM = "CCM" + + +class ODataChecksum(BaseModel): + value: Annotated[str, Field(alias="Value")] + algorithm: Annotated[str, Field(alias="Algorithm")] + checksum_date: Annotated[str, Field(alias="ChecksumDate")] + + +class ODataContentDate(BaseModel): + start: Annotated[str, Field(alias="Start")] + end: Annotated[str, Field(alias="End")] + + +class ODataProduct(BaseModel): + media_content_type: Annotated[str, Field(alias="@odata.mediaContentType")] + id: Annotated[str, Field(alias="Id")] + name: Annotated[str, Field(alias="Name")] + content_type: Annotated[str, Field(alias="ContentType")] + content_length: Annotated[int, Field(alias="ContentLength")] + origin_date: Annotated[str, Field(alias="OriginDate")] + publication_date: Annotated[str, Field(alias="PublicationDate")] + modification_date: Annotated[str, Field(alias="ModificationDate")] + online: Annotated[bool, Field(alias="Online")] + eviction_date: Annotated[str, Field(alias="EvictionDate")] + s3_path: Annotated[str, Field(alias="S3Path")] + checksum: Annotated[list[ODataChecksum], Field(alias="Checksum")] + footprint: Annotated[Geometry | None, Field(alias="Footprint")] + geo_footprint: Annotated[Geometry | None, Field(alias="GeoFootprint")] + + +class ODataResult(BaseModel): + odata_context: Annotated[str, Field(alias="@odata.context")] + value: list[ODataProduct] + odata_nextlink: Annotated[str, Field(alias="@odata.nextLink")] + + +class ODataQuery: + def __init__( + self, + collection: str | None = None, + name: str | None = None, + top: int = 20, + publication_date: tuple[datetime, datetime] | None = None, + sensing_date: tuple[datetime, datetime] | None = None, + intersect_geometry: Geometry | None = None, + ): + self.collection = collection + self.name = name + self.top = top + self.publication_date = publication_date + self.sensing_date = sensing_date + self.intersect_geometry = intersect_geometry + + def to_params(self) -> dict: + query = [] + if self.collection: + query.append(f"Collection/Name eq '{self.collection}'") + if self.name: + query.append("Name eq '{self.name}'") + if self.publication_date: + query.append( + f"PublicationDate ge {self.publication_date[0].isoformat()} and PublicationDate le {self.publication_date[1].isoformat()}" + ) + if self.sensing_date: + query.append( + f"ContentDate/Start ge {self.sensing_date[0].isoformat()} and ContentDate/Start le {self.sensing_date[1].isoformat()}" + ) + if self.intersect_geometry: + query.append( + f"OData.CSC.Intersects(area=geography'SRID=4326;{self.intersect_geometry.wkt})" + ) + + return { + "$filter": " and ".join(query), + "$top": self.top, + } + + +class ODataClient: + def __init__(self, url: str): + self.url = url + + def search(self, query: ODataQuery) -> Iterator[ODataProduct]: + response = httpx.get(self.url, params=query.to_params()) + + product_collection = ODataResult.model_validate(response.json()) + yield from product_collection.value From e6e1d01a5540a2fbd198ceca4c43b78454495107 Mon Sep 17 00:00:00 2001 From: jankovicgd Date: Tue, 4 Mar 2025 11:12:05 +0100 Subject: [PATCH 2/6] fix: added annotation for odataproduct --- src/eodm/extract.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/eodm/extract.py b/src/eodm/extract.py index 8e6709b..81b12f9 100644 --- a/src/eodm/extract.py +++ b/src/eodm/extract.py @@ -3,7 +3,7 @@ import pystac_client from pystac import Collection, Item -from .odata import ODataClient, ODataCollection, ODataQuery +from .odata import ODataClient, ODataCollection, ODataProduct, ODataQuery from .opensearch import OpenSearchClient, OpenSearchFeature @@ -89,7 +89,7 @@ def extract_opensearch_features( def extract_odata_products( url: str, collections: list[ODataCollection], -): +) -> Iterator[ODataProduct]: """Extracts OData Products from an OData API Args: From 8d23b2a0b828aaabb9c347e240100e69068217f0 Mon Sep 17 00:00:00 2001 From: jankovicgd Date: Tue, 24 Jun 2025 10:38:42 +0200 Subject: [PATCH 3/6] feat: added some relevant filters for odata --- src/eodm/extract.py | 23 +- src/eodm/odata.py | 20 +- tests/conftest.py | 16 + tests/data/odata.json | 1422 +++++++++++++++++++++++++++++++++++++++++ tests/test_odata.py | 28 + 5 files changed, 1507 insertions(+), 2 deletions(-) create mode 100644 tests/data/odata.json create mode 100644 tests/test_odata.py diff --git a/src/eodm/extract.py b/src/eodm/extract.py index 81b12f9..c28aef8 100644 --- a/src/eodm/extract.py +++ b/src/eodm/extract.py @@ -1,6 +1,8 @@ +from datetime import datetime from typing import Iterator, Optional import pystac_client +from geojson_pydantic.geometries import Geometry from pystac import Collection, Item from .odata import ODataClient, ODataCollection, ODataProduct, ODataQuery @@ -89,15 +91,34 @@ def extract_opensearch_features( def extract_odata_products( url: str, collections: list[ODataCollection], + datetime: tuple[datetime, datetime] | None = None, + intersect_geometry: Geometry | None = None, + online: bool = True, + cloud_cover_less_than: int | None = None, + name_contains: Optional[str] = None, + name_not_contains: Optional[str] = None, + top: int = 20, ) -> Iterator[ODataProduct]: """Extracts OData Products from an OData API Args: url (str): Link to OData API endpoint collections (list[ODataCollection]): List of collections to search for + datetime (tuple[datetime, datetime], optional): Datetime interval to search. Defaults to None. + intersect_geometry (Geometry, optional): Geometry to intersect. Defaults to None. + online (bool, optional): Filter for online products. Defaults to True. """ client = ODataClient(url) for collection in collections: - query = ODataQuery(collection=collection.value) + query = ODataQuery( + collection=collection.value, + top=top, + sensing_date=datetime, + cloud_cover_less_than=cloud_cover_less_than, + intersect_geometry=intersect_geometry, + online=online, + name_contains=name_contains, + name_not_contains=name_not_contains, + ) for product in client.search(query): yield product diff --git a/src/eodm/odata.py b/src/eodm/odata.py index 7886bed..3590f8c 100644 --- a/src/eodm/odata.py +++ b/src/eodm/odata.py @@ -50,7 +50,7 @@ class ODataProduct(BaseModel): eviction_date: Annotated[str, Field(alias="EvictionDate")] s3_path: Annotated[str, Field(alias="S3Path")] checksum: Annotated[list[ODataChecksum], Field(alias="Checksum")] - footprint: Annotated[Geometry | None, Field(alias="Footprint")] + footprint: Annotated[Geometry | str | None, Field(alias="Footprint")] geo_footprint: Annotated[Geometry | None, Field(alias="GeoFootprint")] @@ -69,6 +69,10 @@ def __init__( publication_date: tuple[datetime, datetime] | None = None, sensing_date: tuple[datetime, datetime] | None = None, intersect_geometry: Geometry | None = None, + online: bool = True, + cloud_cover_less_than: int | None = None, + name_contains: str | None = None, + name_not_contains: str | None = None, ): self.collection = collection self.name = name @@ -76,6 +80,10 @@ def __init__( self.publication_date = publication_date self.sensing_date = sensing_date self.intersect_geometry = intersect_geometry + self.online = online + self.cloud_cover_less_than = cloud_cover_less_than + self.name_contains = name_contains + self.name_not_contains = name_not_contains def to_params(self) -> dict: query = [] @@ -95,6 +103,16 @@ def to_params(self) -> dict: query.append( f"OData.CSC.Intersects(area=geography'SRID=4326;{self.intersect_geometry.wkt})" ) + if self.online: + query.append("Online eq true") + if self.cloud_cover_less_than: + query.append( + f"Attributes/OData.CSC.DoubleAttribute/any(att:att/Name eq 'cloudCover' and att/OData.CSC.DoubleAttribute/Value le {self.cloud_cover_less_than})" + ) + if self.name_contains: + query.append(f"contains(Name, '{self.name_contains}')") + if self.name_not_contains: + query.append(f"not contains(Name, '{self.name_not_contains}')") return { "$filter": " and ".join(query), diff --git a/tests/conftest.py b/tests/conftest.py index 13ff182..717110b 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -90,3 +90,19 @@ def mock_opensearch_search(respx_mock: respx.MockRouter, opensearch_product_type ).mock(return_value=Response(200, content=data)) return mock + + +@pytest.fixture() +def mock_odata_search( + respx_mock: respx.MockRouter, +): + odata_data = DATA_DIR / "odata.json" + + with open(odata_data) as f: + data = f.read() + + mock = respx_mock.get( + "https://catalogue.dataspace.copernicus.eu/odata/v1/Products" + ).mock(return_value=Response(200, content=data)) + + return mock diff --git a/tests/data/odata.json b/tests/data/odata.json new file mode 100644 index 0000000..dd563d6 --- /dev/null +++ b/tests/data/odata.json @@ -0,0 +1,1422 @@ +{ + "@odata.context": "$metadata#Products", + "value": [ + { + "@odata.mediaContentType": "application/octet-stream", + "Id": "7bc897ad-8356-4ac3-bc84-a30d944e0f4d", + "Name": "S2A_MSIL2A_20200119T134641_N0500_R024_T23PLN_20231104T181840.SAFE", + "ContentType": "application/octet-stream", + "ContentLength": 147344406, + "OriginDate": "2024-01-12T13:40:23.489000Z", + "PublicationDate": "2024-08-12T14:20:00.131255Z", + "ModificationDate": "2024-08-12T14:20:10.428123Z", + "Online": true, + "EvictionDate": "9999-12-31T23:59:59.999999Z", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/19/S2A_MSIL2A_20200119T134641_N0500_R024_T23PLN_20231104T181840.SAFE", + "Checksum": [ + { + "Value": "0aaa55d039769ec79f5dea4ece182185", + "Algorithm": "MD5", + "ChecksumDate": "2024-08-12T14:20:08.836341Z" + }, + { + "Value": "9157287377e2b0b435d0ba20e0340a50b8e7d926458d670808c06a79d5bcd6fa", + "Algorithm": "BLAKE3", + "ChecksumDate": "2024-08-12T14:20:09.099114Z" + } + ], + "ContentDate": { + "Start": "2020-01-19T13:46:41.024000Z", + "End": "2020-01-19T13:46:41.024000Z" + }, + "Footprint": "geography'SRID=4326;POLYGON ((-46.5850178086461 11.755309362056, -46.8353009816729 11.7541413255448, -46.8290217985357 10.7616374708718, -46.8142744967324 10.7617005589042, -46.7876783537495 10.8767979099628, -46.7533372507438 11.0253853037137, -46.7190161960242 11.1739394236192, -46.684711890207 11.3224442367124, -46.6504578252112 11.4708601550945, -46.616282811082 11.6192005964567, -46.5850178086461 11.755309362056))'", + "GeoFootprint": { + "type": "Polygon", + "coordinates": [ + [ + [ + -46.5850178086461, + 11.755309362056 + ], + [ + -46.8353009816729, + 11.7541413255448 + ], + [ + -46.8290217985357, + 10.7616374708718 + ], + [ + -46.8142744967324, + 10.7617005589042 + ], + [ + -46.7876783537495, + 10.8767979099628 + ], + [ + -46.7533372507438, + 11.0253853037137 + ], + [ + -46.7190161960242, + 11.1739394236192 + ], + [ + -46.684711890207, + 11.3224442367124 + ], + [ + -46.6504578252112, + 11.4708601550945 + ], + [ + -46.616282811082, + 11.6192005964567 + ], + [ + -46.5850178086461, + 11.755309362056 + ] + ] + ] + } + }, + { + "@odata.mediaContentType": "application/octet-stream", + "Id": "667a4ac1-7d0e-4a57-98c2-7905af5ccc2b", + "Name": "S2A_MSIL2A_20200119T134641_N0500_R024_T23QKV_20231104T181840.SAFE", + "ContentType": "application/octet-stream", + "ContentLength": 782469987, + "OriginDate": "2024-01-12T13:41:34.019000Z", + "PublicationDate": "2024-08-12T14:22:18.351444Z", + "ModificationDate": "2024-08-12T14:22:28.311573Z", + "Online": true, + "EvictionDate": "9999-12-31T23:59:59.999999Z", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/19/S2A_MSIL2A_20200119T134641_N0500_R024_T23QKV_20231104T181840.SAFE", + "Checksum": [ + { + "Value": "d14b3523e1941500b93c305361844cea", + "Algorithm": "MD5", + "ChecksumDate": "2024-08-12T14:22:26.888441Z" + }, + { + "Value": "3bfebfe33a92183d8d9b66f30e8a5c2f464454b322c22732d82f023eeb53fc5d", + "Algorithm": "BLAKE3", + "ChecksumDate": "2024-08-12T14:22:28.169076Z" + } + ], + "ContentDate": { + "Start": "2020-01-19T13:46:41.024000Z", + "End": "2020-01-19T13:46:41.024000Z" + }, + "Footprint": "geography'SRID=4326;POLYGON ((-47.8342029540396 18.0682566693715, -47.8187974914905 17.0769850336, -46.7876573431634 17.0887025550132, -46.797436866379 18.0806986962921, -47.8342029540396 18.0682566693715))'", + "GeoFootprint": { + "type": "Polygon", + "coordinates": [ + [ + [ + -47.8342029540396, + 18.0682566693715 + ], + [ + -47.8187974914905, + 17.0769850336 + ], + [ + -46.7876573431634, + 17.0887025550132 + ], + [ + -46.797436866379, + 18.0806986962921 + ], + [ + -47.8342029540396, + 18.0682566693715 + ] + ] + ] + } + }, + { + "@odata.mediaContentType": "application/octet-stream", + "Id": "e88830cb-ea3b-4b9d-b724-62f5678cdeb2", + "Name": "S2A_MSIL2A_20200119T134641_N0500_R024_T21LZD_20231104T181840.SAFE", + "ContentType": "application/octet-stream", + "ContentLength": 1106751365, + "OriginDate": "2024-01-12T14:15:54.432000Z", + "PublicationDate": "2024-08-12T14:22:47.000106Z", + "ModificationDate": "2024-08-12T14:22:59.956709Z", + "Online": true, + "EvictionDate": "9999-12-31T23:59:59.999999Z", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/19/S2A_MSIL2A_20200119T134641_N0500_R024_T21LZD_20231104T181840.SAFE", + "Checksum": [ + { + "Value": "cd1c6beb7b9cc8797b82cc8ba43f24cf", + "Algorithm": "MD5", + "ChecksumDate": "2024-08-12T14:22:57.491630Z" + }, + { + "Value": "cb78cd0fc83ff345ca98f3269ffe20ac090ecc79fda56378bbdff08b80a4795d", + "Algorithm": "BLAKE3", + "ChecksumDate": "2024-08-12T14:22:59.814526Z" + } + ], + "ContentDate": { + "Start": "2020-01-19T13:46:41.024000Z", + "End": "2020-01-19T13:46:41.024000Z" + }, + "Footprint": "geography'SRID=4326;POLYGON ((-54.2175605020025 -14.4558376567214, -54.2047420330869 -15.4473859427882, -53.1830210574259 -15.4321444453535, -53.200501070593 -14.4416170629181, -54.2175605020025 -14.4558376567214))'", + "GeoFootprint": { + "type": "Polygon", + "coordinates": [ + [ + [ + -54.2175605020025, + -14.4558376567214 + ], + [ + -54.2047420330869, + -15.4473859427882 + ], + [ + -53.1830210574259, + -15.4321444453535 + ], + [ + -53.200501070593, + -14.4416170629181 + ], + [ + -54.2175605020025, + -14.4558376567214 + ] + ] + ] + } + }, + { + "@odata.mediaContentType": "application/octet-stream", + "Id": "3b08c4fb-ce8b-4ebe-9dcc-31415d1a5d27", + "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T33TUL_20230618T201545.SAFE", + "ContentType": "application/octet-stream", + "ContentLength": 1046306886, + "OriginDate": "2023-10-22T01:33:30.029000Z", + "PublicationDate": "2023-10-22T17:09:34.431118Z", + "ModificationDate": "2024-05-10T17:43:02.450027Z", + "Online": true, + "EvictionDate": "9999-12-31T23:59:59.999999Z", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T33TUL_20230618T201545.SAFE", + "Checksum": [ + { + "Value": "e3b838404aa2aca2b568d2058e36e2ea", + "Algorithm": "MD5", + "ChecksumDate": "2023-11-21T10:59:42.119295Z" + }, + { + "Value": "125dfcfcd47f27ae7aecc6f73e128723f3ac07e85cb1b0d96665d5ec1d97327b", + "Algorithm": "BLAKE3", + "ChecksumDate": "2023-11-21T10:59:45.024769Z" + } + ], + "ContentDate": { + "Start": "2020-01-01T10:03:19.024000Z", + "End": "2020-01-01T10:03:19.024000Z" + }, + "Footprint": "geography'SRID=4326;POLYGON ((12.4253221864627 45.8177049335653, 12.4607857930012 45.0370231168043, 13.8543654645203 45.0595136000494, 13.8341080897223 46.0476276229589, 12.4989776608378 46.0257162456937, 12.4619226131406 45.9223302408527, 12.4253221864627 45.8177049335653))'", + "GeoFootprint": { + "type": "Polygon", + "coordinates": [ + [ + [ + 12.4253221864627, + 45.8177049335653 + ], + [ + 12.4607857930012, + 45.0370231168043 + ], + [ + 13.8543654645203, + 45.0595136000494 + ], + [ + 13.8341080897223, + 46.0476276229589 + ], + [ + 12.4989776608378, + 46.0257162456937 + ], + [ + 12.4619226131406, + 45.9223302408527 + ], + [ + 12.4253221864627, + 45.8177049335653 + ] + ] + ] + } + }, + { + "@odata.mediaContentType": "application/octet-stream", + "Id": "6a7b999d-1ec3-4149-89de-a80af429b7ea", + "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T33TXN_20230618T201545.SAFE", + "ContentType": "application/octet-stream", + "ContentLength": 609162793, + "OriginDate": "2023-10-22T01:33:55.166000Z", + "PublicationDate": "2023-10-22T17:13:03.600113Z", + "ModificationDate": "2024-05-07T18:35:15.922185Z", + "Online": true, + "EvictionDate": "9999-12-31T23:59:59.999999Z", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T33TXN_20230618T201545.SAFE", + "Checksum": [ + { + "Value": "035a4da8c5aff74ece4412f688901e14", + "Algorithm": "MD5", + "ChecksumDate": "2023-10-22T17:13:11.184141Z" + }, + { + "Value": "3134d6657d419e92e897a2fb90ef6158c3449c04a70cd7cacd56fd1d69347089", + "Algorithm": "BLAKE3", + "ChecksumDate": "2023-10-22T17:13:12.491115Z" + } + ], + "ContentDate": { + "Start": "2020-01-01T10:03:19.024000Z", + "End": "2020-01-01T10:03:19.024000Z" + }, + "Footprint": "geography'SRID=4326;POLYGON ((17.2336839042634 47.829740377122, 16.3366002199701 47.8459210520889, 16.3118868855124 46.8581819724645, 16.8000672917402 46.8495140950594, 16.8572847164702 46.9795452504087, 16.9208571798849 47.1246582566163, 16.9600839413645 47.2135726083137, 16.9843364306387 47.2686843221943, 17.0483192159833 47.4136014182965, 17.0762398739841 47.4764988167838, 17.1129664444431 47.5594762327457, 17.1774266379774 47.7043826107559, 17.2336839042634 47.829740377122))'", + "GeoFootprint": { + "type": "Polygon", + "coordinates": [ + [ + [ + 17.2336839042634, + 47.829740377122 + ], + [ + 16.3366002199701, + 47.8459210520889 + ], + [ + 16.3118868855124, + 46.8581819724645 + ], + [ + 16.8000672917402, + 46.8495140950594 + ], + [ + 16.8572847164702, + 46.9795452504087 + ], + [ + 16.9208571798849, + 47.1246582566163 + ], + [ + 16.9600839413645, + 47.2135726083137 + ], + [ + 16.9843364306387, + 47.2686843221943 + ], + [ + 17.0483192159833, + 47.4136014182965 + ], + [ + 17.0762398739841, + 47.4764988167838 + ], + [ + 17.1129664444431, + 47.5594762327457 + ], + [ + 17.1774266379774, + 47.7043826107559 + ], + [ + 17.2336839042634, + 47.829740377122 + ] + ] + ] + } + }, + { + "@odata.mediaContentType": "application/octet-stream", + "Id": "4f271f35-f1c9-4924-8cf6-4834723f8d88", + "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T33TVK_20230618T201545.SAFE", + "ContentType": "application/octet-stream", + "ContentLength": 961411557, + "OriginDate": "2023-10-22T01:34:01.062000Z", + "PublicationDate": "2023-10-22T17:13:37.756880Z", + "ModificationDate": "2024-05-07T18:35:16.061679Z", + "Online": true, + "EvictionDate": "9999-12-31T23:59:59.999999Z", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T33TVK_20230618T201545.SAFE", + "Checksum": [ + { + "Value": "a480fe5b1d8722372fd8e524ac2907e0", + "Algorithm": "MD5", + "ChecksumDate": "2023-10-22T17:13:47.077309Z" + }, + { + "Value": "fe4099e891c5cae9084fe11c871d7edb86bf1026398f2407a143f1b330a5fb25", + "Algorithm": "BLAKE3", + "ChecksumDate": "2023-10-22T17:13:49.108410Z" + } + ], + "ContentDate": { + "Start": "2020-01-01T10:03:19.024000Z", + "End": "2020-01-01T10:03:19.024000Z" + }, + "Footprint": "geography'SRID=4326;POLYGON ((13.7274503416686 45.1467471878356, 13.7488829466404 44.1585153096049, 15.1220744909361 44.1653012748966, 15.1241663971878 45.153769755991, 13.7274503416686 45.1467471878356))'", + "GeoFootprint": { + "type": "Polygon", + "coordinates": [ + [ + [ + 13.7274503416686, + 45.1467471878356 + ], + [ + 13.7488829466404, + 44.1585153096049 + ], + [ + 15.1220744909361, + 44.1653012748966 + ], + [ + 15.1241663971878, + 45.153769755991 + ], + [ + 13.7274503416686, + 45.1467471878356 + ] + ] + ] + } + }, + { + "@odata.mediaContentType": "application/octet-stream", + "Id": "eed83c60-8249-4508-8e99-4de71402123b", + "Name": "S2A_MSIL2A_20200101T105441_N0500_R051_T31UGT_20230502T015741.SAFE", + "ContentType": "application/octet-stream", + "ContentLength": 558221330, + "OriginDate": "2023-10-21T08:50:37.504000Z", + "PublicationDate": "2023-10-21T21:53:12.965122Z", + "ModificationDate": "2024-05-09T21:28:06.083568Z", + "Online": true, + "EvictionDate": "9999-12-31T23:59:59.999999Z", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2A_MSIL2A_20200101T105441_N0500_R051_T31UGT_20230502T015741.SAFE", + "Checksum": [ + { + "Value": "7868a261936673e68dcadfdf04ed62d6", + "Algorithm": "MD5", + "ChecksumDate": "2023-10-21T21:53:20.386555Z" + }, + { + "Value": "764ab6d52e02a299a6e715cf5a05e68d375a478df2fbe78300e405bdbe026d4e", + "Algorithm": "BLAKE3", + "ChecksumDate": "2023-10-21T21:53:21.989176Z" + } + ], + "ContentDate": { + "Start": "2020-01-01T10:54:41.024000Z", + "End": "2020-01-01T10:54:41.024000Z" + }, + "Footprint": "geography'SRID=4326;POLYGON ((6.83650553892272 52.2854281875178, 5.93361576580916 52.314037804793, 5.87021576413204 51.328067311214, 6.32838799454916 51.3137433380772, 6.3913392102051 51.4356663764307, 6.46568372685877 51.579664130347, 6.54054754127362 51.7235443402331, 6.61551375033192 51.867402959726, 6.69084806276855 52.0112044755278, 6.7668965489842 52.1550021397433, 6.83650553892272 52.2854281875178))'", + "GeoFootprint": { + "type": "Polygon", + "coordinates": [ + [ + [ + 6.83650553892272, + 52.2854281875178 + ], + [ + 5.93361576580916, + 52.314037804793 + ], + [ + 5.87021576413204, + 51.328067311214 + ], + [ + 6.32838799454916, + 51.3137433380772 + ], + [ + 6.3913392102051, + 51.4356663764307 + ], + [ + 6.46568372685877, + 51.579664130347 + ], + [ + 6.54054754127362, + 51.7235443402331 + ], + [ + 6.61551375033192, + 51.867402959726 + ], + [ + 6.69084806276855, + 52.0112044755278 + ], + [ + 6.7668965489842, + 52.1550021397433 + ], + [ + 6.83650553892272, + 52.2854281875178 + ] + ] + ] + } + }, + { + "@odata.mediaContentType": "application/octet-stream", + "Id": "31b6a92c-3088-40cb-b9a4-decde70e4fbe", + "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T33UWR_20230618T201545.SAFE", + "ContentType": "application/octet-stream", + "ContentLength": 1196172971, + "OriginDate": "2023-10-22T01:33:26.587000Z", + "PublicationDate": "2023-10-22T17:08:59.594403Z", + "ModificationDate": "2024-05-10T06:25:55.217150Z", + "Online": true, + "EvictionDate": "9999-12-31T23:59:59.999999Z", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T33UWR_20230618T201545.SAFE", + "Checksum": [ + { + "Value": "485d47187199a4d80fffd2c57aadd0ee", + "Algorithm": "MD5", + "ChecksumDate": "2023-10-22T17:09:09.459402Z" + }, + { + "Value": "f21235cd0e814488e4e263759340e0c1f326b4a9469229bfdec23a993f015299", + "Algorithm": "BLAKE3", + "ChecksumDate": "2023-10-22T17:09:12.024716Z" + } + ], + "ContentDate": { + "Start": "2020-01-01T10:03:19.024000Z", + "End": "2020-01-01T10:03:19.024000Z" + }, + "Footprint": "geography'SRID=4326;POLYGON ((14.9997176844921 50.5522921106257, 14.9997234206969 49.5647550000065, 16.5178631275449 49.5548000572817, 16.5493281467359 50.5419848180733, 14.9997176844921 50.5522921106257))'", + "GeoFootprint": { + "type": "Polygon", + "coordinates": [ + [ + [ + 14.9997176844921, + 50.5522921106257 + ], + [ + 14.9997234206969, + 49.5647550000065 + ], + [ + 16.5178631275449, + 49.5548000572817 + ], + [ + 16.5493281467359, + 50.5419848180733 + ], + [ + 14.9997176844921, + 50.5522921106257 + ] + ] + ] + } + }, + { + "@odata.mediaContentType": "application/octet-stream", + "Id": "09fb6b18-9491-4a9b-a654-0f67047e854d", + "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T33UWP_20230618T201545.SAFE", + "ContentType": "application/octet-stream", + "ContentLength": 1199485654, + "OriginDate": "2023-10-22T01:34:22.882000Z", + "PublicationDate": "2023-10-22T17:10:07.189326Z", + "ModificationDate": "2024-05-10T06:25:55.606561Z", + "Online": true, + "EvictionDate": "9999-12-31T23:59:59.999999Z", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T33UWP_20230618T201545.SAFE", + "Checksum": [ + { + "Value": "acde32ce85687abdffd36d844fdedce8", + "Algorithm": "MD5", + "ChecksumDate": "2023-10-22T17:10:17.581386Z" + }, + { + "Value": "ad65ba09c3e7ceda66141f5de1dace962bfbf519dba2bb54fa8cc9686ef32dca", + "Algorithm": "BLAKE3", + "ChecksumDate": "2023-10-22T17:10:20.148316Z" + } + ], + "ContentDate": { + "Start": "2020-01-01T10:03:19.024000Z", + "End": "2020-01-01T10:03:19.024000Z" + }, + "Footprint": "geography'SRID=4326;POLYGON ((14.9997279041062 48.7530130044756, 14.9997330963449 47.7651665667219, 16.4647868669399 47.7558186458081, 16.4932694755772 48.7433372246506, 14.9997279041062 48.7530130044756))'", + "GeoFootprint": { + "type": "Polygon", + "coordinates": [ + [ + [ + 14.9997279041062, + 48.7530130044756 + ], + [ + 14.9997330963449, + 47.7651665667219 + ], + [ + 16.4647868669399, + 47.7558186458081 + ], + [ + 16.4932694755772, + 48.7433372246506 + ], + [ + 14.9997279041062, + 48.7530130044756 + ] + ] + ] + } + }, + { + "@odata.mediaContentType": "application/octet-stream", + "Id": "56f46c3b-d3ca-42d2-a143-e74960ffbe57", + "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T33UWS_20230618T201545.SAFE", + "ContentType": "application/octet-stream", + "ContentLength": 1219347740, + "OriginDate": "2023-10-22T01:34:53.284000Z", + "PublicationDate": "2023-10-22T17:08:02.457315Z", + "ModificationDate": "2024-05-10T06:25:53.880569Z", + "Online": true, + "EvictionDate": "9999-12-31T23:59:59.999999Z", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T33UWS_20230618T201545.SAFE", + "Checksum": [ + { + "Value": "4c316c630fb072a3642208a5a4d23870", + "Algorithm": "MD5", + "ChecksumDate": "2023-10-22T17:08:12.617644Z" + }, + { + "Value": "70575122d849c467f99702451a9b4aa332ca26ad732c6c0d6b3d3fc64f737a8c", + "Algorithm": "BLAKE3", + "ChecksumDate": "2023-10-22T17:08:15.186533Z" + } + ], + "ContentDate": { + "Start": "2020-01-01T10:03:19.024000Z", + "End": "2020-01-01T10:03:19.024000Z" + }, + "Footprint": "geography'SRID=4326;POLYGON ((14.9997121758513 51.4511822057936, 14.9997182116692 50.4637984017553, 16.5464364414626 50.453523278919, 16.5795440214696 51.4405411658231, 14.9997121758513 51.4511822057936))'", + "GeoFootprint": { + "type": "Polygon", + "coordinates": [ + [ + [ + 14.9997121758513, + 51.4511822057936 + ], + [ + 14.9997182116692, + 50.4637984017553 + ], + [ + 16.5464364414626, + 50.453523278919 + ], + [ + 16.5795440214696, + 51.4405411658231 + ], + [ + 14.9997121758513, + 51.4511822057936 + ] + ] + ] + } + }, + { + "@odata.mediaContentType": "application/octet-stream", + "Id": "8964b892-82b2-4e9a-b1ae-0a97fb013096", + "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T33UVR_20230618T201545.SAFE", + "ContentType": "application/octet-stream", + "ContentLength": 966533521, + "OriginDate": "2023-10-22T01:32:58.181000Z", + "PublicationDate": "2023-10-22T17:06:15.629312Z", + "ModificationDate": "2024-05-10T06:25:52.494017Z", + "Online": true, + "EvictionDate": "9999-12-31T23:59:59.999999Z", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T33UVR_20230618T201545.SAFE", + "Checksum": [ + { + "Value": "4bc6cf9eacea4614daf4c243dd62ee6d", + "Algorithm": "MD5", + "ChecksumDate": "2023-10-22T17:06:24.746836Z" + }, + { + "Value": "e1d886bc38568380a647021c260df27fe0e18a5e99393524ad050845449110b5", + "Algorithm": "BLAKE3", + "ChecksumDate": "2023-10-22T17:06:26.816234Z" + } + ], + "ContentDate": { + "Start": "2020-01-01T10:03:19.024000Z", + "End": "2020-01-01T10:03:19.024000Z" + }, + "Footprint": "geography'SRID=4326;POLYGON ((13.7973144975344 49.5574616494714, 15.134970502622 49.564676297854, 15.1377697557676 50.5522106222613, 14.1853368263482 50.5469998793456, 14.1490399502576 50.4573369937177, 14.0914233865514 50.3113167838126, 14.0344700559361 50.1652131390678, 13.9772827400984 50.0192452520987, 13.9200317059114 49.8732465588076, 13.8639452318592 49.7268796461721, 13.8065091437343 49.580814158978, 13.7973144975344 49.5574616494714))'", + "GeoFootprint": { + "type": "Polygon", + "coordinates": [ + [ + [ + 13.7973144975344, + 49.5574616494714 + ], + [ + 15.134970502622, + 49.564676297854 + ], + [ + 15.1377697557676, + 50.5522106222613 + ], + [ + 14.1853368263482, + 50.5469998793456 + ], + [ + 14.1490399502576, + 50.4573369937177 + ], + [ + 14.0914233865514, + 50.3113167838126 + ], + [ + 14.0344700559361, + 50.1652131390678 + ], + [ + 13.9772827400984, + 50.0192452520987 + ], + [ + 13.9200317059114, + 49.8732465588076 + ], + [ + 13.8639452318592, + 49.7268796461721 + ], + [ + 13.8065091437343, + 49.580814158978 + ], + [ + 13.7973144975344, + 49.5574616494714 + ] + ] + ] + } + }, + { + "@odata.mediaContentType": "application/octet-stream", + "Id": "6c044ac5-c686-41da-a38e-0f19e7cc46c4", + "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T32TQR_20230618T201545.SAFE", + "ContentType": "application/octet-stream", + "ContentLength": 513995018, + "OriginDate": "2023-10-22T01:44:59.974000Z", + "PublicationDate": "2023-10-22T17:29:40.520667Z", + "ModificationDate": "2024-05-10T06:26:23.803502Z", + "Online": true, + "EvictionDate": "9999-12-31T23:59:59.999999Z", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T32TQR_20230618T201545.SAFE", + "Checksum": [ + { + "Value": "b932caa8482d26e92d50d74a8e56867e", + "Algorithm": "MD5", + "ChecksumDate": "2023-10-22T17:29:47.613298Z" + }, + { + "Value": "efa7b4a23a8bcad29780a9fd33fe2de5d4080e171cc1b9cffe38dc818a6aa2a3", + "Algorithm": "BLAKE3", + "ChecksumDate": "2023-10-22T17:29:49.116788Z" + } + ], + "ContentDate": { + "Start": "2020-01-01T10:03:19.024000Z", + "End": "2020-01-01T10:03:19.024000Z" + }, + "Footprint": "geography'SRID=4326;POLYGON ((12.1510647880466 45.019672874804, 12.9300333910416 44.997587612457, 12.9993205599376 45.9835452069264, 12.4891351491007 45.998254994681, 12.4619226131406 45.9223302408527, 12.4106174353794 45.7756702022709, 12.3593526080404 45.6289944314859, 12.3085235292302 45.4822638398844, 12.258221963045 45.3355263274659, 12.2081657588486 45.1888503681981, 12.1586254445942 45.0421822127639, 12.1510647880466 45.019672874804))'", + "GeoFootprint": { + "type": "Polygon", + "coordinates": [ + [ + [ + 12.1510647880466, + 45.019672874804 + ], + [ + 12.9300333910416, + 44.997587612457 + ], + [ + 12.9993205599376, + 45.9835452069264 + ], + [ + 12.4891351491007, + 45.998254994681 + ], + [ + 12.4619226131406, + 45.9223302408527 + ], + [ + 12.4106174353794, + 45.7756702022709 + ], + [ + 12.3593526080404, + 45.6289944314859 + ], + [ + 12.3085235292302, + 45.4822638398844 + ], + [ + 12.258221963045, + 45.3355263274659 + ], + [ + 12.2081657588486, + 45.1888503681981 + ], + [ + 12.1586254445942, + 45.0421822127639 + ], + [ + 12.1510647880466, + 45.019672874804 + ] + ] + ] + } + }, + { + "@odata.mediaContentType": "application/octet-stream", + "Id": "e6162844-d274-4c49-b0f3-292d63a674dd", + "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T33TWN_20230618T201545.SAFE", + "ContentType": "application/octet-stream", + "ContentLength": 1210847910, + "OriginDate": "2023-10-22T01:33:34.992000Z", + "PublicationDate": "2023-10-22T17:10:02.294908Z", + "ModificationDate": "2024-05-10T06:25:55.515371Z", + "Online": true, + "EvictionDate": "9999-12-31T23:59:59.999999Z", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T33TWN_20230618T201545.SAFE", + "Checksum": [ + { + "Value": "05c79c5b089fef75bfc1b14e6e5b0a58", + "Algorithm": "MD5", + "ChecksumDate": "2023-10-22T17:10:12.641196Z" + }, + { + "Value": "a91cf99a3467d5ffb7c15ddf0907a4f454b606cb2a1e45938f16d94ad5326133", + "Algorithm": "BLAKE3", + "ChecksumDate": "2023-10-22T17:10:15.265251Z" + } + ], + "ContentDate": { + "Start": "2020-01-01T10:03:19.024000Z", + "End": "2020-01-01T10:03:19.024000Z" + }, + "Footprint": "geography'SRID=4326;POLYGON ((14.9997326423426 47.8537018424875, 14.9997375874494 46.8656998733542, 16.44014982441 46.8566398819074, 16.4672773767682 47.8443250465141, 14.9997326423426 47.8537018424875))'", + "GeoFootprint": { + "type": "Polygon", + "coordinates": [ + [ + [ + 14.9997326423426, + 47.8537018424875 + ], + [ + 14.9997375874494, + 46.8656998733542 + ], + [ + 16.44014982441, + 46.8566398819074 + ], + [ + 16.4672773767682, + 47.8443250465141 + ], + [ + 14.9997326423426, + 47.8537018424875 + ] + ] + ] + } + }, + { + "@odata.mediaContentType": "application/octet-stream", + "Id": "95abd236-ec56-4221-bcb4-d72069780396", + "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T33TVL_20230618T201545.SAFE", + "ContentType": "application/octet-stream", + "ContentLength": 1178854745, + "OriginDate": "2023-10-22T01:34:02.054000Z", + "PublicationDate": "2023-10-22T17:15:02.132485Z", + "ModificationDate": "2024-05-10T06:26:06.334464Z", + "Online": true, + "EvictionDate": "9999-12-31T23:59:59.999999Z", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T33TVL_20230618T201545.SAFE", + "Checksum": [ + { + "Value": "acd62b288bc15f633ca26afdf45293a0", + "Algorithm": "MD5", + "ChecksumDate": "2023-10-22T17:15:13.058906Z" + }, + { + "Value": "8f79ba373ed4676f1645ca16e62201068ae2a54130df24459814ee1396eb9b78", + "Algorithm": "BLAKE3", + "ChecksumDate": "2023-10-22T17:15:15.452870Z" + } + ], + "ContentDate": { + "Start": "2020-01-01T10:03:19.024000Z", + "End": "2020-01-01T10:03:19.024000Z" + }, + "Footprint": "geography'SRID=4326;POLYGON ((13.7069510847235 46.0462596089832, 13.7294164230679 45.0581916702363, 15.1239744985113 45.0651927065434, 15.1261672372241 46.0535047357316, 13.7069510847235 46.0462596089832))'", + "GeoFootprint": { + "type": "Polygon", + "coordinates": [ + [ + [ + 13.7069510847235, + 46.0462596089832 + ], + [ + 13.7294164230679, + 45.0581916702363 + ], + [ + 15.1239744985113, + 45.0651927065434 + ], + [ + 15.1261672372241, + 46.0535047357316 + ], + [ + 13.7069510847235, + 46.0462596089832 + ] + ] + ] + } + }, + { + "@odata.mediaContentType": "application/octet-stream", + "Id": "48205e34-b3ed-4275-8ac2-5a2601bed62e", + "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T33TWK_20230618T201545.SAFE", + "ContentType": "application/octet-stream", + "ContentLength": 815454731, + "OriginDate": "2023-10-22T01:34:28.306000Z", + "PublicationDate": "2023-10-22T17:11:02.823570Z", + "ModificationDate": "2024-05-10T06:25:56.570093Z", + "Online": true, + "EvictionDate": "9999-12-31T23:59:59.999999Z", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T33TWK_20230618T201545.SAFE", + "Checksum": [ + { + "Value": "c2cdf1e2328505b327c432b5aff48494", + "Algorithm": "MD5", + "ChecksumDate": "2023-10-22T17:11:10.993430Z" + }, + { + "Value": "327095342cf7ce2f6a8a6debe0bdf05098d4d55a085811f54e1b39ecccdb4006", + "Algorithm": "BLAKE3", + "ChecksumDate": "2023-10-22T17:11:12.677294Z" + } + ], + "ContentDate": { + "Start": "2020-01-01T10:03:19.024000Z", + "End": "2020-01-01T10:03:19.024000Z" + }, + "Footprint": "geography'SRID=4326;POLYGON ((16.0782149856686 45.1472447519167, 14.9997455603619 45.1538372508924, 14.9997498470732 44.1653664955074, 15.6769327926967 44.1612979369474, 15.6991108602287 44.2167858643166, 15.7554867875956 44.3628715906462, 15.8142623440322 44.5085309180263, 15.8730460360232 44.6543501141074, 15.9347895068833 44.7994990900374, 15.9945464563278 44.9451356585531, 16.0546232507044 45.0907354115731, 16.0782149856686 45.1472447519167))'", + "GeoFootprint": { + "type": "Polygon", + "coordinates": [ + [ + [ + 16.0782149856686, + 45.1472447519167 + ], + [ + 14.9997455603619, + 45.1538372508924 + ], + [ + 14.9997498470732, + 44.1653664955074 + ], + [ + 15.6769327926967, + 44.1612979369474 + ], + [ + 15.6991108602287, + 44.2167858643166 + ], + [ + 15.7554867875956, + 44.3628715906462 + ], + [ + 15.8142623440322, + 44.5085309180263 + ], + [ + 15.8730460360232, + 44.6543501141074 + ], + [ + 15.9347895068833, + 44.7994990900374 + ], + [ + 15.9945464563278, + 44.9451356585531 + ], + [ + 16.0546232507044, + 45.0907354115731 + ], + [ + 16.0782149856686, + 45.1472447519167 + ] + ] + ] + } + }, + { + "@odata.mediaContentType": "application/octet-stream", + "Id": "e5bf1345-ec39-45f8-88d1-17f41cf5d2c7", + "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T33TVN_20230618T201545.SAFE", + "ContentType": "application/octet-stream", + "ContentLength": 1238606538, + "OriginDate": "2023-10-22T01:33:52.081000Z", + "PublicationDate": "2023-10-22T17:12:19.392303Z", + "ModificationDate": "2024-05-10T06:25:57.549943Z", + "Online": true, + "EvictionDate": "9999-12-31T23:59:59.999999Z", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T33TVN_20230618T201545.SAFE", + "Checksum": [ + { + "Value": "be25830c4078e9c19b9c7c3e4cfebf56", + "Algorithm": "MD5", + "ChecksumDate": "2023-10-22T17:12:30.394335Z" + }, + { + "Value": "1cedb8b470840172052f306d8df409497c9c140ba021d111b050e2f094d6e06b", + "Algorithm": "BLAKE3", + "ChecksumDate": "2023-10-22T17:12:33.026368Z" + } + ], + "ContentDate": { + "Start": "2020-01-01T10:03:19.024000Z", + "End": "2020-01-01T10:03:19.024000Z" + }, + "Footprint": "geography'SRID=4326;POLYGON ((13.6628652904457 47.8459148273097, 13.687588500476 46.8581759579721, 15.1280571611511 46.8656282477783, 15.1304703619168 47.8536277119106, 13.6628652904457 47.8459148273097))'", + "GeoFootprint": { + "type": "Polygon", + "coordinates": [ + [ + [ + 13.6628652904457, + 47.8459148273097 + ], + [ + 13.687588500476, + 46.8581759579721 + ], + [ + 15.1280571611511, + 46.8656282477783 + ], + [ + 15.1304703619168, + 47.8536277119106 + ], + [ + 13.6628652904457, + 47.8459148273097 + ] + ] + ] + } + }, + { + "@odata.mediaContentType": "application/octet-stream", + "Id": "480707cc-64f6-4f7a-8f7a-ddf9730eec2d", + "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T33UVS_20230618T201545.SAFE", + "ContentType": "application/octet-stream", + "ContentLength": 672877997, + "OriginDate": "2023-10-22T01:34:01.122000Z", + "PublicationDate": "2023-10-22T17:11:57.472768Z", + "ModificationDate": "2024-05-10T06:25:58.364614Z", + "Online": true, + "EvictionDate": "9999-12-31T23:59:59.999999Z", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T33UVS_20230618T201545.SAFE", + "Checksum": [ + { + "Value": "bd45ccbb7f6d18eae18f0bd07596b462", + "Algorithm": "MD5", + "ChecksumDate": "2023-10-22T17:12:05.789254Z" + }, + { + "Value": "742e884a54b79e980e12982ef547df3b4a91715173bda792f0387695535b6e38", + "Algorithm": "BLAKE3", + "ChecksumDate": "2023-10-22T17:12:07.238465Z" + } + ], + "ContentDate": { + "Start": "2020-01-01T10:03:19.024000Z", + "End": "2020-01-01T10:03:19.024000Z" + }, + "Footprint": "geography'SRID=4326;POLYGON ((14.1494371654362 50.458318220285, 15.1375124947581 50.4637171677759, 15.1404579576913 51.4510980782588, 14.5525902950555 51.4478412455164, 14.5048886364511 51.3331286678915, 14.4447289703514 51.187128727444, 14.385505493663 51.0409623202908, 14.3253371838065 50.8950990554032, 14.2660202782658 50.7491763042897, 14.2080406057963 50.6030842204579, 14.1494371654362 50.458318220285))'", + "GeoFootprint": { + "type": "Polygon", + "coordinates": [ + [ + [ + 14.1494371654362, + 50.458318220285 + ], + [ + 15.1375124947581, + 50.4637171677759 + ], + [ + 15.1404579576913, + 51.4510980782588 + ], + [ + 14.5525902950555, + 51.4478412455164 + ], + [ + 14.5048886364511, + 51.3331286678915 + ], + [ + 14.4447289703514, + 51.187128727444 + ], + [ + 14.385505493663, + 51.0409623202908 + ], + [ + 14.3253371838065, + 50.8950990554032 + ], + [ + 14.2660202782658, + 50.7491763042897 + ], + [ + 14.2080406057963, + 50.6030842204579 + ], + [ + 14.1494371654362, + 50.458318220285 + ] + ] + ] + } + }, + { + "@odata.mediaContentType": "application/octet-stream", + "Id": "130372c0-ccef-46be-b412-10f403e7d05f", + "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T32TQT_20230618T201545.SAFE", + "ContentType": "application/octet-stream", + "ContentLength": 163055185, + "OriginDate": "2023-10-22T01:45:45.605000Z", + "PublicationDate": "2023-10-22T17:22:48.936095Z", + "ModificationDate": "2024-05-10T06:26:12.044801Z", + "Online": true, + "EvictionDate": "9999-12-31T23:59:59.999999Z", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T32TQT_20230618T201545.SAFE", + "Checksum": [ + { + "Value": "7cdcdbe43aa82c41ce054ef6934b7ea1", + "Algorithm": "MD5", + "ChecksumDate": "2023-10-22T17:22:53.885347Z" + }, + { + "Value": "8a2e2e032fda4738e520d4bf9bf7c2759847849d4e93faf779abb7d1bc938024", + "Algorithm": "BLAKE3", + "ChecksumDate": "2023-10-22T17:22:54.382063Z" + } + ], + "ContentDate": { + "Start": "2020-01-01T10:03:19.024000Z", + "End": "2020-01-01T10:03:19.024000Z" + }, + "Footprint": "geography'SRID=4326;POLYGON ((12.7755244202316 46.8019548639754, 13.059029865045 46.7936706881961, 13.1352584752775 47.7791570723346, 13.1268261501253 47.7794073858359, 13.0897224271681 47.6798269998068, 13.0396981200084 47.5323313674094, 12.9849643080457 47.3861678494748, 12.9321437651775 47.2395729503938, 12.8814221817122 47.0925344089653, 12.8288913742369 46.9461381432327, 12.7755244202316 46.8019548639754))'", + "GeoFootprint": { + "type": "Polygon", + "coordinates": [ + [ + [ + 12.7755244202316, + 46.8019548639754 + ], + [ + 13.059029865045, + 46.7936706881961 + ], + [ + 13.1352584752775, + 47.7791570723346 + ], + [ + 13.1268261501253, + 47.7794073858359 + ], + [ + 13.0897224271681, + 47.6798269998068 + ], + [ + 13.0396981200084, + 47.5323313674094 + ], + [ + 12.9849643080457, + 47.3861678494748 + ], + [ + 12.9321437651775, + 47.2395729503938 + ], + [ + 12.8814221817122, + 47.0925344089653 + ], + [ + 12.8288913742369, + 46.9461381432327 + ], + [ + 12.7755244202316, + 46.8019548639754 + ] + ] + ] + } + }, + { + "@odata.mediaContentType": "application/octet-stream", + "Id": "b8b8bd4b-a427-4da1-8f38-19b5d0646910", + "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T32TQS_20230618T201545.SAFE", + "ContentType": "application/octet-stream", + "ContentLength": 398016857, + "OriginDate": "2023-10-22T01:45:53.633000Z", + "PublicationDate": "2023-10-22T17:27:35.781154Z", + "ModificationDate": "2024-05-10T06:26:16.956775Z", + "Online": true, + "EvictionDate": "9999-12-31T23:59:59.999999Z", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T32TQS_20230618T201545.SAFE", + "Checksum": [ + { + "Value": "afb388c1bd0a0271acb47fef4a94592d", + "Algorithm": "MD5", + "ChecksumDate": "2023-10-22T17:27:41.943104Z" + }, + { + "Value": "e6f20c274e58961db5d2a354ca797ea9b59cfefa24ed343c375da9ad28fd6b2c", + "Algorithm": "BLAKE3", + "ChecksumDate": "2023-10-22T17:27:43.080562Z" + } + ], + "ContentDate": { + "Start": "2020-01-01T10:03:19.024000Z", + "End": "2020-01-01T10:03:19.024000Z" + }, + "Footprint": "geography'SRID=4326;POLYGON ((12.4580071794698 45.9111376540946, 12.9930021665452 45.8957352519379, 13.0656571326958 46.8814596616377, 12.8077451723823 46.8890067445224, 12.7749039000931 46.8002783840249, 12.7241442615392 46.6536020442254, 12.6706425863048 46.5077223192748, 12.6204967644805 46.3608873381048, 12.5662137328109 46.2151474810842, 12.5143756426204 46.068677621216, 12.4619226131406 45.9223302408527, 12.4580071794698 45.9111376540946))'", + "GeoFootprint": { + "type": "Polygon", + "coordinates": [ + [ + [ + 12.4580071794698, + 45.9111376540946 + ], + [ + 12.9930021665452, + 45.8957352519379 + ], + [ + 13.0656571326958, + 46.8814596616377 + ], + [ + 12.8077451723823, + 46.8890067445224 + ], + [ + 12.7749039000931, + 46.8002783840249 + ], + [ + 12.7241442615392, + 46.6536020442254 + ], + [ + 12.6706425863048, + 46.5077223192748 + ], + [ + 12.6204967644805, + 46.3608873381048 + ], + [ + 12.5662137328109, + 46.2151474810842 + ], + [ + 12.5143756426204, + 46.068677621216 + ], + [ + 12.4619226131406, + 45.9223302408527 + ], + [ + 12.4580071794698, + 45.9111376540946 + ] + ] + ] + } + }, + { + "@odata.mediaContentType": "application/octet-stream", + "Id": "ba00fce8-8fc5-4f96-a2fc-2ebf8dda5ab4", + "Name": "S2A_MSIL2A_20200102T102421_N0500_R065_T32TPQ_20230505T004346.SAFE", + "ContentType": "application/octet-stream", + "ContentLength": 553738240, + "OriginDate": "2023-10-21T17:07:25.320000Z", + "PublicationDate": "2023-10-22T07:16:03.383675Z", + "ModificationDate": "2024-05-09T21:42:46.056222Z", + "Online": true, + "EvictionDate": "9999-12-31T23:59:59.999999Z", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/02/S2A_MSIL2A_20200102T102421_N0500_R065_T32TPQ_20230505T004346.SAFE", + "Checksum": [ + { + "Value": "e4c6be5dd5cd814a45f94b65885e376b", + "Algorithm": "MD5", + "ChecksumDate": "2023-10-22T07:16:10.366594Z" + }, + { + "Value": "c2c98e306a446dd75737bdddb18fe29f8142aec6c7455b11ce181f6d996103fe", + "Algorithm": "BLAKE3", + "ChecksumDate": "2023-10-22T07:16:11.856248Z" + } + ], + "ContentDate": { + "Start": "2020-01-02T10:24:21.024000Z", + "End": "2020-01-02T10:24:21.024000Z" + }, + "Footprint": "geography'SRID=4326;POLYGON ((11.0411590606528 45.1334815904547, 10.2720409677684 45.1467528555578, 10.2506169248015 44.1585207863936, 10.6406135705665 44.1519067748713, 10.6543194685486 44.1870009281757, 10.7141968074599 44.3323037683906, 10.773260367998 44.4777887352465, 10.8330147531357 44.6230734511932, 10.8922723786371 44.7685489768254, 10.9515158046297 44.9139937213494, 11.0108652367584 45.0594727154082, 11.0411590606528 45.1334815904547))'", + "GeoFootprint": { + "type": "Polygon", + "coordinates": [ + [ + [ + 11.0411590606528, + 45.1334815904547 + ], + [ + 10.2720409677684, + 45.1467528555578 + ], + [ + 10.2506169248015, + 44.1585207863936 + ], + [ + 10.6406135705665, + 44.1519067748713 + ], + [ + 10.6543194685486, + 44.1870009281757 + ], + [ + 10.7141968074599, + 44.3323037683906 + ], + [ + 10.773260367998, + 44.4777887352465 + ], + [ + 10.8330147531357, + 44.6230734511932 + ], + [ + 10.8922723786371, + 44.7685489768254 + ], + [ + 10.9515158046297, + 44.9139937213494 + ], + [ + 11.0108652367584, + 45.0594727154082 + ], + [ + 11.0411590606528, + 45.1334815904547 + ] + ] + ] + } + } + ], + "@odata.nextLink": "https://catalogue.dataspace.copernicus.eu/odata/v1/Products?%24filter=Collection%2FName+eq+%27SENTINEL-2%27+and+ContentDate%2FStart+ge+2020-01-01T00%3A00%3A00+and+ContentDate%2FStart+le+2020-01-20T00%3A00%3A00+and+Online+eq+true+and+Attributes%2FOData.CSC.DoubleAttribute%2Fany%28att%3Aatt%2FName+eq+%27cloudCover%27+and+att%2FOData.CSC.DoubleAttribute%2FValue+le+50%29+and+contains%28Name%2C+%27L2A%27%29+and+not+contains%28Name%2C+%27_N9999%27%29&%24top=20&%24skip=20" +} diff --git a/tests/test_odata.py b/tests/test_odata.py new file mode 100644 index 0000000..29c7650 --- /dev/null +++ b/tests/test_odata.py @@ -0,0 +1,28 @@ +from datetime import datetime + +from eodm.extract import extract_odata_products +from eodm.odata import ODataCollection, ODataProduct + + +def test_extract_odata_products(mock_odata_search): + url = "https://catalogue.dataspace.copernicus.eu/odata/v1/Products" + collections = [ODataCollection.SENTINEL_2] + datetime_range = (datetime(2020, 1, 1), datetime(2020, 1, 20)) + name_contains = "L2A" + name_not_contains = "_N9999" + cloud_cover_less_than = 50 + + products = list( + extract_odata_products( + url=url, + collections=collections, + datetime=datetime_range, + name_contains=name_contains, + name_not_contains=name_not_contains, + cloud_cover_less_than=cloud_cover_less_than, + ) + ) + + assert len(products) == 20 + assert all(isinstance(product, ODataProduct) for product in products) + assert all(product.name for product in products) From 09f607a82144f8d6c8734552b442a740991c7c6d Mon Sep 17 00:00:00 2001 From: jankovicgd Date: Tue, 24 Jun 2025 13:07:17 +0200 Subject: [PATCH 4/6] fix: polygon and odata nextlink --- src/eodm/odata.py | 4 ++-- tests/test_odata.py | 24 ++++++++++++++++++++++-- 2 files changed, 24 insertions(+), 4 deletions(-) diff --git a/src/eodm/odata.py b/src/eodm/odata.py index 3590f8c..793890a 100644 --- a/src/eodm/odata.py +++ b/src/eodm/odata.py @@ -57,7 +57,7 @@ class ODataProduct(BaseModel): class ODataResult(BaseModel): odata_context: Annotated[str, Field(alias="@odata.context")] value: list[ODataProduct] - odata_nextlink: Annotated[str, Field(alias="@odata.nextLink")] + odata_nextlink: Annotated[str | None, Field(alias="@odata.nextLink")] = None class ODataQuery: @@ -101,7 +101,7 @@ def to_params(self) -> dict: ) if self.intersect_geometry: query.append( - f"OData.CSC.Intersects(area=geography'SRID=4326;{self.intersect_geometry.wkt})" + f"intersects(area=geography'SRID=4326;{self.intersect_geometry.wkt}')" ) if self.online: query.append("Online eq true") diff --git a/tests/test_odata.py b/tests/test_odata.py index 29c7650..361203b 100644 --- a/tests/test_odata.py +++ b/tests/test_odata.py @@ -2,14 +2,33 @@ from eodm.extract import extract_odata_products from eodm.odata import ODataCollection, ODataProduct +from geojson_pydantic import Feature -def test_extract_odata_products(mock_odata_search): +def test_extract_odata_products(): # mock_odata_search): url = "https://catalogue.dataspace.copernicus.eu/odata/v1/Products" collections = [ODataCollection.SENTINEL_2] datetime_range = (datetime(2020, 1, 1), datetime(2020, 1, 20)) name_contains = "L2A" name_not_contains = "_N9999" + intersect_feature = Feature( + **{ + "type": "Feature", + "properties": {}, + "geometry": { + "coordinates": [ + [ + [15.56245005769594, 47.7835662401493], + [17.0294655088245, 47.7835662401493], + [17.0294655088245, 48.435089489798344], + [15.56245005769594, 48.435089489798344], + [15.56245005769594, 47.7835662401493], + ] + ], + "type": "Polygon", + }, + } + ) cloud_cover_less_than = 50 products = list( @@ -17,12 +36,13 @@ def test_extract_odata_products(mock_odata_search): url=url, collections=collections, datetime=datetime_range, + intersect_geometry=intersect_feature.geometry, name_contains=name_contains, name_not_contains=name_not_contains, cloud_cover_less_than=cloud_cover_less_than, ) ) - assert len(products) == 20 + assert len(products) == 18 assert all(isinstance(product, ODataProduct) for product in products) assert all(product.name for product in products) From 137b29c8cbcc8cb3973395e8010a53383c0b8b4d Mon Sep 17 00:00:00 2001 From: jankovicgd Date: Tue, 24 Jun 2025 13:12:40 +0200 Subject: [PATCH 5/6] fix: used odata mock --- tests/data/odata.json | 1285 +++++++++++++++++++---------------------- tests/test_odata.py | 2 +- 2 files changed, 588 insertions(+), 699 deletions(-) diff --git a/tests/data/odata.json b/tests/data/odata.json index dd563d6..f8e17c3 100644 --- a/tests/data/odata.json +++ b/tests/data/odata.json @@ -3,80 +3,88 @@ "value": [ { "@odata.mediaContentType": "application/octet-stream", - "Id": "7bc897ad-8356-4ac3-bc84-a30d944e0f4d", - "Name": "S2A_MSIL2A_20200119T134641_N0500_R024_T23PLN_20231104T181840.SAFE", + "Id": "6a7b999d-1ec3-4149-89de-a80af429b7ea", + "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T33TXN_20230618T201545.SAFE", "ContentType": "application/octet-stream", - "ContentLength": 147344406, - "OriginDate": "2024-01-12T13:40:23.489000Z", - "PublicationDate": "2024-08-12T14:20:00.131255Z", - "ModificationDate": "2024-08-12T14:20:10.428123Z", + "ContentLength": 609162793, + "OriginDate": "2023-10-22T01:33:55.166000Z", + "PublicationDate": "2023-10-22T17:13:03.600113Z", + "ModificationDate": "2024-05-07T18:35:15.922185Z", "Online": true, "EvictionDate": "9999-12-31T23:59:59.999999Z", - "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/19/S2A_MSIL2A_20200119T134641_N0500_R024_T23PLN_20231104T181840.SAFE", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T33TXN_20230618T201545.SAFE", "Checksum": [ { - "Value": "0aaa55d039769ec79f5dea4ece182185", + "Value": "035a4da8c5aff74ece4412f688901e14", "Algorithm": "MD5", - "ChecksumDate": "2024-08-12T14:20:08.836341Z" + "ChecksumDate": "2023-10-22T17:13:11.184141Z" }, { - "Value": "9157287377e2b0b435d0ba20e0340a50b8e7d926458d670808c06a79d5bcd6fa", + "Value": "3134d6657d419e92e897a2fb90ef6158c3449c04a70cd7cacd56fd1d69347089", "Algorithm": "BLAKE3", - "ChecksumDate": "2024-08-12T14:20:09.099114Z" + "ChecksumDate": "2023-10-22T17:13:12.491115Z" } ], "ContentDate": { - "Start": "2020-01-19T13:46:41.024000Z", - "End": "2020-01-19T13:46:41.024000Z" + "Start": "2020-01-01T10:03:19.024000Z", + "End": "2020-01-01T10:03:19.024000Z" }, - "Footprint": "geography'SRID=4326;POLYGON ((-46.5850178086461 11.755309362056, -46.8353009816729 11.7541413255448, -46.8290217985357 10.7616374708718, -46.8142744967324 10.7617005589042, -46.7876783537495 10.8767979099628, -46.7533372507438 11.0253853037137, -46.7190161960242 11.1739394236192, -46.684711890207 11.3224442367124, -46.6504578252112 11.4708601550945, -46.616282811082 11.6192005964567, -46.5850178086461 11.755309362056))'", + "Footprint": "geography'SRID=4326;POLYGON ((17.2336839042634 47.829740377122, 16.3366002199701 47.8459210520889, 16.3118868855124 46.8581819724645, 16.8000672917402 46.8495140950594, 16.8572847164702 46.9795452504087, 16.9208571798849 47.1246582566163, 16.9600839413645 47.2135726083137, 16.9843364306387 47.2686843221943, 17.0483192159833 47.4136014182965, 17.0762398739841 47.4764988167838, 17.1129664444431 47.5594762327457, 17.1774266379774 47.7043826107559, 17.2336839042634 47.829740377122))'", "GeoFootprint": { "type": "Polygon", "coordinates": [ [ [ - -46.5850178086461, - 11.755309362056 + 17.2336839042634, + 47.829740377122 ], [ - -46.8353009816729, - 11.7541413255448 + 16.3366002199701, + 47.8459210520889 ], [ - -46.8290217985357, - 10.7616374708718 + 16.3118868855124, + 46.8581819724645 ], [ - -46.8142744967324, - 10.7617005589042 + 16.8000672917402, + 46.8495140950594 ], [ - -46.7876783537495, - 10.8767979099628 + 16.8572847164702, + 46.9795452504087 ], [ - -46.7533372507438, - 11.0253853037137 + 16.9208571798849, + 47.1246582566163 ], [ - -46.7190161960242, - 11.1739394236192 + 16.9600839413645, + 47.2135726083137 ], [ - -46.684711890207, - 11.3224442367124 + 16.9843364306387, + 47.2686843221943 ], [ - -46.6504578252112, - 11.4708601550945 + 17.0483192159833, + 47.4136014182965 ], [ - -46.616282811082, - 11.6192005964567 + 17.0762398739841, + 47.4764988167838 ], [ - -46.5850178086461, - 11.755309362056 + 17.1129664444431, + 47.5594762327457 + ], + [ + 17.1774266379774, + 47.7043826107559 + ], + [ + 17.2336839042634, + 47.829740377122 ] ] ] @@ -84,56 +92,56 @@ }, { "@odata.mediaContentType": "application/octet-stream", - "Id": "667a4ac1-7d0e-4a57-98c2-7905af5ccc2b", - "Name": "S2A_MSIL2A_20200119T134641_N0500_R024_T23QKV_20231104T181840.SAFE", + "Id": "09fb6b18-9491-4a9b-a654-0f67047e854d", + "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T33UWP_20230618T201545.SAFE", "ContentType": "application/octet-stream", - "ContentLength": 782469987, - "OriginDate": "2024-01-12T13:41:34.019000Z", - "PublicationDate": "2024-08-12T14:22:18.351444Z", - "ModificationDate": "2024-08-12T14:22:28.311573Z", + "ContentLength": 1199485654, + "OriginDate": "2023-10-22T01:34:22.882000Z", + "PublicationDate": "2023-10-22T17:10:07.189326Z", + "ModificationDate": "2024-05-10T06:25:55.606561Z", "Online": true, "EvictionDate": "9999-12-31T23:59:59.999999Z", - "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/19/S2A_MSIL2A_20200119T134641_N0500_R024_T23QKV_20231104T181840.SAFE", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T33UWP_20230618T201545.SAFE", "Checksum": [ { - "Value": "d14b3523e1941500b93c305361844cea", + "Value": "acde32ce85687abdffd36d844fdedce8", "Algorithm": "MD5", - "ChecksumDate": "2024-08-12T14:22:26.888441Z" + "ChecksumDate": "2023-10-22T17:10:17.581386Z" }, { - "Value": "3bfebfe33a92183d8d9b66f30e8a5c2f464454b322c22732d82f023eeb53fc5d", + "Value": "ad65ba09c3e7ceda66141f5de1dace962bfbf519dba2bb54fa8cc9686ef32dca", "Algorithm": "BLAKE3", - "ChecksumDate": "2024-08-12T14:22:28.169076Z" + "ChecksumDate": "2023-10-22T17:10:20.148316Z" } ], "ContentDate": { - "Start": "2020-01-19T13:46:41.024000Z", - "End": "2020-01-19T13:46:41.024000Z" + "Start": "2020-01-01T10:03:19.024000Z", + "End": "2020-01-01T10:03:19.024000Z" }, - "Footprint": "geography'SRID=4326;POLYGON ((-47.8342029540396 18.0682566693715, -47.8187974914905 17.0769850336, -46.7876573431634 17.0887025550132, -46.797436866379 18.0806986962921, -47.8342029540396 18.0682566693715))'", + "Footprint": "geography'SRID=4326;POLYGON ((14.9997279041062 48.7530130044756, 14.9997330963449 47.7651665667219, 16.4647868669399 47.7558186458081, 16.4932694755772 48.7433372246506, 14.9997279041062 48.7530130044756))'", "GeoFootprint": { "type": "Polygon", "coordinates": [ [ [ - -47.8342029540396, - 18.0682566693715 + 14.9997279041062, + 48.7530130044756 ], [ - -47.8187974914905, - 17.0769850336 + 14.9997330963449, + 47.7651665667219 ], [ - -46.7876573431634, - 17.0887025550132 + 16.4647868669399, + 47.7558186458081 ], [ - -46.797436866379, - 18.0806986962921 + 16.4932694755772, + 48.7433372246506 ], [ - -47.8342029540396, - 18.0682566693715 + 14.9997279041062, + 48.7530130044756 ] ] ] @@ -141,56 +149,56 @@ }, { "@odata.mediaContentType": "application/octet-stream", - "Id": "e88830cb-ea3b-4b9d-b724-62f5678cdeb2", - "Name": "S2A_MSIL2A_20200119T134641_N0500_R024_T21LZD_20231104T181840.SAFE", + "Id": "e6162844-d274-4c49-b0f3-292d63a674dd", + "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T33TWN_20230618T201545.SAFE", "ContentType": "application/octet-stream", - "ContentLength": 1106751365, - "OriginDate": "2024-01-12T14:15:54.432000Z", - "PublicationDate": "2024-08-12T14:22:47.000106Z", - "ModificationDate": "2024-08-12T14:22:59.956709Z", + "ContentLength": 1210847910, + "OriginDate": "2023-10-22T01:33:34.992000Z", + "PublicationDate": "2023-10-22T17:10:02.294908Z", + "ModificationDate": "2024-05-10T06:25:55.515371Z", "Online": true, "EvictionDate": "9999-12-31T23:59:59.999999Z", - "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/19/S2A_MSIL2A_20200119T134641_N0500_R024_T21LZD_20231104T181840.SAFE", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T33TWN_20230618T201545.SAFE", "Checksum": [ { - "Value": "cd1c6beb7b9cc8797b82cc8ba43f24cf", + "Value": "05c79c5b089fef75bfc1b14e6e5b0a58", "Algorithm": "MD5", - "ChecksumDate": "2024-08-12T14:22:57.491630Z" + "ChecksumDate": "2023-10-22T17:10:12.641196Z" }, { - "Value": "cb78cd0fc83ff345ca98f3269ffe20ac090ecc79fda56378bbdff08b80a4795d", + "Value": "a91cf99a3467d5ffb7c15ddf0907a4f454b606cb2a1e45938f16d94ad5326133", "Algorithm": "BLAKE3", - "ChecksumDate": "2024-08-12T14:22:59.814526Z" + "ChecksumDate": "2023-10-22T17:10:15.265251Z" } ], "ContentDate": { - "Start": "2020-01-19T13:46:41.024000Z", - "End": "2020-01-19T13:46:41.024000Z" + "Start": "2020-01-01T10:03:19.024000Z", + "End": "2020-01-01T10:03:19.024000Z" }, - "Footprint": "geography'SRID=4326;POLYGON ((-54.2175605020025 -14.4558376567214, -54.2047420330869 -15.4473859427882, -53.1830210574259 -15.4321444453535, -53.200501070593 -14.4416170629181, -54.2175605020025 -14.4558376567214))'", + "Footprint": "geography'SRID=4326;POLYGON ((14.9997326423426 47.8537018424875, 14.9997375874494 46.8656998733542, 16.44014982441 46.8566398819074, 16.4672773767682 47.8443250465141, 14.9997326423426 47.8537018424875))'", "GeoFootprint": { "type": "Polygon", "coordinates": [ [ [ - -54.2175605020025, - -14.4558376567214 + 14.9997326423426, + 47.8537018424875 ], [ - -54.2047420330869, - -15.4473859427882 + 14.9997375874494, + 46.8656998733542 ], [ - -53.1830210574259, - -15.4321444453535 + 16.44014982441, + 46.8566398819074 ], [ - -53.200501070593, - -14.4416170629181 + 16.4672773767682, + 47.8443250465141 ], [ - -54.2175605020025, - -14.4558376567214 + 14.9997326423426, + 47.8537018424875 ] ] ] @@ -198,64 +206,80 @@ }, { "@odata.mediaContentType": "application/octet-stream", - "Id": "3b08c4fb-ce8b-4ebe-9dcc-31415d1a5d27", - "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T33TUL_20230618T201545.SAFE", + "Id": "239e4f90-bae7-4d38-8101-833620b6e445", + "Name": "S2B_MSIL2A_20200108T095309_N0500_R079_T33UWP_20230625T151949.SAFE", "ContentType": "application/octet-stream", - "ContentLength": 1046306886, - "OriginDate": "2023-10-22T01:33:30.029000Z", - "PublicationDate": "2023-10-22T17:09:34.431118Z", - "ModificationDate": "2024-05-10T17:43:02.450027Z", + "ContentLength": 594798475, + "OriginDate": "2023-10-23T16:48:50.324000Z", + "PublicationDate": "2023-10-24T15:15:03.190086Z", + "ModificationDate": "2024-05-09T22:30:18.474118Z", "Online": true, "EvictionDate": "9999-12-31T23:59:59.999999Z", - "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T33TUL_20230618T201545.SAFE", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/08/S2B_MSIL2A_20200108T095309_N0500_R079_T33UWP_20230625T151949.SAFE", "Checksum": [ { - "Value": "e3b838404aa2aca2b568d2058e36e2ea", + "Value": "d2a0f56b324254c39773a72facfea931", "Algorithm": "MD5", - "ChecksumDate": "2023-11-21T10:59:42.119295Z" + "ChecksumDate": "2023-10-24T15:15:11.522078Z" }, { - "Value": "125dfcfcd47f27ae7aecc6f73e128723f3ac07e85cb1b0d96665d5ec1d97327b", + "Value": "88e543845684da523e3541d8035697f519fb403d48ac4d02a3d87ea48d5868c1", "Algorithm": "BLAKE3", - "ChecksumDate": "2023-11-21T10:59:45.024769Z" + "ChecksumDate": "2023-10-24T15:15:12.838224Z" } ], "ContentDate": { - "Start": "2020-01-01T10:03:19.024000Z", - "End": "2020-01-01T10:03:19.024000Z" + "Start": "2020-01-08T09:53:09.024000Z", + "End": "2020-01-08T09:53:09.024000Z" }, - "Footprint": "geography'SRID=4326;POLYGON ((12.4253221864627 45.8177049335653, 12.4607857930012 45.0370231168043, 13.8543654645203 45.0595136000494, 13.8341080897223 46.0476276229589, 12.4989776608378 46.0257162456937, 12.4619226131406 45.9223302408527, 12.4253221864627 45.8177049335653))'", + "Footprint": "geography'SRID=4326;POLYGON ((15.6393372379527 47.7610855090489, 16.4647868669399 47.7558186458081, 16.4932694755772 48.7433372246506, 16.0048399385611 48.7465014731392, 15.9556396836027 48.6151030714214, 15.9003652718623 48.4688915703488, 15.8452584004835 48.3226487363508, 15.7910774315634 48.1761737026552, 15.7369834952033 48.0297483956691, 15.6835510958982 47.8832082920933, 15.6393372379527 47.7610855090489))'", "GeoFootprint": { "type": "Polygon", "coordinates": [ [ [ - 12.4253221864627, - 45.8177049335653 + 15.6393372379527, + 47.7610855090489 ], [ - 12.4607857930012, - 45.0370231168043 + 16.4647868669399, + 47.7558186458081 + ], + [ + 16.4932694755772, + 48.7433372246506 + ], + [ + 16.0048399385611, + 48.7465014731392 + ], + [ + 15.9556396836027, + 48.6151030714214 + ], + [ + 15.9003652718623, + 48.4688915703488 ], [ - 13.8543654645203, - 45.0595136000494 + 15.8452584004835, + 48.3226487363508 ], [ - 13.8341080897223, - 46.0476276229589 + 15.7910774315634, + 48.1761737026552 ], [ - 12.4989776608378, - 46.0257162456937 + 15.7369834952033, + 48.0297483956691 ], [ - 12.4619226131406, - 45.9223302408527 + 15.6835510958982, + 47.8832082920933 ], [ - 12.4253221864627, - 45.8177049335653 + 15.6393372379527, + 47.7610855090489 ] ] ] @@ -263,88 +287,92 @@ }, { "@odata.mediaContentType": "application/octet-stream", - "Id": "6a7b999d-1ec3-4149-89de-a80af429b7ea", - "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T33TXN_20230618T201545.SAFE", + "Id": "1ccdde6e-4200-45d8-a314-c9642a259f3c", + "Name": "S2A_MSIL2A_20200106T100401_N0500_R122_T33UXP_20230422T061153.SAFE", "ContentType": "application/octet-stream", - "ContentLength": 609162793, - "OriginDate": "2023-10-22T01:33:55.166000Z", - "PublicationDate": "2023-10-22T17:13:03.600113Z", - "ModificationDate": "2024-05-07T18:35:15.922185Z", + "ContentLength": 890069769, + "OriginDate": "2023-10-21T14:56:57.700000Z", + "PublicationDate": "2023-10-22T04:53:44.186636Z", + "ModificationDate": "2024-05-09T21:38:54.763463Z", "Online": true, "EvictionDate": "9999-12-31T23:59:59.999999Z", - "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T33TXN_20230618T201545.SAFE", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/06/S2A_MSIL2A_20200106T100401_N0500_R122_T33UXP_20230422T061153.SAFE", "Checksum": [ { - "Value": "035a4da8c5aff74ece4412f688901e14", + "Value": "28647b804d788964a7578d098d6315dc", "Algorithm": "MD5", - "ChecksumDate": "2023-10-22T17:13:11.184141Z" + "ChecksumDate": "2023-10-22T04:53:52.905237Z" }, { - "Value": "3134d6657d419e92e897a2fb90ef6158c3449c04a70cd7cacd56fd1d69347089", + "Value": "c519fcc231355deb46bbf1d2bc5af7036d96dfffe659937e0ff868d82c8bfe87", "Algorithm": "BLAKE3", - "ChecksumDate": "2023-10-22T17:13:12.491115Z" + "ChecksumDate": "2023-10-22T04:53:54.783875Z" } ], "ContentDate": { - "Start": "2020-01-01T10:03:19.024000Z", - "End": "2020-01-01T10:03:19.024000Z" + "Start": "2020-01-06T10:04:01.024000Z", + "End": "2020-01-06T10:04:01.024000Z" }, - "Footprint": "geography'SRID=4326;POLYGON ((17.2336839042634 47.829740377122, 16.3366002199701 47.8459210520889, 16.3118868855124 46.8581819724645, 16.8000672917402 46.8495140950594, 16.8572847164702 46.9795452504087, 16.9208571798849 47.1246582566163, 16.9600839413645 47.2135726083137, 16.9843364306387 47.2686843221943, 17.0483192159833 47.4136014182965, 17.0762398739841 47.4764988167838, 17.1129664444431 47.5594762327457, 17.1774266379774 47.7043826107559, 17.2336839042634 47.829740377122))'", + "Footprint": "geography'SRID=4326;POLYGON ((17.6468514477348 48.721454634099, 16.3602792462837 48.7449841116978, 16.3343313489668 47.7574097373474, 17.1991857657058 47.7418320068618, 17.2219760106321 47.792224341334, 17.2881193403055 47.9371876551025, 17.3541563276349 48.0821312110422, 17.4201186872331 48.2269985039551, 17.486383828653 48.37180412591, 17.5528565086633 48.5165521869992, 17.6099806120847 48.641260822878, 17.6190615955206 48.661203866567, 17.636729773245 48.6994673745006, 17.6468514477348 48.721454634099))'", "GeoFootprint": { "type": "Polygon", "coordinates": [ [ [ - 17.2336839042634, - 47.829740377122 + 17.6468514477348, + 48.721454634099 ], [ - 16.3366002199701, - 47.8459210520889 + 16.3602792462837, + 48.7449841116978 ], [ - 16.3118868855124, - 46.8581819724645 + 16.3343313489668, + 47.7574097373474 ], [ - 16.8000672917402, - 46.8495140950594 + 17.1991857657058, + 47.7418320068618 ], [ - 16.8572847164702, - 46.9795452504087 + 17.2219760106321, + 47.792224341334 ], [ - 16.9208571798849, - 47.1246582566163 + 17.2881193403055, + 47.9371876551025 ], [ - 16.9600839413645, - 47.2135726083137 + 17.3541563276349, + 48.0821312110422 ], [ - 16.9843364306387, - 47.2686843221943 + 17.4201186872331, + 48.2269985039551 ], [ - 17.0483192159833, - 47.4136014182965 + 17.486383828653, + 48.37180412591 ], [ - 17.0762398739841, - 47.4764988167838 + 17.5528565086633, + 48.5165521869992 ], [ - 17.1129664444431, - 47.5594762327457 + 17.6099806120847, + 48.641260822878 ], [ - 17.1774266379774, - 47.7043826107559 + 17.6190615955206, + 48.661203866567 ], [ - 17.2336839042634, - 47.829740377122 + 17.636729773245, + 48.6994673745006 + ], + [ + 17.6468514477348, + 48.721454634099 ] ] ] @@ -352,56 +380,56 @@ }, { "@odata.mediaContentType": "application/octet-stream", - "Id": "4f271f35-f1c9-4924-8cf6-4834723f8d88", - "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T33TVK_20230618T201545.SAFE", + "Id": "9b118d8a-5d03-47a9-b42e-ce7e70b757a1", + "Name": "S2B_MSIL2A_20200111T100259_N0500_R122_T33TWN_20230612T042427.SAFE", "ContentType": "application/octet-stream", - "ContentLength": 961411557, - "OriginDate": "2023-10-22T01:34:01.062000Z", - "PublicationDate": "2023-10-22T17:13:37.756880Z", - "ModificationDate": "2024-05-07T18:35:16.061679Z", + "ContentLength": 1165876674, + "OriginDate": "2023-10-25T03:03:40.445000Z", + "PublicationDate": "2023-10-26T01:41:23.984072Z", + "ModificationDate": "2024-05-09T22:54:09.610720Z", "Online": true, "EvictionDate": "9999-12-31T23:59:59.999999Z", - "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T33TVK_20230618T201545.SAFE", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/11/S2B_MSIL2A_20200111T100259_N0500_R122_T33TWN_20230612T042427.SAFE", "Checksum": [ { - "Value": "a480fe5b1d8722372fd8e524ac2907e0", + "Value": "e02a56b340ea956ad98d4f1281f78a06", "Algorithm": "MD5", - "ChecksumDate": "2023-10-22T17:13:47.077309Z" + "ChecksumDate": "2023-10-26T01:41:34.993036Z" }, { - "Value": "fe4099e891c5cae9084fe11c871d7edb86bf1026398f2407a143f1b330a5fb25", + "Value": "aedebfebcd1d27e5dcc38c9421a26af6c8f4f5d7af57e865433d5d3b4e5e1fe3", "Algorithm": "BLAKE3", - "ChecksumDate": "2023-10-22T17:13:49.108410Z" + "ChecksumDate": "2023-10-26T01:41:38.178757Z" } ], "ContentDate": { - "Start": "2020-01-01T10:03:19.024000Z", - "End": "2020-01-01T10:03:19.024000Z" + "Start": "2020-01-11T10:02:59.024000Z", + "End": "2020-01-11T10:02:59.024000Z" }, - "Footprint": "geography'SRID=4326;POLYGON ((13.7274503416686 45.1467471878356, 13.7488829466404 44.1585153096049, 15.1220744909361 44.1653012748966, 15.1241663971878 45.153769755991, 13.7274503416686 45.1467471878356))'", + "Footprint": "geography'SRID=4326;POLYGON ((14.9997326423426 47.8537018424875, 14.9997375874494 46.8656998733542, 16.44014982441 46.8566398819074, 16.4672773767682 47.8443250465141, 14.9997326423426 47.8537018424875))'", "GeoFootprint": { "type": "Polygon", "coordinates": [ [ [ - 13.7274503416686, - 45.1467471878356 + 14.9997326423426, + 47.8537018424875 ], [ - 13.7488829466404, - 44.1585153096049 + 14.9997375874494, + 46.8656998733542 ], [ - 15.1220744909361, - 44.1653012748966 + 16.44014982441, + 46.8566398819074 ], [ - 15.1241663971878, - 45.153769755991 + 16.4672773767682, + 47.8443250465141 ], [ - 13.7274503416686, - 45.1467471878356 + 14.9997326423426, + 47.8537018424875 ] ] ] @@ -409,137 +437,84 @@ }, { "@odata.mediaContentType": "application/octet-stream", - "Id": "eed83c60-8249-4508-8e99-4de71402123b", - "Name": "S2A_MSIL2A_20200101T105441_N0500_R051_T31UGT_20230502T015741.SAFE", + "Id": "e582011c-013f-4879-a443-f4ae01e73b54", + "Name": "S2A_MSIL2A_20200106T100401_N0500_R122_T33TXN_20230422T061153.SAFE", "ContentType": "application/octet-stream", - "ContentLength": 558221330, - "OriginDate": "2023-10-21T08:50:37.504000Z", - "PublicationDate": "2023-10-21T21:53:12.965122Z", - "ModificationDate": "2024-05-09T21:28:06.083568Z", + "ContentLength": 620404678, + "OriginDate": "2023-10-21T15:08:44.572000Z", + "PublicationDate": "2023-10-22T04:58:01.794627Z", + "ModificationDate": "2024-05-09T21:38:59.825888Z", "Online": true, "EvictionDate": "9999-12-31T23:59:59.999999Z", - "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2A_MSIL2A_20200101T105441_N0500_R051_T31UGT_20230502T015741.SAFE", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/06/S2A_MSIL2A_20200106T100401_N0500_R122_T33TXN_20230422T061153.SAFE", "Checksum": [ { - "Value": "7868a261936673e68dcadfdf04ed62d6", + "Value": "69170ee8eaffa2d6b49c576313e35505", "Algorithm": "MD5", - "ChecksumDate": "2023-10-21T21:53:20.386555Z" + "ChecksumDate": "2023-10-22T04:58:10.092068Z" }, { - "Value": "764ab6d52e02a299a6e715cf5a05e68d375a478df2fbe78300e405bdbe026d4e", + "Value": "0019a7a2665c22b7b126d1437d44567aee3b41ac53d929b4cc287e2608a3eb54", "Algorithm": "BLAKE3", - "ChecksumDate": "2023-10-21T21:53:21.989176Z" + "ChecksumDate": "2023-10-22T04:58:11.955166Z" } ], "ContentDate": { - "Start": "2020-01-01T10:54:41.024000Z", - "End": "2020-01-01T10:54:41.024000Z" + "Start": "2020-01-06T10:04:01.024000Z", + "End": "2020-01-06T10:04:01.024000Z" }, - "Footprint": "geography'SRID=4326;POLYGON ((6.83650553892272 52.2854281875178, 5.93361576580916 52.314037804793, 5.87021576413204 51.328067311214, 6.32838799454916 51.3137433380772, 6.3913392102051 51.4356663764307, 6.46568372685877 51.579664130347, 6.54054754127362 51.7235443402331, 6.61551375033192 51.867402959726, 6.69084806276855 52.0112044755278, 6.7668965489842 52.1550021397433, 6.83650553892272 52.2854281875178))'", + "Footprint": "geography'SRID=4326;POLYGON ((17.2390495317073 47.82964359744, 16.3366002199701 47.8459210520889, 16.3118868855124 46.8581819724645, 16.8040960965018 46.8494425616973, 16.8355280088746 46.9221333986721, 16.8988310179161 47.0671699124874, 16.9628527568496 47.2121300843441, 17.0270650973019 47.3571402296377, 17.091495081771 47.5021675970775, 17.1563957598192 47.6472174778964, 17.2219760106321 47.792224341334, 17.2390495317073 47.82964359744))'", "GeoFootprint": { "type": "Polygon", "coordinates": [ [ [ - 6.83650553892272, - 52.2854281875178 + 17.2390495317073, + 47.82964359744 ], [ - 5.93361576580916, - 52.314037804793 + 16.3366002199701, + 47.8459210520889 ], [ - 5.87021576413204, - 51.328067311214 + 16.3118868855124, + 46.8581819724645 ], [ - 6.32838799454916, - 51.3137433380772 + 16.8040960965018, + 46.8494425616973 ], [ - 6.3913392102051, - 51.4356663764307 + 16.8355280088746, + 46.9221333986721 ], [ - 6.46568372685877, - 51.579664130347 + 16.8988310179161, + 47.0671699124874 ], [ - 6.54054754127362, - 51.7235443402331 + 16.9628527568496, + 47.2121300843441 ], [ - 6.61551375033192, - 51.867402959726 + 17.0270650973019, + 47.3571402296377 ], [ - 6.69084806276855, - 52.0112044755278 + 17.091495081771, + 47.5021675970775 ], [ - 6.7668965489842, - 52.1550021397433 + 17.1563957598192, + 47.6472174778964 ], [ - 6.83650553892272, - 52.2854281875178 - ] - ] - ] - } - }, - { - "@odata.mediaContentType": "application/octet-stream", - "Id": "31b6a92c-3088-40cb-b9a4-decde70e4fbe", - "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T33UWR_20230618T201545.SAFE", - "ContentType": "application/octet-stream", - "ContentLength": 1196172971, - "OriginDate": "2023-10-22T01:33:26.587000Z", - "PublicationDate": "2023-10-22T17:08:59.594403Z", - "ModificationDate": "2024-05-10T06:25:55.217150Z", - "Online": true, - "EvictionDate": "9999-12-31T23:59:59.999999Z", - "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T33UWR_20230618T201545.SAFE", - "Checksum": [ - { - "Value": "485d47187199a4d80fffd2c57aadd0ee", - "Algorithm": "MD5", - "ChecksumDate": "2023-10-22T17:09:09.459402Z" - }, - { - "Value": "f21235cd0e814488e4e263759340e0c1f326b4a9469229bfdec23a993f015299", - "Algorithm": "BLAKE3", - "ChecksumDate": "2023-10-22T17:09:12.024716Z" - } - ], - "ContentDate": { - "Start": "2020-01-01T10:03:19.024000Z", - "End": "2020-01-01T10:03:19.024000Z" - }, - "Footprint": "geography'SRID=4326;POLYGON ((14.9997176844921 50.5522921106257, 14.9997234206969 49.5647550000065, 16.5178631275449 49.5548000572817, 16.5493281467359 50.5419848180733, 14.9997176844921 50.5522921106257))'", - "GeoFootprint": { - "type": "Polygon", - "coordinates": [ - [ - [ - 14.9997176844921, - 50.5522921106257 - ], - [ - 14.9997234206969, - 49.5647550000065 + 17.2219760106321, + 47.792224341334 ], [ - 16.5178631275449, - 49.5548000572817 - ], - [ - 16.5493281467359, - 50.5419848180733 - ], - [ - 14.9997176844921, - 50.5522921106257 + 17.2390495317073, + 47.82964359744 ] ] ] @@ -547,31 +522,31 @@ }, { "@odata.mediaContentType": "application/octet-stream", - "Id": "09fb6b18-9491-4a9b-a654-0f67047e854d", - "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T33UWP_20230618T201545.SAFE", + "Id": "347fcdbf-d81e-46e2-880a-aa7017aa8e49", + "Name": "S2B_MSIL2A_20200111T100259_N0500_R122_T33UWP_20230612T042427.SAFE", "ContentType": "application/octet-stream", - "ContentLength": 1199485654, - "OriginDate": "2023-10-22T01:34:22.882000Z", - "PublicationDate": "2023-10-22T17:10:07.189326Z", - "ModificationDate": "2024-05-10T06:25:55.606561Z", + "ContentLength": 1126049530, + "OriginDate": "2023-10-25T02:56:38.024000Z", + "PublicationDate": "2023-10-26T01:37:39.468376Z", + "ModificationDate": "2024-05-09T22:54:05.141426Z", "Online": true, "EvictionDate": "9999-12-31T23:59:59.999999Z", - "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T33UWP_20230618T201545.SAFE", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/11/S2B_MSIL2A_20200111T100259_N0500_R122_T33UWP_20230612T042427.SAFE", "Checksum": [ { - "Value": "acde32ce85687abdffd36d844fdedce8", + "Value": "bacd3503287c4fd1fe1d8a9ad352861e", "Algorithm": "MD5", - "ChecksumDate": "2023-10-22T17:10:17.581386Z" + "ChecksumDate": "2023-10-26T01:37:50.242341Z" }, { - "Value": "ad65ba09c3e7ceda66141f5de1dace962bfbf519dba2bb54fa8cc9686ef32dca", + "Value": "f545dec7d90683d48cc4b201d00185974d6e5108e7a22e73d4d1fa5bf5d02b3c", "Algorithm": "BLAKE3", - "ChecksumDate": "2023-10-22T17:10:20.148316Z" + "ChecksumDate": "2023-10-26T01:37:52.385634Z" } ], "ContentDate": { - "Start": "2020-01-01T10:03:19.024000Z", - "End": "2020-01-01T10:03:19.024000Z" + "Start": "2020-01-11T10:02:59.024000Z", + "End": "2020-01-11T10:02:59.024000Z" }, "Footprint": "geography'SRID=4326;POLYGON ((14.9997279041062 48.7530130044756, 14.9997330963449 47.7651665667219, 16.4647868669399 47.7558186458081, 16.4932694755772 48.7433372246506, 14.9997279041062 48.7530130044756))'", "GeoFootprint": { @@ -604,56 +579,80 @@ }, { "@odata.mediaContentType": "application/octet-stream", - "Id": "56f46c3b-d3ca-42d2-a143-e74960ffbe57", - "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T33UWS_20230618T201545.SAFE", + "Id": "f337fa1d-fb06-4173-8137-aa939db04233", + "Name": "S2B_MSIL2A_20200108T095309_N0500_R079_T33TWN_20230625T151949.SAFE", "ContentType": "application/octet-stream", - "ContentLength": 1219347740, - "OriginDate": "2023-10-22T01:34:53.284000Z", - "PublicationDate": "2023-10-22T17:08:02.457315Z", - "ModificationDate": "2024-05-10T06:25:53.880569Z", + "ContentLength": 913369695, + "OriginDate": "2023-10-23T16:59:55.262000Z", + "PublicationDate": "2023-10-24T15:26:19.618788Z", + "ModificationDate": "2024-05-09T22:31:07.595678Z", "Online": true, "EvictionDate": "9999-12-31T23:59:59.999999Z", - "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T33UWS_20230618T201545.SAFE", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/08/S2B_MSIL2A_20200108T095309_N0500_R079_T33TWN_20230625T151949.SAFE", "Checksum": [ { - "Value": "4c316c630fb072a3642208a5a4d23870", + "Value": "42318715d6af1decf702ed21b1aafa8d", "Algorithm": "MD5", - "ChecksumDate": "2023-10-22T17:08:12.617644Z" + "ChecksumDate": "2023-10-24T15:26:33.094927Z" }, { - "Value": "70575122d849c467f99702451a9b4aa332ca26ad732c6c0d6b3d3fc64f737a8c", + "Value": "977918ed93d54a8bc73c63adc2040955ce4443050779839b552197a8256440c6", "Algorithm": "BLAKE3", - "ChecksumDate": "2023-10-22T17:08:15.186533Z" + "ChecksumDate": "2023-10-24T15:26:35.017466Z" } ], "ContentDate": { - "Start": "2020-01-01T10:03:19.024000Z", - "End": "2020-01-01T10:03:19.024000Z" + "Start": "2020-01-08T09:53:09.024000Z", + "End": "2020-01-08T09:53:09.024000Z" }, - "Footprint": "geography'SRID=4326;POLYGON ((14.9997121758513 51.4511822057936, 14.9997182116692 50.4637984017553, 16.5464364414626 50.453523278919, 16.5795440214696 51.4405411658231, 14.9997121758513 51.4511822057936))'", + "Footprint": "geography'SRID=4326;POLYGON ((15.3140644031822 46.8637228016598, 16.44014982441 46.8566398819074, 16.4672773767682 47.8443250465141, 15.6713149081164 47.8494108047169, 15.6304976592402 47.7366697714618, 15.5770273105775 47.590323431071, 15.5232892981939 47.4441476311728, 15.4709798888779 47.2976162588032, 15.4170533098573 47.1516466375142, 15.3646084052304 47.0053070039575, 15.3140644031822 46.8637228016598))'", "GeoFootprint": { "type": "Polygon", "coordinates": [ [ [ - 14.9997121758513, - 51.4511822057936 + 15.3140644031822, + 46.8637228016598 + ], + [ + 16.44014982441, + 46.8566398819074 + ], + [ + 16.4672773767682, + 47.8443250465141 + ], + [ + 15.6713149081164, + 47.8494108047169 ], [ - 14.9997182116692, - 50.4637984017553 + 15.6304976592402, + 47.7366697714618 ], [ - 16.5464364414626, - 50.453523278919 + 15.5770273105775, + 47.590323431071 ], [ - 16.5795440214696, - 51.4405411658231 + 15.5232892981939, + 47.4441476311728 ], [ - 14.9997121758513, - 51.4511822057936 + 15.4709798888779, + 47.2976162588032 + ], + [ + 15.4170533098573, + 47.1516466375142 + ], + [ + 15.3646084052304, + 47.0053070039575 + ], + [ + 15.3140644031822, + 46.8637228016598 ] ] ] @@ -661,84 +660,92 @@ }, { "@odata.mediaContentType": "application/octet-stream", - "Id": "8964b892-82b2-4e9a-b1ae-0a97fb013096", - "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T33UVR_20230618T201545.SAFE", + "Id": "85fbbe0f-1ec8-4cba-95f2-b87e0a0fda75", + "Name": "S2B_MSIL2A_20200111T100259_N0500_R122_T33UXP_20230612T042427.SAFE", "ContentType": "application/octet-stream", - "ContentLength": 966533521, - "OriginDate": "2023-10-22T01:32:58.181000Z", - "PublicationDate": "2023-10-22T17:06:15.629312Z", - "ModificationDate": "2024-05-10T06:25:52.494017Z", + "ContentLength": 890301085, + "OriginDate": "2023-10-25T02:53:21.740000Z", + "PublicationDate": "2023-10-26T01:27:27.631443Z", + "ModificationDate": "2024-05-09T22:53:42.373292Z", "Online": true, "EvictionDate": "9999-12-31T23:59:59.999999Z", - "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T33UVR_20230618T201545.SAFE", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/11/S2B_MSIL2A_20200111T100259_N0500_R122_T33UXP_20230612T042427.SAFE", "Checksum": [ { - "Value": "4bc6cf9eacea4614daf4c243dd62ee6d", + "Value": "d4c73ed733c796c0639f240a81275894", "Algorithm": "MD5", - "ChecksumDate": "2023-10-22T17:06:24.746836Z" + "ChecksumDate": "2023-10-26T01:27:36.978328Z" }, { - "Value": "e1d886bc38568380a647021c260df27fe0e18a5e99393524ad050845449110b5", + "Value": "9ef47d55e55290b611cda78e261076376f48055c12df2a2ef5cd1b2739c30ce9", "Algorithm": "BLAKE3", - "ChecksumDate": "2023-10-22T17:06:26.816234Z" + "ChecksumDate": "2023-10-26T01:27:39.405480Z" } ], "ContentDate": { - "Start": "2020-01-01T10:03:19.024000Z", - "End": "2020-01-01T10:03:19.024000Z" + "Start": "2020-01-11T10:02:59.024000Z", + "End": "2020-01-11T10:02:59.024000Z" }, - "Footprint": "geography'SRID=4326;POLYGON ((13.7973144975344 49.5574616494714, 15.134970502622 49.564676297854, 15.1377697557676 50.5522106222613, 14.1853368263482 50.5469998793456, 14.1490399502576 50.4573369937177, 14.0914233865514 50.3113167838126, 14.0344700559361 50.1652131390678, 13.9772827400984 50.0192452520987, 13.9200317059114 49.8732465588076, 13.8639452318592 49.7268796461721, 13.8065091437343 49.580814158978, 13.7973144975344 49.5574616494714))'", + "Footprint": "geography'SRID=4326;POLYGON ((17.6433864520917 48.7215180036769, 16.3602792462837 48.7449841116978, 16.3343313489668 47.7574097373474, 17.1963237772308 47.7418835569079, 17.2337745010312 47.8246086664865, 17.2994912564101 47.9695613059589, 17.3656540448265 48.1144314468392, 17.4318283026065 48.2593135822616, 17.4938275423244 48.3947625671256, 17.4976714824224 48.403195070939, 17.5165513631234 48.4444849360713, 17.5642682481899 48.5489332288167, 17.630561345317 48.6937778949669, 17.6433864520917 48.7215180036769))'", "GeoFootprint": { "type": "Polygon", "coordinates": [ [ [ - 13.7973144975344, - 49.5574616494714 + 17.6433864520917, + 48.7215180036769 + ], + [ + 16.3602792462837, + 48.7449841116978 + ], + [ + 16.3343313489668, + 47.7574097373474 ], [ - 15.134970502622, - 49.564676297854 + 17.1963237772308, + 47.7418835569079 ], [ - 15.1377697557676, - 50.5522106222613 + 17.2337745010312, + 47.8246086664865 ], [ - 14.1853368263482, - 50.5469998793456 + 17.2994912564101, + 47.9695613059589 ], [ - 14.1490399502576, - 50.4573369937177 + 17.3656540448265, + 48.1144314468392 ], [ - 14.0914233865514, - 50.3113167838126 + 17.4318283026065, + 48.2593135822616 ], [ - 14.0344700559361, - 50.1652131390678 + 17.4938275423244, + 48.3947625671256 ], [ - 13.9772827400984, - 50.0192452520987 + 17.4976714824224, + 48.403195070939 ], [ - 13.9200317059114, - 49.8732465588076 + 17.5165513631234, + 48.4444849360713 ], [ - 13.8639452318592, - 49.7268796461721 + 17.5642682481899, + 48.5489332288167 ], [ - 13.8065091437343, - 49.580814158978 + 17.630561345317, + 48.6937778949669 ], [ - 13.7973144975344, - 49.5574616494714 + 17.6433864520917, + 48.7215180036769 ] ] ] @@ -746,84 +753,100 @@ }, { "@odata.mediaContentType": "application/octet-stream", - "Id": "6c044ac5-c686-41da-a38e-0f19e7cc46c4", - "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T32TQR_20230618T201545.SAFE", + "Id": "f536fc53-1eab-45c2-b88e-6ad234e4bb78", + "Name": "S2A_MSIL2A_20200103T095401_N0500_R079_T33TWN_20230611T200138.SAFE", "ContentType": "application/octet-stream", - "ContentLength": 513995018, - "OriginDate": "2023-10-22T01:44:59.974000Z", - "PublicationDate": "2023-10-22T17:29:40.520667Z", - "ModificationDate": "2024-05-10T06:26:23.803502Z", + "ContentLength": 811719155, + "OriginDate": "2023-10-24T22:50:45.328000Z", + "PublicationDate": "2023-10-25T21:46:04.324540Z", + "ModificationDate": "2024-05-07T18:40:24.856528Z", "Online": true, "EvictionDate": "9999-12-31T23:59:59.999999Z", - "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T32TQR_20230618T201545.SAFE", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/03/S2A_MSIL2A_20200103T095401_N0500_R079_T33TWN_20230611T200138.SAFE", "Checksum": [ { - "Value": "b932caa8482d26e92d50d74a8e56867e", + "Value": "80697bc95613d8b7b1862b6da5a79573", "Algorithm": "MD5", - "ChecksumDate": "2023-10-22T17:29:47.613298Z" + "ChecksumDate": "2023-10-25T21:46:14.186056Z" }, { - "Value": "efa7b4a23a8bcad29780a9fd33fe2de5d4080e171cc1b9cffe38dc818a6aa2a3", + "Value": "827508789e5f64be6a527574333ae1b61aa87373c4961b0f6f81028095c4c86e", "Algorithm": "BLAKE3", - "ChecksumDate": "2023-10-22T17:29:49.116788Z" + "ChecksumDate": "2023-10-25T21:46:15.930260Z" } ], "ContentDate": { - "Start": "2020-01-01T10:03:19.024000Z", - "End": "2020-01-01T10:03:19.024000Z" + "Start": "2020-01-03T09:54:01.024000Z", + "End": "2020-01-03T09:54:01.024000Z" }, - "Footprint": "geography'SRID=4326;POLYGON ((12.1510647880466 45.019672874804, 12.9300333910416 44.997587612457, 12.9993205599376 45.9835452069264, 12.4891351491007 45.998254994681, 12.4619226131406 45.9223302408527, 12.4106174353794 45.7756702022709, 12.3593526080404 45.6289944314859, 12.3085235292302 45.4822638398844, 12.258221963045 45.3355263274659, 12.2081657588486 45.1888503681981, 12.1586254445942 45.0421822127639, 12.1510647880466 45.019672874804))'", + "Footprint": "geography'SRID=4326;POLYGON ((15.3181902735537 46.8636968505124, 16.44014982441 46.8566398819074, 16.4672773767682 47.8443250465141, 15.6768790249519 47.8493752530999, 15.6546062669209 47.7869713103839, 15.6007275220728 47.640793756014, 15.5591307836325 47.5245935883165, 15.5483941517894 47.4941738477431, 15.5278422371206 47.4376037063134, 15.4954918366265 47.3478893967255, 15.4418568055002 47.2017476033971, 15.3874957028187 47.0557552261628, 15.3365886153815 46.9149840865142, 15.3345316684965 46.9092445524639, 15.3297437934646 46.8959357101121, 15.3181902735537 46.8636968505124))'", "GeoFootprint": { "type": "Polygon", "coordinates": [ [ [ - 12.1510647880466, - 45.019672874804 + 15.3181902735537, + 46.8636968505124 + ], + [ + 16.44014982441, + 46.8566398819074 + ], + [ + 16.4672773767682, + 47.8443250465141 + ], + [ + 15.6768790249519, + 47.8493752530999 ], [ - 12.9300333910416, - 44.997587612457 + 15.6546062669209, + 47.7869713103839 ], [ - 12.9993205599376, - 45.9835452069264 + 15.6007275220728, + 47.640793756014 ], [ - 12.4891351491007, - 45.998254994681 + 15.5591307836325, + 47.5245935883165 ], [ - 12.4619226131406, - 45.9223302408527 + 15.5483941517894, + 47.4941738477431 ], [ - 12.4106174353794, - 45.7756702022709 + 15.5278422371206, + 47.4376037063134 ], [ - 12.3593526080404, - 45.6289944314859 + 15.4954918366265, + 47.3478893967255 ], [ - 12.3085235292302, - 45.4822638398844 + 15.4418568055002, + 47.2017476033971 ], [ - 12.258221963045, - 45.3355263274659 + 15.3874957028187, + 47.0557552261628 ], [ - 12.2081657588486, - 45.1888503681981 + 15.3365886153815, + 46.9149840865142 ], [ - 12.1586254445942, - 45.0421822127639 + 15.3345316684965, + 46.9092445524639 ], [ - 12.1510647880466, - 45.019672874804 + 15.3297437934646, + 46.8959357101121 + ], + [ + 15.3181902735537, + 46.8636968505124 ] ] ] @@ -831,31 +854,31 @@ }, { "@odata.mediaContentType": "application/octet-stream", - "Id": "e6162844-d274-4c49-b0f3-292d63a674dd", - "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T33TWN_20230618T201545.SAFE", + "Id": "5ca0c73f-f930-45d1-9a47-e8eba393e385", + "Name": "S2A_MSIL2A_20200106T100401_N0500_R122_T33TWN_20230422T061153.SAFE", "ContentType": "application/octet-stream", - "ContentLength": 1210847910, - "OriginDate": "2023-10-22T01:33:34.992000Z", - "PublicationDate": "2023-10-22T17:10:02.294908Z", - "ModificationDate": "2024-05-10T06:25:55.515371Z", + "ContentLength": 1234575518, + "OriginDate": "2023-10-21T15:15:07.088000Z", + "PublicationDate": "2023-10-22T05:08:40.915719Z", + "ModificationDate": "2024-05-09T22:35:42.566847Z", "Online": true, "EvictionDate": "9999-12-31T23:59:59.999999Z", - "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T33TWN_20230618T201545.SAFE", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/06/S2A_MSIL2A_20200106T100401_N0500_R122_T33TWN_20230422T061153.SAFE", "Checksum": [ { - "Value": "05c79c5b089fef75bfc1b14e6e5b0a58", + "Value": "42f7d556b055c231c7e07a93e92078ec", "Algorithm": "MD5", - "ChecksumDate": "2023-10-22T17:10:12.641196Z" + "ChecksumDate": "2023-10-24T17:12:51.223123Z" }, { - "Value": "a91cf99a3467d5ffb7c15ddf0907a4f454b606cb2a1e45938f16d94ad5326133", + "Value": "6c5204f61c048b817402753977bf95b79473715f5ee62c015639463d4ecd9cf6", "Algorithm": "BLAKE3", - "ChecksumDate": "2023-10-22T17:10:15.265251Z" + "ChecksumDate": "2023-10-24T17:12:55.245333Z" } ], "ContentDate": { - "Start": "2020-01-01T10:03:19.024000Z", - "End": "2020-01-01T10:03:19.024000Z" + "Start": "2020-01-06T10:04:01.024000Z", + "End": "2020-01-06T10:04:01.024000Z" }, "Footprint": "geography'SRID=4326;POLYGON ((14.9997326423426 47.8537018424875, 14.9997375874494 46.8656998733542, 16.44014982441 46.8566398819074, 16.4672773767682 47.8443250465141, 14.9997326423426 47.8537018424875))'", "GeoFootprint": { @@ -888,56 +911,56 @@ }, { "@odata.mediaContentType": "application/octet-stream", - "Id": "95abd236-ec56-4221-bcb4-d72069780396", - "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T33TVL_20230618T201545.SAFE", + "Id": "f62c778b-05a5-45cb-8dd8-f71ff2dd96cd", + "Name": "S2B_MSIL2A_20200108T095309_N0500_R079_T33UXP_20230625T151949.SAFE", "ContentType": "application/octet-stream", - "ContentLength": 1178854745, - "OriginDate": "2023-10-22T01:34:02.054000Z", - "PublicationDate": "2023-10-22T17:15:02.132485Z", - "ModificationDate": "2024-05-10T06:26:06.334464Z", + "ContentLength": 1164077209, + "OriginDate": "2023-10-23T16:50:49.320000Z", + "PublicationDate": "2023-10-24T15:23:38.000738Z", + "ModificationDate": "2024-05-09T22:30:49.962505Z", "Online": true, "EvictionDate": "9999-12-31T23:59:59.999999Z", - "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T33TVL_20230618T201545.SAFE", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/08/S2B_MSIL2A_20200108T095309_N0500_R079_T33UXP_20230625T151949.SAFE", "Checksum": [ { - "Value": "acd62b288bc15f633ca26afdf45293a0", + "Value": "10226feb826d98e562aef6181ffa34e5", "Algorithm": "MD5", - "ChecksumDate": "2023-10-22T17:15:13.058906Z" + "ChecksumDate": "2023-10-24T15:23:54.270147Z" }, { - "Value": "8f79ba373ed4676f1645ca16e62201068ae2a54130df24459814ee1396eb9b78", + "Value": "20ebf21c9014876275429c92f66a2d0ab0a6654569bd9a15af497315ba2edd1d", "Algorithm": "BLAKE3", - "ChecksumDate": "2023-10-22T17:15:15.452870Z" + "ChecksumDate": "2023-10-24T15:23:57.449338Z" } ], "ContentDate": { - "Start": "2020-01-01T10:03:19.024000Z", - "End": "2020-01-01T10:03:19.024000Z" + "Start": "2020-01-08T09:53:09.024000Z", + "End": "2020-01-08T09:53:09.024000Z" }, - "Footprint": "geography'SRID=4326;POLYGON ((13.7069510847235 46.0462596089832, 13.7294164230679 45.0581916702363, 15.1239744985113 45.0651927065434, 15.1261672372241 46.0535047357316, 13.7069510847235 46.0462596089832))'", + "Footprint": "geography'SRID=4326;POLYGON ((16.3602792462837 48.7449841116978, 16.3343313489668 47.7574097373474, 17.7980947153029 47.7310444777451, 17.8524387084731 48.7176947511785, 16.3602792462837 48.7449841116978))'", "GeoFootprint": { "type": "Polygon", "coordinates": [ [ [ - 13.7069510847235, - 46.0462596089832 + 16.3602792462837, + 48.7449841116978 ], [ - 13.7294164230679, - 45.0581916702363 + 16.3343313489668, + 47.7574097373474 ], [ - 15.1239744985113, - 45.0651927065434 + 17.7980947153029, + 47.7310444777451 ], [ - 15.1261672372241, - 46.0535047357316 + 17.8524387084731, + 48.7176947511785 ], [ - 13.7069510847235, - 46.0462596089832 + 16.3602792462837, + 48.7449841116978 ] ] ] @@ -945,84 +968,84 @@ }, { "@odata.mediaContentType": "application/octet-stream", - "Id": "48205e34-b3ed-4275-8ac2-5a2601bed62e", - "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T33TWK_20230618T201545.SAFE", + "Id": "717461b8-228f-4550-acad-de0357a11337", + "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T33UXP_20230618T201545.SAFE", "ContentType": "application/octet-stream", - "ContentLength": 815454731, - "OriginDate": "2023-10-22T01:34:28.306000Z", - "PublicationDate": "2023-10-22T17:11:02.823570Z", - "ModificationDate": "2024-05-10T06:25:56.570093Z", + "ContentLength": 921943209, + "OriginDate": "2023-10-22T01:25:31.919000Z", + "PublicationDate": "2023-10-22T16:59:16.607319Z", + "ModificationDate": "2024-05-10T06:25:46.567852Z", "Online": true, "EvictionDate": "9999-12-31T23:59:59.999999Z", - "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T33TWK_20230618T201545.SAFE", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T33UXP_20230618T201545.SAFE", "Checksum": [ { - "Value": "c2cdf1e2328505b327c432b5aff48494", + "Value": "0feb9fbcb4b60135b44a3761b4cf9ed8", "Algorithm": "MD5", - "ChecksumDate": "2023-10-22T17:11:10.993430Z" + "ChecksumDate": "2023-10-22T16:59:25.895602Z" }, { - "Value": "327095342cf7ce2f6a8a6debe0bdf05098d4d55a085811f54e1b39ecccdb4006", + "Value": "39d264132c3f2eba27bcc9872d220e0b691660630f6403dee1eb7a58997ab453", "Algorithm": "BLAKE3", - "ChecksumDate": "2023-10-22T17:11:12.677294Z" + "ChecksumDate": "2023-10-22T16:59:27.956414Z" } ], "ContentDate": { "Start": "2020-01-01T10:03:19.024000Z", "End": "2020-01-01T10:03:19.024000Z" }, - "Footprint": "geography'SRID=4326;POLYGON ((16.0782149856686 45.1472447519167, 14.9997455603619 45.1538372508924, 14.9997498470732 44.1653664955074, 15.6769327926967 44.1612979369474, 15.6991108602287 44.2167858643166, 15.7554867875956 44.3628715906462, 15.8142623440322 44.5085309180263, 15.8730460360232 44.6543501141074, 15.9347895068833 44.7994990900374, 15.9945464563278 44.9451356585531, 16.0546232507044 45.0907354115731, 16.0782149856686 45.1472447519167))'", + "Footprint": "geography'SRID=4326;POLYGON ((17.6433668975382 48.7215183613004, 16.3602792462837 48.7449841116978, 16.3343313489668 47.7574097373474, 17.1942726554598 47.7419205016486, 17.2424419655026 47.8492559182622, 17.3079056990768 47.9941507563829, 17.3738883253615 48.1390610535992, 17.4404033712745 48.2839847336994, 17.507383401301 48.4288820912415, 17.5744493318599 48.5737806564574, 17.6420180088231 48.7185860249992, 17.6433668975382 48.7215183613004))'", "GeoFootprint": { "type": "Polygon", "coordinates": [ [ [ - 16.0782149856686, - 45.1472447519167 + 17.6433668975382, + 48.7215183613004 ], [ - 14.9997455603619, - 45.1538372508924 + 16.3602792462837, + 48.7449841116978 ], [ - 14.9997498470732, - 44.1653664955074 + 16.3343313489668, + 47.7574097373474 ], [ - 15.6769327926967, - 44.1612979369474 + 17.1942726554598, + 47.7419205016486 ], [ - 15.6991108602287, - 44.2167858643166 + 17.2424419655026, + 47.8492559182622 ], [ - 15.7554867875956, - 44.3628715906462 + 17.3079056990768, + 47.9941507563829 ], [ - 15.8142623440322, - 44.5085309180263 + 17.3738883253615, + 48.1390610535992 ], [ - 15.8730460360232, - 44.6543501141074 + 17.4404033712745, + 48.2839847336994 ], [ - 15.9347895068833, - 44.7994990900374 + 17.507383401301, + 48.4288820912415 ], [ - 15.9945464563278, - 44.9451356585531 + 17.5744493318599, + 48.5737806564574 ], [ - 16.0546232507044, - 45.0907354115731 + 17.6420180088231, + 48.7185860249992 ], [ - 16.0782149856686, - 45.1472447519167 + 17.6433668975382, + 48.7215183613004 ] ] ] @@ -1030,137 +1053,84 @@ }, { "@odata.mediaContentType": "application/octet-stream", - "Id": "e5bf1345-ec39-45f8-88d1-17f41cf5d2c7", - "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T33TVN_20230618T201545.SAFE", + "Id": "961c2fae-b85b-47b8-ab6b-fb94ab6cb7d4", + "Name": "S2B_MSIL2A_20200111T100259_N0500_R122_T33TXN_20230612T042427.SAFE", "ContentType": "application/octet-stream", - "ContentLength": 1238606538, - "OriginDate": "2023-10-22T01:33:52.081000Z", - "PublicationDate": "2023-10-22T17:12:19.392303Z", - "ModificationDate": "2024-05-10T06:25:57.549943Z", + "ContentLength": 590840291, + "OriginDate": "2023-10-25T02:55:24.272000Z", + "PublicationDate": "2023-10-26T01:35:26.160689Z", + "ModificationDate": "2024-05-09T22:53:51.052686Z", "Online": true, "EvictionDate": "9999-12-31T23:59:59.999999Z", - "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T33TVN_20230618T201545.SAFE", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/11/S2B_MSIL2A_20200111T100259_N0500_R122_T33TXN_20230612T042427.SAFE", "Checksum": [ { - "Value": "be25830c4078e9c19b9c7c3e4cfebf56", + "Value": "e06a4e5ce58f1724a72296caa47c8a43", "Algorithm": "MD5", - "ChecksumDate": "2023-10-22T17:12:30.394335Z" + "ChecksumDate": "2023-10-26T01:35:36.407291Z" }, { - "Value": "1cedb8b470840172052f306d8df409497c9c140ba021d111b050e2f094d6e06b", + "Value": "095ef07a28aff2be7679985e54ef4e9ee03fc87494f3ac1708d2424dc2de48d5", "Algorithm": "BLAKE3", - "ChecksumDate": "2023-10-22T17:12:33.026368Z" + "ChecksumDate": "2023-10-26T01:35:37.691294Z" } ], "ContentDate": { - "Start": "2020-01-01T10:03:19.024000Z", - "End": "2020-01-01T10:03:19.024000Z" + "Start": "2020-01-11T10:02:59.024000Z", + "End": "2020-01-11T10:02:59.024000Z" }, - "Footprint": "geography'SRID=4326;POLYGON ((13.6628652904457 47.8459148273097, 13.687588500476 46.8581759579721, 15.1280571611511 46.8656282477783, 15.1304703619168 47.8536277119106, 13.6628652904457 47.8459148273097))'", + "Footprint": "geography'SRID=4326;POLYGON ((17.2360814441433 47.8296971327578, 16.3366002199701 47.8459210520889, 16.3118868855124 46.8581819724645, 16.8006898334783 46.849503041532, 16.8464066077708 46.9544932815473, 16.9097094622636 47.0995846483367, 16.9736515611087 47.2446279565575, 17.0381276327458 47.3896123472367, 17.102897451692 47.5346477317322, 17.1681440008669 47.6796370940618, 17.2337745010312 47.8246086664865, 17.2360814441433 47.8296971327578))'", "GeoFootprint": { "type": "Polygon", "coordinates": [ [ [ - 13.6628652904457, - 47.8459148273097 - ], - [ - 13.687588500476, - 46.8581759579721 + 17.2360814441433, + 47.8296971327578 ], [ - 15.1280571611511, - 46.8656282477783 - ], - [ - 15.1304703619168, - 47.8536277119106 - ], - [ - 13.6628652904457, - 47.8459148273097 - ] - ] - ] - } - }, - { - "@odata.mediaContentType": "application/octet-stream", - "Id": "480707cc-64f6-4f7a-8f7a-ddf9730eec2d", - "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T33UVS_20230618T201545.SAFE", - "ContentType": "application/octet-stream", - "ContentLength": 672877997, - "OriginDate": "2023-10-22T01:34:01.122000Z", - "PublicationDate": "2023-10-22T17:11:57.472768Z", - "ModificationDate": "2024-05-10T06:25:58.364614Z", - "Online": true, - "EvictionDate": "9999-12-31T23:59:59.999999Z", - "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T33UVS_20230618T201545.SAFE", - "Checksum": [ - { - "Value": "bd45ccbb7f6d18eae18f0bd07596b462", - "Algorithm": "MD5", - "ChecksumDate": "2023-10-22T17:12:05.789254Z" - }, - { - "Value": "742e884a54b79e980e12982ef547df3b4a91715173bda792f0387695535b6e38", - "Algorithm": "BLAKE3", - "ChecksumDate": "2023-10-22T17:12:07.238465Z" - } - ], - "ContentDate": { - "Start": "2020-01-01T10:03:19.024000Z", - "End": "2020-01-01T10:03:19.024000Z" - }, - "Footprint": "geography'SRID=4326;POLYGON ((14.1494371654362 50.458318220285, 15.1375124947581 50.4637171677759, 15.1404579576913 51.4510980782588, 14.5525902950555 51.4478412455164, 14.5048886364511 51.3331286678915, 14.4447289703514 51.187128727444, 14.385505493663 51.0409623202908, 14.3253371838065 50.8950990554032, 14.2660202782658 50.7491763042897, 14.2080406057963 50.6030842204579, 14.1494371654362 50.458318220285))'", - "GeoFootprint": { - "type": "Polygon", - "coordinates": [ - [ - [ - 14.1494371654362, - 50.458318220285 + 16.3366002199701, + 47.8459210520889 ], [ - 15.1375124947581, - 50.4637171677759 + 16.3118868855124, + 46.8581819724645 ], [ - 15.1404579576913, - 51.4510980782588 + 16.8006898334783, + 46.849503041532 ], [ - 14.5525902950555, - 51.4478412455164 + 16.8464066077708, + 46.9544932815473 ], [ - 14.5048886364511, - 51.3331286678915 + 16.9097094622636, + 47.0995846483367 ], [ - 14.4447289703514, - 51.187128727444 + 16.9736515611087, + 47.2446279565575 ], [ - 14.385505493663, - 51.0409623202908 + 17.0381276327458, + 47.3896123472367 ], [ - 14.3253371838065, - 50.8950990554032 + 17.102897451692, + 47.5346477317322 ], [ - 14.2660202782658, - 50.7491763042897 + 17.1681440008669, + 47.6796370940618 ], [ - 14.2080406057963, - 50.6030842204579 + 17.2337745010312, + 47.8246086664865 ], [ - 14.1494371654362, - 50.458318220285 + 17.2360814441433, + 47.8296971327578 ] ] ] @@ -1168,80 +1138,56 @@ }, { "@odata.mediaContentType": "application/octet-stream", - "Id": "130372c0-ccef-46be-b412-10f403e7d05f", - "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T32TQT_20230618T201545.SAFE", + "Id": "c62ded0d-21db-4fac-bc9b-4dcce7c096b6", + "Name": "S2A_MSIL2A_20200116T100341_N0500_R122_T33TWN_20230429T105314.SAFE", "ContentType": "application/octet-stream", - "ContentLength": 163055185, - "OriginDate": "2023-10-22T01:45:45.605000Z", - "PublicationDate": "2023-10-22T17:22:48.936095Z", - "ModificationDate": "2024-05-10T06:26:12.044801Z", + "ContentLength": 1156957217, + "OriginDate": "2023-10-24T10:36:20.451000Z", + "PublicationDate": "2023-10-25T08:53:38.988522Z", + "ModificationDate": "2024-05-09T22:46:19.962183Z", "Online": true, "EvictionDate": "9999-12-31T23:59:59.999999Z", - "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T32TQT_20230618T201545.SAFE", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/16/S2A_MSIL2A_20200116T100341_N0500_R122_T33TWN_20230429T105314.SAFE", "Checksum": [ { - "Value": "7cdcdbe43aa82c41ce054ef6934b7ea1", + "Value": "ba76b991690af4b905390749cdf3c717", "Algorithm": "MD5", - "ChecksumDate": "2023-10-22T17:22:53.885347Z" + "ChecksumDate": "2023-10-25T08:54:02.180412Z" }, { - "Value": "8a2e2e032fda4738e520d4bf9bf7c2759847849d4e93faf779abb7d1bc938024", + "Value": "a53c8c4d20569195df0911a85ec927404d4e40a087ce07e352c970fbf1c75418", "Algorithm": "BLAKE3", - "ChecksumDate": "2023-10-22T17:22:54.382063Z" + "ChecksumDate": "2023-10-25T08:54:04.787811Z" } ], "ContentDate": { - "Start": "2020-01-01T10:03:19.024000Z", - "End": "2020-01-01T10:03:19.024000Z" + "Start": "2020-01-16T10:03:41.024000Z", + "End": "2020-01-16T10:03:41.024000Z" }, - "Footprint": "geography'SRID=4326;POLYGON ((12.7755244202316 46.8019548639754, 13.059029865045 46.7936706881961, 13.1352584752775 47.7791570723346, 13.1268261501253 47.7794073858359, 13.0897224271681 47.6798269998068, 13.0396981200084 47.5323313674094, 12.9849643080457 47.3861678494748, 12.9321437651775 47.2395729503938, 12.8814221817122 47.0925344089653, 12.8288913742369 46.9461381432327, 12.7755244202316 46.8019548639754))'", + "Footprint": "geography'SRID=4326;POLYGON ((14.9997326423426 47.8537018424875, 14.9997375874494 46.8656998733542, 16.44014982441 46.8566398819074, 16.4672773767682 47.8443250465141, 14.9997326423426 47.8537018424875))'", "GeoFootprint": { "type": "Polygon", "coordinates": [ [ [ - 12.7755244202316, - 46.8019548639754 - ], - [ - 13.059029865045, - 46.7936706881961 - ], - [ - 13.1352584752775, - 47.7791570723346 - ], - [ - 13.1268261501253, - 47.7794073858359 - ], - [ - 13.0897224271681, - 47.6798269998068 - ], - [ - 13.0396981200084, - 47.5323313674094 - ], - [ - 12.9849643080457, - 47.3861678494748 + 14.9997326423426, + 47.8537018424875 ], [ - 12.9321437651775, - 47.2395729503938 + 14.9997375874494, + 46.8656998733542 ], [ - 12.8814221817122, - 47.0925344089653 + 16.44014982441, + 46.8566398819074 ], [ - 12.8288913742369, - 46.9461381432327 + 16.4672773767682, + 47.8443250465141 ], [ - 12.7755244202316, - 46.8019548639754 + 14.9997326423426, + 47.8537018424875 ] ] ] @@ -1249,84 +1195,56 @@ }, { "@odata.mediaContentType": "application/octet-stream", - "Id": "b8b8bd4b-a427-4da1-8f38-19b5d0646910", - "Name": "S2B_MSIL2A_20200101T100319_N0500_R122_T32TQS_20230618T201545.SAFE", + "Id": "4210103d-0850-4305-9887-cb89dba56130", + "Name": "S2B_MSIL2A_20200108T095309_N0500_R079_T33TXN_20230625T151949.SAFE", "ContentType": "application/octet-stream", - "ContentLength": 398016857, - "OriginDate": "2023-10-22T01:45:53.633000Z", - "PublicationDate": "2023-10-22T17:27:35.781154Z", - "ModificationDate": "2024-05-10T06:26:16.956775Z", + "ContentLength": 1168223146, + "OriginDate": "2023-10-23T16:59:37.107000Z", + "PublicationDate": "2023-10-24T15:27:36.830593Z", + "ModificationDate": "2024-05-09T22:31:11.227221Z", "Online": true, "EvictionDate": "9999-12-31T23:59:59.999999Z", - "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/01/S2B_MSIL2A_20200101T100319_N0500_R122_T32TQS_20230618T201545.SAFE", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/08/S2B_MSIL2A_20200108T095309_N0500_R079_T33TXN_20230625T151949.SAFE", "Checksum": [ { - "Value": "afb388c1bd0a0271acb47fef4a94592d", + "Value": "5bea9f114ae44a5a570adaaab246e323", "Algorithm": "MD5", - "ChecksumDate": "2023-10-22T17:27:41.943104Z" + "ChecksumDate": "2023-10-24T15:27:53.077701Z" }, { - "Value": "e6f20c274e58961db5d2a354ca797ea9b59cfefa24ed343c375da9ad28fd6b2c", + "Value": "67f60a8e1c3dfb5b8f087632fbbb370f44173cc753a9dde1fbb2b85f9a790cb3", "Algorithm": "BLAKE3", - "ChecksumDate": "2023-10-22T17:27:43.080562Z" + "ChecksumDate": "2023-10-24T15:27:55.686134Z" } ], "ContentDate": { - "Start": "2020-01-01T10:03:19.024000Z", - "End": "2020-01-01T10:03:19.024000Z" + "Start": "2020-01-08T09:53:09.024000Z", + "End": "2020-01-08T09:53:09.024000Z" }, - "Footprint": "geography'SRID=4326;POLYGON ((12.4580071794698 45.9111376540946, 12.9930021665452 45.8957352519379, 13.0656571326958 46.8814596616377, 12.8077451723823 46.8890067445224, 12.7749039000931 46.8002783840249, 12.7241442615392 46.6536020442254, 12.6706425863048 46.5077223192748, 12.6204967644805 46.3608873381048, 12.5662137328109 46.2151474810842, 12.5143756426204 46.068677621216, 12.4619226131406 45.9223302408527, 12.4580071794698 45.9111376540946))'", + "Footprint": "geography'SRID=4326;POLYGON ((16.3366002199701 47.8459210520889, 16.3118868855124 46.8581819724645, 17.7510849986202 46.8326283192514, 17.8028466829245 47.8194744029593, 16.3366002199701 47.8459210520889))'", "GeoFootprint": { "type": "Polygon", "coordinates": [ [ [ - 12.4580071794698, - 45.9111376540946 - ], - [ - 12.9930021665452, - 45.8957352519379 - ], - [ - 13.0656571326958, - 46.8814596616377 - ], - [ - 12.8077451723823, - 46.8890067445224 - ], - [ - 12.7749039000931, - 46.8002783840249 - ], - [ - 12.7241442615392, - 46.6536020442254 - ], - [ - 12.6706425863048, - 46.5077223192748 - ], - [ - 12.6204967644805, - 46.3608873381048 + 16.3366002199701, + 47.8459210520889 ], [ - 12.5662137328109, - 46.2151474810842 + 16.3118868855124, + 46.8581819724645 ], [ - 12.5143756426204, - 46.068677621216 + 17.7510849986202, + 46.8326283192514 ], [ - 12.4619226131406, - 45.9223302408527 + 17.8028466829245, + 47.8194744029593 ], [ - 12.4580071794698, - 45.9111376540946 + 16.3366002199701, + 47.8459210520889 ] ] ] @@ -1334,89 +1252,60 @@ }, { "@odata.mediaContentType": "application/octet-stream", - "Id": "ba00fce8-8fc5-4f96-a2fc-2ebf8dda5ab4", - "Name": "S2A_MSIL2A_20200102T102421_N0500_R065_T32TPQ_20230505T004346.SAFE", + "Id": "c84026b7-89fb-42be-968d-479ddf253d05", + "Name": "S2A_MSIL2A_20200106T100401_N0500_R122_T33UWP_20230422T061153.SAFE", "ContentType": "application/octet-stream", - "ContentLength": 553738240, - "OriginDate": "2023-10-21T17:07:25.320000Z", - "PublicationDate": "2023-10-22T07:16:03.383675Z", - "ModificationDate": "2024-05-09T21:42:46.056222Z", + "ContentLength": 1196303395, + "OriginDate": "2023-10-21T15:13:27.236000Z", + "PublicationDate": "2023-10-22T04:59:54.285672Z", + "ModificationDate": "2024-05-09T21:39:12.847556Z", "Online": true, "EvictionDate": "9999-12-31T23:59:59.999999Z", - "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/02/S2A_MSIL2A_20200102T102421_N0500_R065_T32TPQ_20230505T004346.SAFE", + "S3Path": "/eodata/Sentinel-2/MSI/L2A_N0500/2020/01/06/S2A_MSIL2A_20200106T100401_N0500_R122_T33UWP_20230422T061153.SAFE", "Checksum": [ { - "Value": "e4c6be5dd5cd814a45f94b65885e376b", + "Value": "ee10a2bb200e6a17161c53aaaadccf6d", "Algorithm": "MD5", - "ChecksumDate": "2023-10-22T07:16:10.366594Z" + "ChecksumDate": "2023-10-22T05:00:05.368001Z" }, { - "Value": "c2c98e306a446dd75737bdddb18fe29f8142aec6c7455b11ce181f6d996103fe", + "Value": "88b3897f05e34aa24710d552417bb0d6c7174d1d9101d2352a7f406d3f53c11b", "Algorithm": "BLAKE3", - "ChecksumDate": "2023-10-22T07:16:11.856248Z" + "ChecksumDate": "2023-10-22T05:00:07.876332Z" } ], "ContentDate": { - "Start": "2020-01-02T10:24:21.024000Z", - "End": "2020-01-02T10:24:21.024000Z" + "Start": "2020-01-06T10:04:01.024000Z", + "End": "2020-01-06T10:04:01.024000Z" }, - "Footprint": "geography'SRID=4326;POLYGON ((11.0411590606528 45.1334815904547, 10.2720409677684 45.1467528555578, 10.2506169248015 44.1585207863936, 10.6406135705665 44.1519067748713, 10.6543194685486 44.1870009281757, 10.7141968074599 44.3323037683906, 10.773260367998 44.4777887352465, 10.8330147531357 44.6230734511932, 10.8922723786371 44.7685489768254, 10.9515158046297 44.9139937213494, 11.0108652367584 45.0594727154082, 11.0411590606528 45.1334815904547))'", + "Footprint": "geography'SRID=4326;POLYGON ((14.9997279041062 48.7530130044756, 14.9997330963449 47.7651665667219, 16.4647868669399 47.7558186458081, 16.4932694755772 48.7433372246506, 14.9997279041062 48.7530130044756))'", "GeoFootprint": { "type": "Polygon", "coordinates": [ [ [ - 11.0411590606528, - 45.1334815904547 - ], - [ - 10.2720409677684, - 45.1467528555578 - ], - [ - 10.2506169248015, - 44.1585207863936 - ], - [ - 10.6406135705665, - 44.1519067748713 - ], - [ - 10.6543194685486, - 44.1870009281757 - ], - [ - 10.7141968074599, - 44.3323037683906 - ], - [ - 10.773260367998, - 44.4777887352465 - ], - [ - 10.8330147531357, - 44.6230734511932 + 14.9997279041062, + 48.7530130044756 ], [ - 10.8922723786371, - 44.7685489768254 + 14.9997330963449, + 47.7651665667219 ], [ - 10.9515158046297, - 44.9139937213494 + 16.4647868669399, + 47.7558186458081 ], [ - 11.0108652367584, - 45.0594727154082 + 16.4932694755772, + 48.7433372246506 ], [ - 11.0411590606528, - 45.1334815904547 + 14.9997279041062, + 48.7530130044756 ] ] ] } } - ], - "@odata.nextLink": "https://catalogue.dataspace.copernicus.eu/odata/v1/Products?%24filter=Collection%2FName+eq+%27SENTINEL-2%27+and+ContentDate%2FStart+ge+2020-01-01T00%3A00%3A00+and+ContentDate%2FStart+le+2020-01-20T00%3A00%3A00+and+Online+eq+true+and+Attributes%2FOData.CSC.DoubleAttribute%2Fany%28att%3Aatt%2FName+eq+%27cloudCover%27+and+att%2FOData.CSC.DoubleAttribute%2FValue+le+50%29+and+contains%28Name%2C+%27L2A%27%29+and+not+contains%28Name%2C+%27_N9999%27%29&%24top=20&%24skip=20" + ] } diff --git a/tests/test_odata.py b/tests/test_odata.py index 361203b..09a4808 100644 --- a/tests/test_odata.py +++ b/tests/test_odata.py @@ -5,7 +5,7 @@ from geojson_pydantic import Feature -def test_extract_odata_products(): # mock_odata_search): +def test_extract_odata_products(mock_odata_search): url = "https://catalogue.dataspace.copernicus.eu/odata/v1/Products" collections = [ODataCollection.SENTINEL_2] datetime_range = (datetime(2020, 1, 1), datetime(2020, 1, 20)) From 10d1a3be1183a3d7197002467367d28618faa197 Mon Sep 17 00:00:00 2001 From: jankovicgd Date: Wed, 25 Jun 2025 10:29:06 +0200 Subject: [PATCH 6/6] ci: bump ubuntu images --- .github/workflows/docs.yml | 2 +- .github/workflows/main.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index a4021cc..4be1bba 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -26,7 +26,7 @@ permissions: jobs: build: - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 steps: - name: Check out repository uses: actions/checkout@v4 diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 3f45b06..6a07938 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -19,7 +19,7 @@ on: jobs: test: - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 strategy: matrix: python-version: ['3.10']