The Planet Software Development Kit (SDK) for Python provides both a Python API and a command-line interface (CLI) to make use of the Planet APIs. Everything you need to get started is found in our online documentation.
Version 2.0 includes support for the core workflows of the following APIs:
- Data - Search for imagery from Planet's data catalog.
- Orders - Process and download or deliver imagery.
- Subscriptions - Set up a search to auto-process and deliver imagery.
- Features - Upload areas of interest to the Planet platform.
After the initial 2.0 release there will be additional work to support the remaining Planet APIs: basemaps, tasking and analytics.
The SDK follows Semantic Versioning and therefore only major releases should break compatibility. Minor versions may include new functionality and patch versions address bugs or trivial changes (like documentation).
Packages will be released to PyPi / Planet with semantic version identifiers that comply with PEP 440.
The Semantic Versioning stability scheme only applies to APIs that
are considered part of the public API. This includes library APIs exported
from the planet
package and documented in our
SDK developer documentation,
and the planet
CLI interface used for scripts. It does not include
library interfaces below the top level planet
Python package which are
considered internal and subject to change without notice.
SDK semantic versioning does not apply to the underlying Planet APIs, which follow their own independent version and release lifecycles.
If depending upon official packages from PyPI, a developer should feel
comfortable specifying planet == 2.*
unless depending on a specific feature
introduced at a minor version, in which case planet == 2.x.*
(where x is the
minor version of the new feature) should suffice.
Major versions are supported according to their designated support status, as defined below. Planet Labs PBC makes no formal commitment to a specific schedule, but will make every effort to provide reasonable notice of upcoming changes to the support status of major versions.
development
- Unstable. Under active development. Not recommended for production use. API stability not guaranteed. New features from active versions will be ported forward to the extent allowed by the scope of the new major version under development.active
- Actively maintained and supported. New features and bug fixes. Suitable for production use. API stability guaranteed according to semantic versioning, but subject to changes in the underlying Planet APIs.maintenance
- Critical bug fixes only.end-of-life
- No longer supported. Software packages will remain available.removed
- No longer available. Removed from distribution channels.
Active
minor versions will support Python versions that have not reached
end-of-life at the time of release.
See https://devguide.python.org/versions/ for current Python versions.
The default branch is always main
, and will correspond to the current stable
major release version. This branch should be considered in-development but
with tests and other build steps kept in a passing state.
See CONTRIBUTING.md for more information on branches.
Version | Status | Branch | Documentation | Initial Release | End of Active Development | End of Maintenance | Notes |
---|---|---|---|---|---|---|---|
3.x | development |
main-3.0-dev |
TBD | TBD | TBD | TBD | See RELEASE-PLANNING-X.0.md. |
2.x | active |
main |
Planet Labs Python Client v2 on Readthedocs.io | April 2023 | TBD | TBD | |
1.x | end-of-life |
v1 |
Planet Labs Python Client v1 on Github.io | April 2017 | April 2023 | TBD |
The Planet SDK for Python is hosted on PyPI and can simply be installed via:
pip install planet
To install from source, first clone this repository, then navigate to the root directory (where setup.py
lives) and run:
pip install .
Note that the above commands will install the Planet SDK into the global system Python unless a virtual environment is enabled. For more information on configuring a virtual environment from system Python, see the official Python venv documentation. For users who are running multiple versions of Python via pyenv, see the pyenv-virtualenv extension documentation.
Detailed installation instructions for the Planet SDK can be found in the Quick Start Guide of the documentation.
To contribute or develop with this library, see CONTRIBUTING.md.
Documentation is currently hosted online It should be considered 'in progress', with many updates to come. It can also be built and hosted locally (see CONTRIBUTING.md) or can be read from source in the docs directory.
Planet's APIs require an account for use. To get started you need to Get a Planet Account.