chartmogul-ruby 1.1.2 → 1.1.3

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.
Files changed (123) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +10 -10
  3. data/.rspec +2 -2
  4. data/.travis.yml +4 -4
  5. data/Gemfile +4 -4
  6. data/LICENSE.txt +21 -21
  7. data/README.md +111 -111
  8. data/Rakefile +6 -6
  9. data/bin/console +14 -14
  10. data/bin/setup +9 -9
  11. data/changelog.md +27 -27
  12. data/chartmogul-ruby.gemspec +29 -29
  13. data/fixtures/vcr_cassettes/ChartMogul_Customer/API_Interactions/adds_custom_attributes.yml +80 -80
  14. data/fixtures/vcr_cassettes/ChartMogul_Customer/API_Interactions/adds_required_tags.yml +79 -79
  15. data/fixtures/vcr_cassettes/ChartMogul_Customer/API_Interactions/can_page_through_search_endpoint.yml +43 -43
  16. data/fixtures/vcr_cassettes/ChartMogul_Customer/API_Interactions/correctly_handles_a_422_response.yml +50 -50
  17. data/fixtures/vcr_cassettes/ChartMogul_Customer/API_Interactions/correctly_interracts_with_the_API.yml +244 -244
  18. data/fixtures/vcr_cassettes/ChartMogul_Customer/API_Interactions/merges_customers.yml +185 -185
  19. data/fixtures/vcr_cassettes/ChartMogul_Customer/API_Interactions/raises_401_if_invalid_credentials.yml +38 -38
  20. data/fixtures/vcr_cassettes/ChartMogul_Customer/API_Interactions/raises_404_if_no_customers_found.yml +38 -38
  21. data/fixtures/vcr_cassettes/ChartMogul_Customer/API_Interactions/raises_422_for_update_with_invalid_data.yml +86 -86
  22. data/fixtures/vcr_cassettes/ChartMogul_Customer/API_Interactions/removes_custom_attributes.yml +80 -80
  23. data/fixtures/vcr_cassettes/ChartMogul_Customer/API_Interactions/removes_tags.yml +80 -80
  24. data/fixtures/vcr_cassettes/ChartMogul_Customer/API_Interactions/returns_all_customers_through_list_all_endpoint.yml +47 -47
  25. data/fixtures/vcr_cassettes/ChartMogul_Customer/API_Interactions/returns_customer_through_retrieve_endpoint.yml +42 -42
  26. data/fixtures/vcr_cassettes/ChartMogul_Customer/API_Interactions/returns_right_customers_through_search_endpoint.yml +43 -43
  27. data/fixtures/vcr_cassettes/ChartMogul_Customer/API_Interactions/updates_custom_attributes.yml +82 -82
  28. data/fixtures/vcr_cassettes/ChartMogul_Customer/API_Interactions/updates_customer.yml +139 -139
  29. data/fixtures/vcr_cassettes/ChartMogul_Customer/_find_by_external_id/when_external_id_is_provided/returns_matching_user_if_exists.yml +102 -102
  30. data/fixtures/vcr_cassettes/ChartMogul_Customer/_find_by_external_id/when_external_id_is_provided/returns_nil_if_customer_does_not_exist.yml +101 -101
  31. data/fixtures/vcr_cassettes/ChartMogul_CustomerInvoices/API_Interactions/correctly_interracts_with_the_API.yml +298 -298
  32. data/fixtures/vcr_cassettes/ChartMogul_DataSource/API_Interactions/correctly_interracts_with_the_API.yml +189 -189
  33. data/fixtures/vcr_cassettes/ChartMogul_DataSource/API_Interactions/correctly_raises_errors_on_404.yml +46 -46
  34. data/fixtures/vcr_cassettes/ChartMogul_DataSource/API_Interactions/correctly_raises_errors_on_422.yml +48 -48
  35. data/fixtures/vcr_cassettes/ChartMogul_DataSource/API_Interactions/retrieves_existing_data_source_matching_uuid.yml +101 -101
  36. data/fixtures/vcr_cassettes/ChartMogul_Invoice/API_Interactions/deletes_an_invoice.yml +37 -37
  37. data/fixtures/vcr_cassettes/ChartMogul_Invoice/API_Interactions/deletes_an_invoice_with_class_method.yml +37 -37
  38. data/fixtures/vcr_cassettes/ChartMogul_Invoice/API_Interactions/raises_error_on_deleting_non-existing_invoice.yml +42 -42
  39. data/fixtures/vcr_cassettes/ChartMogul_Invoice/API_Interactions/retrieves_existing_invoice_by_uuid.yml +50 -0
  40. data/fixtures/vcr_cassettes/ChartMogul_Invoice/API_Interactions/returns_all_invoices_through_list_all_endpoint.yml +46 -46
  41. data/fixtures/vcr_cassettes/ChartMogul_Metrics_ARPA/behaves_like_Metrics_API_resource/behaves_like_Summary/should_have_summary.yml +42 -42
  42. data/fixtures/vcr_cassettes/ChartMogul_Metrics_ARPA/behaves_like_Metrics_API_resource/should_have_entries.yml +42 -42
  43. data/fixtures/vcr_cassettes/ChartMogul_Metrics_ARR/behaves_like_Metrics_API_resource/behaves_like_Summary/should_have_summary.yml +42 -42
  44. data/fixtures/vcr_cassettes/ChartMogul_Metrics_ARR/behaves_like_Metrics_API_resource/should_have_entries.yml +42 -42
  45. data/fixtures/vcr_cassettes/ChartMogul_Metrics_ASP/behaves_like_Metrics_API_resource/behaves_like_Summary/should_have_summary.yml +40 -40
  46. data/fixtures/vcr_cassettes/ChartMogul_Metrics_ASP/behaves_like_Metrics_API_resource/should_have_entries.yml +40 -40
  47. data/fixtures/vcr_cassettes/ChartMogul_Metrics_Activity/behaves_like_Pageable/should_be_pageable.yml +41 -41
  48. data/fixtures/vcr_cassettes/ChartMogul_Metrics_Activity/should_have_Activity_entries.yml +41 -41
  49. data/fixtures/vcr_cassettes/ChartMogul_Metrics_AllKeyMetric/should_have_entries.yml +42 -42
  50. data/fixtures/vcr_cassettes/ChartMogul_Metrics_CustomerChurnRate/behaves_like_Metrics_API_resource/behaves_like_Summary/should_have_summary.yml +40 -40
  51. data/fixtures/vcr_cassettes/ChartMogul_Metrics_CustomerChurnRate/behaves_like_Metrics_API_resource/should_have_entries.yml +40 -40
  52. data/fixtures/vcr_cassettes/ChartMogul_Metrics_CustomerCount/behaves_like_Metrics_API_resource/behaves_like_Summary/should_have_summary.yml +42 -42
  53. data/fixtures/vcr_cassettes/ChartMogul_Metrics_CustomerCount/behaves_like_Metrics_API_resource/should_have_entries.yml +42 -42
  54. data/fixtures/vcr_cassettes/ChartMogul_Metrics_LTV/behaves_like_Metrics_API_resource/behaves_like_Summary/should_have_summary.yml +40 -40
  55. data/fixtures/vcr_cassettes/ChartMogul_Metrics_LTV/behaves_like_Metrics_API_resource/should_have_entries.yml +40 -40
  56. data/fixtures/vcr_cassettes/ChartMogul_Metrics_MRR/behaves_like_Summary/should_have_summary.yml +42 -42
  57. data/fixtures/vcr_cassettes/ChartMogul_Metrics_MRR/should_have_entries.yml +42 -42
  58. data/fixtures/vcr_cassettes/ChartMogul_Metrics_MRRChurnRate/behaves_like_Metrics_API_resource/behaves_like_Summary/should_have_summary.yml +40 -40
  59. data/fixtures/vcr_cassettes/ChartMogul_Metrics_MRRChurnRate/behaves_like_Metrics_API_resource/should_have_entries.yml +40 -40
  60. data/fixtures/vcr_cassettes/ChartMogul_Metrics_Subscription/behaves_like_Pageable/should_be_pageable.yml +40 -40
  61. data/fixtures/vcr_cassettes/ChartMogul_Metrics_Subscription/should_have_Subscription_entries.yml +40 -40
  62. data/fixtures/vcr_cassettes/ChartMogul_Ping/pings/and_fails_on_incorrect_credentials.yml +38 -38
  63. data/fixtures/vcr_cassettes/ChartMogul_Ping/pings/when_credentials_correct.yml +38 -38
  64. data/fixtures/vcr_cassettes/ChartMogul_Plan/API_Interactions/correctly_handles_a_422_error.yml +51 -51
  65. data/fixtures/vcr_cassettes/ChartMogul_Plan/API_Interactions/correctly_interacts_with_the_API.yml +152 -152
  66. data/fixtures/vcr_cassettes/ChartMogul_Plan/API_Interactions/deletes_existing_plan.yml +198 -198
  67. data/fixtures/vcr_cassettes/ChartMogul_Plan/API_Interactions/retrieves_existing_plan_by_uuid.yml +151 -151
  68. data/fixtures/vcr_cassettes/ChartMogul_Plan/API_Interactions/updates_existing_plan.yml +198 -198
  69. data/fixtures/vcr_cassettes/ChartMogul_Subscription/API_Interactions/correctly_interracts_with_the_API.yml +340 -340
  70. data/fixtures/vcr_cassettes/ChartMogul_Subscription/API_Interactions/has_multiple_aliases.yml +101 -101
  71. data/fixtures/vcr_cassettes/ChartMogul_Transactions_Payment/API_Interactions/correctly_interracts_with_the_API.yml +243 -243
  72. data/lib/chartmogul.rb +80 -79
  73. data/lib/chartmogul/api/actions/all.rb +23 -23
  74. data/lib/chartmogul/api/actions/create.rb +39 -39
  75. data/lib/chartmogul/api/actions/custom.rb +37 -37
  76. data/lib/chartmogul/api/actions/destroy.rb +27 -28
  77. data/lib/chartmogul/api/actions/retrieve.rb +23 -0
  78. data/lib/chartmogul/api/actions/update.rb +19 -19
  79. data/lib/chartmogul/api_resource.rb +68 -68
  80. data/lib/chartmogul/concerns/entries.rb +39 -39
  81. data/lib/chartmogul/concerns/pageable.rb +13 -13
  82. data/lib/chartmogul/concerns/pageable2.rb +12 -12
  83. data/lib/chartmogul/concerns/summary.rb +20 -20
  84. data/lib/chartmogul/config_attributes.rb +15 -15
  85. data/lib/chartmogul/configuration.rb +6 -6
  86. data/lib/chartmogul/customer.rb +153 -155
  87. data/lib/chartmogul/customer_invoices.rb +44 -44
  88. data/lib/chartmogul/data_source.rb +35 -38
  89. data/lib/chartmogul/enrichment/customer.rb +138 -141
  90. data/lib/chartmogul/errors/chartmogul_error.rb +19 -19
  91. data/lib/chartmogul/errors/configuration_error.rb +4 -4
  92. data/lib/chartmogul/errors/forbidden_error.rb +4 -4
  93. data/lib/chartmogul/errors/not_found_error.rb +4 -4
  94. data/lib/chartmogul/errors/resource_invalid_error.rb +4 -4
  95. data/lib/chartmogul/errors/schema_invalid_error.rb +4 -4
  96. data/lib/chartmogul/errors/unauthorized_error.rb +4 -4
  97. data/lib/chartmogul/invoice.rb +84 -83
  98. data/lib/chartmogul/line_items/one_time.rb +23 -23
  99. data/lib/chartmogul/line_items/subscription.rb +29 -29
  100. data/lib/chartmogul/metrics/activity.rb +34 -34
  101. data/lib/chartmogul/metrics/all_key_metrics.rb +25 -25
  102. data/lib/chartmogul/metrics/arpa.rb +19 -19
  103. data/lib/chartmogul/metrics/arr.rb +19 -19
  104. data/lib/chartmogul/metrics/asp.rb +19 -19
  105. data/lib/chartmogul/metrics/base.rb +56 -56
  106. data/lib/chartmogul/metrics/customer_churn_rate.rb +19 -19
  107. data/lib/chartmogul/metrics/customer_count.rb +19 -19
  108. data/lib/chartmogul/metrics/ltv.rb +19 -19
  109. data/lib/chartmogul/metrics/mrr.rb +26 -26
  110. data/lib/chartmogul/metrics/mrr_churn_rate.rb +19 -19
  111. data/lib/chartmogul/metrics/subscription.rb +37 -37
  112. data/lib/chartmogul/object.rb +119 -119
  113. data/lib/chartmogul/ping.rb +14 -14
  114. data/lib/chartmogul/plan.rb +38 -41
  115. data/lib/chartmogul/resource_path.rb +42 -42
  116. data/lib/chartmogul/subscription.rb +48 -48
  117. data/lib/chartmogul/summary.rb +7 -7
  118. data/lib/chartmogul/transactions/payment.rb +24 -24
  119. data/lib/chartmogul/transactions/refund.rb +24 -24
  120. data/lib/chartmogul/utils/hash_snake_caser.rb +50 -50
  121. data/lib/chartmogul/utils/json_parser.rb +11 -11
  122. data/lib/chartmogul/version.rb +3 -3
  123. metadata +4 -2
@@ -1,101 +1,101 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: get
5
- uri: https://api.chartmogul.com/v1/import/customers/cus_510b1395-4fe8-4d35-ae23-0e61f9a51e33/subscriptions?page=1&per_page=2
6
- body:
7
- encoding: US-ASCII
8
- string: ''
9
- headers:
10
- User-Agent:
11
- - Faraday v0.9.2
12
- Content-Type:
13
- - application/json
14
- Authorization:
15
- - Basic YmIzN2I0Njk5NjNlMjhlYjY2MjA1ZWYzZmU1MWQ1NmM6ZmM1YjQxYzM3YTNlZTcwYjQyN2UwYzU1ODg2NzA2ZmQ=
16
- response:
17
- status:
18
- code: 200
19
- message:
20
- headers:
21
- server:
22
- - nginx/1.9.10
23
- date:
24
- - Thu, 23 Jun 2016 20:46:07 GMT
25
- content-type:
26
- - application/json; charset=utf-8
27
- transfer-encoding:
28
- - chunked
29
- connection:
30
- - close
31
- x-frame-options:
32
- - SAMEORIGIN
33
- x-xss-protection:
34
- - 1; mode=block
35
- x-content-type-options:
36
- - nosniff
37
- etag:
38
- - W/"797037ae5a33dcae7de46e23dfdd4ec7"
39
- cache-control:
40
- - max-age=0, private, must-revalidate
41
- x-request-id:
42
- - efa1a67e-37e8-4ac3-bce7-8d11f33d0e8c
43
- x-runtime:
44
- - '0.026716'
45
- strict-transport-security:
46
- - max-age=15768000
47
- body:
48
- encoding: UTF-8
49
- string: '{"customer_uuid":"cus_510b1395-4fe8-4d35-ae23-0e61f9a51e33","subscriptions":[{"uuid":"sub_9b3ccf25-4613-4af6-84b3-12026cfa4b7c","external_id":"test_cus_sub_ext_id","cancellation_dates":[],"plan_uuid":"pl_06ea83a9-f8c8-4ddd-a980-9ceffd27f107","data_source_uuid":"ds_55ab11fb-53e6-4468-aa95-bd582f14cac6"}],"current_page":1,"total_pages":1}'
50
- http_version:
51
- recorded_at: Thu, 23 Jun 2016 20:46:07 GMT
52
- - request:
53
- method: get
54
- uri: https://api.chartmogul.com/v1/import/customers/cus_510b1395-4fe8-4d35-ae23-0e61f9a51e33/subscriptions?page=2&per_page=1
55
- body:
56
- encoding: US-ASCII
57
- string: ''
58
- headers:
59
- User-Agent:
60
- - Faraday v0.9.2
61
- Content-Type:
62
- - application/json
63
- Authorization:
64
- - Basic YmIzN2I0Njk5NjNlMjhlYjY2MjA1ZWYzZmU1MWQ1NmM6ZmM1YjQxYzM3YTNlZTcwYjQyN2UwYzU1ODg2NzA2ZmQ=
65
- response:
66
- status:
67
- code: 200
68
- message:
69
- headers:
70
- server:
71
- - nginx/1.9.10
72
- date:
73
- - Thu, 23 Jun 2016 20:46:07 GMT
74
- content-type:
75
- - application/json; charset=utf-8
76
- transfer-encoding:
77
- - chunked
78
- connection:
79
- - close
80
- x-frame-options:
81
- - SAMEORIGIN
82
- x-xss-protection:
83
- - 1; mode=block
84
- x-content-type-options:
85
- - nosniff
86
- etag:
87
- - W/"797037ae5a33dcae7de46e23dfdd4ec7"
88
- cache-control:
89
- - max-age=0, private, must-revalidate
90
- x-request-id:
91
- - efa1a67e-37e8-4ac3-bce7-8d11f33d0e8c
92
- x-runtime:
93
- - '0.026716'
94
- strict-transport-security:
95
- - max-age=15768000
96
- body:
97
- encoding: UTF-8
98
- string: '{"customer_uuid":"cus_510b1395-4fe8-4d35-ae23-0e61f9a51e33","subscriptions":[{"uuid":"sub_9b3ccf25-4613-4af6-84b3-12026cfa4b7c","external_id":"test_cus_sub_ext_id","cancellation_dates":[],"plan_uuid":"pl_06ea83a9-f8c8-4ddd-a980-9ceffd27f107","data_source_uuid":"ds_55ab11fb-53e6-4468-aa95-bd582f14cac6"}],"current_page":2,"total_pages":2}'
99
- http_version:
100
- recorded_at: Thu, 23 Jun 2016 20:46:07 GMT
101
- recorded_with: VCR 3.0.3
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.chartmogul.com/v1/import/customers/cus_510b1395-4fe8-4d35-ae23-0e61f9a51e33/subscriptions?page=1&per_page=2
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.9.2
12
+ Content-Type:
13
+ - application/json
14
+ Authorization:
15
+ - Basic YmIzN2I0Njk5NjNlMjhlYjY2MjA1ZWYzZmU1MWQ1NmM6ZmM1YjQxYzM3YTNlZTcwYjQyN2UwYzU1ODg2NzA2ZmQ=
16
+ response:
17
+ status:
18
+ code: 200
19
+ message:
20
+ headers:
21
+ server:
22
+ - nginx/1.9.10
23
+ date:
24
+ - Thu, 23 Jun 2016 20:46:07 GMT
25
+ content-type:
26
+ - application/json; charset=utf-8
27
+ transfer-encoding:
28
+ - chunked
29
+ connection:
30
+ - close
31
+ x-frame-options:
32
+ - SAMEORIGIN
33
+ x-xss-protection:
34
+ - 1; mode=block
35
+ x-content-type-options:
36
+ - nosniff
37
+ etag:
38
+ - W/"797037ae5a33dcae7de46e23dfdd4ec7"
39
+ cache-control:
40
+ - max-age=0, private, must-revalidate
41
+ x-request-id:
42
+ - efa1a67e-37e8-4ac3-bce7-8d11f33d0e8c
43
+ x-runtime:
44
+ - '0.026716'
45
+ strict-transport-security:
46
+ - max-age=15768000
47
+ body:
48
+ encoding: UTF-8
49
+ string: '{"customer_uuid":"cus_510b1395-4fe8-4d35-ae23-0e61f9a51e33","subscriptions":[{"uuid":"sub_9b3ccf25-4613-4af6-84b3-12026cfa4b7c","external_id":"test_cus_sub_ext_id","cancellation_dates":[],"plan_uuid":"pl_06ea83a9-f8c8-4ddd-a980-9ceffd27f107","data_source_uuid":"ds_55ab11fb-53e6-4468-aa95-bd582f14cac6"}],"current_page":1,"total_pages":1}'
50
+ http_version:
51
+ recorded_at: Thu, 23 Jun 2016 20:46:07 GMT
52
+ - request:
53
+ method: get
54
+ uri: https://api.chartmogul.com/v1/import/customers/cus_510b1395-4fe8-4d35-ae23-0e61f9a51e33/subscriptions?page=2&per_page=1
55
+ body:
56
+ encoding: US-ASCII
57
+ string: ''
58
+ headers:
59
+ User-Agent:
60
+ - Faraday v0.9.2
61
+ Content-Type:
62
+ - application/json
63
+ Authorization:
64
+ - Basic YmIzN2I0Njk5NjNlMjhlYjY2MjA1ZWYzZmU1MWQ1NmM6ZmM1YjQxYzM3YTNlZTcwYjQyN2UwYzU1ODg2NzA2ZmQ=
65
+ response:
66
+ status:
67
+ code: 200
68
+ message:
69
+ headers:
70
+ server:
71
+ - nginx/1.9.10
72
+ date:
73
+ - Thu, 23 Jun 2016 20:46:07 GMT
74
+ content-type:
75
+ - application/json; charset=utf-8
76
+ transfer-encoding:
77
+ - chunked
78
+ connection:
79
+ - close
80
+ x-frame-options:
81
+ - SAMEORIGIN
82
+ x-xss-protection:
83
+ - 1; mode=block
84
+ x-content-type-options:
85
+ - nosniff
86
+ etag:
87
+ - W/"797037ae5a33dcae7de46e23dfdd4ec7"
88
+ cache-control:
89
+ - max-age=0, private, must-revalidate
90
+ x-request-id:
91
+ - efa1a67e-37e8-4ac3-bce7-8d11f33d0e8c
92
+ x-runtime:
93
+ - '0.026716'
94
+ strict-transport-security:
95
+ - max-age=15768000
96
+ body:
97
+ encoding: UTF-8
98
+ string: '{"customer_uuid":"cus_510b1395-4fe8-4d35-ae23-0e61f9a51e33","subscriptions":[{"uuid":"sub_9b3ccf25-4613-4af6-84b3-12026cfa4b7c","external_id":"test_cus_sub_ext_id","cancellation_dates":[],"plan_uuid":"pl_06ea83a9-f8c8-4ddd-a980-9ceffd27f107","data_source_uuid":"ds_55ab11fb-53e6-4468-aa95-bd582f14cac6"}],"current_page":2,"total_pages":2}'
99
+ http_version:
100
+ recorded_at: Thu, 23 Jun 2016 20:46:07 GMT
101
+ recorded_with: VCR 3.0.3
@@ -1,243 +1,243 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: post
5
- uri: https://api.chartmogul.com/v1/data_sources
6
- body:
7
- encoding: UTF-8
8
- string: '{"name":"Invoice Payment Test Data Source"}'
9
- headers:
10
- User-Agent:
11
- - Faraday v0.9.2
12
- Content-Type:
13
- - application/json
14
- Authorization:
15
- - Basic YmIzN2I0Njk5NjNlMjhlYjY2MjA1ZWYzZmU1MWQ1NmM6ZmM1YjQxYzM3YTNlZTcwYjQyN2UwYzU1ODg2NzA2ZmQ=
16
- response:
17
- status:
18
- code: 201
19
- message:
20
- headers:
21
- server:
22
- - nginx/1.9.10
23
- date:
24
- - Thu, 23 Jun 2016 14:47:22 GMT
25
- content-type:
26
- - application/json; charset=utf-8
27
- transfer-encoding:
28
- - chunked
29
- connection:
30
- - close
31
- x-frame-options:
32
- - SAMEORIGIN
33
- x-xss-protection:
34
- - 1; mode=block
35
- x-content-type-options:
36
- - nosniff
37
- etag:
38
- - W/"ad541e45449462884dced1b527da7376"
39
- cache-control:
40
- - max-age=0, private, must-revalidate
41
- x-request-id:
42
- - d542ffb6-712b-4678-8363-d6d69f6a9111
43
- x-runtime:
44
- - '0.533348'
45
- strict-transport-security:
46
- - max-age=15768000
47
- body:
48
- encoding: UTF-8
49
- string: '{"uuid":"ds_e25656b4-035e-433c-80e7-46c783271e9f","name":"Invoice Payment
50
- Test Data Source","created_at":"2016-06-23T14:47:21.996Z","status":"never_imported"}'
51
- http_version:
52
- recorded_at: Thu, 23 Jun 2016 14:47:22 GMT
53
- - request:
54
- method: post
55
- uri: https://api.chartmogul.com/v1/customers
56
- body:
57
- encoding: UTF-8
58
- string: '{"data_source_uuid":"ds_e25656b4-035e-433c-80e7-46c783271e9f","external_id":"test_cus_ext_id","name":"Test
59
- Customer"}'
60
- headers:
61
- User-Agent:
62
- - Faraday v0.9.2
63
- Content-Type:
64
- - application/json
65
- Authorization:
66
- - Basic YmIzN2I0Njk5NjNlMjhlYjY2MjA1ZWYzZmU1MWQ1NmM6ZmM1YjQxYzM3YTNlZTcwYjQyN2UwYzU1ODg2NzA2ZmQ=
67
- response:
68
- status:
69
- code: 201
70
- message:
71
- headers:
72
- server:
73
- - nginx/1.9.10
74
- date:
75
- - Thu, 23 Jun 2016 14:47:22 GMT
76
- content-type:
77
- - application/json; charset=utf-8
78
- transfer-encoding:
79
- - chunked
80
- connection:
81
- - close
82
- x-frame-options:
83
- - SAMEORIGIN
84
- x-xss-protection:
85
- - 1; mode=block
86
- x-content-type-options:
87
- - nosniff
88
- etag:
89
- - W/"aeef9d5a4cd0ede802c52624fed11704"
90
- cache-control:
91
- - max-age=0, private, must-revalidate
92
- x-request-id:
93
- - 204614cd-6de5-482d-9e85-78ad381a412f
94
- x-runtime:
95
- - '0.227565'
96
- strict-transport-security:
97
- - max-age=15768000
98
- body:
99
- encoding: UTF-8
100
- string: '{"uuid":"cus_fe40373d-fe78-4bd4-8c14-9d459abf7849","external_id":"test_cus_ext_id","name":"Test
101
- Customer","company":"","email":"","city":"","state":"","country":"","zip":"","data_source_uuid":"ds_e25656b4-035e-433c-80e7-46c783271e9f"}'
102
- http_version:
103
- recorded_at: Thu, 23 Jun 2016 14:47:22 GMT
104
- - request:
105
- method: post
106
- uri: https://api.chartmogul.com/v1/import/customers/cus_fe40373d-fe78-4bd4-8c14-9d459abf7849/invoices
107
- body:
108
- encoding: UTF-8
109
- string: '{"invoices":[{"date":"2016-01-01 12:00:00 +0000","currency":"USD","line_items":[{"type":"one_time","amount_in_cents":1000}],"external_id":"test_tr_inv_ext_id"}],"customer_uuid":"cus_fe40373d-fe78-4bd4-8c14-9d459abf7849"}'
110
- headers:
111
- User-Agent:
112
- - Faraday v0.9.2
113
- Content-Type:
114
- - application/json
115
- Authorization:
116
- - Basic YmIzN2I0Njk5NjNlMjhlYjY2MjA1ZWYzZmU1MWQ1NmM6ZmM1YjQxYzM3YTNlZTcwYjQyN2UwYzU1ODg2NzA2ZmQ=
117
- response:
118
- status:
119
- code: 201
120
- message:
121
- headers:
122
- server:
123
- - nginx/1.9.10
124
- date:
125
- - Thu, 23 Jun 2016 14:47:23 GMT
126
- content-type:
127
- - application/json; charset=utf-8
128
- transfer-encoding:
129
- - chunked
130
- connection:
131
- - close
132
- x-frame-options:
133
- - SAMEORIGIN
134
- x-xss-protection:
135
- - 1; mode=block
136
- x-content-type-options:
137
- - nosniff
138
- etag:
139
- - W/"150cd5f67ca1628b517a908c79aea1f0"
140
- cache-control:
141
- - max-age=0, private, must-revalidate
142
- x-request-id:
143
- - a4ac21cc-0a36-4e85-a055-5a0d1f568caf
144
- x-runtime:
145
- - '0.063138'
146
- strict-transport-security:
147
- - max-age=15768000
148
- body:
149
- encoding: UTF-8
150
- string: '{"invoices":[{"uuid":"inv_8418d38b-e132-481f-ad4e-d914809f9e19","external_id":"test_tr_inv_ext_id","date":"2016-01-01T12:00:00.000Z","due_date":null,"currency":"USD","line_items":[{"uuid":"li_3be740bd-c725-444d-9745-6476fa3a6d02","external_id":null,"type":"one_time","description":"","amount_in_cents":1000,"quantity":1,"discount_code":"","discount_amount_in_cents":0,"tax_amount_in_cents":0}],"transactions":[]}]}'
151
- http_version:
152
- recorded_at: Thu, 23 Jun 2016 14:47:23 GMT
153
- - request:
154
- method: post
155
- uri: https://api.chartmogul.com/v1/import/invoices/inv_8418d38b-e132-481f-ad4e-d914809f9e19/transactions
156
- body:
157
- encoding: UTF-8
158
- string: '{"type":"payment","date":"2016-01-01 12:00:00 +0000","result":"successful","external_id":"test_tr_ext_id","invoice_uuid":"inv_8418d38b-e132-481f-ad4e-d914809f9e19"}'
159
- headers:
160
- User-Agent:
161
- - Faraday v0.9.2
162
- Content-Type:
163
- - application/json
164
- Authorization:
165
- - Basic YmIzN2I0Njk5NjNlMjhlYjY2MjA1ZWYzZmU1MWQ1NmM6ZmM1YjQxYzM3YTNlZTcwYjQyN2UwYzU1ODg2NzA2ZmQ=
166
- response:
167
- status:
168
- code: 201
169
- message:
170
- headers:
171
- server:
172
- - nginx/1.9.10
173
- date:
174
- - Thu, 23 Jun 2016 14:47:23 GMT
175
- content-type:
176
- - application/json; charset=utf-8
177
- transfer-encoding:
178
- - chunked
179
- connection:
180
- - close
181
- x-frame-options:
182
- - SAMEORIGIN
183
- x-xss-protection:
184
- - 1; mode=block
185
- x-content-type-options:
186
- - nosniff
187
- etag:
188
- - W/"48311e31dff0fe8a0f49c3aa28e735e4"
189
- cache-control:
190
- - max-age=0, private, must-revalidate
191
- x-request-id:
192
- - 2119149d-ee00-47ac-9c61-20ccef186710
193
- x-runtime:
194
- - '0.062007'
195
- strict-transport-security:
196
- - max-age=15768000
197
- body:
198
- encoding: UTF-8
199
- string: '{"uuid":"tr_448b68d3-63cd-4646-933b-c18807c16bad","external_id":"test_tr_ext_id","type":"payment","date":"2016-01-01T12:00:00.000Z","result":"successful"}'
200
- http_version:
201
- recorded_at: Thu, 23 Jun 2016 14:47:23 GMT
202
- - request:
203
- method: delete
204
- uri: https://api.chartmogul.com/v1/data_sources/ds_e25656b4-035e-433c-80e7-46c783271e9f
205
- body:
206
- encoding: US-ASCII
207
- string: ''
208
- headers:
209
- User-Agent:
210
- - Faraday v0.9.2
211
- Authorization:
212
- - Basic YmIzN2I0Njk5NjNlMjhlYjY2MjA1ZWYzZmU1MWQ1NmM6ZmM1YjQxYzM3YTNlZTcwYjQyN2UwYzU1ODg2NzA2ZmQ=
213
- response:
214
- status:
215
- code: 204
216
- message:
217
- headers:
218
- server:
219
- - nginx/1.9.10
220
- date:
221
- - Thu, 23 Jun 2016 14:47:23 GMT
222
- connection:
223
- - close
224
- x-frame-options:
225
- - SAMEORIGIN
226
- x-xss-protection:
227
- - 1; mode=block
228
- x-content-type-options:
229
- - nosniff
230
- cache-control:
231
- - no-cache
232
- x-request-id:
233
- - 55112f9c-3f91-4ee0-85f4-0ba629912856
234
- x-runtime:
235
- - '0.009105'
236
- strict-transport-security:
237
- - max-age=15768000
238
- body:
239
- encoding: UTF-8
240
- string: ''
241
- http_version:
242
- recorded_at: Thu, 23 Jun 2016 14:47:23 GMT
243
- recorded_with: VCR 3.0.3
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://api.chartmogul.com/v1/data_sources
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"name":"Invoice Payment Test Data Source"}'
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.9.2
12
+ Content-Type:
13
+ - application/json
14
+ Authorization:
15
+ - Basic YmIzN2I0Njk5NjNlMjhlYjY2MjA1ZWYzZmU1MWQ1NmM6ZmM1YjQxYzM3YTNlZTcwYjQyN2UwYzU1ODg2NzA2ZmQ=
16
+ response:
17
+ status:
18
+ code: 201
19
+ message:
20
+ headers:
21
+ server:
22
+ - nginx/1.9.10
23
+ date:
24
+ - Thu, 23 Jun 2016 14:47:22 GMT
25
+ content-type:
26
+ - application/json; charset=utf-8
27
+ transfer-encoding:
28
+ - chunked
29
+ connection:
30
+ - close
31
+ x-frame-options:
32
+ - SAMEORIGIN
33
+ x-xss-protection:
34
+ - 1; mode=block
35
+ x-content-type-options:
36
+ - nosniff
37
+ etag:
38
+ - W/"ad541e45449462884dced1b527da7376"
39
+ cache-control:
40
+ - max-age=0, private, must-revalidate
41
+ x-request-id:
42
+ - d542ffb6-712b-4678-8363-d6d69f6a9111
43
+ x-runtime:
44
+ - '0.533348'
45
+ strict-transport-security:
46
+ - max-age=15768000
47
+ body:
48
+ encoding: UTF-8
49
+ string: '{"uuid":"ds_e25656b4-035e-433c-80e7-46c783271e9f","name":"Invoice Payment
50
+ Test Data Source","created_at":"2016-06-23T14:47:21.996Z","status":"never_imported"}'
51
+ http_version:
52
+ recorded_at: Thu, 23 Jun 2016 14:47:22 GMT
53
+ - request:
54
+ method: post
55
+ uri: https://api.chartmogul.com/v1/customers
56
+ body:
57
+ encoding: UTF-8
58
+ string: '{"data_source_uuid":"ds_e25656b4-035e-433c-80e7-46c783271e9f","external_id":"test_cus_ext_id","name":"Test
59
+ Customer"}'
60
+ headers:
61
+ User-Agent:
62
+ - Faraday v0.9.2
63
+ Content-Type:
64
+ - application/json
65
+ Authorization:
66
+ - Basic YmIzN2I0Njk5NjNlMjhlYjY2MjA1ZWYzZmU1MWQ1NmM6ZmM1YjQxYzM3YTNlZTcwYjQyN2UwYzU1ODg2NzA2ZmQ=
67
+ response:
68
+ status:
69
+ code: 201
70
+ message:
71
+ headers:
72
+ server:
73
+ - nginx/1.9.10
74
+ date:
75
+ - Thu, 23 Jun 2016 14:47:22 GMT
76
+ content-type:
77
+ - application/json; charset=utf-8
78
+ transfer-encoding:
79
+ - chunked
80
+ connection:
81
+ - close
82
+ x-frame-options:
83
+ - SAMEORIGIN
84
+ x-xss-protection:
85
+ - 1; mode=block
86
+ x-content-type-options:
87
+ - nosniff
88
+ etag:
89
+ - W/"aeef9d5a4cd0ede802c52624fed11704"
90
+ cache-control:
91
+ - max-age=0, private, must-revalidate
92
+ x-request-id:
93
+ - 204614cd-6de5-482d-9e85-78ad381a412f
94
+ x-runtime:
95
+ - '0.227565'
96
+ strict-transport-security:
97
+ - max-age=15768000
98
+ body:
99
+ encoding: UTF-8
100
+ string: '{"uuid":"cus_fe40373d-fe78-4bd4-8c14-9d459abf7849","external_id":"test_cus_ext_id","name":"Test
101
+ Customer","company":"","email":"","city":"","state":"","country":"","zip":"","data_source_uuid":"ds_e25656b4-035e-433c-80e7-46c783271e9f"}'
102
+ http_version:
103
+ recorded_at: Thu, 23 Jun 2016 14:47:22 GMT
104
+ - request:
105
+ method: post
106
+ uri: https://api.chartmogul.com/v1/import/customers/cus_fe40373d-fe78-4bd4-8c14-9d459abf7849/invoices
107
+ body:
108
+ encoding: UTF-8
109
+ string: '{"invoices":[{"date":"2016-01-01 12:00:00 +0000","currency":"USD","line_items":[{"type":"one_time","amount_in_cents":1000}],"external_id":"test_tr_inv_ext_id"}],"customer_uuid":"cus_fe40373d-fe78-4bd4-8c14-9d459abf7849"}'
110
+ headers:
111
+ User-Agent:
112
+ - Faraday v0.9.2
113
+ Content-Type:
114
+ - application/json
115
+ Authorization:
116
+ - Basic YmIzN2I0Njk5NjNlMjhlYjY2MjA1ZWYzZmU1MWQ1NmM6ZmM1YjQxYzM3YTNlZTcwYjQyN2UwYzU1ODg2NzA2ZmQ=
117
+ response:
118
+ status:
119
+ code: 201
120
+ message:
121
+ headers:
122
+ server:
123
+ - nginx/1.9.10
124
+ date:
125
+ - Thu, 23 Jun 2016 14:47:23 GMT
126
+ content-type:
127
+ - application/json; charset=utf-8
128
+ transfer-encoding:
129
+ - chunked
130
+ connection:
131
+ - close
132
+ x-frame-options:
133
+ - SAMEORIGIN
134
+ x-xss-protection:
135
+ - 1; mode=block
136
+ x-content-type-options:
137
+ - nosniff
138
+ etag:
139
+ - W/"150cd5f67ca1628b517a908c79aea1f0"
140
+ cache-control:
141
+ - max-age=0, private, must-revalidate
142
+ x-request-id:
143
+ - a4ac21cc-0a36-4e85-a055-5a0d1f568caf
144
+ x-runtime:
145
+ - '0.063138'
146
+ strict-transport-security:
147
+ - max-age=15768000
148
+ body:
149
+ encoding: UTF-8
150
+ string: '{"invoices":[{"uuid":"inv_8418d38b-e132-481f-ad4e-d914809f9e19","external_id":"test_tr_inv_ext_id","date":"2016-01-01T12:00:00.000Z","due_date":null,"currency":"USD","line_items":[{"uuid":"li_3be740bd-c725-444d-9745-6476fa3a6d02","external_id":null,"type":"one_time","description":"","amount_in_cents":1000,"quantity":1,"discount_code":"","discount_amount_in_cents":0,"tax_amount_in_cents":0}],"transactions":[]}]}'
151
+ http_version:
152
+ recorded_at: Thu, 23 Jun 2016 14:47:23 GMT
153
+ - request:
154
+ method: post
155
+ uri: https://api.chartmogul.com/v1/import/invoices/inv_8418d38b-e132-481f-ad4e-d914809f9e19/transactions
156
+ body:
157
+ encoding: UTF-8
158
+ string: '{"type":"payment","date":"2016-01-01 12:00:00 +0000","result":"successful","external_id":"test_tr_ext_id","invoice_uuid":"inv_8418d38b-e132-481f-ad4e-d914809f9e19"}'
159
+ headers:
160
+ User-Agent:
161
+ - Faraday v0.9.2
162
+ Content-Type:
163
+ - application/json
164
+ Authorization:
165
+ - Basic YmIzN2I0Njk5NjNlMjhlYjY2MjA1ZWYzZmU1MWQ1NmM6ZmM1YjQxYzM3YTNlZTcwYjQyN2UwYzU1ODg2NzA2ZmQ=
166
+ response:
167
+ status:
168
+ code: 201
169
+ message:
170
+ headers:
171
+ server:
172
+ - nginx/1.9.10
173
+ date:
174
+ - Thu, 23 Jun 2016 14:47:23 GMT
175
+ content-type:
176
+ - application/json; charset=utf-8
177
+ transfer-encoding:
178
+ - chunked
179
+ connection:
180
+ - close
181
+ x-frame-options:
182
+ - SAMEORIGIN
183
+ x-xss-protection:
184
+ - 1; mode=block
185
+ x-content-type-options:
186
+ - nosniff
187
+ etag:
188
+ - W/"48311e31dff0fe8a0f49c3aa28e735e4"
189
+ cache-control:
190
+ - max-age=0, private, must-revalidate
191
+ x-request-id:
192
+ - 2119149d-ee00-47ac-9c61-20ccef186710
193
+ x-runtime:
194
+ - '0.062007'
195
+ strict-transport-security:
196
+ - max-age=15768000
197
+ body:
198
+ encoding: UTF-8
199
+ string: '{"uuid":"tr_448b68d3-63cd-4646-933b-c18807c16bad","external_id":"test_tr_ext_id","type":"payment","date":"2016-01-01T12:00:00.000Z","result":"successful"}'
200
+ http_version:
201
+ recorded_at: Thu, 23 Jun 2016 14:47:23 GMT
202
+ - request:
203
+ method: delete
204
+ uri: https://api.chartmogul.com/v1/data_sources/ds_e25656b4-035e-433c-80e7-46c783271e9f
205
+ body:
206
+ encoding: US-ASCII
207
+ string: ''
208
+ headers:
209
+ User-Agent:
210
+ - Faraday v0.9.2
211
+ Authorization:
212
+ - Basic YmIzN2I0Njk5NjNlMjhlYjY2MjA1ZWYzZmU1MWQ1NmM6ZmM1YjQxYzM3YTNlZTcwYjQyN2UwYzU1ODg2NzA2ZmQ=
213
+ response:
214
+ status:
215
+ code: 204
216
+ message:
217
+ headers:
218
+ server:
219
+ - nginx/1.9.10
220
+ date:
221
+ - Thu, 23 Jun 2016 14:47:23 GMT
222
+ connection:
223
+ - close
224
+ x-frame-options:
225
+ - SAMEORIGIN
226
+ x-xss-protection:
227
+ - 1; mode=block
228
+ x-content-type-options:
229
+ - nosniff
230
+ cache-control:
231
+ - no-cache
232
+ x-request-id:
233
+ - 55112f9c-3f91-4ee0-85f4-0ba629912856
234
+ x-runtime:
235
+ - '0.009105'
236
+ strict-transport-security:
237
+ - max-age=15768000
238
+ body:
239
+ encoding: UTF-8
240
+ string: ''
241
+ http_version:
242
+ recorded_at: Thu, 23 Jun 2016 14:47:23 GMT
243
+ recorded_with: VCR 3.0.3