S2DR3 RISC API Version 0.2
Important
The API is asynchronous, meaning that the POST request will launch the processing and will return the metadata response. The processed data itself will appear in the corresponding GCP storage bucket a few minutes after the launch of the processing.
Job submission endpoint
https://s2dr3-job-20250428-862134799361.europe-west1.run.app/{USER_ID}
Example Request
Method: POST
{
"date": "2023-05-01",
"aoi": "19.93 49.28 20.00 49.35" #minx, miny, maxx, maxy
}
Main parameters
date– Exact date of the Sentinel-2 scene (will fail if the scene does not exist)aoi– Bounding box of the Area-of-interest. The area of the AOI should not exceed 150 sq.km (12x12 km bounding box)!
Example Response
{
"ISO": "UA",
"MGRS": "35UQR",
"PID": "T35UQR-20230810-u8600146",
"aoi_overlap": "1.0",
"bbox": "30.85 50.39 30.88 50.42",
"date": "20230810",
"job_id": "e26bb408-d330-11ef",
"save_path_MS": "gs://sentinel-s2dr3/UA/T35UQR/T35UQR-u8600146/S2L2Ax10_T35UQR-u8600146-20230810_MS.tif",
"save_path_TCI": "gs://sentinel-s2dr3/UA/T35UQR/T35UQR-u8600146/S2L2Ax10_T35UQR-u8600146-20230810_TCI.tif"
}
Main parameters
save_path_MS– Download URL for the super-resolved multi-spectral datasetsave_path_TCI– Download URL for the super-resolved true-colour dataset
Python call example
import requests
# Define the URL and the payload (JSON data)
url = 'https://s2dr3-job-20250428-862134799361.europe-west1.run.app/{USER_ID}'
payload = {
"date": "2023-05-01",
"aoi": "19.93 49.28 20.00 49.35"
}
# Make the POST request
response = requests.post(url, json=payload)
# Check the response
if response.status_code == 200:
print("Success:", response.json()) # Print the JSON response
else:
print("Error:", response.status_code, response.text) # Print error message
getState endpoint
https://s2dr3-job-20250428-862134799361.europe-west1.run.app/{USER_ID}/e26bb408-d330-11ef
Example Response
{
"PID":"T35UQR-u8600146-20230810",
"State":"completed",
"jobID":"e26bb408-d330-11ef"
}
Python call example
import requests
# Define the URL and the payload (JSON data)
url = 'https://s2dr3-job-20250428-862134799361.europe-west1.run.app/{USER_ID}/e26bb408-d330-11ef'
# Make the GET request
response = requests.get(url)
# Check the response
if response.status_code == 200:
print("Success:", response.json()) # Print the JSON response
else:
print("Error:", response.status_code, response.text) # Print error message
Tile Server
https://kgbbmarmdgv53gdb47pls2v2oe0qotcs.lambda-url.eu-central-1.on.aws/cog/tiles/WebMercatorQuad/{z}/{x}/{y}@2x?url=s3://sentinel-s2dr3/{MGRS}/{SID}/{PID}/S2L2A_{PID}_TCI.tif
https://kgbbmarmdgv53gdb47pls2v2oe0qotcs.lambda-url.eu-central-1.on.aws/cog/tiles/WebMercatorQuad/{z}/{x}/{y}@2x?url=s3://sentinel-s2dr3/{MGRS}/{SID}/{PID}/S2L2A_{PID}_NDVI.tif
https://kgbbmarmdgv53gdb47pls2v2oe0qotcs.lambda-url.eu-central-1.on.aws/cog/tiles/WebMercatorQuad/{z}/{x}/{y}@2x?url=s3://sentinel-s2dr3/{MGRS}/{SID}/{PID}/S2L2A_{PID}_IRP.tif
PID = T35UQR-860014671-20230810
MGRS = T35UQR
SID = 860014671