-
Notifications
You must be signed in to change notification settings - Fork 111
feat: add projects billing fields list methods #621
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR adds new billing fields functionality to the Deepgram Python SDK by implementing list methods for projects billing fields. The changes introduce endpoints to retrieve accessors, deployment types, tags, and line items used for billing data within specified time periods.
- Adds new response types for listing billing fields with deployment item enums
- Implements synchronous and asynchronous client methods for billing fields operations
- Updates module exports and documentation to include the new billing fields functionality
Reviewed Changes
Copilot reviewed 12 out of 12 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
src/deepgram/types/list_billing_fields_v1response_deployments_item.py |
Defines deployment type union for billing fields response |
src/deepgram/types/list_billing_fields_v1response.py |
Implements main response model for billing fields with accessors, deployments, tags, and line items |
src/deepgram/types/__init__.py |
Exports new billing fields response types |
src/deepgram/requests/list_billing_fields_v1response.py |
Defines request parameters for billing fields endpoints |
src/deepgram/requests/__init__.py |
Exports new billing fields request parameters |
src/deepgram/manage/v1/projects/billing/fields/raw_client.py |
Implements raw HTTP client for billing fields operations |
src/deepgram/manage/v1/projects/billing/fields/client.py |
Implements high-level client wrapper for billing fields with examples |
src/deepgram/manage/v1/projects/billing/fields/__init__.py |
Module initialization for billing fields |
src/deepgram/manage/v1/projects/billing/client.py |
Integrates fields client into billing client hierarchy |
src/deepgram/manage/v1/projects/billing/__init__.py |
Exports fields module in billing package |
src/deepgram/__init__.py |
Adds billing fields types to main package exports |
reference.md |
Documents the new billing fields list endpoint with usage examples |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Add comprehensive unit tests for ListBillingFieldsV1Response model - Test model validation with full, minimal, and empty data scenarios - Test individual fields: accessors, deployments, tags, line_items - Test serialization, deserialization, and immutability - Test edge cases: large datasets, special characters, unicode - Test deployment types and integration scenarios - 26 passing tests with full coverage of billing fields endpoint
|
Important Review skippedBot user detected. To trigger a single review, invoke the You can disable this status message by setting the Comment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
Copilot reviewed 13 out of 13 changed files in this pull request and generated 1 comment.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| ListBillingFieldsV1ResponseDeploymentsItem = typing.Union[ | ||
| typing.Literal["hosted", "beta", "self-hosted", "dedicated"], typing.Any | ||
| ] |
Copilot
AI
Oct 30, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The union with typing.Any makes this type definition ineffective for type checking. Consider using only the literal values or adding a clear comment explaining why typing.Any is necessary. This allows any value to be accepted, which defeats the purpose of having predefined literals.
| ListBillingFieldsV1ResponseDeploymentsItem = typing.Union[ | |
| typing.Literal["hosted", "beta", "self-hosted", "dedicated"], typing.Any | |
| ] | |
| ListBillingFieldsV1ResponseDeploymentsItem = typing.Literal["hosted", "beta", "self-hosted", "dedicated"] |
Uh oh!
There was an error while loading. Please reload this page.