Command-Line Interface
Phi-Down ships with a CLI for downloads, product listing, and Sentinel-1 burst coverage analysis.
Basic Usage
phidown [OPTIONS]
phidown list [OPTIONS]
Download Commands
Download by product name:
phidown --name S1A_IW_GRDH_1SDV_20240503T031926_20240503T031942_053701_0685FB_E003 -o ./data
Download by direct S3 path:
phidown --s3path /eodata/Sentinel-1/SAR/IW_GRDH_1S/2024/05/03/... -o ./data
Common download options:
-o, --output-dir: Output directory for downloaded data-c, --config-file: Path to the.s5cfgcredentials file--mode {fast,safe}:fastusess5cmdfor throughput,safeuses resumable native downloads--no-progress: Disable the progress bar--no-download-all: Download a single object instead of an entire directory when using--s3path--reset: Recreate credentials configuration
.s5cfg notes:
Phi-Down reads credentials from the
[default]section of the specified file.If
-cis omitted, Phi-Down uses.s5cfgin the current working directory.--resetis useful when a credential pair has expired and you want the tool to rewrite the file interactively.For automation, prefer an explicit config path instead of relying on the shell’s current directory.
Download Modes
These options apply to download workflows:
--mode fast: Prefer thes5cmdtransfer path for maximum throughput--mode safe: Prefer the resumable native transfer path for interruption recovery--retry-count: Command-level retry count--state-file: Custom JSON state file path (default:.phidown/download_state.jsonin output directory)--s5cmd-retry-count: Internal retry count passed tos5cmd--max-workers: Worker count passed tos5cmd--backoff-baseand--backoff-max: Exponential retry backoff controls
Legacy compatibility options are still accepted for now:
--robust: Deprecated alias for--mode safe--resume-mode {off,product}: Deprecated legacy resume selector
Listing Products
You can list products either with the subcommand form:
phidown list --collection SENTINEL-2 --product-type S2MSI2A --bbox 10 45 12 46 --start-date 2024-05-01T00:00:00 --end-date 2024-05-31T23:59:59
or with the main command:
phidown --list --collection SENTINEL-2 --product-type S2MSI2A --bbox 10 45 12 46 --start-date 2024-05-01T00:00:00 --end-date 2024-05-31T23:59:59
Listing requires:
One spatial filter:
--aoi-wktor--bboxAt least one temporal filter:
--start-dateor--end-date
Useful listing options:
--collection: Collection name, defaultSENTINEL-1--product-type: Product type filter--orbit-direction:ASCENDINGorDESCENDING--cloud-cover: Optical cloud threshold--top: Maximum number of results--order-by: OData sort expression--format {table,json,csv}: Output format--columns: Comma-separated column selection--save: Save output to a file
Burst Coverage Analysis
Run Sentinel-1 burst coverage analysis over an AOI and date range:
phidown --burst-coverage --bbox 10 45 12 46 --start-date 2024-08-02T00:00:00 --end-date 2024-08-20T23:59:59 --polarisation VV
Burst coverage requires:
One spatial filter:
--aoi-wktor--bboxBoth
--start-dateand--end-date
Useful burst options:
--polarisation {VV,VH,HH,HV}--orbit-direction {ASCENDING,DESCENDING}--relative-orbit-number--preferred-subswathsuch asIW1,IW2,IW3--format {table,json,csv}--columnsand--save
Examples
List selected columns as CSV:
phidown list \
--collection SENTINEL-1 \
--product-type SLC \
--bbox 10 45 12 46 \
--start-date 2024-08-01T00:00:00 \
--end-date 2024-08-31T23:59:59 \
--columns Name,S3Path,ContentDate \
--format csv \
--save ./outputs/s1_list.csv
Run a resumable download:
phidown \
--name S1A_IW_GRDH_1SDV_20240503T031926_20240503T031942_053701_0685FB_E003 \
-o ./data \
--mode safe
Show help and version:
phidown --help
phidown --version