growsurf-python 1.6.0__tar.gz → 1.7.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- growsurf_python-1.7.0/.release-please-manifest.json +3 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/CHANGELOG.md +12 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/PKG-INFO +1 -1
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/pyproject.toml +1 -1
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/_version.py +1 -1
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/resources/campaign/campaign.py +12 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign_list_participants_params.py +8 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/api_resources/test_campaign.py +2 -0
- growsurf_python-1.6.0/.release-please-manifest.json +0 -3
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/.gitignore +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/CONTRIBUTING.md +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/LICENSE +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/README.md +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/SECURITY.md +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/api.md +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/bin/check-release-environment +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/bin/publish-pypi +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/examples/.keep +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/release-please-config.json +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/requirements-dev.lock +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/__init__.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/_base_client.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/_client.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/_compat.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/_constants.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/_exceptions.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/_files.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/_models.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/_qs.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/_resource.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/_streaming.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/_types.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/_utils/__init__.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/_utils/_compat.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/_utils/_datetime_parse.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/_utils/_json.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/_utils/_logs.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/_utils/_path.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/_utils/_proxy.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/_utils/_reflection.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/_utils/_resources_proxy.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/_utils/_streams.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/_utils/_sync.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/_utils/_transform.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/_utils/_typing.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/_utils/_utils.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/lib/.keep +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/py.typed +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/resources/__init__.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/resources/account.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/resources/campaign/__init__.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/resources/campaign/commission.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/resources/campaign/design.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/resources/campaign/emails.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/resources/campaign/installation.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/resources/campaign/integrations.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/resources/campaign/options.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/resources/campaign/participant.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/resources/campaign/program_resources.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/resources/campaign/reward.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/resources/campaign/rewards.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/resources/campaign/webhooks.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/resources/team.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/__init__.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/account_create_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/affiliate_application.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/affiliate_application_answer.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/affiliate_application_list_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/affiliate_invite.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/affiliate_invite_list_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/analytics_availability.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/analytics_unavailable_reason.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/__init__.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/campaign.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/campaign_design.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/campaign_emails.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/campaign_installation.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/campaign_options.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/campaign_reward_list_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/commission_approve_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/commission_delete_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/delete_program_resource_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/delete_reward_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/delete_webhook_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/email_participant_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/fraud_risk_level.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/integration.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/integration_list_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant_activation_analytics.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant_activity_logs_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant_add_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant_analytics_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant_analytics_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant_bulk_delete_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant_bulk_delete_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant_delete_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant_email_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant_get_payout_destination_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant_list_activity_logs_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant_list_commissions_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant_list_payouts_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant_list_referrals_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant_list_rewards_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant_list_rewards_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant_record_transaction_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant_record_transaction_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant_refund_transaction_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant_refund_transaction_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant_request_payout_destination_confirmation_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant_request_payout_destination_confirmation_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant_reward.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant_send_invites_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant_send_invites_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant_trigger_referral_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant_trigger_referral_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant_update_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/pending_analytics_erasure.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/program_resource.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/program_resource_list_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/program_resource_upload_result.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/program_resource_upload_ticket.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/referral_source.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/referral_status.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/reward.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/reward_approve_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/reward_approve_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/reward_create_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/reward_delete_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/reward_fulfill_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/reward_tax_valuation.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/reward_update_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/webhook.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/webhook_create_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/webhook_event.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/webhook_list_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/webhook_test_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/webhook_test_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/webhook_update_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign_activation_analytics_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign_create_affiliate_invite_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign_create_mobile_participant_token_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign_create_mobile_participant_token_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign_create_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign_engagement_analytics.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign_list_affiliate_applications_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign_list_affiliate_invites_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign_list_commissions_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign_list_leaderboard_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign_list_payouts_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign_list_referrals_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign_list_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign_retrieve_activation_analytics_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign_retrieve_analytics_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign_retrieve_analytics_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign_review_affiliate_application_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign_update_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/commission_structure.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/create_account_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/email_analytics.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/participant_commission_list.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/participant_list.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/participant_payout_list.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/referral_list.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/rotate_api_key_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/team.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/team_update_params.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/verification_email_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/__init__.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/api_resources/__init__.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/api_resources/campaign/__init__.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/api_resources/campaign/test_commission.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/api_resources/campaign/test_design.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/api_resources/campaign/test_emails.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/api_resources/campaign/test_installation.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/api_resources/campaign/test_integrations.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/api_resources/campaign/test_options.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/api_resources/campaign/test_participant.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/api_resources/campaign/test_program_resources.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/api_resources/campaign/test_reward.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/api_resources/campaign/test_rewards.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/api_resources/campaign/test_webhooks.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/api_resources/test_account.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/api_resources/test_team_contract.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/conftest.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/sample_file.txt +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/test_client.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/test_extract_files.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/test_files.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/test_models.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/test_qs.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/test_required_args.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/test_response.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/test_streaming.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/test_transform.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/test_utils/test_datetime_parse.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/test_utils/test_json.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/test_utils/test_path.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/test_utils/test_proxy.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/test_utils/test_typing.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/types/test_affiliate_application.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/types/test_analytics_reward_status.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/types/test_email_analytics.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/types/test_lead_reward_events.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/types/test_participant_activation_engagement_analytics.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/types/test_participant_contract.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/types/test_payout_provider_forward_compat.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/types/test_referral_source.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/utils.py +0 -0
- {growsurf_python-1.6.0 → growsurf_python-1.7.0}/uv.lock +0 -0
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [1.7.0](https://github.com/growsurf/growsurf-python/compare/v1.6.0...v1.7.0) (2026-09-17)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* **api:** add metadata filter to campaign.listParticipants ([272557c](https://github.com/growsurf/growsurf-python/commit/272557cb7e9e1094caa4490722c027f7d5827198))
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Chores
|
|
12
|
+
|
|
13
|
+
* merge main (release 1.6.0) into dev ([b90d168](https://github.com/growsurf/growsurf-python/commit/b90d16892b9bf93a343e26b0b3c211a260e13064))
|
|
14
|
+
|
|
3
15
|
## [1.6.0](https://github.com/growsurf/growsurf-python/compare/v1.5.1...v1.6.0) (2026-09-14)
|
|
4
16
|
|
|
5
17
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: growsurf-python
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.7.0
|
|
4
4
|
Summary: The official Python library for the growsurf API
|
|
5
5
|
Project-URL: Homepage, https://github.com/growsurf/growsurf-python
|
|
6
6
|
Project-URL: Repository, https://github.com/growsurf/growsurf-python
|
|
@@ -624,6 +624,7 @@ class CampaignResource(SyncAPIResource):
|
|
|
624
624
|
id: str,
|
|
625
625
|
*,
|
|
626
626
|
limit: int | Omit = omit,
|
|
627
|
+
metadata: Dict[str, str] | Omit = omit,
|
|
627
628
|
next_id: str | Omit = omit,
|
|
628
629
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
629
630
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
@@ -638,6 +639,10 @@ class CampaignResource(SyncAPIResource):
|
|
|
638
639
|
Args:
|
|
639
640
|
limit: Number of results to return. Maximum 100.
|
|
640
641
|
|
|
642
|
+
metadata: Return only participants whose metadata matches every given key and value
|
|
643
|
+
exactly. Send each pair as `metadata[key]=value`. Up to 3 keys per request.
|
|
644
|
+
Values compare as strings, which is how metadata is stored.
|
|
645
|
+
|
|
641
646
|
next_id: ID to start the next paged result set with.
|
|
642
647
|
|
|
643
648
|
extra_headers: Send extra headers
|
|
@@ -660,6 +665,7 @@ class CampaignResource(SyncAPIResource):
|
|
|
660
665
|
query=maybe_transform(
|
|
661
666
|
{
|
|
662
667
|
"limit": limit,
|
|
668
|
+
"metadata": metadata,
|
|
663
669
|
"next_id": next_id,
|
|
664
670
|
},
|
|
665
671
|
campaign_list_participants_params.CampaignListParticipantsParams,
|
|
@@ -1802,6 +1808,7 @@ class AsyncCampaignResource(AsyncAPIResource):
|
|
|
1802
1808
|
id: str,
|
|
1803
1809
|
*,
|
|
1804
1810
|
limit: int | Omit = omit,
|
|
1811
|
+
metadata: Dict[str, str] | Omit = omit,
|
|
1805
1812
|
next_id: str | Omit = omit,
|
|
1806
1813
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
1807
1814
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
@@ -1816,6 +1823,10 @@ class AsyncCampaignResource(AsyncAPIResource):
|
|
|
1816
1823
|
Args:
|
|
1817
1824
|
limit: Number of results to return. Maximum 100.
|
|
1818
1825
|
|
|
1826
|
+
metadata: Return only participants whose metadata matches every given key and value
|
|
1827
|
+
exactly. Send each pair as `metadata[key]=value`. Up to 3 keys per request.
|
|
1828
|
+
Values compare as strings, which is how metadata is stored.
|
|
1829
|
+
|
|
1819
1830
|
next_id: ID to start the next paged result set with.
|
|
1820
1831
|
|
|
1821
1832
|
extra_headers: Send extra headers
|
|
@@ -1838,6 +1849,7 @@ class AsyncCampaignResource(AsyncAPIResource):
|
|
|
1838
1849
|
query=await async_maybe_transform(
|
|
1839
1850
|
{
|
|
1840
1851
|
"limit": limit,
|
|
1852
|
+
"metadata": metadata,
|
|
1841
1853
|
"next_id": next_id,
|
|
1842
1854
|
},
|
|
1843
1855
|
campaign_list_participants_params.CampaignListParticipantsParams,
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
+
from typing import Dict
|
|
5
6
|
from typing_extensions import Annotated, TypedDict
|
|
6
7
|
|
|
7
8
|
from .._utils import PropertyInfo
|
|
@@ -13,5 +14,12 @@ class CampaignListParticipantsParams(TypedDict, total=False):
|
|
|
13
14
|
limit: int
|
|
14
15
|
"""Number of results to return. Maximum 100."""
|
|
15
16
|
|
|
17
|
+
metadata: Dict[str, str]
|
|
18
|
+
"""
|
|
19
|
+
Return only participants whose metadata matches every given key and value
|
|
20
|
+
exactly. Send each pair as `metadata[key]=value`. Up to 3 keys per request.
|
|
21
|
+
Values compare as strings, which is how metadata is stored.
|
|
22
|
+
"""
|
|
23
|
+
|
|
16
24
|
next_id: Annotated[str, PropertyInfo(alias="nextId")]
|
|
17
25
|
"""ID to start the next paged result set with."""
|
|
@@ -483,6 +483,7 @@ class TestCampaign:
|
|
|
483
483
|
campaign = client.campaign.list_participants(
|
|
484
484
|
id="id",
|
|
485
485
|
limit=1,
|
|
486
|
+
metadata={"foo": "string"},
|
|
486
487
|
next_id="nextId",
|
|
487
488
|
)
|
|
488
489
|
assert_matches_type(ParticipantList, campaign, path=["response"])
|
|
@@ -1504,6 +1505,7 @@ class TestAsyncCampaign:
|
|
|
1504
1505
|
campaign = await async_client.campaign.list_participants(
|
|
1505
1506
|
id="id",
|
|
1506
1507
|
limit=1,
|
|
1508
|
+
metadata={"foo": "string"},
|
|
1507
1509
|
next_id="nextId",
|
|
1508
1510
|
)
|
|
1509
1511
|
assert_matches_type(ParticipantList, campaign, path=["response"])
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/resources/campaign/commission.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/resources/campaign/installation.py
RENAMED
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/resources/campaign/integrations.py
RENAMED
|
File without changes
|
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/resources/campaign/participant.py
RENAMED
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/resources/campaign/program_resources.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/affiliate_application_answer.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/affiliate_invite_list_response.py
RENAMED
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/analytics_availability.py
RENAMED
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/analytics_unavailable_reason.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/campaign_design.py
RENAMED
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/campaign_emails.py
RENAMED
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/campaign_installation.py
RENAMED
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/campaign_options.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/fraud_risk_level.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/participant_reward.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/program_resource.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/referral_source.py
RENAMED
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/referral_status.py
RENAMED
|
File without changes
|
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/reward_approve_params.py
RENAMED
|
File without changes
|
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/reward_create_params.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/reward_tax_valuation.py
RENAMED
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/reward_update_params.py
RENAMED
|
File without changes
|
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/webhook_create_params.py
RENAMED
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/webhook_event.py
RENAMED
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/webhook_list_response.py
RENAMED
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/webhook_test_params.py
RENAMED
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/webhook_test_response.py
RENAMED
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign/webhook_update_params.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign_create_params.py
RENAMED
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign_engagement_analytics.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign_list_payouts_params.py
RENAMED
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign_list_referrals_params.py
RENAMED
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign_list_response.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/campaign_update_params.py
RENAMED
|
File without changes
|
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/create_account_response.py
RENAMED
|
File without changes
|
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/participant_commission_list.py
RENAMED
|
File without changes
|
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/participant_payout_list.py
RENAMED
|
File without changes
|
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/rotate_api_key_response.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/src/growsurf/types/verification_email_response.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/api_resources/campaign/test_commission.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/api_resources/campaign/test_installation.py
RENAMED
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/api_resources/campaign/test_integrations.py
RENAMED
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/api_resources/campaign/test_options.py
RENAMED
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/api_resources/campaign/test_participant.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/api_resources/campaign/test_rewards.py
RENAMED
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/api_resources/campaign/test_webhooks.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{growsurf_python-1.6.0 → growsurf_python-1.7.0}/tests/types/test_payout_provider_forward_compat.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|