growsurf-python 1.7.0__tar.gz → 1.8.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.8.0/.release-please-manifest.json +3 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/CHANGELOG.md +32 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/PKG-INFO +2 -2
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/pyproject.toml +2 -2
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/requirements-dev.lock +9 -23
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/_version.py +1 -1
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/resources/campaign/campaign.py +6 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/campaign_design.py +4 -0
- growsurf_python-1.8.0/src/growsurf/types/campaign_create_params.py +70 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/uv.lock +8 -8
- growsurf_python-1.7.0/.release-please-manifest.json +0 -3
- growsurf_python-1.7.0/src/growsurf/types/campaign_create_params.py +0 -56
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/.gitignore +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/CONTRIBUTING.md +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/LICENSE +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/README.md +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/SECURITY.md +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/api.md +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/bin/check-release-environment +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/bin/publish-pypi +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/examples/.keep +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/release-please-config.json +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/__init__.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/_base_client.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/_client.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/_compat.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/_constants.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/_exceptions.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/_files.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/_models.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/_qs.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/_resource.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/_streaming.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/_types.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/_utils/__init__.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/_utils/_compat.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/_utils/_datetime_parse.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/_utils/_json.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/_utils/_logs.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/_utils/_path.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/_utils/_proxy.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/_utils/_reflection.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/_utils/_resources_proxy.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/_utils/_streams.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/_utils/_sync.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/_utils/_transform.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/_utils/_typing.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/_utils/_utils.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/lib/.keep +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/py.typed +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/resources/__init__.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/resources/account.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/resources/campaign/__init__.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/resources/campaign/commission.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/resources/campaign/design.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/resources/campaign/emails.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/resources/campaign/installation.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/resources/campaign/integrations.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/resources/campaign/options.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/resources/campaign/participant.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/resources/campaign/program_resources.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/resources/campaign/reward.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/resources/campaign/rewards.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/resources/campaign/webhooks.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/resources/team.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/__init__.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/account_create_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/affiliate_application.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/affiliate_application_answer.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/affiliate_application_list_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/affiliate_invite.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/affiliate_invite_list_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/analytics_availability.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/analytics_unavailable_reason.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/__init__.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/campaign.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/campaign_emails.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/campaign_installation.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/campaign_options.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/campaign_reward_list_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/commission_approve_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/commission_delete_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/delete_program_resource_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/delete_reward_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/delete_webhook_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/email_participant_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/fraud_risk_level.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/integration.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/integration_list_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/participant.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/participant_activation_analytics.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/participant_activity_logs_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/participant_add_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/participant_analytics_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/participant_analytics_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/participant_bulk_delete_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/participant_bulk_delete_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/participant_delete_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/participant_email_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/participant_get_payout_destination_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/participant_list_activity_logs_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/participant_list_commissions_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/participant_list_payouts_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/participant_list_referrals_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/participant_list_rewards_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/participant_list_rewards_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/participant_record_transaction_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/participant_record_transaction_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/participant_refund_transaction_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/participant_refund_transaction_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/participant_request_payout_destination_confirmation_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/participant_request_payout_destination_confirmation_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/participant_reward.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/participant_send_invites_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/participant_send_invites_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/participant_trigger_referral_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/participant_trigger_referral_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/participant_update_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/pending_analytics_erasure.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/program_resource.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/program_resource_list_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/program_resource_upload_result.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/program_resource_upload_ticket.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/referral_source.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/referral_status.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/reward.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/reward_approve_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/reward_approve_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/reward_create_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/reward_delete_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/reward_fulfill_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/reward_tax_valuation.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/reward_update_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/webhook.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/webhook_create_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/webhook_event.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/webhook_list_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/webhook_test_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/webhook_test_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/webhook_update_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign_activation_analytics_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign_create_affiliate_invite_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign_create_mobile_participant_token_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign_create_mobile_participant_token_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign_engagement_analytics.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign_list_affiliate_applications_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign_list_affiliate_invites_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign_list_commissions_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign_list_leaderboard_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign_list_participants_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign_list_payouts_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign_list_referrals_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign_list_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign_retrieve_activation_analytics_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign_retrieve_analytics_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign_retrieve_analytics_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign_review_affiliate_application_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign_update_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/commission_structure.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/create_account_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/email_analytics.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/participant_commission_list.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/participant_list.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/participant_payout_list.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/referral_list.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/rotate_api_key_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/team.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/team_update_params.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/verification_email_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/__init__.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/api_resources/__init__.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/api_resources/campaign/__init__.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/api_resources/campaign/test_commission.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/api_resources/campaign/test_design.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/api_resources/campaign/test_emails.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/api_resources/campaign/test_installation.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/api_resources/campaign/test_integrations.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/api_resources/campaign/test_options.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/api_resources/campaign/test_participant.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/api_resources/campaign/test_program_resources.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/api_resources/campaign/test_reward.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/api_resources/campaign/test_rewards.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/api_resources/campaign/test_webhooks.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/api_resources/test_account.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/api_resources/test_campaign.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/api_resources/test_team_contract.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/conftest.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/sample_file.txt +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/test_client.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/test_extract_files.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/test_files.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/test_models.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/test_qs.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/test_required_args.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/test_response.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/test_streaming.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/test_transform.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/test_utils/test_datetime_parse.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/test_utils/test_json.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/test_utils/test_path.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/test_utils/test_proxy.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/test_utils/test_typing.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/types/test_affiliate_application.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/types/test_analytics_reward_status.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/types/test_email_analytics.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/types/test_lead_reward_events.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/types/test_participant_activation_engagement_analytics.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/types/test_participant_contract.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/types/test_payout_provider_forward_compat.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/types/test_referral_source.py +0 -0
- {growsurf_python-1.7.0 → growsurf_python-1.8.0}/tests/utils.py +0 -0
|
@@ -1,5 +1,37 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [1.8.0](https://github.com/growsurf/growsurf-python/compare/v1.7.1...v1.8.0) (2026-09-19)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* **api:** add campaign design widget section and healthcare goals ([8115287](https://github.com/growsurf/growsurf-python/commit/8115287977ba70fc6407a488daa90a57d7c7be8d))
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Chores
|
|
12
|
+
|
|
13
|
+
* merge dev into main ([b868b86](https://github.com/growsurf/growsurf-python/commit/b868b8627a22aae8cdcc11e5d09b9b4715a7681d))
|
|
14
|
+
* merge dev into main ([af640f1](https://github.com/growsurf/growsurf-python/commit/af640f17a284ca21a87e927fbb397d5c49f9e6d5))
|
|
15
|
+
* merge dev into main ([e55467c](https://github.com/growsurf/growsurf-python/commit/e55467ce3718631d3bef61d91a1c91850766d7b6))
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
### Documentation
|
|
19
|
+
|
|
20
|
+
* **api:** document the starter rewards each campaign goal seeds ([d696b88](https://github.com/growsurf/growsurf-python/commit/d696b8800fafe648a2414b349a60bb5badabc71a))
|
|
21
|
+
* **api:** document the starter rewards each campaign goal seeds ([15d38b6](https://github.com/growsurf/growsurf-python/commit/15d38b6cb62f8aa11126cd37b808dbd9efec5368))
|
|
22
|
+
|
|
23
|
+
## [1.7.1](https://github.com/growsurf/growsurf-python/compare/v1.7.0...v1.7.1) (2026-09-18)
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
### Bug Fixes
|
|
27
|
+
|
|
28
|
+
* **package:** point package homepage at growsurf.com ([321251a](https://github.com/growsurf/growsurf-python/commit/321251af0efad5384005d05379f07443e9175868))
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
### Chores
|
|
32
|
+
|
|
33
|
+
* merge dev into main ([d256049](https://github.com/growsurf/growsurf-python/commit/d256049e24e343e8a2eb2b1249e71aaa37437345))
|
|
34
|
+
|
|
3
35
|
## [1.7.0](https://github.com/growsurf/growsurf-python/compare/v1.6.0...v1.7.0) (2026-09-17)
|
|
4
36
|
|
|
5
37
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: growsurf-python
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.8.0
|
|
4
4
|
Summary: The official Python library for the growsurf API
|
|
5
|
-
Project-URL: Homepage, https://
|
|
5
|
+
Project-URL: Homepage, https://growsurf.com/
|
|
6
6
|
Project-URL: Repository, https://github.com/growsurf/growsurf-python
|
|
7
7
|
Author: Growsurf
|
|
8
8
|
License: Apache-2.0
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "growsurf-python"
|
|
3
|
-
version = "1.
|
|
3
|
+
version = "1.8.0"
|
|
4
4
|
description = "The official Python library for the growsurf API"
|
|
5
5
|
dynamic = ["readme"]
|
|
6
6
|
license = "Apache-2.0"
|
|
@@ -36,7 +36,7 @@ classifiers = [
|
|
|
36
36
|
]
|
|
37
37
|
|
|
38
38
|
[project.urls]
|
|
39
|
-
Homepage = "https://
|
|
39
|
+
Homepage = "https://growsurf.com/"
|
|
40
40
|
Repository = "https://github.com/growsurf/growsurf-python"
|
|
41
41
|
|
|
42
42
|
[project.optional-dependencies]
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
-e .
|
|
4
4
|
annotated-types==0.7.0
|
|
5
5
|
# via pydantic
|
|
6
|
-
anyio==4.
|
|
6
|
+
anyio==4.15.1
|
|
7
7
|
# via
|
|
8
8
|
# growsurf-python
|
|
9
9
|
# httpx
|
|
@@ -32,18 +32,14 @@ httpx==0.28.1
|
|
|
32
32
|
# via
|
|
33
33
|
# growsurf-python
|
|
34
34
|
# respx
|
|
35
|
-
idna==3.
|
|
35
|
+
idna==3.19
|
|
36
36
|
# via
|
|
37
37
|
# anyio
|
|
38
38
|
# httpx
|
|
39
39
|
importlib-metadata==8.7.1
|
|
40
|
-
iniconfig==2.
|
|
40
|
+
iniconfig==2.3.0
|
|
41
41
|
# via pytest
|
|
42
|
-
|
|
43
|
-
# via pytest
|
|
44
|
-
markdown-it-py==3.0.0 ; python_full_version < '3.10'
|
|
45
|
-
# via rich
|
|
46
|
-
markdown-it-py==4.0.0 ; python_full_version >= '3.10'
|
|
42
|
+
markdown-it-py==4.0.0
|
|
47
43
|
# via rich
|
|
48
44
|
mdurl==0.1.2
|
|
49
45
|
# via markdown-it-py
|
|
@@ -62,38 +58,28 @@ pydantic==2.12.5
|
|
|
62
58
|
# via growsurf-python
|
|
63
59
|
pydantic-core==2.41.5
|
|
64
60
|
# via pydantic
|
|
65
|
-
pygments==2.
|
|
61
|
+
pygments==2.21.0
|
|
66
62
|
# via
|
|
67
63
|
# pytest
|
|
68
64
|
# rich
|
|
69
65
|
pyright==1.1.399
|
|
70
|
-
pytest==
|
|
71
|
-
# via
|
|
72
|
-
# pytest-asyncio
|
|
73
|
-
# pytest-xdist
|
|
74
|
-
pytest==9.0.2 ; python_full_version >= '3.10'
|
|
66
|
+
pytest==9.1.1
|
|
75
67
|
# via
|
|
76
68
|
# pytest-asyncio
|
|
77
69
|
# pytest-xdist
|
|
78
|
-
pytest-asyncio==1.
|
|
79
|
-
pytest-asyncio==1.3.0 ; python_full_version >= '3.10'
|
|
70
|
+
pytest-asyncio==1.3.0
|
|
80
71
|
pytest-xdist==3.8.0
|
|
81
|
-
python-dateutil==2.9.0.post0 ; python_full_version < '3.10'
|
|
82
|
-
# via time-machine
|
|
83
72
|
respx==0.22.0
|
|
84
73
|
rich==14.2.0
|
|
85
74
|
ruff==0.14.13
|
|
86
|
-
six==1.17.0 ; python_full_version < '3.10'
|
|
87
|
-
# via python-dateutil
|
|
88
75
|
sniffio==1.3.1
|
|
89
76
|
# via growsurf-python
|
|
90
|
-
time-machine==2.
|
|
91
|
-
time-machine==3.2.0 ; python_full_version >= '3.10'
|
|
77
|
+
time-machine==3.2.0
|
|
92
78
|
tomli==2.4.0 ; python_full_version < '3.11'
|
|
93
79
|
# via
|
|
94
80
|
# mypy
|
|
95
81
|
# pytest
|
|
96
|
-
typing-extensions==4.
|
|
82
|
+
typing-extensions==4.16.0
|
|
97
83
|
# via
|
|
98
84
|
# anyio
|
|
99
85
|
# exceptiongroup
|
|
@@ -231,7 +231,10 @@ class CampaignResource(SyncAPIResource):
|
|
|
231
231
|
"B2C_SUBSCRIPTIONS",
|
|
232
232
|
"FINANCIAL_SERVICES",
|
|
233
233
|
"ONLINE_EDUCATION",
|
|
234
|
+
"INSURANCE",
|
|
234
235
|
"ONLINE_INSURANCE",
|
|
236
|
+
"TELEHEALTH",
|
|
237
|
+
"HEALTHCARE_PROVIDERS",
|
|
235
238
|
]
|
|
236
239
|
| Omit = omit,
|
|
237
240
|
name: str | Omit = omit,
|
|
@@ -1415,7 +1418,10 @@ class AsyncCampaignResource(AsyncAPIResource):
|
|
|
1415
1418
|
"B2C_SUBSCRIPTIONS",
|
|
1416
1419
|
"FINANCIAL_SERVICES",
|
|
1417
1420
|
"ONLINE_EDUCATION",
|
|
1421
|
+
"INSURANCE",
|
|
1418
1422
|
"ONLINE_INSURANCE",
|
|
1423
|
+
"TELEHEALTH",
|
|
1424
|
+
"HEALTHCARE_PROVIDERS",
|
|
1419
1425
|
]
|
|
1420
1426
|
| Omit = omit,
|
|
1421
1427
|
name: str | Omit = omit,
|
{growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/campaign_design.py
RENAMED
|
@@ -52,6 +52,10 @@ class CampaignDesignResources(TypedDict, total=False):
|
|
|
52
52
|
# available to both program types; its manual payout and Wise fields are
|
|
53
53
|
# affiliate-only. `referredExperience` includes the Claim Offer Popup for both
|
|
54
54
|
# program types, with its colors under `theme.referredExperienceOfferPopup`.
|
|
55
|
+
# `widget` is the website widget shown in a corner of your own site — a button or a
|
|
56
|
+
# card, its placement and offsets, when it appears, and which pages it appears on —
|
|
57
|
+
# with its colors under `theme.widget`. Both of its audience switches start off, so a
|
|
58
|
+
# program shows nothing until you turn one on.
|
|
55
59
|
# `GET` returns the fields configured for the program;
|
|
56
60
|
# `payoutDestinationConfirmation` is omitted when no confirmation fields are
|
|
57
61
|
# stored. Stored `null` fields are returned as `null`; omitted and `null` fields
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
from typing import Iterable
|
|
6
|
+
from typing_extensions import Literal, Required, Annotated, TypedDict
|
|
7
|
+
|
|
8
|
+
from .._utils import PropertyInfo
|
|
9
|
+
from .campaign.reward_create_params import RewardCreateParams
|
|
10
|
+
|
|
11
|
+
__all__ = ["CampaignCreateParams"]
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class CampaignCreateParams(TypedDict, total=False):
|
|
15
|
+
type: Required[Literal["REFERRAL", "AFFILIATE"]]
|
|
16
|
+
"""The program type. Immutable after creation."""
|
|
17
|
+
|
|
18
|
+
company_logo_image_url: Annotated[str, PropertyInfo(alias="companyLogoImageUrl")]
|
|
19
|
+
|
|
20
|
+
company_name: Annotated[str, PropertyInfo(alias="companyName")]
|
|
21
|
+
|
|
22
|
+
currency_iso: Annotated[str, PropertyInfo(alias="currencyISO")]
|
|
23
|
+
"""ISO 4217 currency code.
|
|
24
|
+
|
|
25
|
+
Defaults to USD. Chosen when the program is created and immutable afterward — it
|
|
26
|
+
cannot be changed on update.
|
|
27
|
+
"""
|
|
28
|
+
|
|
29
|
+
goal: Literal[
|
|
30
|
+
"CUSTOMERS",
|
|
31
|
+
"USERS",
|
|
32
|
+
"SUBSCRIBERS",
|
|
33
|
+
"WAITLIST",
|
|
34
|
+
"B2B_SAAS_SELF_SERVICE",
|
|
35
|
+
"B2B_SAAS_ENTERPRISE",
|
|
36
|
+
"B2C_SUBSCRIPTIONS",
|
|
37
|
+
"FINANCIAL_SERVICES",
|
|
38
|
+
"ONLINE_EDUCATION",
|
|
39
|
+
"INSURANCE",
|
|
40
|
+
"ONLINE_INSURANCE",
|
|
41
|
+
"TELEHEALTH",
|
|
42
|
+
"HEALTHCARE_PROVIDERS",
|
|
43
|
+
]
|
|
44
|
+
"""What the program is for, which seeds the share buttons and the starter rewards that
|
|
45
|
+
suit that audience.
|
|
46
|
+
|
|
47
|
+
Programs whose participants refer other businesses (`CUSTOMERS`, `USERS`,
|
|
48
|
+
`B2B_SAAS_SELF_SERVICE`, `B2B_SAAS_ENTERPRISE`, `HEALTHCARE_PROVIDERS`) start with
|
|
49
|
+
the LinkedIn share button visible; consumer, financial, education, insurance,
|
|
50
|
+
telehealth, newsletter, and waitlist programs (`B2C_SUBSCRIPTIONS`,
|
|
51
|
+
`FINANCIAL_SERVICES`, `ONLINE_EDUCATION`, `INSURANCE`, `ONLINE_INSURANCE`,
|
|
52
|
+
`TELEHEALTH`, `SUBSCRIBERS`, `WAITLIST`) start with it hidden, and on a referral
|
|
53
|
+
program each goal also sets the rest of its share buttons to suit that audience.
|
|
54
|
+
When you create a referral program without `rewards`, the goal also decides the
|
|
55
|
+
starter rewards: most goals get one double-sided reward, `HEALTHCARE_PROVIDERS` gets
|
|
56
|
+
a single-sided reward, `SUBSCRIBERS` gets a four-step milestone ladder, and
|
|
57
|
+
`WAITLIST` gets a leaderboard. Every one arrives switched off with a placeholder
|
|
58
|
+
name, so the program awards nothing until you set the amount and turn one on.
|
|
59
|
+
`TELEHEALTH` is for consumer telehealth and wellness subscriptions;
|
|
60
|
+
`HEALTHCARE_PROVIDERS` is for provider networks and clinician-facing products.
|
|
61
|
+
`INSURANCE` replaces `ONLINE_INSURANCE`, which is still accepted. Omit it and every
|
|
62
|
+
share button keeps its standard default. Set only when the program is created; it is
|
|
63
|
+
not accepted on update.
|
|
64
|
+
"""
|
|
65
|
+
|
|
66
|
+
name: str
|
|
67
|
+
"""The program name. Defaults to a generated friendly label plus the creation date."""
|
|
68
|
+
|
|
69
|
+
rewards: Iterable[RewardCreateParams]
|
|
70
|
+
"""Optional inline rewards to create with the program."""
|
|
@@ -182,16 +182,16 @@ wheels = [
|
|
|
182
182
|
|
|
183
183
|
[[package]]
|
|
184
184
|
name = "anyio"
|
|
185
|
-
version = "4.
|
|
185
|
+
version = "4.15.1"
|
|
186
186
|
source = { registry = "https://pypi.org/simple" }
|
|
187
187
|
dependencies = [
|
|
188
188
|
{ name = "exceptiongroup", marker = "python_full_version < '3.11' or (extra == 'group-15-growsurf-python-pydantic-v1' and extra == 'group-15-growsurf-python-pydantic-v2')" },
|
|
189
189
|
{ name = "idna" },
|
|
190
|
-
{ name = "typing-extensions", marker = "python_full_version < '3.
|
|
190
|
+
{ name = "typing-extensions", marker = "python_full_version < '3.15' or (extra == 'group-15-growsurf-python-pydantic-v1' and extra == 'group-15-growsurf-python-pydantic-v2')" },
|
|
191
191
|
]
|
|
192
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
192
|
+
sdist = { url = "https://files.pythonhosted.org/packages/a9/d2/f4d173e22df740bc37b1db102b386ba719b66e95b0f0d751f556b387e6d2/anyio-4.15.1.tar.gz", hash = "sha256:9f28306018cbd6d329e64a36d58256edff76dd996fe423bc957326e578b82a94", size = 276966, upload-time = "2026-09-05T10:42:39.44Z" }
|
|
193
193
|
wheels = [
|
|
194
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
194
|
+
{ url = "https://files.pythonhosted.org/packages/12/b8/4bd346e22b28902df4d651910f5242c28d84e4a5c2435ca5c3f797ed7e2e/anyio-4.15.1-py3-none-any.whl", hash = "sha256:6152fdbbf9a77fdec97731721bebf7c4c44f7c29b424b0065826173efc7ed101", size = 132079, upload-time = "2026-09-05T10:42:37.923Z" },
|
|
195
195
|
]
|
|
196
196
|
|
|
197
197
|
[[package]]
|
|
@@ -401,7 +401,7 @@ wheels = [
|
|
|
401
401
|
|
|
402
402
|
[[package]]
|
|
403
403
|
name = "growsurf-python"
|
|
404
|
-
version = "1.
|
|
404
|
+
version = "1.7.1"
|
|
405
405
|
source = { editable = "." }
|
|
406
406
|
dependencies = [
|
|
407
407
|
{ name = "anyio" },
|
|
@@ -1353,11 +1353,11 @@ wheels = [
|
|
|
1353
1353
|
|
|
1354
1354
|
[[package]]
|
|
1355
1355
|
name = "typing-extensions"
|
|
1356
|
-
version = "4.
|
|
1356
|
+
version = "4.16.0"
|
|
1357
1357
|
source = { registry = "https://pypi.org/simple" }
|
|
1358
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
1358
|
+
sdist = { url = "https://files.pythonhosted.org/packages/f6/cc/6253133b5bb138fc3306cebfbda2c520f545d36b5be2c7255cc528bb45d6/typing_extensions-4.16.0.tar.gz", hash = "sha256:dc983d19a509c94dba722ee6abd33940f7c05a89e243c47e907eb4db6f1a43e5", size = 113555, upload-time = "2026-07-02T08:40:05.92Z" }
|
|
1359
1359
|
wheels = [
|
|
1360
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1360
|
+
{ url = "https://files.pythonhosted.org/packages/49/d3/b8441a820a491ddfc024b0b0cf0393375b75ea13866d9c66727e54c2fc80/typing_extensions-4.16.0-py3-none-any.whl", hash = "sha256:481caa481374e813c1b176ada14e97f1f67a4539ce9cfeb3f350d78d6370c2e8", size = 45571, upload-time = "2026-07-02T08:40:04.659Z" },
|
|
1361
1361
|
]
|
|
1362
1362
|
|
|
1363
1363
|
[[package]]
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
-
|
|
3
|
-
from __future__ import annotations
|
|
4
|
-
|
|
5
|
-
from typing import Iterable
|
|
6
|
-
from typing_extensions import Literal, Required, Annotated, TypedDict
|
|
7
|
-
|
|
8
|
-
from .._utils import PropertyInfo
|
|
9
|
-
from .campaign.reward_create_params import RewardCreateParams
|
|
10
|
-
|
|
11
|
-
__all__ = ["CampaignCreateParams"]
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
class CampaignCreateParams(TypedDict, total=False):
|
|
15
|
-
type: Required[Literal["REFERRAL", "AFFILIATE"]]
|
|
16
|
-
"""The program type. Immutable after creation."""
|
|
17
|
-
|
|
18
|
-
company_logo_image_url: Annotated[str, PropertyInfo(alias="companyLogoImageUrl")]
|
|
19
|
-
|
|
20
|
-
company_name: Annotated[str, PropertyInfo(alias="companyName")]
|
|
21
|
-
|
|
22
|
-
currency_iso: Annotated[str, PropertyInfo(alias="currencyISO")]
|
|
23
|
-
"""ISO 4217 currency code.
|
|
24
|
-
|
|
25
|
-
Defaults to USD. Chosen when the program is created and immutable afterward — it
|
|
26
|
-
cannot be changed on update.
|
|
27
|
-
"""
|
|
28
|
-
|
|
29
|
-
goal: Literal[
|
|
30
|
-
"CUSTOMERS",
|
|
31
|
-
"USERS",
|
|
32
|
-
"SUBSCRIBERS",
|
|
33
|
-
"WAITLIST",
|
|
34
|
-
"B2B_SAAS_SELF_SERVICE",
|
|
35
|
-
"B2B_SAAS_ENTERPRISE",
|
|
36
|
-
"B2C_SUBSCRIPTIONS",
|
|
37
|
-
"FINANCIAL_SERVICES",
|
|
38
|
-
"ONLINE_EDUCATION",
|
|
39
|
-
"ONLINE_INSURANCE",
|
|
40
|
-
]
|
|
41
|
-
"""What the program is for, which seeds share settings that suit that audience.
|
|
42
|
-
|
|
43
|
-
Programs selling to businesses (`CUSTOMERS`, `USERS`, `B2B_SAAS_SELF_SERVICE`,
|
|
44
|
-
`B2B_SAAS_ENTERPRISE`) start with the LinkedIn share button visible; consumer,
|
|
45
|
-
financial, education, insurance, newsletter, and waitlist programs
|
|
46
|
-
(`B2C_SUBSCRIPTIONS`, `FINANCIAL_SERVICES`, `ONLINE_EDUCATION`,
|
|
47
|
-
`ONLINE_INSURANCE`, `SUBSCRIBERS`, `WAITLIST`) start with it hidden. Omit it and
|
|
48
|
-
every share button keeps its standard default. Set only when the program is
|
|
49
|
-
created; it is not accepted on update.
|
|
50
|
-
"""
|
|
51
|
-
|
|
52
|
-
name: str
|
|
53
|
-
"""The program name. Defaults to a generated friendly label plus the creation date."""
|
|
54
|
-
|
|
55
|
-
rewards: Iterable[RewardCreateParams]
|
|
56
|
-
"""Optional inline rewards to create with the program."""
|
|
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.7.0 → growsurf_python-1.8.0}/src/growsurf/resources/campaign/commission.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/resources/campaign/installation.py
RENAMED
|
File without changes
|
{growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/resources/campaign/integrations.py
RENAMED
|
File without changes
|
|
File without changes
|
{growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/resources/campaign/participant.py
RENAMED
|
File without changes
|
{growsurf_python-1.7.0 → growsurf_python-1.8.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.7.0 → growsurf_python-1.8.0}/src/growsurf/types/affiliate_application_answer.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/affiliate_invite_list_response.py
RENAMED
|
File without changes
|
{growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/analytics_availability.py
RENAMED
|
File without changes
|
{growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/analytics_unavailable_reason.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/campaign_emails.py
RENAMED
|
File without changes
|
{growsurf_python-1.7.0 → growsurf_python-1.8.0}/src/growsurf/types/campaign/campaign_installation.py
RENAMED
|
File without changes
|
{growsurf_python-1.7.0 → growsurf_python-1.8.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.7.0 → growsurf_python-1.8.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
|