vendor_fabric.cloud_params

Cloud API call parameter utilities.

This module provides utilities for building properly formatted parameter dictionaries for various cloud provider APIs (AWS, Google Cloud, etc.).

Key features:

  • Pagination limits (MaxResults/maxResults)

  • Key casing transformations (PascalCase for AWS, camelCase for Google)

  • Null/empty value filtering

  • Support for custom key transformations

Exported via vendor_fabric package.

Module Contents

Functions

get_cloud_call_params

Build a parameter dictionary for cloud API calls.

get_aws_call_params

Build parameters for AWS API calls.

get_google_call_params

Build parameters for Google Cloud API calls.

API

vendor_fabric.cloud_params.get_cloud_call_params(max_results: int | None = 10, no_max_results: bool = False, reject_null: bool = True, first_letter_to_lower: bool = False, first_letter_to_upper: bool = False, **kwargs: Any) extended_data.containers.ExtendedDict

Build a parameter dictionary for cloud API calls.

This function creates properly formatted parameter dictionaries for cloud provider API calls, handling common patterns like pagination limits and key casing.

Args: max_results: Maximum number of results to return. Defaults to 10. no_max_results: If True, don’t include MaxResults in params. reject_null: If True, exclude None/empty values from params. first_letter_to_lower: Convert param keys to camelCase. first_letter_to_upper: Convert param keys to PascalCase. **kwargs: Additional parameters to include.

Returns: An extended dictionary of parameters ready for the cloud API call.

Examples: >>> get_cloud_call_params(max_results=100, NextToken=”abc123”) {‘MaxResults’: 100, ‘NextToken’: ‘abc123’}

>>> get_cloud_call_params(first_letter_to_lower=True, pageToken="xyz")
{'maxResults': 10, 'pageToken': 'xyz'}
vendor_fabric.cloud_params.get_aws_call_params(max_results: int | None = 100, **kwargs: Any) extended_data.containers.ExtendedDict

Build parameters for AWS API calls.

AWS APIs typically use PascalCase keys (e.g., MaxResults, NextToken). Defaults to 100 results per page.

Args: max_results: Maximum number of results. Defaults to 100. **kwargs: Additional parameters (will be PascalCased).

Returns: Extended parameter dictionary with PascalCase keys.

Examples: >>> get_aws_call_params(NextToken=”abc”) {‘MaxResults’: 100, ‘NextToken’: ‘abc’}

>>> get_aws_call_params(max_results=50, IdentityStoreId="d-123")
{'MaxResults': 50, 'IdentityStoreId': 'd-123'}
vendor_fabric.cloud_params.get_google_call_params(max_results: int | None = 200, no_max_results: bool = False, **kwargs: Any) extended_data.containers.ExtendedDict

Build parameters for Google Cloud API calls.

Google APIs typically use camelCase keys (e.g., maxResults, pageToken). Defaults to 200 results per page.

Args: max_results: Maximum number of results. Defaults to 200. no_max_results: If True, don’t include maxResults in params. **kwargs: Additional parameters (will be camelCased).

Returns: Extended parameter dictionary with camelCase keys.

Examples: >>> get_google_call_params(pageToken=”xyz”) {‘maxResults’: 200, ‘pageToken’: ‘xyz’}

>>> get_google_call_params(no_max_results=True, customer_id="C123")
{'customerId': 'C123'}