Conversation
There was a problem hiding this comment.
Pull Request Overview
This PR implements a complete, production-ready Quota API client for the Planet Python SDK that enables users to create, manage, and monitor quota reservations for Planet's data products.
- Complete async QuotaClient with methods for creating reservations, estimating quota requirements, and managing existing reservations
- Synchronous QuotaAPI wrapper following established SDK patterns with proper sync/async integration
- Full CLI implementation with subcommands for all quota operations including JSON file input support
Reviewed Changes
Copilot reviewed 11 out of 11 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| planet/clients/quota.py | Core async QuotaClient implementation with reservation management methods |
| planet/sync/quota.py | Synchronous wrapper QuotaAPI following established patterns |
| planet/sync/client.py | Integration of QuotaAPI into main Planet client |
| planet/clients/init.py | Export QuotaClient in client registry |
| planet/init.py | Export QuotaClient at package level |
| planet/cli/quota.py | Complete CLI implementation with subcommands |
| planet/cli/cli.py | Integration of quota CLI commands |
| tests/unit/test_quota.py | Unit tests for client initialization and URL construction |
| tests/integration/test_quota_api.py | Integration tests with HTTP mocking |
| tests/integration/test_quota_cli.py | CLI integration tests |
| tests/unit/test_client.py | Updated existing tests for quota integration |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
| from planet.http import Session | ||
| from planet.models import Paged | ||
|
|
||
| BASE_URL = f'{PLANET_BASE_URL}/quota/v1' |
There was a problem hiding this comment.
The BASE_URL variable is defined but never used within this file. Consider removing it since the default URL is already handled in the init method or use it consistently throughout the file.
|
Closing as an abandoned proof of concept; will follow up on this integration more formally at a later date. |
This PR provides a complete, production-ready Quota API client that seamlessly integrates with the existing Planet Python SDK architecture and follows all established patterns and conventions. Generated with help from Claude Code:
Ticket
#1191
Key Features
Details
Async QuotaClient (planet/clients/quota.py)
Sync QuotaAPI (planet/sync/quota.py)
CLI Implementation (planet/cli/quota.py)
Integration
Comprehensive Testing
Code Quality