recurly 4.83.0 → 4.85.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/.bumpversion.cfg +1 -1
- data/CHANGELOG.md +22 -344
- data/GETTING_STARTED.md +1 -1
- data/lib/recurly/client/operations.rb +56 -0
- data/lib/recurly/requests/dunning_campaign_create.rb +26 -0
- data/lib/recurly/requests/dunning_campaign_update.rb +30 -0
- data/lib/recurly/requests/dunning_cycle_create.rb +42 -0
- data/lib/recurly/requests/dunning_interval_create.rb +18 -0
- data/lib/recurly/requests/subscription_create.rb +4 -0
- data/lib/recurly/requests/subscription_purchase.rb +12 -0
- data/lib/recurly/requests/subscription_update.rb +4 -0
- data/lib/recurly/resources/dunning_campaign_email_template.rb +22 -0
- data/lib/recurly/resources/dunning_interval.rb +4 -0
- data/lib/recurly/resources/external_product_mini.rb +22 -0
- data/lib/recurly/resources/external_subscription.rb +8 -0
- data/lib/recurly/version.rb +1 -1
- data/openapi/api.yaml +656 -314
- metadata +9 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 405e9807e5dd53076ab3d64c13ae1b5e5d20e655df8379e38e287cfa913c01a5
|
|
4
|
+
data.tar.gz: 94dc4f27e270c5bac7ab91194adb350897b53b4dca417b9321a0b091d03a7d8d
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 7198bfcc4d95da718cc78fdcd9a165c79a6a93a246cb0f06d4602214e95b180c77173a73fd09a6da047ec2e772c360ae4952ca20a977c8b427a0338bd0c9ee60
|
|
7
|
+
data.tar.gz: 34c583f6601e51c58b1802bf5809b6fd9702eef536d75b6fe2cdc5bcef45c3ab434a67e7dde31cd1d5d08b2449d35435c276e3de5030ea14801cd56bf5ba3a56
|
data/.bumpversion.cfg
CHANGED
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,27 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [4.85.0](https://github.com/recurly/recurly-client-ruby/tree/4.85.0) (2026-10-22)
|
|
4
|
+
|
|
5
|
+
[Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.84.0...4.85.0)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
**Merged Pull Requests**
|
|
9
|
+
|
|
10
|
+
- Generated Latest Changes for v2021-02-25 [#973](https://github.com/recurly/recurly-client-ruby/pull/973) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
## [4.84.0](https://github.com/recurly/recurly-client-ruby/tree/4.84.0) (2026-10-08)
|
|
15
|
+
|
|
16
|
+
[Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.83.0...4.84.0)
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
**Merged Pull Requests**
|
|
20
|
+
|
|
21
|
+
- Generated Latest Changes for v2021-02-25 [#972](https://github.com/recurly/recurly-client-ruby/pull/972) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
3
25
|
## [4.83.0](https://github.com/recurly/recurly-client-ruby/tree/4.83.0) (2026-09-18)
|
|
4
26
|
|
|
5
27
|
[Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.82.0...4.83.0)
|
|
@@ -677,350 +699,6 @@
|
|
|
677
699
|
|
|
678
700
|
## [4.22.0](https://github.com/recurly/recurly-client-ruby/tree/4.22.0) (2022-10-21)
|
|
679
701
|
|
|
680
|
-
[Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.21.1...4.22.0)
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
**Merged Pull Requests**
|
|
684
|
-
|
|
685
|
-
- Generated Latest Changes for v2021-02-25(Decimal Usage and Quantities and DunningEvent new fields) [#801](https://github.com/recurly/recurly-client-ruby/pull/801) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
## [4.21.1](https://github.com/recurly/recurly-client-ruby/tree/4.21.1) (2022-09-08)
|
|
690
|
-
|
|
691
|
-
[Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.21.0...4.21.1)
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
**Merged Pull Requests**
|
|
695
|
-
|
|
696
|
-
- Generated Latest Changes for v2021-02-25 [#792](https://github.com/recurly/recurly-client-ruby/pull/792) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
## [4.21.0](https://github.com/recurly/recurly-client-ruby/tree/4.21.0) (2022-09-07)
|
|
701
|
-
|
|
702
|
-
[Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.20.0...4.21.0)
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
**Merged Pull Requests**
|
|
706
|
-
|
|
707
|
-
- Generated Latest Changes for v2021-02-25 [#790](https://github.com/recurly/recurly-client-ruby/pull/790) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
708
|
-
- Fixes bug with put_dunning_campaign_bulk_update [#788](https://github.com/recurly/recurly-client-ruby/pull/788) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
## [4.20.0](https://github.com/recurly/recurly-client-ruby/tree/4.20.0) (2022-08-03)
|
|
713
|
-
|
|
714
|
-
[Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.19.0...4.20.0)
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
**Merged Pull Requests**
|
|
718
|
-
|
|
719
|
-
- Generated Latest Changes for v2021-02-25 [#783](https://github.com/recurly/recurly-client-ruby/pull/783) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
## [4.19.0](https://github.com/recurly/recurly-client-ruby/tree/4.19.0) (2022-07-11)
|
|
724
|
-
|
|
725
|
-
[Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.18.0...4.19.0)
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
**Merged Pull Requests**
|
|
729
|
-
|
|
730
|
-
- Generated Latest Changes for v2021-02-25 [#778](https://github.com/recurly/recurly-client-ruby/pull/778) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
## [4.18.0](https://github.com/recurly/recurly-client-ruby/tree/4.18.0) (2022-06-16)
|
|
735
|
-
|
|
736
|
-
[Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.17.0...4.18.0)
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
**Merged Pull Requests**
|
|
740
|
-
|
|
741
|
-
- Generated Latest Changes for v2021-02-25 [#776](https://github.com/recurly/recurly-client-ruby/pull/776) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
## [4.17.0](https://github.com/recurly/recurly-client-ruby/tree/4.17.0) (2022-04-15)
|
|
746
|
-
|
|
747
|
-
[Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.16.0...4.17.0)
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
**Merged Pull Requests**
|
|
751
|
-
|
|
752
|
-
- Generated Latest Changes for v2021-02-25 [#766](https://github.com/recurly/recurly-client-ruby/pull/766) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
## [4.16.0](https://github.com/recurly/recurly-client-ruby/tree/4.16.0) (2022-03-24)
|
|
757
|
-
|
|
758
|
-
[Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.15.0...4.16.0)
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
**Merged Pull Requests**
|
|
762
|
-
|
|
763
|
-
- Generated Latest Changes for v2021-02-25 (Percentage tiers feature) [#762](https://github.com/recurly/recurly-client-ruby/pull/762) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
## [4.15.0](https://github.com/recurly/recurly-client-ruby/tree/4.15.0) (2022-03-14)
|
|
768
|
-
|
|
769
|
-
[Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.14.0...4.15.0)
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
**Merged Pull Requests**
|
|
773
|
-
|
|
774
|
-
- Generated Latest Changes for v2021-02-25 (Percentage tiers feature) [#757](https://github.com/recurly/recurly-client-ruby/pull/757) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
## [4.14.0](https://github.com/recurly/recurly-client-ruby/tree/4.14.0) (2022-03-03)
|
|
779
|
-
|
|
780
|
-
[Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.13.0...4.14.0)
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
**Merged Pull Requests**
|
|
784
|
-
|
|
785
|
-
- Generated Latest Changes for v2021-02-25 [#753](https://github.com/recurly/recurly-client-ruby/pull/753) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
## [4.13.0](https://github.com/recurly/recurly-client-ruby/tree/4.13.0) (2022-01-31)
|
|
790
|
-
|
|
791
|
-
[Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.12.0...4.13.0)
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
**Merged Pull Requests**
|
|
795
|
-
|
|
796
|
-
- Generated Latest Changes for v2021-02-25 [#747](https://github.com/recurly/recurly-client-ruby/pull/747) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
797
|
-
- Add region argument to client to connect in EU data center [#744](https://github.com/recurly/recurly-client-ruby/pull/744) ([FabricioCoutinho](https://github.com/FabricioCoutinho))
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
## [4.12.0](https://github.com/recurly/recurly-client-ruby/tree/4.12.0) (2022-01-28)
|
|
802
|
-
|
|
803
|
-
[Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.11.0...4.12.0)
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
**Merged Pull Requests**
|
|
807
|
-
|
|
808
|
-
- Generated Latest Changes for v2021-02-25 (Invoice Customization) [#746](https://github.com/recurly/recurly-client-ruby/pull/746) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
809
|
-
- Generated Latest Changes for v2021-02-25 [#743](https://github.com/recurly/recurly-client-ruby/pull/743) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
## [4.11.0](https://github.com/recurly/recurly-client-ruby/tree/4.11.0) (2021-12-29)
|
|
814
|
-
|
|
815
|
-
[Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.10.0...4.11.0)
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
**Merged Pull Requests**
|
|
819
|
-
|
|
820
|
-
- Generated Latest Changes for v2021-02-25 (Tax Inclusive Pricing) [#741](https://github.com/recurly/recurly-client-ruby/pull/741) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
## [4.10.0](https://github.com/recurly/recurly-client-ruby/tree/4.10.0) (2021-11-22)
|
|
825
|
-
|
|
826
|
-
[Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.9.0...4.10.0)
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
**Merged Pull Requests**
|
|
830
|
-
|
|
831
|
-
- Generated Latest Changes for v2021-02-25 [#739](https://github.com/recurly/recurly-client-ruby/pull/739) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
832
|
-
- Generated Latest Changes for v2021-02-25 [#736](https://github.com/recurly/recurly-client-ruby/pull/736) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
833
|
-
- Allow API base url configuration [#735](https://github.com/recurly/recurly-client-ruby/pull/735) ([cbarton](https://github.com/cbarton))
|
|
834
|
-
- Generated Latest Changes for v2021-02-25 [#734](https://github.com/recurly/recurly-client-ruby/pull/734) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
835
|
-
- Generated Latest Changes for v2021-02-25 [#728](https://github.com/recurly/recurly-client-ruby/pull/728) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
## [4.9.0](https://github.com/recurly/recurly-client-ruby/tree/4.9.0) (2021-09-16)
|
|
840
|
-
|
|
841
|
-
[Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.8.0...4.9.0)
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
**Merged Pull Requests**
|
|
845
|
-
|
|
846
|
-
- Generated Latest Changes for v2021-02-25 (Support to new subscription fields and response) [#725](https://github.com/recurly/recurly-client-ruby/pull/725) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
## [4.8.0](https://github.com/recurly/recurly-client-ruby/tree/4.8.0) (2021-09-01)
|
|
851
|
-
|
|
852
|
-
[Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.7.0...4.8.0)
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
**Merged Pull Requests**
|
|
856
|
-
|
|
857
|
-
- Generated Latest Changes for v2021-02-25 (Dunning Campaigns feature) [#724](https://github.com/recurly/recurly-client-ruby/pull/724) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
## [4.7.0](https://github.com/recurly/recurly-client-ruby/tree/4.7.0) (2021-08-19)
|
|
862
|
-
|
|
863
|
-
[Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.6.0...4.7.0)
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
**Merged Pull Requests**
|
|
867
|
-
|
|
868
|
-
- Generated Latest Changes for v2021-02-25 (get_preview_renewal) [#722](https://github.com/recurly/recurly-client-ruby/pull/722) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
## [4.6.0](https://github.com/recurly/recurly-client-ruby/tree/4.6.0) (2021-08-11)
|
|
873
|
-
|
|
874
|
-
[Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.5.0...4.6.0)
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
**Merged Pull Requests**
|
|
878
|
-
|
|
879
|
-
- Generated Latest Changes for v2021-02-25 [#720](https://github.com/recurly/recurly-client-ruby/pull/720) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
## [4.5.0](https://github.com/recurly/recurly-client-ruby/tree/4.5.0) (2021-08-02)
|
|
884
|
-
|
|
885
|
-
[Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.4.0...4.5.0)
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
**Merged Pull Requests**
|
|
889
|
-
|
|
890
|
-
- Generated Latest Changes for v2021-02-25 [#714](https://github.com/recurly/recurly-client-ruby/pull/714) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
## [4.4.0](https://github.com/recurly/recurly-client-ruby/tree/4.4.0) (2021-06-15)
|
|
895
|
-
|
|
896
|
-
[Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.3.0...4.4.0)
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
**Merged Pull Requests**
|
|
900
|
-
|
|
901
|
-
- Generated Latest Changes for v2021-02-25 [#705](https://github.com/recurly/recurly-client-ruby/pull/705) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
902
|
-
|
|
903
|
-
|
|
904
|
-
|
|
905
|
-
## [4.3.0](https://github.com/recurly/recurly-client-ruby/tree/4.3.0) (2021-06-04)
|
|
906
|
-
|
|
907
|
-
[Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.2.0...4.3.0)
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
**Merged Pull Requests**
|
|
911
|
-
|
|
912
|
-
- Generated Latest Changes for v2021-02-25 [#702](https://github.com/recurly/recurly-client-ruby/pull/702) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
913
|
-
- Making #post allow a nil body [#699](https://github.com/recurly/recurly-client-ruby/pull/699) ([douglasmiller](https://github.com/douglasmiller))
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
## [4.2.0](https://github.com/recurly/recurly-client-ruby/tree/4.2.0) (2021-04-21)
|
|
918
|
-
|
|
919
|
-
[Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.1.0...4.2.0)
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
**Merged Pull Requests**
|
|
923
|
-
|
|
924
|
-
- Generated Latest Changes for v2021-02-25 [#695](https://github.com/recurly/recurly-client-ruby/pull/695) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
## [4.1.0](https://github.com/recurly/recurly-client-ruby/tree/4.1.0) (2021-04-14)
|
|
929
|
-
|
|
930
|
-
[Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.0.1...4.1.0)
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
**Merged Pull Requests**
|
|
934
|
-
|
|
935
|
-
- Generated Latest Changes for v2021-02-25 (Backup Payment Method) [#691](https://github.com/recurly/recurly-client-ruby/pull/691) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
936
|
-
- Generated Latest Changes for v2021-02-25 [#687](https://github.com/recurly/recurly-client-ruby/pull/687) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
937
|
-
- Restoring NetworkError and it's derivatives [#685](https://github.com/recurly/recurly-client-ruby/pull/685) ([douglasmiller](https://github.com/douglasmiller))
|
|
938
|
-
- Generated Latest Changes for v2021-02-25 (Usage Percentage on Tiers) [#683](https://github.com/recurly/recurly-client-ruby/pull/683) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
939
|
-
- Fixes TypeError caused by attempts to Base64 encode nil @api_key values [#672](https://github.com/recurly/recurly-client-ruby/pull/672) ([alexfulsome](https://github.com/alexfulsome))
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
|
|
943
|
-
## [4.0.1](https://github.com/recurly/recurly-client-ruby/tree/4.0.1) (2021-03-19)
|
|
944
|
-
|
|
945
|
-
[Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.0.0...4.0.1)
|
|
946
|
-
|
|
947
|
-
|
|
948
|
-
**Merged Pull Requests**
|
|
949
702
|
|
|
950
|
-
- Release 4.0.1 [#682](https://github.com/recurly/recurly-client-ruby/pull/682) ([douglasmiller](https://github.com/douglasmiller))
|
|
951
|
-
- More ruby 3.0 [#680](https://github.com/recurly/recurly-client-ruby/pull/680) ([douglasmiller](https://github.com/douglasmiller))
|
|
952
|
-
- Generated Latest Changes for v2021-02-25 [#678](https://github.com/recurly/recurly-client-ruby/pull/678) ([recurly-integrations](https://github.com/recurly-integrations))
|
|
953
|
-
- Sync updates not ported from 3.x client [#671](https://github.com/recurly/recurly-client-ruby/pull/671) ([douglasmiller](https://github.com/douglasmiller))
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
## [4.0.0](https://github.com/recurly/recurly-client-ruby/tree/4.0.0) (2021-03-01)
|
|
958
|
-
|
|
959
|
-
|
|
960
|
-
# Major Version Release
|
|
961
|
-
|
|
962
|
-
The 4.x major version of the client pairs with the `v2021-02-25` API version. This version of the client and the API contain breaking changes that should be considered before upgrading your integration.
|
|
963
|
-
|
|
964
|
-
## Breaking Changes in the API
|
|
965
|
-
All changes to the core API are documented in the [Developer Portal changelog](https://developers.recurly.com/api/changelog.html#v2021-02-25---current-ga-version)
|
|
966
|
-
|
|
967
|
-
## Breaking Changes in Client
|
|
968
|
-
|
|
969
|
-
- Remove `site_id` and `subdomain` from client initializer. [#624]
|
|
970
|
-
- Remove `set_site_id` method from client. [#627]
|
|
971
|
-
- Classify unexpected error responses from Recurly API via an HTTP status code mapping provided in `Recurly::Errors::ERROR_MAP`. [#616]
|
|
972
|
-
- Remove `NetworkError` class. All error classes now extend the `APIError`. This means that the order of multiple rescue blocks will need to be re-considered. [#616]
|
|
973
|
-
|
|
974
|
-
### 3.x
|
|
975
|
-
|
|
976
|
-
```ruby
|
|
977
|
-
rescue Recurly::Errors::ValidationError => ex
|
|
978
|
-
# catch a validation error
|
|
979
|
-
rescue Recurly::Errors::APIError => ex
|
|
980
|
-
# catch a generic api error
|
|
981
|
-
rescue Recurly::Errors::TimeoutError => ex
|
|
982
|
-
# catch a specific network error
|
|
983
|
-
```
|
|
984
|
-
|
|
985
|
-
### 4.x
|
|
986
|
-
|
|
987
|
-
```ruby
|
|
988
|
-
rescue Recurly::Errors::ValidationError => ex
|
|
989
|
-
# catch a validation error
|
|
990
|
-
rescue Recurly::Errors::TimeoutError => ex
|
|
991
|
-
# catch a specific network error
|
|
992
|
-
rescue Recurly::Errors::APIError => ex
|
|
993
|
-
# catch a generic api error
|
|
994
|
-
```
|
|
995
|
-
|
|
996
|
-
- Rename `InvalidResponseError` to `InvalidContentTypeError`. [#616]
|
|
997
|
-
- Rename `UnavailableError` to `ServiceUnavailableError`. [#616]
|
|
998
|
-
- Reorganize top-level keys of the optional parameters hash to improve clarity and create space for additional options. [#619]
|
|
999
|
-
|
|
1000
|
-
### 3.x
|
|
1001
|
-
|
|
1002
|
-
```ruby
|
|
1003
|
-
options = {
|
|
1004
|
-
limit: 200,
|
|
1005
|
-
headers: {
|
|
1006
|
-
'Accept-Language' => 'fr'
|
|
1007
|
-
}
|
|
1008
|
-
}
|
|
1009
|
-
accounts = @client.list_accounts(options)
|
|
1010
|
-
```
|
|
1011
|
-
|
|
1012
|
-
### 4.x
|
|
1013
|
-
|
|
1014
|
-
```ruby
|
|
1015
|
-
options = {
|
|
1016
|
-
params: {
|
|
1017
|
-
limit: 200
|
|
1018
|
-
}
|
|
1019
|
-
headers: {
|
|
1020
|
-
'Accept-Language' => 'fr'
|
|
1021
|
-
}
|
|
1022
|
-
}
|
|
1023
|
-
accounts = @client.list_accounts(options)
|
|
1024
|
-
```
|
|
1025
703
|
|
|
1026
704
|
|
data/GETTING_STARTED.md
CHANGED
|
@@ -5,7 +5,7 @@ This repository houses the official ruby client for Recurly's V3 API.
|
|
|
5
5
|
In your Gemfile, add `recurly` as a dependency.
|
|
6
6
|
|
|
7
7
|
```ruby
|
|
8
|
-
gem 'recurly', '~> 4.
|
|
8
|
+
gem 'recurly', '~> 4.85'
|
|
9
9
|
```
|
|
10
10
|
|
|
11
11
|
> *Note*: We try to follow [semantic versioning](https://semver.org/) and will only apply breaking changes to major versions.
|
|
@@ -4738,6 +4738,20 @@ module Recurly
|
|
|
4738
4738
|
pager(path, **options)
|
|
4739
4739
|
end
|
|
4740
4740
|
|
|
4741
|
+
# Create a new dunning campaign
|
|
4742
|
+
#
|
|
4743
|
+
# {https://developers.recurly.com/api/v2021-02-25#operation/create_dunning_campaign create_dunning_campaign api documentation}
|
|
4744
|
+
#
|
|
4745
|
+
# @param body [Requests::DunningCampaignCreate] The Hash representing the JSON request to send to the server. It should conform to the schema of {Requests::DunningCampaignCreate}
|
|
4746
|
+
# @param params [Hash] Optional query string parameters:
|
|
4747
|
+
#
|
|
4748
|
+
# @return [Resources::DunningCampaign] A new dunning campaign.
|
|
4749
|
+
#
|
|
4750
|
+
def create_dunning_campaign(body:, **options)
|
|
4751
|
+
path = "/dunning_campaigns"
|
|
4752
|
+
post(path, body, Requests::DunningCampaignCreate, **options)
|
|
4753
|
+
end
|
|
4754
|
+
|
|
4741
4755
|
# Fetch a dunning campaign
|
|
4742
4756
|
#
|
|
4743
4757
|
# {https://developers.recurly.com/api/v2021-02-25#operation/get_dunning_campaign get_dunning_campaign api documentation}
|
|
@@ -4752,6 +4766,48 @@ module Recurly
|
|
|
4752
4766
|
get(path, **options)
|
|
4753
4767
|
end
|
|
4754
4768
|
|
|
4769
|
+
# Update a dunning campaign
|
|
4770
|
+
#
|
|
4771
|
+
# {https://developers.recurly.com/api/v2021-02-25#operation/update_dunning_campaign update_dunning_campaign api documentation}
|
|
4772
|
+
#
|
|
4773
|
+
# @param dunning_campaign_id [String] Dunning Campaign ID, e.g. +e28zov4fw0v2+.
|
|
4774
|
+
# @param body [Requests::DunningCampaignUpdate] The Hash representing the JSON request to send to the server. It should conform to the schema of {Requests::DunningCampaignUpdate}
|
|
4775
|
+
# @param params [Hash] Optional query string parameters:
|
|
4776
|
+
#
|
|
4777
|
+
# @return [Resources::DunningCampaign] The updated dunning campaign.
|
|
4778
|
+
#
|
|
4779
|
+
def update_dunning_campaign(dunning_campaign_id:, body:, **options)
|
|
4780
|
+
path = interpolate_path("/dunning_campaigns/{dunning_campaign_id}", dunning_campaign_id: dunning_campaign_id)
|
|
4781
|
+
put(path, body, Requests::DunningCampaignUpdate, **options)
|
|
4782
|
+
end
|
|
4783
|
+
|
|
4784
|
+
# Deactivate a dunning campaign
|
|
4785
|
+
#
|
|
4786
|
+
# {https://developers.recurly.com/api/v2021-02-25#operation/deactivate_dunning_campaign deactivate_dunning_campaign api documentation}
|
|
4787
|
+
#
|
|
4788
|
+
# @param dunning_campaign_id [String] Dunning Campaign ID, e.g. +e28zov4fw0v2+.
|
|
4789
|
+
# @param params [Hash] Optional query string parameters:
|
|
4790
|
+
#
|
|
4791
|
+
# @return [Resources::DunningCampaign] The deactivated dunning campaign.
|
|
4792
|
+
#
|
|
4793
|
+
def deactivate_dunning_campaign(dunning_campaign_id:, **options)
|
|
4794
|
+
path = interpolate_path("/dunning_campaigns/{dunning_campaign_id}", dunning_campaign_id: dunning_campaign_id)
|
|
4795
|
+
delete(path, **options)
|
|
4796
|
+
end
|
|
4797
|
+
|
|
4798
|
+
# List the custom email templates assignable to a dunning campaign interval
|
|
4799
|
+
#
|
|
4800
|
+
# {https://developers.recurly.com/api/v2021-02-25#operation/list_dunning_campaign_email_templates list_dunning_campaign_email_templates api documentation}
|
|
4801
|
+
#
|
|
4802
|
+
# @param params [Hash] Optional query string parameters:
|
|
4803
|
+
#
|
|
4804
|
+
# @return [Pager<Resources::DunningCampaignEmailTemplate>] A list of the site's assignable custom email templates.
|
|
4805
|
+
#
|
|
4806
|
+
def list_dunning_campaign_email_templates(**options)
|
|
4807
|
+
path = "/dunning_campaigns/email_templates"
|
|
4808
|
+
pager(path, **options)
|
|
4809
|
+
end
|
|
4810
|
+
|
|
4755
4811
|
# Assign a dunning campaign to multiple plans
|
|
4756
4812
|
#
|
|
4757
4813
|
# {https://developers.recurly.com/api/v2021-02-25#operation/put_dunning_campaign_bulk_update put_dunning_campaign_bulk_update api documentation}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# This file is automatically created by Recurly's OpenAPI generation process
|
|
2
|
+
# and thus any edits you make by hand will be lost. If you wish to make a
|
|
3
|
+
# change to this file, please create a Github issue explaining the changes you
|
|
4
|
+
# need and we will usher them to the appropriate places.
|
|
5
|
+
module Recurly
|
|
6
|
+
module Requests
|
|
7
|
+
class DunningCampaignCreate < Request
|
|
8
|
+
|
|
9
|
+
# @!attribute code
|
|
10
|
+
# @return [String] Campaign code.
|
|
11
|
+
define_attribute :code, String
|
|
12
|
+
|
|
13
|
+
# @!attribute description
|
|
14
|
+
# @return [String] Campaign description.
|
|
15
|
+
define_attribute :description, String
|
|
16
|
+
|
|
17
|
+
# @!attribute dunning_cycles
|
|
18
|
+
# @return [Array[DunningCycleCreate]] Dunning Cycle settings. One entry per collection method (`automatic`, `manual`, `trial`); each type may appear at most once.
|
|
19
|
+
define_attribute :dunning_cycles, Array, { :item_type => :DunningCycleCreate }
|
|
20
|
+
|
|
21
|
+
# @!attribute name
|
|
22
|
+
# @return [String] Campaign name.
|
|
23
|
+
define_attribute :name, String
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# This file is automatically created by Recurly's OpenAPI generation process
|
|
2
|
+
# and thus any edits you make by hand will be lost. If you wish to make a
|
|
3
|
+
# change to this file, please create a Github issue explaining the changes you
|
|
4
|
+
# need and we will usher them to the appropriate places.
|
|
5
|
+
module Recurly
|
|
6
|
+
module Requests
|
|
7
|
+
class DunningCampaignUpdate < Request
|
|
8
|
+
|
|
9
|
+
# @!attribute code
|
|
10
|
+
# @return [String] Campaign code.
|
|
11
|
+
define_attribute :code, String
|
|
12
|
+
|
|
13
|
+
# @!attribute default_campaign
|
|
14
|
+
# @return [Boolean] Set to `true` to make this the default campaign for accounts or plans without an assigned dunning campaign. Cannot be set on an inactive campaign, and cannot be unset directly—assign a different campaign as the default instead.
|
|
15
|
+
define_attribute :default_campaign, :Boolean
|
|
16
|
+
|
|
17
|
+
# @!attribute description
|
|
18
|
+
# @return [String] Campaign description.
|
|
19
|
+
define_attribute :description, String
|
|
20
|
+
|
|
21
|
+
# @!attribute dunning_cycles
|
|
22
|
+
# @return [Array[DunningCycleCreate]] Dunning Cycle settings. One entry per collection method (`automatic`, `manual`, `trial`); each type may appear at most once. Each cycle write fully replaces that cycle's current settings version.
|
|
23
|
+
define_attribute :dunning_cycles, Array, { :item_type => :DunningCycleCreate }
|
|
24
|
+
|
|
25
|
+
# @!attribute name
|
|
26
|
+
# @return [String] Campaign name.
|
|
27
|
+
define_attribute :name, String
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# This file is automatically created by Recurly's OpenAPI generation process
|
|
2
|
+
# and thus any edits you make by hand will be lost. If you wish to make a
|
|
3
|
+
# change to this file, please create a Github issue explaining the changes you
|
|
4
|
+
# need and we will usher them to the appropriate places.
|
|
5
|
+
module Recurly
|
|
6
|
+
module Requests
|
|
7
|
+
class DunningCycleCreate < Request
|
|
8
|
+
|
|
9
|
+
# @!attribute active
|
|
10
|
+
# @return [Boolean] Only meaningful on the `trial` cycle, where sending `false` removes it. Other cycle types cannot be deactivated.
|
|
11
|
+
define_attribute :active, :Boolean
|
|
12
|
+
|
|
13
|
+
# @!attribute applies_to_manual_trial
|
|
14
|
+
# @return [Boolean] Whether the dunning settings will be applied to manual trials. Only applies to trial cycles.
|
|
15
|
+
define_attribute :applies_to_manual_trial, :Boolean
|
|
16
|
+
|
|
17
|
+
# @!attribute expire_subscription
|
|
18
|
+
# @return [Boolean] Whether the subscription(s) should be cancelled at the end of the dunning cycle.
|
|
19
|
+
define_attribute :expire_subscription, :Boolean
|
|
20
|
+
|
|
21
|
+
# @!attribute external_payment_recovery_extension_days
|
|
22
|
+
# @return [Integer] Number of days to extend external payment recovery. Only available when the site has external payment retries enabled.
|
|
23
|
+
define_attribute :external_payment_recovery_extension_days, Integer
|
|
24
|
+
|
|
25
|
+
# @!attribute fail_invoice
|
|
26
|
+
# @return [Boolean] Whether the invoice should be failed at the end of the dunning cycle.
|
|
27
|
+
define_attribute :fail_invoice, :Boolean
|
|
28
|
+
|
|
29
|
+
# @!attribute intervals
|
|
30
|
+
# @return [Array[DunningIntervalCreate]] Dunning intervals. Required unless `active` is `false`.
|
|
31
|
+
define_attribute :intervals, Array, { :item_type => :DunningIntervalCreate }
|
|
32
|
+
|
|
33
|
+
# @!attribute send_immediately_on_hard_decline
|
|
34
|
+
# @return [Boolean] Whether or not to send an extra email immediately to customers whose initial payment attempt fails with either a hard decline or invalid billing info.
|
|
35
|
+
define_attribute :send_immediately_on_hard_decline, :Boolean
|
|
36
|
+
|
|
37
|
+
# @!attribute type
|
|
38
|
+
# @return [String] The type of invoice this cycle applies to.
|
|
39
|
+
define_attribute :type, String
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# This file is automatically created by Recurly's OpenAPI generation process
|
|
2
|
+
# and thus any edits you make by hand will be lost. If you wish to make a
|
|
3
|
+
# change to this file, please create a Github issue explaining the changes you
|
|
4
|
+
# need and we will usher them to the appropriate places.
|
|
5
|
+
module Recurly
|
|
6
|
+
module Requests
|
|
7
|
+
class DunningIntervalCreate < Request
|
|
8
|
+
|
|
9
|
+
# @!attribute days
|
|
10
|
+
# @return [Integer] Number of days before sending the next email.
|
|
11
|
+
define_attribute :days, Integer
|
|
12
|
+
|
|
13
|
+
# @!attribute email_template_id
|
|
14
|
+
# @return [String] The id of the custom email template to assign to this interval, from `GET /dunning_campaigns/email_templates`. `null` uses the system default template for this interval.
|
|
15
|
+
define_attribute :email_template_id, String
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -153,6 +153,10 @@ module Recurly
|
|
|
153
153
|
# @!attribute unit_amount
|
|
154
154
|
# @return [Float] Override the unit amount of the subscription plan by setting this value. If not provided, the subscription will inherit the price from the subscription plan for the provided currency.
|
|
155
155
|
define_attribute :unit_amount, Float
|
|
156
|
+
|
|
157
|
+
# @!attribute vat_reverse_charge_notes
|
|
158
|
+
# @return [String] This will default to the VAT reverse charge notes text specified on the Invoice Settings. Specify custom notes to add or override VAT reverse charge notes. Custom notes will stay with a subscription on all renewals.
|
|
159
|
+
define_attribute :vat_reverse_charge_notes, String
|
|
156
160
|
end
|
|
157
161
|
end
|
|
158
162
|
end
|
|
@@ -26,6 +26,10 @@ module Recurly
|
|
|
26
26
|
# @return [Array[CustomField]] The custom fields will only be altered when they are included in a request. Sending an empty array will not remove any existing values. To remove a field send the name with a null or empty value.
|
|
27
27
|
define_attribute :custom_fields, Array, { :item_type => :CustomField }
|
|
28
28
|
|
|
29
|
+
# @!attribute customer_notes
|
|
30
|
+
# @return [String] Specify custom notes to add or override Customer Notes. Custom notes will stay with a subscription on all renewals.
|
|
31
|
+
define_attribute :customer_notes, String
|
|
32
|
+
|
|
29
33
|
# @!attribute next_bill_date
|
|
30
34
|
# @return [DateTime] If present, this sets the date the subscription's next billing period will start (`current_period_ends_at`). This can be used to align the subscription’s billing to a specific day of the month. The initial invoice will be prorated for the period between the subscription's activation date and the billing period end date. Subsequent periods will be based off the plan interval. For a subscription with a trial period, this will change when the trial expires.
|
|
31
35
|
define_attribute :next_bill_date, DateTime
|
|
@@ -74,6 +78,10 @@ module Recurly
|
|
|
74
78
|
# @return [Boolean] Determines whether or not tax is included in the unit amount. The Tax Inclusive Pricing feature (separate from the Mixed Tax Pricing feature) must be enabled to use this flag.
|
|
75
79
|
define_attribute :tax_inclusive, :Boolean
|
|
76
80
|
|
|
81
|
+
# @!attribute terms_and_conditions
|
|
82
|
+
# @return [String] Specify custom notes to add or override Terms and Conditions. Custom notes will stay with a subscription on all renewals.
|
|
83
|
+
define_attribute :terms_and_conditions, String
|
|
84
|
+
|
|
77
85
|
# @!attribute total_billing_cycles
|
|
78
86
|
# @return [Integer] The number of cycles/billing periods in a term. When `remaining_billing_cycles=0`, if `auto_renew=true` the subscription will renew and a new term will begin, otherwise the subscription will expire.
|
|
79
87
|
define_attribute :total_billing_cycles, Integer
|
|
@@ -85,6 +93,10 @@ module Recurly
|
|
|
85
93
|
# @!attribute unit_amount
|
|
86
94
|
# @return [Float] Override the unit amount of the subscription plan by setting this value. If not provided, the subscription will inherit the price from the subscription plan for the provided currency.
|
|
87
95
|
define_attribute :unit_amount, Float
|
|
96
|
+
|
|
97
|
+
# @!attribute vat_reverse_charge_notes
|
|
98
|
+
# @return [String] Specify custom notes to add or override VAT reverse charge notes. Custom notes will stay with a subscription on all renewals.
|
|
99
|
+
define_attribute :vat_reverse_charge_notes, String
|
|
88
100
|
end
|
|
89
101
|
end
|
|
90
102
|
end
|
|
@@ -81,6 +81,10 @@ module Recurly
|
|
|
81
81
|
# @!attribute transaction_descriptor_suffix
|
|
82
82
|
# @return [String] Optionally overrides the suffix component of the composed transaction descriptor. If omitted, the suffix is derived from the subscription's plan name or the invoice description, with a Trial prefix on Visa trial conversions. Subject to gateway availability and payment method support.
|
|
83
83
|
define_attribute :transaction_descriptor_suffix, String
|
|
84
|
+
|
|
85
|
+
# @!attribute vat_reverse_charge_notes
|
|
86
|
+
# @return [String] Specify custom notes to add or override VAT reverse charge notes. Custom notes will stay with a subscription on all renewals.
|
|
87
|
+
define_attribute :vat_reverse_charge_notes, String
|
|
84
88
|
end
|
|
85
89
|
end
|
|
86
90
|
end
|