paypal-server-sdk 1.1.0 → 2.0.0
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.
- checksums.yaml +4 -4
- data/README.md +32 -23
- data/lib/paypal_server_sdk/api_helper.rb +2 -2
- data/lib/paypal_server_sdk/client.rb +16 -3
- data/lib/paypal_server_sdk/configuration.rb +10 -8
- data/lib/paypal_server_sdk/controllers/base_controller.rb +4 -10
- data/lib/paypal_server_sdk/controllers/o_auth_authorization_controller.rb +4 -4
- data/lib/paypal_server_sdk/controllers/orders_controller.rb +211 -211
- data/lib/paypal_server_sdk/controllers/payments_controller.rb +110 -103
- data/lib/paypal_server_sdk/controllers/subscriptions_controller.rb +843 -0
- data/lib/paypal_server_sdk/controllers/transaction_search_controller.rb +178 -0
- data/lib/paypal_server_sdk/controllers/vault_controller.rb +95 -95
- data/lib/paypal_server_sdk/exceptions/api_exception.rb +2 -2
- data/lib/paypal_server_sdk/exceptions/default_error_exception.rb +95 -0
- data/lib/paypal_server_sdk/exceptions/error_exception.rb +2 -2
- data/lib/paypal_server_sdk/exceptions/o_auth_provider_exception.rb +2 -2
- data/lib/paypal_server_sdk/exceptions/search_error_exception.rb +107 -0
- data/lib/paypal_server_sdk/exceptions/subscription_error_exception.rb +95 -0
- data/lib/paypal_server_sdk/http/api_response.rb +6 -8
- data/lib/paypal_server_sdk/http/auth/o_auth2.rb +3 -3
- data/lib/paypal_server_sdk/http/http_call_back.rb +2 -2
- data/lib/paypal_server_sdk/http/http_method_enum.rb +2 -2
- data/lib/paypal_server_sdk/http/http_request.rb +2 -2
- data/lib/paypal_server_sdk/http/http_response.rb +2 -2
- data/lib/paypal_server_sdk/http/proxy_settings.rb +13 -0
- data/lib/paypal_server_sdk/logging/configuration/api_logging_configuration.rb +2 -2
- data/lib/paypal_server_sdk/logging/sdk_logger.rb +2 -2
- data/lib/paypal_server_sdk/models/activate_subscription_request.rb +63 -0
- data/lib/paypal_server_sdk/models/activity_timestamps.rb +2 -2
- data/lib/paypal_server_sdk/models/address.rb +2 -2
- data/lib/paypal_server_sdk/models/amount_breakdown.rb +4 -4
- data/lib/paypal_server_sdk/models/amount_with_breakdown.rb +2 -2
- data/lib/paypal_server_sdk/models/app_switch_context.rb +74 -0
- data/lib/paypal_server_sdk/models/apple_pay_attributes.rb +2 -2
- data/lib/paypal_server_sdk/models/apple_pay_attributes_response.rb +2 -2
- data/lib/paypal_server_sdk/models/apple_pay_card.rb +2 -2
- data/lib/paypal_server_sdk/models/apple_pay_card_response.rb +2 -2
- data/lib/paypal_server_sdk/models/apple_pay_decrypted_token_data.rb +2 -2
- data/lib/paypal_server_sdk/models/apple_pay_experience_context.rb +2 -2
- data/lib/paypal_server_sdk/models/apple_pay_payment_data.rb +2 -2
- data/lib/paypal_server_sdk/models/apple_pay_payment_data_type.rb +2 -2
- data/lib/paypal_server_sdk/models/apple_pay_payment_object.rb +2 -2
- data/lib/paypal_server_sdk/models/apple_pay_payment_token.rb +2 -2
- data/lib/paypal_server_sdk/models/apple_pay_request.rb +2 -2
- data/lib/paypal_server_sdk/models/apple_pay_request_card.rb +88 -0
- data/lib/paypal_server_sdk/models/apple_pay_tokenized_card.rb +3 -4
- data/lib/paypal_server_sdk/models/application_context_user_action.rb +29 -0
- data/lib/paypal_server_sdk/models/assurance_details.rb +2 -2
- data/lib/paypal_server_sdk/models/auction_information.rb +100 -0
- data/lib/paypal_server_sdk/models/authentication_response.rb +2 -2
- data/lib/paypal_server_sdk/models/authorization.rb +4 -4
- data/lib/paypal_server_sdk/models/authorization_incomplete_reason.rb +2 -2
- data/lib/paypal_server_sdk/models/authorization_status.rb +2 -2
- data/lib/paypal_server_sdk/models/authorization_status_details.rb +2 -2
- data/lib/paypal_server_sdk/models/authorization_status_with_details.rb +2 -2
- data/lib/paypal_server_sdk/models/authorization_with_additional_data.rb +4 -4
- data/lib/paypal_server_sdk/models/avs_code.rb +2 -2
- data/lib/paypal_server_sdk/models/balance_information.rb +106 -0
- data/lib/paypal_server_sdk/models/balances_response.rb +111 -0
- data/lib/paypal_server_sdk/models/bancontact_payment_object.rb +2 -2
- data/lib/paypal_server_sdk/models/bancontact_payment_request.rb +2 -2
- data/lib/paypal_server_sdk/models/bank_request.rb +71 -0
- data/lib/paypal_server_sdk/models/base_model.rb +2 -2
- data/lib/paypal_server_sdk/models/billing_cycle.rb +7 -18
- data/lib/paypal_server_sdk/models/billing_cycle_override.rb +91 -0
- data/lib/paypal_server_sdk/models/billing_plan.rb +212 -0
- data/lib/paypal_server_sdk/models/bin_details.rb +2 -2
- data/lib/paypal_server_sdk/models/blik_experience_context.rb +10 -8
- data/lib/paypal_server_sdk/models/blik_level0_payment_object.rb +2 -2
- data/lib/paypal_server_sdk/models/blik_one_click_payment_object.rb +2 -2
- data/lib/paypal_server_sdk/models/blik_one_click_payment_request.rb +2 -2
- data/lib/paypal_server_sdk/models/blik_payment_object.rb +2 -2
- data/lib/paypal_server_sdk/models/blik_payment_request.rb +2 -2
- data/lib/paypal_server_sdk/models/callback_configuration.rb +2 -2
- data/lib/paypal_server_sdk/models/callback_events.rb +2 -2
- data/lib/paypal_server_sdk/models/cancel_subscription_request.rb +60 -0
- data/lib/paypal_server_sdk/models/capture_incomplete_reason.rb +2 -2
- data/lib/paypal_server_sdk/models/capture_payment_instruction.rb +2 -2
- data/lib/paypal_server_sdk/models/capture_request.rb +33 -32
- data/lib/paypal_server_sdk/models/capture_status.rb +2 -2
- data/lib/paypal_server_sdk/models/capture_status_details.rb +2 -2
- data/lib/paypal_server_sdk/models/capture_status_with_details.rb +2 -2
- data/lib/paypal_server_sdk/models/capture_subscription_request.rb +78 -0
- data/lib/paypal_server_sdk/models/capture_type.rb +20 -0
- data/lib/paypal_server_sdk/models/captured_payment.rb +6 -6
- data/lib/paypal_server_sdk/models/card_attributes.rb +2 -2
- data/lib/paypal_server_sdk/models/card_attributes_response.rb +2 -2
- data/lib/paypal_server_sdk/models/card_authentication_response.rb +2 -2
- data/lib/paypal_server_sdk/models/card_brand.rb +17 -2
- data/lib/paypal_server_sdk/models/card_customer.rb +98 -0
- data/lib/paypal_server_sdk/models/card_customer_information.rb +2 -2
- data/lib/paypal_server_sdk/models/card_experience_context.rb +2 -2
- data/lib/paypal_server_sdk/models/card_from_request.rb +2 -2
- data/lib/paypal_server_sdk/models/card_payment_token_entity.rb +2 -2
- data/lib/paypal_server_sdk/models/card_request.rb +2 -2
- data/lib/paypal_server_sdk/models/card_response.rb +2 -2
- data/lib/paypal_server_sdk/models/card_response_address.rb +2 -2
- data/lib/paypal_server_sdk/models/card_response_with_billing_address.rb +100 -0
- data/lib/paypal_server_sdk/models/card_stored_credential.rb +4 -4
- data/lib/paypal_server_sdk/models/card_supplementary_data.rb +2 -2
- data/lib/paypal_server_sdk/models/card_type.rb +2 -2
- data/lib/paypal_server_sdk/models/card_vault_response.rb +2 -2
- data/lib/paypal_server_sdk/models/card_verification.rb +2 -2
- data/lib/paypal_server_sdk/models/card_verification_details.rb +8 -8
- data/lib/paypal_server_sdk/models/card_verification_processor_response.rb +2 -2
- data/lib/paypal_server_sdk/models/card_verification_status.rb +2 -2
- data/lib/paypal_server_sdk/models/cart_information.rb +94 -0
- data/lib/paypal_server_sdk/models/checkout_option.rb +77 -0
- data/lib/paypal_server_sdk/models/checkout_payment_intent.rb +2 -2
- data/lib/paypal_server_sdk/models/cobranded_card.rb +2 -2
- data/lib/paypal_server_sdk/models/confirm_order_request.rb +2 -2
- data/lib/paypal_server_sdk/models/create_subscription_request.rb +151 -0
- data/lib/paypal_server_sdk/models/customer.rb +2 -2
- data/lib/paypal_server_sdk/models/customer_information.rb +2 -2
- data/lib/paypal_server_sdk/models/customer_response.rb +2 -2
- data/lib/paypal_server_sdk/models/customer_vault_payment_tokens_response.rb +2 -2
- data/lib/paypal_server_sdk/models/cvv_code.rb +2 -2
- data/lib/paypal_server_sdk/models/cycle_execution.rb +124 -0
- data/lib/paypal_server_sdk/models/disbursement_mode.rb +2 -2
- data/lib/paypal_server_sdk/models/dispute_category.rb +2 -2
- data/lib/paypal_server_sdk/models/eci_flag.rb +2 -2
- data/lib/paypal_server_sdk/models/enrollment_status.rb +2 -2
- data/lib/paypal_server_sdk/models/eps_payment_object.rb +2 -2
- data/lib/paypal_server_sdk/models/eps_payment_request.rb +2 -2
- data/lib/paypal_server_sdk/models/error_details.rb +2 -2
- data/lib/paypal_server_sdk/models/exchange_rate.rb +2 -2
- data/lib/paypal_server_sdk/models/experience_context.rb +9 -7
- data/lib/paypal_server_sdk/models/experience_context_shipping_preference.rb +32 -0
- data/lib/paypal_server_sdk/models/experience_status.rb +33 -0
- data/lib/paypal_server_sdk/models/failed_payment_details.rb +98 -0
- data/lib/paypal_server_sdk/models/frequency.rb +75 -0
- data/lib/paypal_server_sdk/models/fulfillment_type.rb +2 -2
- data/lib/paypal_server_sdk/models/giropay_payment_object.rb +2 -2
- data/lib/paypal_server_sdk/models/giropay_payment_request.rb +2 -2
- data/lib/paypal_server_sdk/models/google_pay_authentication_method.rb +2 -2
- data/lib/paypal_server_sdk/models/google_pay_card.rb +2 -2
- data/lib/paypal_server_sdk/models/google_pay_card_response.rb +2 -2
- data/lib/paypal_server_sdk/models/google_pay_decrypted_token_data.rb +2 -2
- data/lib/paypal_server_sdk/models/google_pay_experience_context.rb +2 -2
- data/lib/paypal_server_sdk/models/google_pay_payment_method.rb +2 -2
- data/lib/paypal_server_sdk/models/google_pay_request.rb +2 -2
- data/lib/paypal_server_sdk/models/google_pay_request_card.rb +2 -2
- data/lib/paypal_server_sdk/models/google_pay_wallet_response.rb +2 -2
- data/lib/paypal_server_sdk/models/ideal_payment_object.rb +2 -2
- data/lib/paypal_server_sdk/models/ideal_payment_request.rb +2 -2
- data/lib/paypal_server_sdk/models/incentive_details.rb +99 -0
- data/lib/paypal_server_sdk/models/incentive_information.rb +71 -0
- data/lib/paypal_server_sdk/models/interval_unit.rb +29 -0
- data/lib/paypal_server_sdk/models/item.rb +2 -2
- data/lib/paypal_server_sdk/models/item_category.rb +2 -2
- data/lib/paypal_server_sdk/models/item_details.rb +287 -0
- data/lib/paypal_server_sdk/models/item_request.rb +163 -0
- data/lib/paypal_server_sdk/models/last_payment_details.rb +75 -0
- data/lib/paypal_server_sdk/models/level2_card_processing_data.rb +2 -2
- data/lib/paypal_server_sdk/models/level3_card_processing_data.rb +2 -2
- data/lib/paypal_server_sdk/models/liability_shift_indicator.rb +2 -2
- data/lib/paypal_server_sdk/models/line_item.rb +2 -2
- data/lib/paypal_server_sdk/models/link_description.rb +2 -2
- data/lib/paypal_server_sdk/models/link_http_method.rb +10 -10
- data/lib/paypal_server_sdk/models/merchant_preferences.rb +73 -0
- data/lib/paypal_server_sdk/models/mobile_return_flow.rb +28 -0
- data/lib/paypal_server_sdk/models/mobile_web_context.rb +76 -0
- data/lib/paypal_server_sdk/models/modify_subscription_request.rb +124 -0
- data/lib/paypal_server_sdk/models/modify_subscription_response.rb +141 -0
- data/lib/paypal_server_sdk/models/money.rb +2 -2
- data/lib/paypal_server_sdk/models/mybank_payment_object.rb +2 -2
- data/lib/paypal_server_sdk/models/mybank_payment_request.rb +2 -2
- data/lib/paypal_server_sdk/models/name.rb +2 -2
- data/lib/paypal_server_sdk/models/native_app_context.rb +72 -0
- data/lib/paypal_server_sdk/models/net_amount_breakdown_item.rb +2 -2
- data/lib/paypal_server_sdk/models/network_token.rb +2 -2
- data/lib/paypal_server_sdk/models/{network_transaction_reference.rb → network_transaction.rb} +14 -11
- data/lib/paypal_server_sdk/models/network_transaction_reference_entity.rb +2 -2
- data/lib/paypal_server_sdk/models/o_auth_provider_error.rb +2 -2
- data/lib/paypal_server_sdk/models/o_auth_token.rb +2 -2
- data/lib/paypal_server_sdk/models/one_time_charge.rb +2 -2
- data/lib/paypal_server_sdk/models/order.rb +7 -4
- data/lib/paypal_server_sdk/models/order_application_context.rb +26 -15
- data/lib/paypal_server_sdk/models/order_application_context_landing_page.rb +2 -2
- data/lib/paypal_server_sdk/models/order_application_context_shipping_preference.rb +3 -5
- data/lib/paypal_server_sdk/models/order_application_context_user_action.rb +2 -2
- data/lib/paypal_server_sdk/models/order_authorize_request.rb +2 -2
- data/lib/paypal_server_sdk/models/order_authorize_request_payment_source.rb +2 -2
- data/lib/paypal_server_sdk/models/order_authorize_response.rb +16 -9
- data/lib/paypal_server_sdk/models/order_authorize_response_payment_source.rb +2 -2
- data/lib/paypal_server_sdk/models/order_billing_plan.rb +2 -2
- data/lib/paypal_server_sdk/models/order_capture_request.rb +2 -2
- data/lib/paypal_server_sdk/models/order_capture_request_payment_source.rb +2 -2
- data/lib/paypal_server_sdk/models/order_confirm_application_context.rb +2 -2
- data/lib/paypal_server_sdk/models/order_request.rb +7 -4
- data/lib/paypal_server_sdk/models/order_status.rb +2 -2
- data/lib/paypal_server_sdk/models/order_tracker_item.rb +2 -2
- data/lib/paypal_server_sdk/models/order_tracker_request.rb +2 -2
- data/lib/paypal_server_sdk/models/order_tracker_response.rb +2 -2
- data/lib/paypal_server_sdk/models/order_tracker_status.rb +2 -2
- data/lib/paypal_server_sdk/models/orders_capture.rb +4 -4
- data/lib/paypal_server_sdk/models/orders_card_verification_method.rb +2 -2
- data/lib/paypal_server_sdk/models/os_type.rb +26 -0
- data/lib/paypal_server_sdk/models/p24_payment_object.rb +2 -2
- data/lib/paypal_server_sdk/models/p24_payment_request.rb +2 -2
- data/lib/paypal_server_sdk/models/pa_res_status.rb +2 -2
- data/lib/paypal_server_sdk/models/participant_metadata.rb +2 -2
- data/lib/paypal_server_sdk/models/patch.rb +2 -2
- data/lib/paypal_server_sdk/models/patch_op.rb +2 -2
- data/lib/paypal_server_sdk/models/payee_base.rb +2 -2
- data/lib/paypal_server_sdk/models/payee_payment_method_preference.rb +2 -2
- data/lib/paypal_server_sdk/models/payer.rb +4 -3
- data/lib/paypal_server_sdk/models/payer_base.rb +2 -2
- data/lib/paypal_server_sdk/models/payer_information.rb +146 -0
- data/lib/paypal_server_sdk/models/payer_name.rb +128 -0
- data/lib/paypal_server_sdk/models/payment_advice_code.rb +2 -2
- data/lib/paypal_server_sdk/models/payment_authorization.rb +4 -4
- data/lib/paypal_server_sdk/models/payment_collection.rb +2 -2
- data/lib/paypal_server_sdk/models/payment_initiator.rb +2 -2
- data/lib/paypal_server_sdk/models/payment_instruction.rb +2 -2
- data/lib/paypal_server_sdk/models/payment_method.rb +63 -0
- data/lib/paypal_server_sdk/models/payment_method_preference.rb +2 -2
- data/lib/paypal_server_sdk/models/payment_preferences.rb +105 -0
- data/lib/paypal_server_sdk/models/payment_preferences_override.rb +107 -0
- data/lib/paypal_server_sdk/models/payment_source.rb +2 -2
- data/lib/paypal_server_sdk/models/payment_source_response.rb +2 -2
- data/lib/paypal_server_sdk/models/payment_supplementary_data.rb +2 -2
- data/lib/paypal_server_sdk/models/payment_token_request.rb +2 -2
- data/lib/paypal_server_sdk/models/payment_token_request_card.rb +2 -2
- data/lib/paypal_server_sdk/models/payment_token_request_payment_source.rb +2 -2
- data/lib/paypal_server_sdk/models/payment_token_response.rb +5 -3
- data/lib/paypal_server_sdk/models/payment_token_response_payment_source.rb +4 -4
- data/lib/paypal_server_sdk/models/payment_token_status.rb +4 -4
- data/lib/paypal_server_sdk/models/payments_capture.rb +6 -6
- data/lib/paypal_server_sdk/models/paypal_experience_landing_page.rb +10 -3
- data/lib/paypal_server_sdk/models/paypal_experience_user_action.rb +2 -2
- data/lib/paypal_server_sdk/models/paypal_payment_token.rb +8 -7
- data/lib/paypal_server_sdk/models/paypal_payment_token_customer_type.rb +2 -2
- data/lib/paypal_server_sdk/models/paypal_payment_token_usage_type.rb +2 -2
- data/lib/paypal_server_sdk/models/paypal_reference_id_type.rb +29 -0
- data/lib/paypal_server_sdk/models/paypal_wallet.rb +2 -2
- data/lib/paypal_server_sdk/models/paypal_wallet_account_verification_status.rb +2 -2
- data/lib/paypal_server_sdk/models/paypal_wallet_attributes.rb +4 -3
- data/lib/paypal_server_sdk/models/paypal_wallet_attributes_response.rb +2 -2
- data/lib/paypal_server_sdk/models/paypal_wallet_contact_preference.rb +2 -2
- data/lib/paypal_server_sdk/models/paypal_wallet_context_shipping_preference.rb +2 -2
- data/lib/paypal_server_sdk/models/paypal_wallet_customer.rb +2 -2
- data/lib/paypal_server_sdk/models/paypal_wallet_customer_request.rb +2 -2
- data/lib/paypal_server_sdk/models/paypal_wallet_experience_context.rb +22 -9
- data/lib/paypal_server_sdk/models/paypal_wallet_response.rb +21 -6
- data/lib/paypal_server_sdk/models/paypal_wallet_stored_credential.rb +4 -3
- data/lib/paypal_server_sdk/models/paypal_wallet_vault_instruction.rb +12 -22
- data/lib/paypal_server_sdk/models/paypal_wallet_vault_response.rb +2 -2
- data/lib/paypal_server_sdk/models/paypal_wallet_vault_status.rb +2 -2
- data/lib/paypal_server_sdk/models/phone.rb +2 -2
- data/lib/paypal_server_sdk/models/phone_number.rb +4 -2
- data/lib/paypal_server_sdk/models/phone_number_with_country_code.rb +4 -2
- data/lib/paypal_server_sdk/models/phone_number_with_optional_country_code.rb +81 -0
- data/lib/paypal_server_sdk/models/phone_type.rb +7 -7
- data/lib/paypal_server_sdk/models/phone_with_type.rb +2 -2
- data/lib/paypal_server_sdk/models/plan.rb +7 -17
- data/lib/paypal_server_sdk/models/plan_collection.rb +111 -0
- data/lib/paypal_server_sdk/models/plan_details.rb +147 -0
- data/lib/paypal_server_sdk/models/plan_override.rb +96 -0
- data/lib/paypal_server_sdk/models/plan_request.rb +154 -0
- data/lib/paypal_server_sdk/models/plan_request_status.rb +28 -0
- data/lib/paypal_server_sdk/models/platform_fee.rb +2 -2
- data/lib/paypal_server_sdk/models/pricing_model.rb +2 -2
- data/lib/paypal_server_sdk/models/pricing_scheme.rb +2 -2
- data/lib/paypal_server_sdk/models/pricing_tier.rb +83 -0
- data/lib/paypal_server_sdk/models/processor_response.rb +2 -2
- data/lib/paypal_server_sdk/models/processor_response_code.rb +2 -2
- data/lib/paypal_server_sdk/models/purchase_unit.rb +2 -2
- data/lib/paypal_server_sdk/models/purchase_unit_request.rb +24 -14
- data/lib/paypal_server_sdk/models/reason_code.rb +41 -0
- data/lib/paypal_server_sdk/models/reauthorize_request.rb +2 -3
- data/lib/paypal_server_sdk/models/refund.rb +2 -2
- data/lib/paypal_server_sdk/models/refund_incomplete_reason.rb +2 -2
- data/lib/paypal_server_sdk/models/refund_payment_instruction.rb +2 -2
- data/lib/paypal_server_sdk/models/refund_platform_fee.rb +2 -2
- data/lib/paypal_server_sdk/models/refund_request.rb +2 -2
- data/lib/paypal_server_sdk/models/refund_status.rb +2 -2
- data/lib/paypal_server_sdk/models/refund_status_details.rb +2 -2
- data/lib/paypal_server_sdk/models/refund_status_with_details.rb +2 -2
- data/lib/paypal_server_sdk/models/related_identifiers.rb +2 -2
- data/lib/paypal_server_sdk/models/return_flow.rb +28 -0
- data/lib/paypal_server_sdk/models/risk_supplementary_data.rb +2 -2
- data/lib/paypal_server_sdk/models/search_response.rb +176 -0
- data/lib/paypal_server_sdk/models/seller_payable_breakdown.rb +2 -2
- data/lib/paypal_server_sdk/models/seller_protection.rb +2 -2
- data/lib/paypal_server_sdk/models/seller_protection_status.rb +2 -2
- data/lib/paypal_server_sdk/models/seller_receivable_breakdown.rb +2 -2
- data/lib/paypal_server_sdk/models/sepa_debit_experience_context.rb +88 -0
- data/lib/paypal_server_sdk/models/sepa_debit_request.rb +64 -0
- data/lib/paypal_server_sdk/models/setup_fee_failure_action.rb +24 -0
- data/lib/paypal_server_sdk/models/setup_token_request.rb +2 -2
- data/lib/paypal_server_sdk/models/setup_token_request_card.rb +5 -5
- data/lib/paypal_server_sdk/models/setup_token_request_payment_source.rb +28 -7
- data/lib/paypal_server_sdk/models/setup_token_response.rb +5 -3
- data/lib/paypal_server_sdk/models/setup_token_response_card.rb +2 -2
- data/lib/paypal_server_sdk/models/setup_token_response_payment_source.rb +4 -4
- data/lib/paypal_server_sdk/models/shipment_carrier.rb +111 -3
- data/lib/paypal_server_sdk/models/shipping_details.rb +2 -2
- data/lib/paypal_server_sdk/models/shipping_information.rb +101 -0
- data/lib/paypal_server_sdk/models/shipping_name.rb +2 -2
- data/lib/paypal_server_sdk/models/shipping_option.rb +2 -2
- data/lib/paypal_server_sdk/models/shipping_type.rb +2 -2
- data/lib/paypal_server_sdk/models/shipping_with_tracking_details.rb +33 -33
- data/lib/paypal_server_sdk/models/simple_postal_address_coarse_grained.rb +130 -0
- data/lib/paypal_server_sdk/models/sofort_payment_object.rb +2 -2
- data/lib/paypal_server_sdk/models/sofort_payment_request.rb +2 -2
- data/lib/paypal_server_sdk/models/standard_entry_class_code.rb +2 -2
- data/lib/paypal_server_sdk/models/store_in_vault_instruction.rb +2 -2
- data/lib/paypal_server_sdk/models/store_information.rb +71 -0
- data/lib/paypal_server_sdk/models/stored_payment_source.rb +4 -4
- data/lib/paypal_server_sdk/models/stored_payment_source_payment_type.rb +2 -2
- data/lib/paypal_server_sdk/models/stored_payment_source_usage_type.rb +2 -2
- data/lib/paypal_server_sdk/models/subscriber.rb +84 -0
- data/lib/paypal_server_sdk/models/subscriber_request.rb +97 -0
- data/lib/paypal_server_sdk/models/subscription.rb +205 -0
- data/lib/paypal_server_sdk/models/subscription_amount_with_breakdown.rb +119 -0
- data/lib/paypal_server_sdk/models/subscription_application_context.rb +134 -0
- data/lib/paypal_server_sdk/models/subscription_billing_cycle.rb +108 -0
- data/lib/paypal_server_sdk/models/subscription_billing_information.rb +148 -0
- data/lib/paypal_server_sdk/models/subscription_card_request.rb +141 -0
- data/lib/paypal_server_sdk/models/subscription_collection.rb +90 -0
- data/lib/paypal_server_sdk/models/subscription_customer_information.rb +84 -0
- data/lib/paypal_server_sdk/models/subscription_patch_application_context.rb +122 -0
- data/lib/paypal_server_sdk/models/subscription_payer_name.rb +114 -0
- data/lib/paypal_server_sdk/models/subscription_payment_source.rb +65 -0
- data/lib/paypal_server_sdk/models/subscription_payment_source_response.rb +63 -0
- data/lib/paypal_server_sdk/models/subscription_plan_status.rb +28 -0
- data/lib/paypal_server_sdk/models/subscription_pricing_model.rb +23 -0
- data/lib/paypal_server_sdk/models/subscription_pricing_scheme.rb +129 -0
- data/lib/paypal_server_sdk/models/subscription_transaction_details.rb +118 -0
- data/lib/paypal_server_sdk/models/subscriptions_card_attributes.rb +83 -0
- data/lib/paypal_server_sdk/models/subscriptions_card_brand.rb +97 -0
- data/lib/paypal_server_sdk/models/supplementary_data.rb +2 -2
- data/lib/paypal_server_sdk/models/suspend_subscription.rb +60 -0
- data/lib/paypal_server_sdk/models/tax_amount.rb +63 -0
- data/lib/paypal_server_sdk/models/tax_id_type.rb +2 -2
- data/lib/paypal_server_sdk/models/tax_info.rb +2 -2
- data/lib/paypal_server_sdk/models/taxes.rb +71 -0
- data/lib/paypal_server_sdk/models/taxes_override.rb +72 -0
- data/lib/paypal_server_sdk/models/tenure_type.rb +5 -3
- data/lib/paypal_server_sdk/models/three_d_secure_authentication_response.rb +2 -2
- data/lib/paypal_server_sdk/models/three_d_secure_card_authentication_response.rb +2 -2
- data/lib/paypal_server_sdk/models/token.rb +2 -2
- data/lib/paypal_server_sdk/models/token_type.rb +2 -2
- data/lib/paypal_server_sdk/models/transaction_details.rb +126 -0
- data/lib/paypal_server_sdk/models/transaction_information.rb +494 -0
- data/lib/paypal_server_sdk/models/{order_update_callback_error_response_details.rb → transaction_search_error_details.rb} +32 -10
- data/lib/paypal_server_sdk/models/transactions_list.rb +111 -0
- data/lib/paypal_server_sdk/models/trustly_payment_object.rb +2 -2
- data/lib/paypal_server_sdk/models/trustly_payment_request.rb +2 -2
- data/lib/paypal_server_sdk/models/universal_product_code.rb +2 -2
- data/lib/paypal_server_sdk/models/upc_type.rb +2 -2
- data/lib/paypal_server_sdk/models/update_pricing_scheme.rb +72 -0
- data/lib/paypal_server_sdk/models/update_pricing_schemes_request.rb +69 -0
- data/lib/paypal_server_sdk/models/usage_pattern.rb +2 -2
- data/lib/paypal_server_sdk/models/vault_apple_pay_request.rb +73 -0
- data/lib/paypal_server_sdk/models/{setup_token_card_experience_context.rb → vault_card_experience_context.rb} +27 -18
- data/lib/paypal_server_sdk/models/vault_card_verification_method.rb +2 -2
- data/lib/paypal_server_sdk/models/vault_customer.rb +2 -2
- data/lib/paypal_server_sdk/models/vault_experience_context.rb +35 -12
- data/lib/paypal_server_sdk/models/vault_instruction.rb +2 -2
- data/lib/paypal_server_sdk/models/vault_instruction_action.rb +2 -2
- data/lib/paypal_server_sdk/models/vault_instruction_base.rb +2 -2
- data/lib/paypal_server_sdk/models/vault_paypal_wallet_request.rb +3 -3
- data/lib/paypal_server_sdk/models/vault_response.rb +2 -2
- data/lib/paypal_server_sdk/models/vault_response_customer.rb +2 -2
- data/lib/paypal_server_sdk/models/vault_status.rb +2 -2
- data/lib/paypal_server_sdk/models/vault_token_request.rb +2 -2
- data/lib/paypal_server_sdk/models/vault_token_request_type.rb +2 -2
- data/lib/paypal_server_sdk/models/vault_user_action.rb +29 -0
- data/lib/paypal_server_sdk/models/vault_venmo_request.rb +6 -6
- data/lib/paypal_server_sdk/models/vaulted_digital_wallet.rb +2 -2
- data/lib/paypal_server_sdk/models/vaulted_digital_wallet_shipping_details.rb +21 -7
- data/lib/paypal_server_sdk/models/{vault_venmo_experience_context.rb → venmo_experience_context.rb} +26 -16
- data/lib/paypal_server_sdk/models/venmo_payment_token.rb +8 -7
- data/lib/paypal_server_sdk/models/venmo_payment_token_customer_type.rb +2 -2
- data/lib/paypal_server_sdk/models/venmo_payment_token_usage_pattern.rb +2 -2
- data/lib/paypal_server_sdk/models/venmo_payment_token_usage_type.rb +2 -2
- data/lib/paypal_server_sdk/models/venmo_vault_response.rb +100 -0
- data/lib/paypal_server_sdk/models/venmo_vault_response_status.rb +31 -0
- data/lib/paypal_server_sdk/models/venmo_wallet_additional_attributes.rb +2 -2
- data/lib/paypal_server_sdk/models/venmo_wallet_attributes_response.rb +5 -5
- data/lib/paypal_server_sdk/models/venmo_wallet_customer_information.rb +2 -2
- data/lib/paypal_server_sdk/models/venmo_wallet_experience_context.rb +24 -10
- data/lib/paypal_server_sdk/models/{shipping_preference.rb → venmo_wallet_experience_context_shipping_preference.rb} +4 -4
- data/lib/paypal_server_sdk/models/venmo_wallet_experience_context_user_action.rb +29 -0
- data/lib/paypal_server_sdk/models/venmo_wallet_request.rb +2 -2
- data/lib/paypal_server_sdk/models/venmo_wallet_response.rb +16 -6
- data/lib/paypal_server_sdk/models/venmo_wallet_vault_attributes.rb +2 -2
- data/lib/paypal_server_sdk/utilities/date_time_helper.rb +2 -2
- data/lib/paypal_server_sdk/utilities/file_wrapper.rb +2 -2
- data/lib/paypal_server_sdk.rb +252 -160
- metadata +111 -22
- data/lib/paypal_server_sdk/models/order_update_callback_error_response.rb +0 -89
- data/lib/paypal_server_sdk/models/order_update_callback_request.rb +0 -111
- data/lib/paypal_server_sdk/models/order_update_callback_response.rb +0 -72
- data/lib/paypal_server_sdk/models/order_update_callback_shipping_address.rb +0 -107
- data/lib/paypal_server_sdk/models/order_update_callback_shipping_option.rb +0 -93
- data/lib/paypal_server_sdk/models/payments_payment_advice_code.rb +0 -42
- data/lib/paypal_server_sdk/models/payments_processor_response.rb +0 -98
- data/lib/paypal_server_sdk/models/shipping_options_purchase_unit.rb +0 -121
- data/lib/paypal_server_sdk/models/supplementary_purchase_data.rb +0 -76
|
@@ -0,0 +1,843 @@
|
|
|
1
|
+
# paypal_server_sdk
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0
|
|
4
|
+
# ( https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module PaypalServerSdk
|
|
7
|
+
# SubscriptionsController
|
|
8
|
+
class SubscriptionsController < BaseController
|
|
9
|
+
# Creates a plan that defines pricing and billing cycle details for
|
|
10
|
+
# subscriptions.
|
|
11
|
+
# @param [String] prefer Optional parameter: The preferred server response
|
|
12
|
+
# upon successful completion of the request. Value is: return=minimal. The
|
|
13
|
+
# server returns a minimal response to optimize communication between the
|
|
14
|
+
# API caller and the server. A minimal response includes the id, status and
|
|
15
|
+
# HATEOAS links. return=representation. The server returns a complete
|
|
16
|
+
# resource representation, including the current state of the resource.
|
|
17
|
+
# @param [String] paypal_request_id Optional parameter: The server stores
|
|
18
|
+
# keys for 72 hours.
|
|
19
|
+
# @param [PlanRequest] body Optional parameter: TODO: type description
|
|
20
|
+
# here
|
|
21
|
+
# @return [ApiResponse] Complete http response with raw body and status code.
|
|
22
|
+
def create_billing_plan(options = {})
|
|
23
|
+
@api_call
|
|
24
|
+
.request(new_request_builder(HttpMethodEnum::POST,
|
|
25
|
+
'/v1/billing/plans',
|
|
26
|
+
Server::DEFAULT)
|
|
27
|
+
.header_param(new_parameter('application/json', key: 'Content-Type'))
|
|
28
|
+
.header_param(new_parameter(options['prefer'], key: 'Prefer'))
|
|
29
|
+
.header_param(new_parameter(options['paypal_request_id'], key: 'PayPal-Request-Id'))
|
|
30
|
+
.body_param(new_parameter(options['body']))
|
|
31
|
+
.header_param(new_parameter('application/json', key: 'accept'))
|
|
32
|
+
.body_serializer(proc do |param| param.to_json unless param.nil? end)
|
|
33
|
+
.auth(Single.new('Oauth2')))
|
|
34
|
+
.response(new_response_handler
|
|
35
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
|
36
|
+
.deserialize_into(BillingPlan.method(:from_hash))
|
|
37
|
+
.is_api_response(true)
|
|
38
|
+
.local_error('400',
|
|
39
|
+
'Bad Request. Request is not well-formed, syntactically'\
|
|
40
|
+
' incorrect, or violates schema.',
|
|
41
|
+
SubscriptionErrorException)
|
|
42
|
+
.local_error('401',
|
|
43
|
+
'Authentication failed due to missing authorization header, or'\
|
|
44
|
+
' invalid authentication credentials.',
|
|
45
|
+
SubscriptionErrorException)
|
|
46
|
+
.local_error('403',
|
|
47
|
+
'Authorization failed due to insufficient permissions.',
|
|
48
|
+
SubscriptionErrorException)
|
|
49
|
+
.local_error('422',
|
|
50
|
+
'The requested action could not be performed, semantically'\
|
|
51
|
+
' incorrect, or failed business validation.',
|
|
52
|
+
SubscriptionErrorException)
|
|
53
|
+
.local_error('500',
|
|
54
|
+
'An internal server error has occurred.',
|
|
55
|
+
SubscriptionErrorException)
|
|
56
|
+
.local_error('default',
|
|
57
|
+
'The error response.',
|
|
58
|
+
SubscriptionErrorException))
|
|
59
|
+
.execute
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
# Lists billing plans.
|
|
63
|
+
# @param [String] prefer Optional parameter: The preferred server response
|
|
64
|
+
# upon successful completion of the request. Value is: return=minimal. The
|
|
65
|
+
# server returns a minimal response to optimize communication between the
|
|
66
|
+
# API caller and the server. A minimal response includes the id, name,
|
|
67
|
+
# description and HATEOAS links. return=representation. The server returns a
|
|
68
|
+
# complete resource representation, including the current state of the
|
|
69
|
+
# resource.
|
|
70
|
+
# @param [String] product_id Optional parameter: Filters the response by a
|
|
71
|
+
# Product ID.
|
|
72
|
+
# @param [Integer] page_size Optional parameter: The number of items to
|
|
73
|
+
# return in the response.
|
|
74
|
+
# @param [Integer] page Optional parameter: A non-zero integer which is the
|
|
75
|
+
# start index of the entire list of items to return in the response. The
|
|
76
|
+
# combination of `page=1` and `page_size=20` returns the first 20 items. The
|
|
77
|
+
# combination of `page=2` and `page_size=20` returns the next 20 items.
|
|
78
|
+
# @param [TrueClass | FalseClass] total_required Optional parameter:
|
|
79
|
+
# Indicates whether to show the total count in the response.
|
|
80
|
+
# @return [ApiResponse] Complete http response with raw body and status code.
|
|
81
|
+
def list_billing_plans(options = {})
|
|
82
|
+
@api_call
|
|
83
|
+
.request(new_request_builder(HttpMethodEnum::GET,
|
|
84
|
+
'/v1/billing/plans',
|
|
85
|
+
Server::DEFAULT)
|
|
86
|
+
.header_param(new_parameter(options['prefer'], key: 'Prefer'))
|
|
87
|
+
.query_param(new_parameter(options['product_id'], key: 'product_id'))
|
|
88
|
+
.query_param(new_parameter(options['page_size'], key: 'page_size'))
|
|
89
|
+
.query_param(new_parameter(options['page'], key: 'page'))
|
|
90
|
+
.query_param(new_parameter(options['total_required'], key: 'total_required'))
|
|
91
|
+
.header_param(new_parameter('application/json', key: 'accept'))
|
|
92
|
+
.auth(Single.new('Oauth2')))
|
|
93
|
+
.response(new_response_handler
|
|
94
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
|
95
|
+
.deserialize_into(PlanCollection.method(:from_hash))
|
|
96
|
+
.is_api_response(true)
|
|
97
|
+
.local_error('400',
|
|
98
|
+
'Request is not well-formed, syntactically incorrect, or'\
|
|
99
|
+
' violates schema.',
|
|
100
|
+
SubscriptionErrorException)
|
|
101
|
+
.local_error('401',
|
|
102
|
+
'Authentication failed due to missing authorization header, or'\
|
|
103
|
+
' invalid authentication credentials.',
|
|
104
|
+
SubscriptionErrorException)
|
|
105
|
+
.local_error('403',
|
|
106
|
+
'Authorization failed due to insufficient permissions.',
|
|
107
|
+
SubscriptionErrorException)
|
|
108
|
+
.local_error('404',
|
|
109
|
+
'The specified resource does not exist.',
|
|
110
|
+
SubscriptionErrorException)
|
|
111
|
+
.local_error('500',
|
|
112
|
+
'An internal server error has occurred.',
|
|
113
|
+
SubscriptionErrorException)
|
|
114
|
+
.local_error('default',
|
|
115
|
+
'The error response.',
|
|
116
|
+
SubscriptionErrorException))
|
|
117
|
+
.execute
|
|
118
|
+
end
|
|
119
|
+
|
|
120
|
+
# Shows details for a plan, by ID.
|
|
121
|
+
# @param [String] id Required parameter: The ID of the plan.
|
|
122
|
+
# @return [ApiResponse] Complete http response with raw body and status code.
|
|
123
|
+
def get_billing_plan(id)
|
|
124
|
+
@api_call
|
|
125
|
+
.request(new_request_builder(HttpMethodEnum::GET,
|
|
126
|
+
'/v1/billing/plans/{id}',
|
|
127
|
+
Server::DEFAULT)
|
|
128
|
+
.template_param(new_parameter(id, key: 'id')
|
|
129
|
+
.should_encode(true))
|
|
130
|
+
.header_param(new_parameter('application/json', key: 'accept'))
|
|
131
|
+
.auth(Single.new('Oauth2')))
|
|
132
|
+
.response(new_response_handler
|
|
133
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
|
134
|
+
.deserialize_into(BillingPlan.method(:from_hash))
|
|
135
|
+
.is_api_response(true)
|
|
136
|
+
.local_error('401',
|
|
137
|
+
'Authentication failed due to missing authorization header, or'\
|
|
138
|
+
' invalid authentication credentials.',
|
|
139
|
+
SubscriptionErrorException)
|
|
140
|
+
.local_error('403',
|
|
141
|
+
'Authorization failed due to insufficient permissions.',
|
|
142
|
+
SubscriptionErrorException)
|
|
143
|
+
.local_error('404',
|
|
144
|
+
'The specified resource does not exist.',
|
|
145
|
+
SubscriptionErrorException)
|
|
146
|
+
.local_error('500',
|
|
147
|
+
'An internal server error has occurred.',
|
|
148
|
+
SubscriptionErrorException)
|
|
149
|
+
.local_error('default',
|
|
150
|
+
'The error response.',
|
|
151
|
+
SubscriptionErrorException))
|
|
152
|
+
.execute
|
|
153
|
+
end
|
|
154
|
+
|
|
155
|
+
# Updates a plan with the `CREATED` or `ACTIVE` status. For an `INACTIVE`
|
|
156
|
+
# plan, you can make only status updates. You can patch these attributes and
|
|
157
|
+
# objects: Attribute or object Operations description replace
|
|
158
|
+
# payment_preferences.auto_bill_outstanding replace taxes.percentage replace
|
|
159
|
+
# payment_preferences.payment_failure_threshold replace
|
|
160
|
+
# payment_preferences.setup_fee replace
|
|
161
|
+
# payment_preferences.setup_fee_failure_action replace name replace
|
|
162
|
+
# @param [String] id Required parameter: The ID of the plan.
|
|
163
|
+
# @param [Array[Patch]] body Optional parameter: TODO: type description
|
|
164
|
+
# here
|
|
165
|
+
# @return [ApiResponse] Complete http response with raw body and status code.
|
|
166
|
+
def patch_billing_plan(options = {})
|
|
167
|
+
@api_call
|
|
168
|
+
.request(new_request_builder(HttpMethodEnum::PATCH,
|
|
169
|
+
'/v1/billing/plans/{id}',
|
|
170
|
+
Server::DEFAULT)
|
|
171
|
+
.template_param(new_parameter(options['id'], key: 'id')
|
|
172
|
+
.should_encode(true))
|
|
173
|
+
.header_param(new_parameter('application/json', key: 'Content-Type'))
|
|
174
|
+
.body_param(new_parameter(options['body']))
|
|
175
|
+
.body_serializer(proc do |param| param.to_json unless param.nil? end)
|
|
176
|
+
.auth(Single.new('Oauth2')))
|
|
177
|
+
.response(new_response_handler
|
|
178
|
+
.is_response_void(true)
|
|
179
|
+
.is_api_response(true)
|
|
180
|
+
.local_error('400',
|
|
181
|
+
'Request is not well-formed, syntactically incorrect, or'\
|
|
182
|
+
' violates schema.',
|
|
183
|
+
SubscriptionErrorException)
|
|
184
|
+
.local_error('401',
|
|
185
|
+
'Authentication failed due to missing authorization header, or'\
|
|
186
|
+
' invalid authentication credentials.',
|
|
187
|
+
SubscriptionErrorException)
|
|
188
|
+
.local_error('403',
|
|
189
|
+
'Authorization failed due to insufficient permissions.',
|
|
190
|
+
SubscriptionErrorException)
|
|
191
|
+
.local_error('404',
|
|
192
|
+
'The specified resource does not exist.',
|
|
193
|
+
SubscriptionErrorException)
|
|
194
|
+
.local_error('422',
|
|
195
|
+
'The requested action could not be performed, semantically'\
|
|
196
|
+
' incorrect, or failed business validation.',
|
|
197
|
+
SubscriptionErrorException)
|
|
198
|
+
.local_error('500',
|
|
199
|
+
'An internal server error has occurred.',
|
|
200
|
+
SubscriptionErrorException)
|
|
201
|
+
.local_error('default',
|
|
202
|
+
'The error response.',
|
|
203
|
+
SubscriptionErrorException))
|
|
204
|
+
.execute
|
|
205
|
+
end
|
|
206
|
+
|
|
207
|
+
# Activates a plan, by ID.
|
|
208
|
+
# @param [String] id Required parameter: The ID of the plan.
|
|
209
|
+
# @return [ApiResponse] Complete http response with raw body and status code.
|
|
210
|
+
def activate_billing_plan(id)
|
|
211
|
+
@api_call
|
|
212
|
+
.request(new_request_builder(HttpMethodEnum::POST,
|
|
213
|
+
'/v1/billing/plans/{id}/activate',
|
|
214
|
+
Server::DEFAULT)
|
|
215
|
+
.template_param(new_parameter(id, key: 'id')
|
|
216
|
+
.should_encode(true))
|
|
217
|
+
.auth(Single.new('Oauth2')))
|
|
218
|
+
.response(new_response_handler
|
|
219
|
+
.is_response_void(true)
|
|
220
|
+
.is_api_response(true)
|
|
221
|
+
.local_error('401',
|
|
222
|
+
'Authentication failed due to missing authorization header, or'\
|
|
223
|
+
' invalid authentication credentials.',
|
|
224
|
+
SubscriptionErrorException)
|
|
225
|
+
.local_error('403',
|
|
226
|
+
'Authorization failed due to insufficient permissions.',
|
|
227
|
+
SubscriptionErrorException)
|
|
228
|
+
.local_error('404',
|
|
229
|
+
'The specified resource does not exist.',
|
|
230
|
+
SubscriptionErrorException)
|
|
231
|
+
.local_error('422',
|
|
232
|
+
'The requested action could not be performed, semantically'\
|
|
233
|
+
' incorrect, or failed business validation.',
|
|
234
|
+
SubscriptionErrorException)
|
|
235
|
+
.local_error('500',
|
|
236
|
+
'An internal server error has occurred.',
|
|
237
|
+
SubscriptionErrorException)
|
|
238
|
+
.local_error('default',
|
|
239
|
+
'The error response.',
|
|
240
|
+
SubscriptionErrorException))
|
|
241
|
+
.execute
|
|
242
|
+
end
|
|
243
|
+
|
|
244
|
+
# Deactivates a plan, by ID.
|
|
245
|
+
# @param [String] id Required parameter: The ID of the plan.
|
|
246
|
+
# @return [ApiResponse] Complete http response with raw body and status code.
|
|
247
|
+
def deactivate_billing_plan(id)
|
|
248
|
+
@api_call
|
|
249
|
+
.request(new_request_builder(HttpMethodEnum::POST,
|
|
250
|
+
'/v1/billing/plans/{id}/deactivate',
|
|
251
|
+
Server::DEFAULT)
|
|
252
|
+
.template_param(new_parameter(id, key: 'id')
|
|
253
|
+
.should_encode(true))
|
|
254
|
+
.auth(Single.new('Oauth2')))
|
|
255
|
+
.response(new_response_handler
|
|
256
|
+
.is_response_void(true)
|
|
257
|
+
.is_api_response(true)
|
|
258
|
+
.local_error('401',
|
|
259
|
+
'Authentication failed due to missing authorization header, or'\
|
|
260
|
+
' invalid authentication credentials.',
|
|
261
|
+
SubscriptionErrorException)
|
|
262
|
+
.local_error('403',
|
|
263
|
+
'Authorization failed due to insufficient permissions.',
|
|
264
|
+
SubscriptionErrorException)
|
|
265
|
+
.local_error('404',
|
|
266
|
+
'The specified resource does not exist.',
|
|
267
|
+
SubscriptionErrorException)
|
|
268
|
+
.local_error('422',
|
|
269
|
+
'The requested action could not be performed, semantically'\
|
|
270
|
+
' incorrect, or failed business validation.',
|
|
271
|
+
SubscriptionErrorException)
|
|
272
|
+
.local_error('500',
|
|
273
|
+
'An internal server error has occurred.',
|
|
274
|
+
SubscriptionErrorException)
|
|
275
|
+
.local_error('default',
|
|
276
|
+
'The error response.',
|
|
277
|
+
SubscriptionErrorException))
|
|
278
|
+
.execute
|
|
279
|
+
end
|
|
280
|
+
|
|
281
|
+
# Updates pricing for a plan. For example, you can update a regular billing
|
|
282
|
+
# cycle from $5 per month to $7 per month.
|
|
283
|
+
# @param [String] id Required parameter: The ID for the plan.
|
|
284
|
+
# @param [UpdatePricingSchemesRequest] body Optional parameter: TODO: type
|
|
285
|
+
# description here
|
|
286
|
+
# @return [ApiResponse] Complete http response with raw body and status code.
|
|
287
|
+
def update_billing_plan_pricing_schemes(options = {})
|
|
288
|
+
@api_call
|
|
289
|
+
.request(new_request_builder(HttpMethodEnum::POST,
|
|
290
|
+
'/v1/billing/plans/{id}/update-pricing-schemes',
|
|
291
|
+
Server::DEFAULT)
|
|
292
|
+
.template_param(new_parameter(options['id'], key: 'id')
|
|
293
|
+
.should_encode(true))
|
|
294
|
+
.header_param(new_parameter('application/json', key: 'Content-Type'))
|
|
295
|
+
.body_param(new_parameter(options['body']))
|
|
296
|
+
.body_serializer(proc do |param| param.to_json unless param.nil? end)
|
|
297
|
+
.auth(Single.new('Oauth2')))
|
|
298
|
+
.response(new_response_handler
|
|
299
|
+
.is_response_void(true)
|
|
300
|
+
.is_api_response(true)
|
|
301
|
+
.local_error('400',
|
|
302
|
+
'Bad Request. Request is not well-formed, syntactically'\
|
|
303
|
+
' incorrect, or violates schema.',
|
|
304
|
+
SubscriptionErrorException)
|
|
305
|
+
.local_error('401',
|
|
306
|
+
'Authentication failed due to missing authorization header, or'\
|
|
307
|
+
' invalid authentication credentials.',
|
|
308
|
+
SubscriptionErrorException)
|
|
309
|
+
.local_error('403',
|
|
310
|
+
'Authorization failed due to insufficient permissions.',
|
|
311
|
+
SubscriptionErrorException)
|
|
312
|
+
.local_error('404',
|
|
313
|
+
'The specified resource does not exist.',
|
|
314
|
+
SubscriptionErrorException)
|
|
315
|
+
.local_error('422',
|
|
316
|
+
'The requested action could not be performed, semantically'\
|
|
317
|
+
' incorrect, or failed business validation.',
|
|
318
|
+
SubscriptionErrorException)
|
|
319
|
+
.local_error('500',
|
|
320
|
+
'An internal server error has occurred.',
|
|
321
|
+
SubscriptionErrorException)
|
|
322
|
+
.local_error('default',
|
|
323
|
+
'The error response.',
|
|
324
|
+
SubscriptionErrorException))
|
|
325
|
+
.execute
|
|
326
|
+
end
|
|
327
|
+
|
|
328
|
+
# Creates a subscription.
|
|
329
|
+
# @param [String] prefer Optional parameter: The preferred server response
|
|
330
|
+
# upon successful completion of the request. Value is: return=minimal. The
|
|
331
|
+
# server returns a minimal response to optimize communication between the
|
|
332
|
+
# API caller and the server. A minimal response includes the id, status and
|
|
333
|
+
# HATEOAS links. return=representation. The server returns a complete
|
|
334
|
+
# resource representation, including the current state of the resource.
|
|
335
|
+
# @param [String] paypal_request_id Optional parameter: The server stores
|
|
336
|
+
# keys for 72 hours.
|
|
337
|
+
# @param [String] paypal_client_metadata_id Optional parameter: The PayPal
|
|
338
|
+
# Client Metadata Id(CMID) is used to provide device-specific information to
|
|
339
|
+
# PayPal's risk engine. This is crucial for transactions that require
|
|
340
|
+
# device-specific risk assessments. Merchants typically use the Paypal SDK
|
|
341
|
+
# that automatically submits the CMID or they use tools like Fraudnet JS for
|
|
342
|
+
# web or Magnes JS for mobile to generate the CMID on the frontend and then
|
|
343
|
+
# pass it to the API as part of the request headers.
|
|
344
|
+
# @param [CreateSubscriptionRequest] body Optional parameter: TODO: type
|
|
345
|
+
# description here
|
|
346
|
+
# @return [ApiResponse] Complete http response with raw body and status code.
|
|
347
|
+
def create_subscription(options = {})
|
|
348
|
+
@api_call
|
|
349
|
+
.request(new_request_builder(HttpMethodEnum::POST,
|
|
350
|
+
'/v1/billing/subscriptions',
|
|
351
|
+
Server::DEFAULT)
|
|
352
|
+
.header_param(new_parameter('application/json', key: 'Content-Type'))
|
|
353
|
+
.header_param(new_parameter(options['prefer'], key: 'Prefer'))
|
|
354
|
+
.header_param(new_parameter(options['paypal_request_id'], key: 'PayPal-Request-Id'))
|
|
355
|
+
.header_param(new_parameter(options['paypal_client_metadata_id'], key: 'PayPal-Client-Metadata-Id'))
|
|
356
|
+
.body_param(new_parameter(options['body']))
|
|
357
|
+
.header_param(new_parameter('application/json', key: 'accept'))
|
|
358
|
+
.body_serializer(proc do |param| param.to_json unless param.nil? end)
|
|
359
|
+
.auth(Single.new('Oauth2')))
|
|
360
|
+
.response(new_response_handler
|
|
361
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
|
362
|
+
.deserialize_into(Subscription.method(:from_hash))
|
|
363
|
+
.is_api_response(true)
|
|
364
|
+
.local_error('400',
|
|
365
|
+
'Bad Request. Request is not well-formed, syntactically'\
|
|
366
|
+
' incorrect, or violates schema.',
|
|
367
|
+
SubscriptionErrorException)
|
|
368
|
+
.local_error('401',
|
|
369
|
+
'Authentication failed due to missing authorization header, or'\
|
|
370
|
+
' invalid authentication credentials.',
|
|
371
|
+
SubscriptionErrorException)
|
|
372
|
+
.local_error('403',
|
|
373
|
+
'Authorization failed due to insufficient permissions.',
|
|
374
|
+
SubscriptionErrorException)
|
|
375
|
+
.local_error('422',
|
|
376
|
+
'The requested action could not be performed, semantically'\
|
|
377
|
+
' incorrect, or failed business validation.',
|
|
378
|
+
SubscriptionErrorException)
|
|
379
|
+
.local_error('500',
|
|
380
|
+
'An internal server error has occurred.',
|
|
381
|
+
SubscriptionErrorException)
|
|
382
|
+
.local_error('default',
|
|
383
|
+
'The error response.',
|
|
384
|
+
SubscriptionErrorException))
|
|
385
|
+
.execute
|
|
386
|
+
end
|
|
387
|
+
|
|
388
|
+
# List all subscriptions for merchant account.
|
|
389
|
+
# @param [String] plan_ids Optional parameter: Filters the response by list
|
|
390
|
+
# of plan IDs. Filter supports upto 70 plan IDs. URLs should not exceed a
|
|
391
|
+
# length of 2000 characters.
|
|
392
|
+
# @param [String] statuses Optional parameter: Filters the response by list
|
|
393
|
+
# of subscription statuses.
|
|
394
|
+
# @param [String] created_after Optional parameter: Filters the response by
|
|
395
|
+
# subscription creation start time for a range of subscriptions.
|
|
396
|
+
# @param [String] created_before Optional parameter: Filters the response by
|
|
397
|
+
# subscription creation end time for a range of subscriptions.
|
|
398
|
+
# @param [String] status_updated_before Optional parameter: Filters the
|
|
399
|
+
# response by status update start time for a range of subscriptions.
|
|
400
|
+
# @param [String] status_updated_after Optional parameter: Filters the
|
|
401
|
+
# response by status update end time for a range of subscriptions.
|
|
402
|
+
# @param [String] filter Optional parameter: Filter the response using
|
|
403
|
+
# complex expressions that could use comparison operators like ge, gt, le,
|
|
404
|
+
# lt and logical operators such as 'and' and 'or'.
|
|
405
|
+
# @param [Integer] page_size Optional parameter: The number of items to
|
|
406
|
+
# return in the response.
|
|
407
|
+
# @param [Integer] page Optional parameter: A non-zero integer which is the
|
|
408
|
+
# start index of the entire list of items to return in the response. The
|
|
409
|
+
# combination of `page=1` and `page_size=20` returns the first 20 items. The
|
|
410
|
+
# combination of `page=2` and `page_size=20` returns the next 20 items.
|
|
411
|
+
# @param [Array[String]] customer_ids Optional parameter: Filters the
|
|
412
|
+
# response by comma separated vault customer IDs (FSS subscriptions only).
|
|
413
|
+
# @return [ApiResponse] Complete http response with raw body and status code.
|
|
414
|
+
def list_subscriptions(options = {})
|
|
415
|
+
@api_call
|
|
416
|
+
.request(new_request_builder(HttpMethodEnum::GET,
|
|
417
|
+
'/v1/billing/subscriptions',
|
|
418
|
+
Server::DEFAULT)
|
|
419
|
+
.query_param(new_parameter(options['plan_ids'], key: 'plan_ids'))
|
|
420
|
+
.query_param(new_parameter(options['statuses'], key: 'statuses'))
|
|
421
|
+
.query_param(new_parameter(options['created_after'], key: 'created_after'))
|
|
422
|
+
.query_param(new_parameter(options['created_before'], key: 'created_before'))
|
|
423
|
+
.query_param(new_parameter(options['status_updated_before'], key: 'status_updated_before'))
|
|
424
|
+
.query_param(new_parameter(options['status_updated_after'], key: 'status_updated_after'))
|
|
425
|
+
.query_param(new_parameter(options['filter'], key: 'filter'))
|
|
426
|
+
.query_param(new_parameter(options['page_size'], key: 'page_size'))
|
|
427
|
+
.query_param(new_parameter(options['page'], key: 'page'))
|
|
428
|
+
.query_param(new_parameter(options['customer_ids'], key: 'customer_ids'))
|
|
429
|
+
.header_param(new_parameter('application/json', key: 'accept'))
|
|
430
|
+
.auth(Single.new('Oauth2')))
|
|
431
|
+
.response(new_response_handler
|
|
432
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
|
433
|
+
.deserialize_into(SubscriptionCollection.method(:from_hash))
|
|
434
|
+
.is_api_response(true)
|
|
435
|
+
.local_error('400',
|
|
436
|
+
'Request is not well-formed, syntactically incorrect, or'\
|
|
437
|
+
' violates schema.',
|
|
438
|
+
SubscriptionErrorException)
|
|
439
|
+
.local_error('401',
|
|
440
|
+
'Authentication failed due to missing authorization header, or'\
|
|
441
|
+
' invalid authentication credentials.',
|
|
442
|
+
SubscriptionErrorException)
|
|
443
|
+
.local_error('403',
|
|
444
|
+
'Authorization failed due to insufficient permissions.',
|
|
445
|
+
SubscriptionErrorException)
|
|
446
|
+
.local_error('500',
|
|
447
|
+
'An internal server error has occurred.',
|
|
448
|
+
SubscriptionErrorException)
|
|
449
|
+
.local_error('default',
|
|
450
|
+
'The error response.',
|
|
451
|
+
SubscriptionErrorException))
|
|
452
|
+
.execute
|
|
453
|
+
end
|
|
454
|
+
|
|
455
|
+
# Shows details for a subscription, by ID.
|
|
456
|
+
# @param [String] id Required parameter: The ID of the subscription.
|
|
457
|
+
# @param [String] fields Optional parameter: List of fields that are to be
|
|
458
|
+
# returned in the response. Possible value for fields are
|
|
459
|
+
# last_failed_payment and plan.
|
|
460
|
+
# @return [ApiResponse] Complete http response with raw body and status code.
|
|
461
|
+
def get_subscription(options = {})
|
|
462
|
+
@api_call
|
|
463
|
+
.request(new_request_builder(HttpMethodEnum::GET,
|
|
464
|
+
'/v1/billing/subscriptions/{id}',
|
|
465
|
+
Server::DEFAULT)
|
|
466
|
+
.template_param(new_parameter(options['id'], key: 'id')
|
|
467
|
+
.should_encode(true))
|
|
468
|
+
.query_param(new_parameter(options['fields'], key: 'fields'))
|
|
469
|
+
.header_param(new_parameter('application/json', key: 'accept'))
|
|
470
|
+
.auth(Single.new('Oauth2')))
|
|
471
|
+
.response(new_response_handler
|
|
472
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
|
473
|
+
.deserialize_into(Subscription.method(:from_hash))
|
|
474
|
+
.is_api_response(true)
|
|
475
|
+
.local_error('401',
|
|
476
|
+
'Authentication failed due to missing authorization header, or'\
|
|
477
|
+
' invalid authentication credentials.',
|
|
478
|
+
SubscriptionErrorException)
|
|
479
|
+
.local_error('403',
|
|
480
|
+
'Authorization failed due to insufficient permissions.',
|
|
481
|
+
SubscriptionErrorException)
|
|
482
|
+
.local_error('404',
|
|
483
|
+
'The specified resource does not exist.',
|
|
484
|
+
SubscriptionErrorException)
|
|
485
|
+
.local_error('500',
|
|
486
|
+
'An internal server error has occurred.',
|
|
487
|
+
SubscriptionErrorException)
|
|
488
|
+
.local_error('default',
|
|
489
|
+
'The error response.',
|
|
490
|
+
SubscriptionErrorException))
|
|
491
|
+
.execute
|
|
492
|
+
end
|
|
493
|
+
|
|
494
|
+
# Updates a subscription which could be in ACTIVE or SUSPENDED status. You
|
|
495
|
+
# can override plan level default attributes by providing customised values
|
|
496
|
+
# for plan path in the patch request. You cannot update attributes that have
|
|
497
|
+
# already completed (Example - trial cycles can’t be updated if completed).
|
|
498
|
+
# Once overridden, changes to plan resource will not impact subscription.
|
|
499
|
+
# Any price update will not impact billing cycles within next 10 days
|
|
500
|
+
# (Applicable only for subscriptions funded by PayPal account). Following
|
|
501
|
+
# are the fields eligible for patch. Attribute or object Operations
|
|
502
|
+
# billing_info.outstanding_balance replace custom_id add,replace
|
|
503
|
+
# plan.billing_cycles[@sequence==n]. pricing_scheme.fixed_price add,replace
|
|
504
|
+
# plan.billing_cycles[@sequence==n]. pricing_scheme.tiers replace
|
|
505
|
+
# plan.billing_cycles[@sequence==n]. total_cycles replace
|
|
506
|
+
# plan.payment_preferences. auto_bill_outstanding replace
|
|
507
|
+
# plan.payment_preferences. payment_failure_threshold replace
|
|
508
|
+
# plan.taxes.inclusive add,replace plan.taxes.percentage add,replace
|
|
509
|
+
# shipping_amount add,replace start_time replace subscriber.shipping_address
|
|
510
|
+
# add,replace subscriber.payment_source (for subscriptions funded by card
|
|
511
|
+
# payments) replace
|
|
512
|
+
# @param [String] id Required parameter: The ID for the subscription.
|
|
513
|
+
# @param [Array[Patch]] body Optional parameter: TODO: type description
|
|
514
|
+
# here
|
|
515
|
+
# @return [ApiResponse] Complete http response with raw body and status code.
|
|
516
|
+
def patch_subscription(options = {})
|
|
517
|
+
@api_call
|
|
518
|
+
.request(new_request_builder(HttpMethodEnum::PATCH,
|
|
519
|
+
'/v1/billing/subscriptions/{id}',
|
|
520
|
+
Server::DEFAULT)
|
|
521
|
+
.template_param(new_parameter(options['id'], key: 'id')
|
|
522
|
+
.should_encode(true))
|
|
523
|
+
.header_param(new_parameter('application/json', key: 'Content-Type'))
|
|
524
|
+
.body_param(new_parameter(options['body']))
|
|
525
|
+
.body_serializer(proc do |param| param.to_json unless param.nil? end)
|
|
526
|
+
.auth(Single.new('Oauth2')))
|
|
527
|
+
.response(new_response_handler
|
|
528
|
+
.is_response_void(true)
|
|
529
|
+
.is_api_response(true)
|
|
530
|
+
.local_error('400',
|
|
531
|
+
'Request is not well-formed, syntactically incorrect, or'\
|
|
532
|
+
' violates schema.',
|
|
533
|
+
SubscriptionErrorException)
|
|
534
|
+
.local_error('401',
|
|
535
|
+
'Authentication failed due to missing authorization header, or'\
|
|
536
|
+
' invalid authentication credentials.',
|
|
537
|
+
SubscriptionErrorException)
|
|
538
|
+
.local_error('403',
|
|
539
|
+
'Authorization failed due to insufficient permissions.',
|
|
540
|
+
SubscriptionErrorException)
|
|
541
|
+
.local_error('404',
|
|
542
|
+
'The specified resource does not exist.',
|
|
543
|
+
SubscriptionErrorException)
|
|
544
|
+
.local_error('422',
|
|
545
|
+
'The requested action could not be performed, semantically'\
|
|
546
|
+
' incorrect, or failed business validation.',
|
|
547
|
+
SubscriptionErrorException)
|
|
548
|
+
.local_error('500',
|
|
549
|
+
'An internal server error has occurred.',
|
|
550
|
+
SubscriptionErrorException)
|
|
551
|
+
.local_error('default',
|
|
552
|
+
'The error response.',
|
|
553
|
+
SubscriptionErrorException))
|
|
554
|
+
.execute
|
|
555
|
+
end
|
|
556
|
+
|
|
557
|
+
# Updates the quantity of the product or service in a subscription. You can
|
|
558
|
+
# also use this method to switch the plan and update the `shipping_amount`,
|
|
559
|
+
# `shipping_address` values for the subscription. This type of update
|
|
560
|
+
# requires the buyer's consent.
|
|
561
|
+
# @param [String] id Required parameter: The ID of the subscription.
|
|
562
|
+
# @param [ModifySubscriptionRequest] body Optional parameter: TODO: type
|
|
563
|
+
# description here
|
|
564
|
+
# @return [ApiResponse] Complete http response with raw body and status code.
|
|
565
|
+
def revise_subscription(options = {})
|
|
566
|
+
@api_call
|
|
567
|
+
.request(new_request_builder(HttpMethodEnum::POST,
|
|
568
|
+
'/v1/billing/subscriptions/{id}/revise',
|
|
569
|
+
Server::DEFAULT)
|
|
570
|
+
.template_param(new_parameter(options['id'], key: 'id')
|
|
571
|
+
.should_encode(true))
|
|
572
|
+
.header_param(new_parameter('application/json', key: 'Content-Type'))
|
|
573
|
+
.body_param(new_parameter(options['body']))
|
|
574
|
+
.header_param(new_parameter('application/json', key: 'accept'))
|
|
575
|
+
.body_serializer(proc do |param| param.to_json unless param.nil? end)
|
|
576
|
+
.auth(Single.new('Oauth2')))
|
|
577
|
+
.response(new_response_handler
|
|
578
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
|
579
|
+
.deserialize_into(ModifySubscriptionResponse.method(:from_hash))
|
|
580
|
+
.is_api_response(true)
|
|
581
|
+
.local_error('400',
|
|
582
|
+
'Bad Request. Request is not well-formed, syntactically'\
|
|
583
|
+
' incorrect, or violates schema.',
|
|
584
|
+
SubscriptionErrorException)
|
|
585
|
+
.local_error('401',
|
|
586
|
+
'Authentication failed due to missing authorization header, or'\
|
|
587
|
+
' invalid authentication credentials.',
|
|
588
|
+
SubscriptionErrorException)
|
|
589
|
+
.local_error('403',
|
|
590
|
+
'Authorization failed due to insufficient permissions.',
|
|
591
|
+
SubscriptionErrorException)
|
|
592
|
+
.local_error('404',
|
|
593
|
+
'The specified resource does not exist.',
|
|
594
|
+
SubscriptionErrorException)
|
|
595
|
+
.local_error('422',
|
|
596
|
+
'The requested action could not be performed, semantically'\
|
|
597
|
+
' incorrect, or failed business validation.',
|
|
598
|
+
SubscriptionErrorException)
|
|
599
|
+
.local_error('500',
|
|
600
|
+
'An internal server error has occurred.',
|
|
601
|
+
SubscriptionErrorException)
|
|
602
|
+
.local_error('default',
|
|
603
|
+
'The error response.',
|
|
604
|
+
SubscriptionErrorException))
|
|
605
|
+
.execute
|
|
606
|
+
end
|
|
607
|
+
|
|
608
|
+
# Suspends the subscription.
|
|
609
|
+
# @param [String] id Required parameter: The ID of the subscription.
|
|
610
|
+
# @param [SuspendSubscription] body Optional parameter: TODO: type
|
|
611
|
+
# description here
|
|
612
|
+
# @return [ApiResponse] Complete http response with raw body and status code.
|
|
613
|
+
def suspend_subscription(options = {})
|
|
614
|
+
@api_call
|
|
615
|
+
.request(new_request_builder(HttpMethodEnum::POST,
|
|
616
|
+
'/v1/billing/subscriptions/{id}/suspend',
|
|
617
|
+
Server::DEFAULT)
|
|
618
|
+
.template_param(new_parameter(options['id'], key: 'id')
|
|
619
|
+
.should_encode(true))
|
|
620
|
+
.header_param(new_parameter('application/json', key: 'Content-Type'))
|
|
621
|
+
.body_param(new_parameter(options['body']))
|
|
622
|
+
.body_serializer(proc do |param| param.to_json unless param.nil? end)
|
|
623
|
+
.auth(Single.new('Oauth2')))
|
|
624
|
+
.response(new_response_handler
|
|
625
|
+
.is_response_void(true)
|
|
626
|
+
.is_api_response(true)
|
|
627
|
+
.local_error('400',
|
|
628
|
+
'Bad Request. Request is not well-formed, syntactically'\
|
|
629
|
+
' incorrect, or violates schema.',
|
|
630
|
+
SubscriptionErrorException)
|
|
631
|
+
.local_error('401',
|
|
632
|
+
'Authentication failed due to missing authorization header, or'\
|
|
633
|
+
' invalid authentication credentials.',
|
|
634
|
+
SubscriptionErrorException)
|
|
635
|
+
.local_error('403',
|
|
636
|
+
'Authorization failed due to insufficient permissions.',
|
|
637
|
+
SubscriptionErrorException)
|
|
638
|
+
.local_error('404',
|
|
639
|
+
'The specified resource does not exist.',
|
|
640
|
+
SubscriptionErrorException)
|
|
641
|
+
.local_error('422',
|
|
642
|
+
'The requested action could not be performed, semantically'\
|
|
643
|
+
' incorrect, or failed business validation.',
|
|
644
|
+
SubscriptionErrorException)
|
|
645
|
+
.local_error('500',
|
|
646
|
+
'An internal server error has occurred.',
|
|
647
|
+
SubscriptionErrorException)
|
|
648
|
+
.local_error('default',
|
|
649
|
+
'The error response.',
|
|
650
|
+
SubscriptionErrorException))
|
|
651
|
+
.execute
|
|
652
|
+
end
|
|
653
|
+
|
|
654
|
+
# Cancels the subscription.
|
|
655
|
+
# @param [String] id Required parameter: The ID of the subscription.
|
|
656
|
+
# @param [CancelSubscriptionRequest] body Optional parameter: TODO: type
|
|
657
|
+
# description here
|
|
658
|
+
# @return [ApiResponse] Complete http response with raw body and status code.
|
|
659
|
+
def cancel_subscription(options = {})
|
|
660
|
+
@api_call
|
|
661
|
+
.request(new_request_builder(HttpMethodEnum::POST,
|
|
662
|
+
'/v1/billing/subscriptions/{id}/cancel',
|
|
663
|
+
Server::DEFAULT)
|
|
664
|
+
.template_param(new_parameter(options['id'], key: 'id')
|
|
665
|
+
.should_encode(true))
|
|
666
|
+
.header_param(new_parameter('application/json', key: 'Content-Type'))
|
|
667
|
+
.body_param(new_parameter(options['body']))
|
|
668
|
+
.body_serializer(proc do |param| param.to_json unless param.nil? end)
|
|
669
|
+
.auth(Single.new('Oauth2')))
|
|
670
|
+
.response(new_response_handler
|
|
671
|
+
.is_response_void(true)
|
|
672
|
+
.is_api_response(true)
|
|
673
|
+
.local_error('400',
|
|
674
|
+
'Bad Request. Request is not well-formed, syntactically'\
|
|
675
|
+
' incorrect, or violates schema.',
|
|
676
|
+
SubscriptionErrorException)
|
|
677
|
+
.local_error('401',
|
|
678
|
+
'Authentication failed due to missing authorization header, or'\
|
|
679
|
+
' invalid authentication credentials.',
|
|
680
|
+
SubscriptionErrorException)
|
|
681
|
+
.local_error('403',
|
|
682
|
+
'Authorization failed due to insufficient permissions.',
|
|
683
|
+
SubscriptionErrorException)
|
|
684
|
+
.local_error('404',
|
|
685
|
+
'The specified resource does not exist.',
|
|
686
|
+
SubscriptionErrorException)
|
|
687
|
+
.local_error('422',
|
|
688
|
+
'The requested action could not be performed, semantically'\
|
|
689
|
+
' incorrect, or failed business validation.',
|
|
690
|
+
SubscriptionErrorException)
|
|
691
|
+
.local_error('500',
|
|
692
|
+
'An internal server error has occurred.',
|
|
693
|
+
SubscriptionErrorException)
|
|
694
|
+
.local_error('default',
|
|
695
|
+
'The error response.',
|
|
696
|
+
SubscriptionErrorException))
|
|
697
|
+
.execute
|
|
698
|
+
end
|
|
699
|
+
|
|
700
|
+
# Activates the subscription.
|
|
701
|
+
# @param [String] id Required parameter: The ID of the subscription.
|
|
702
|
+
# @param [ActivateSubscriptionRequest] body Optional parameter: TODO: type
|
|
703
|
+
# description here
|
|
704
|
+
# @return [ApiResponse] Complete http response with raw body and status code.
|
|
705
|
+
def activate_subscription(options = {})
|
|
706
|
+
@api_call
|
|
707
|
+
.request(new_request_builder(HttpMethodEnum::POST,
|
|
708
|
+
'/v1/billing/subscriptions/{id}/activate',
|
|
709
|
+
Server::DEFAULT)
|
|
710
|
+
.template_param(new_parameter(options['id'], key: 'id')
|
|
711
|
+
.should_encode(true))
|
|
712
|
+
.header_param(new_parameter('application/json', key: 'Content-Type'))
|
|
713
|
+
.body_param(new_parameter(options['body']))
|
|
714
|
+
.body_serializer(proc do |param| param.to_json unless param.nil? end)
|
|
715
|
+
.auth(Single.new('Oauth2')))
|
|
716
|
+
.response(new_response_handler
|
|
717
|
+
.is_response_void(true)
|
|
718
|
+
.is_api_response(true)
|
|
719
|
+
.local_error('400',
|
|
720
|
+
'Bad Request. Request is not well-formed, syntactically'\
|
|
721
|
+
' incorrect, or violates schema.',
|
|
722
|
+
SubscriptionErrorException)
|
|
723
|
+
.local_error('401',
|
|
724
|
+
'Authentication failed due to missing authorization header, or'\
|
|
725
|
+
' invalid authentication credentials.',
|
|
726
|
+
SubscriptionErrorException)
|
|
727
|
+
.local_error('403',
|
|
728
|
+
'Authorization failed due to insufficient permissions.',
|
|
729
|
+
SubscriptionErrorException)
|
|
730
|
+
.local_error('404',
|
|
731
|
+
'The specified resource does not exist.',
|
|
732
|
+
SubscriptionErrorException)
|
|
733
|
+
.local_error('422',
|
|
734
|
+
'The requested action could not be performed, semantically'\
|
|
735
|
+
' incorrect, or failed business validation.',
|
|
736
|
+
SubscriptionErrorException)
|
|
737
|
+
.local_error('500',
|
|
738
|
+
'An internal server error has occurred.',
|
|
739
|
+
SubscriptionErrorException)
|
|
740
|
+
.local_error('default',
|
|
741
|
+
'The error response.',
|
|
742
|
+
SubscriptionErrorException))
|
|
743
|
+
.execute
|
|
744
|
+
end
|
|
745
|
+
|
|
746
|
+
# Captures an authorized payment from the subscriber on the subscription.
|
|
747
|
+
# @param [String] id Required parameter: The ID of the subscription.
|
|
748
|
+
# @param [String] paypal_request_id Optional parameter: The server stores
|
|
749
|
+
# keys for 72 hours.
|
|
750
|
+
# @param [CaptureSubscriptionRequest] body Optional parameter: TODO: type
|
|
751
|
+
# description here
|
|
752
|
+
# @return [ApiResponse] Complete http response with raw body and status code.
|
|
753
|
+
def capture_subscription(options = {})
|
|
754
|
+
@api_call
|
|
755
|
+
.request(new_request_builder(HttpMethodEnum::POST,
|
|
756
|
+
'/v1/billing/subscriptions/{id}/capture',
|
|
757
|
+
Server::DEFAULT)
|
|
758
|
+
.template_param(new_parameter(options['id'], key: 'id')
|
|
759
|
+
.should_encode(true))
|
|
760
|
+
.header_param(new_parameter('application/json', key: 'Content-Type'))
|
|
761
|
+
.header_param(new_parameter(options['paypal_request_id'], key: 'PayPal-Request-Id'))
|
|
762
|
+
.body_param(new_parameter(options['body']))
|
|
763
|
+
.header_param(new_parameter('application/json', key: 'accept'))
|
|
764
|
+
.body_serializer(proc do |param| param.to_json unless param.nil? end)
|
|
765
|
+
.auth(Single.new('Oauth2')))
|
|
766
|
+
.response(new_response_handler
|
|
767
|
+
.is_nullable_response(true)
|
|
768
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
|
769
|
+
.deserialize_into(SubscriptionTransactionDetails.method(:from_hash))
|
|
770
|
+
.is_api_response(true)
|
|
771
|
+
.local_error('400',
|
|
772
|
+
'Bad Request. Request is not well-formed, syntactically'\
|
|
773
|
+
' incorrect, or violates schema.',
|
|
774
|
+
SubscriptionErrorException)
|
|
775
|
+
.local_error('401',
|
|
776
|
+
'Authentication failed due to missing authorization header, or'\
|
|
777
|
+
' invalid authentication credentials.',
|
|
778
|
+
SubscriptionErrorException)
|
|
779
|
+
.local_error('403',
|
|
780
|
+
'Authorization failed due to insufficient permissions.',
|
|
781
|
+
SubscriptionErrorException)
|
|
782
|
+
.local_error('404',
|
|
783
|
+
'The specified resource does not exist.',
|
|
784
|
+
SubscriptionErrorException)
|
|
785
|
+
.local_error('422',
|
|
786
|
+
'The requested action could not be performed, semantically'\
|
|
787
|
+
' incorrect, or failed business validation.',
|
|
788
|
+
SubscriptionErrorException)
|
|
789
|
+
.local_error('500',
|
|
790
|
+
'An internal server error has occurred.',
|
|
791
|
+
SubscriptionErrorException)
|
|
792
|
+
.local_error('default',
|
|
793
|
+
'The error response.',
|
|
794
|
+
SubscriptionErrorException))
|
|
795
|
+
.execute
|
|
796
|
+
end
|
|
797
|
+
|
|
798
|
+
# Lists transactions for a subscription.
|
|
799
|
+
# @param [String] id Required parameter: The ID of the subscription.
|
|
800
|
+
# @param [String] start_time Required parameter: The start time of the range
|
|
801
|
+
# of transactions to list.
|
|
802
|
+
# @param [String] end_time Required parameter: The end time of the range of
|
|
803
|
+
# transactions to list.
|
|
804
|
+
# @return [ApiResponse] Complete http response with raw body and status code.
|
|
805
|
+
def list_subscription_transactions(options = {})
|
|
806
|
+
@api_call
|
|
807
|
+
.request(new_request_builder(HttpMethodEnum::GET,
|
|
808
|
+
'/v1/billing/subscriptions/{id}/transactions',
|
|
809
|
+
Server::DEFAULT)
|
|
810
|
+
.template_param(new_parameter(options['id'], key: 'id')
|
|
811
|
+
.should_encode(true))
|
|
812
|
+
.query_param(new_parameter(options['start_time'], key: 'start_time'))
|
|
813
|
+
.query_param(new_parameter(options['end_time'], key: 'end_time'))
|
|
814
|
+
.header_param(new_parameter('application/json', key: 'accept'))
|
|
815
|
+
.auth(Single.new('Oauth2')))
|
|
816
|
+
.response(new_response_handler
|
|
817
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
|
818
|
+
.deserialize_into(TransactionsList.method(:from_hash))
|
|
819
|
+
.is_api_response(true)
|
|
820
|
+
.local_error('400',
|
|
821
|
+
'Bad Request. Request is not well-formed, syntactically'\
|
|
822
|
+
' incorrect, or violates schema.',
|
|
823
|
+
SubscriptionErrorException)
|
|
824
|
+
.local_error('401',
|
|
825
|
+
'Authentication failed due to missing authorization header, or'\
|
|
826
|
+
' invalid authentication credentials.',
|
|
827
|
+
SubscriptionErrorException)
|
|
828
|
+
.local_error('403',
|
|
829
|
+
'Authorization failed due to insufficient permissions.',
|
|
830
|
+
SubscriptionErrorException)
|
|
831
|
+
.local_error('404',
|
|
832
|
+
'The specified resource does not exist.',
|
|
833
|
+
SubscriptionErrorException)
|
|
834
|
+
.local_error('500',
|
|
835
|
+
'An internal server error has occurred.',
|
|
836
|
+
SubscriptionErrorException)
|
|
837
|
+
.local_error('default',
|
|
838
|
+
'The error response.',
|
|
839
|
+
SubscriptionErrorException))
|
|
840
|
+
.execute
|
|
841
|
+
end
|
|
842
|
+
end
|
|
843
|
+
end
|