Skip to main content

HyP3 SDK

PyPI license PyPI pyversions PyPI version Conda version Conda platforms

DOI

A python wrapper around the HyP3 API

>>> from hyp3_sdk import HyP3
>>> hyp3 = HyP3(prompt='password')

>>> granule = 'S1A_IW_SLC__1SSV_20150621T120220_20150621T120232_006471_008934_72D8'
>>> job = hyp3.submit_rtc_job(granule=granule, name='MyNewJob')
>>> job = hyp3.watch(job)
>>> job.download_files()

[!IMPORTANT] To access most HyP3 functions, you must authenticate using Earthdata Login (EDL) credentials. For more information, see our authentication guide.

Install

In order to easily manage dependencies, we recommend using dedicated project environments via Anaconda/Miniconda or Python virtual environments.

The HyP3 SDK can be installed into a conda environment with

conda install -c conda-forge hyp3_sdk

or into a virtual environment with

python -m pip install hyp3_sdk

Quick Usage

There are 3 main classes that the SDK exposes:

  • HyP3 to perform HyP3 operations (find jobs, refresh job information, submitting new jobs)
  • Job to perform operations on single jobs (downloading products, check status)
  • Batch to perform operations on multiple jobs at once (downloading products, check status)

An instance of the HyP3 class will be needed to interact with the external HyP3 API.

>>> from hyp3_sdk import HyP3
>>> hyp3 = HyP3(username='MyUsername', password='MyPassword')

>>> granule = 'S1A_IW_SLC__1SSV_20150621T120220_20150621T120232_006471_008934_72D8'
>>> job = hyp3.submit_rtc_job(granule=granule, name='MyNewJob')
>>> job = hyp3.watch(job)
>>> job.download_files()

Connect to the HyP3 API

Create a connection to the HyP3 API using the HyP3 class:

import hyp3_sdk as sdk
hyp3 = sdk.HyP3()

This connects to the HyP3 Basic deployment by default. To connect to an alternate deployment such as HyP3+, specify the corresponding api_url:

hyp3_plus = sdk.HyP3(api_url='https://hyp3-plus.asf.alaska.edu')

Submitting Jobs

hyp3 has member functions for submitting new jobs:

rtc_job = hyp3.submit_rtc_job('granule_id', 'job_name')
insar_job = hyp3.submit_insar_job('reference_granule_id', 'secondary_granule_id', 'job_name')
insar_burst_job = hyp3.submit_insar_isce_burst_job('reference_granule_id', 'secondary_granule_id', 'job_name')
insar_multi_burst_job = hyp3.submit_insar_isce_multi_burst_job(['ref_id_1', 'ref_id_2'], ['sec_id_1', 'sec_id_2'], 'job_name')
autorift_job = hyp3.submit_autorift_job('reference_granule_id', 'secondary_granule_id', 'job_name')
aria_s1_gunw_job = hyp3.submit_aria_s1_gunw_job('ref_date', 'sec_date', 'frame_id', 'job_name')
opera_rtc_s1_job = hyp3.submit_opera_rtc_s1_job('granule_id')

Each of these functions will return an instance of the Job class that represents a new HyP3 job request.

Finding Existing Jobs

To find HyP3 jobs that were run previously, you can use the hyp3.find_jobs()

batch = hyp3.find_jobs()

This will return a Batch instance representing all jobs owned by you. You can also pass parameters to query to a specific set of jobs

Operations on Job and Batch

If your jobs are not complete you can use the HyP3 instance to update them, and wait from completion

batch = hyp3.find_jobs()
if not batch.complete():
    # to get updated information
    batch = hyp3.refresh(batch)
    # or to wait until completion and get updated information (which will take a fair bit)
    batch = hyp3.watch(batch)

Once you have complete jobs you can download the products to your machine

batch.download_files()

These operations also work on Job objects

job = hyp3.submit_rtc_job('S1A_IW_SLC__1SSV_20150621T120220_20150621T120232_006471_008934_72D8', 'MyJobName')
job = hyp3.watch(job)
job.download_files()

Documentation

For the full SDK API Reference, see the HyP3 documentation

Contact Us

Want to talk about the HyP3 SDK? We would love to hear from you!

Found a bug? Want to request a feature? Open an issue

General questions? Suggestions? Or just want to talk to the team? Chat with us on Gitter

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hyp3_sdk-7.7.8.tar.gz (44.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hyp3_sdk-7.7.8-py3-none-any.whl (16.1 kB view details)

Uploaded Python 3

File details

Details for the file hyp3_sdk-7.7.8.tar.gz.

File metadata

  • Download URL: hyp3_sdk-7.7.8.tar.gz
  • Upload date:
  • Size: 44.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for hyp3_sdk-7.7.8.tar.gz
Algorithm Hash digest
SHA256 ccf7f9f9123a12797e7b2f5c1393f97589b0f308f2f5c2845d2adcb2ad9b663c
MD5 cd9502cb41f2afb1409f899e50875eab
BLAKE2b-256 4a41066851ec4f4d6fa72611983d30dc7b528d7382642ee215690acda5a54b6b

See more details on using hashes here.

File details

Details for the file hyp3_sdk-7.7.8-py3-none-any.whl.

File metadata

  • Download URL: hyp3_sdk-7.7.8-py3-none-any.whl
  • Upload date:
  • Size: 16.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for hyp3_sdk-7.7.8-py3-none-any.whl
Algorithm Hash digest
SHA256 697c24aa15d089850237abfea40f80fa54b00ef9f851d72813ca1804f235b42e
MD5 b2451b8561c1ec694a493661de9d2581
BLAKE2b-256 1f11a4fcb9f59c2a334d7ad4055c42cec44921e88f7aa912f736dc74887fb6bb

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

7.7.8 This release

2 files

7.7.7

2 files

7.7.6

2 files

7.7.5

2 files

7.7.4

2 files

7.7.3

2 files

7.7.2

2 files

7.7.1

2 files

7.7.0

2 files

7.6.0

2 files

7.5.0

2 files

7.4.0

2 files

7.3.0

2 files

7.2.1

2 files

7.2.0

2 files

7.1.0

2 files

7.0.3

2 files

7.0.2

2 files

7.0.1

2 files

7.0.0

2 files

6.2.0

2 files

6.1.0

2 files

6.0.0

2 files

5.0.0

2 files

4.0.0

2 files

3.2.0

2 files

3.1.0

2 files

3.0.0

2 files

2.1.1

2 files

2.1.0

2 files

2.0.2

2 files

2.0.1

2 files

2.0.0

2 files

1.7.5

2 files

1.7.4

2 files

1.7.3

2 files

1.7.2

2 files

1.7.1

2 files

1.7.0

2 files

1.6.1

2 files

1.6.0

2 files

1.5.1

2 files

1.5.0

2 files

1.4.1

2 files

1.4.0

2 files

1.3.2

2 files

1.3.1

2 files

1.3.0

2 files

1.2.0

2 files

1.1.3

2 files

1.1.2

2 files

1.1.1

2 files

1.1.0

2 files

1.0.0

2 files

0.6.0

2 files

0.5.0

2 files

0.4.0

2 files

0.3.3

2 files

0.3.2

2 files

0.3.1

2 files

0.3.0

2 files

0.2.2

2 files

0.2.1

2 files

0.2.0

2 files

0.1.1

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page