billfixers-partner 0.1.4 → 1.1.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0d5d330e94865c48af1e3ea7d7dba319ce298dd3ccaadb693ce1e21e5aa0cb0d
4
- data.tar.gz: e00b616103fcecf1e19f33f7d277b23a64e7fea0cd935dfb244513517cdbad35
3
+ metadata.gz: 0502075a20dd8ce469eaf99ac0c82af520bd30cdc191104966442c7c5441847a
4
+ data.tar.gz: 0da7348c6e5797fb999d87aef93e990138076a6fe0572b1b4ed5b3a315d7fa34
5
5
  SHA512:
6
- metadata.gz: 88c78ddfa1a2a445fe53d1590691644fc17d482d7e825cc0f524b0a05a12350c9eb6ef17c8e75bf0a8d83931459a197316f654fe2fa66402df023384e071123b
7
- data.tar.gz: 8dda4524dc01744751a602476dc95e8cf0478edff4377032cb05e132029c72e5669b90caedb791dca3b3ccb38c3d2a06b45d6f43892969a58cc32cfa6f967be8
6
+ metadata.gz: 0de40ffd16e308841a205b53e604a851635a74f1301817257fff94e7804f1e4c436a15871d4e6ca9f92b2dcba575b91c082e58ba6dd9791a87c456cc3ca72a31
7
+ data.tar.gz: 10982080daa94e2b27f751c9b2a3812599a9d4e2f89b1ef8f6d500dc8e13da0f5c3d05fa974777bcecc6c6710cf2778cd61f43250e64523a87eded414c4daf0c
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- billfixers-partner (0.1.4)
4
+ billfixers-partner (1.0.0)
5
5
  activesupport
6
6
  graphlient
7
7
 
data/README.md CHANGED
@@ -1,9 +1,5 @@
1
1
  # Billfixers::Partner
2
2
 
3
- Welcome to your new gem! In this directory, you'll find the files you need to be able to package up your Ruby library into a gem. Put your Ruby code in the file `lib/billfixers/partner`. To experiment with that code, run `bin/console` for an interactive prompt.
4
-
5
- TODO: Delete this and the text above, and describe your gem
6
-
7
3
  ## Installation
8
4
 
9
5
  Add this line to your application's Gemfile:
@@ -22,15 +18,14 @@ Or install it yourself as:
22
18
 
23
19
  ## Usage
24
20
 
25
- TODO: Write usage instructions here
21
+ Please visit <https://partner.billfixers.com> to see our documentation.
26
22
 
27
- ## Development
23
+ <!-- ## Development
28
24
 
29
25
  After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake test` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
30
26
 
31
- To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
32
-
33
- ## Contributing
27
+ To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org). -->
34
28
 
35
- Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/billfixers-partner.
29
+ <!-- ## Contributing
36
30
 
31
+ Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/billfixers-partner. -->
@@ -103,8 +103,9 @@ module Billfixers
103
103
  result.customer
104
104
  end
105
105
 
106
- def create_bill(params)
106
+ def create_bill(customer_id, params)
107
107
  response = @gql.query(CREATE_BILL_MUTATION, {
108
+ customer_id: customer_id,
108
109
  bill: camelize(params)
109
110
  })
110
111
 
@@ -114,6 +115,12 @@ module Billfixers
114
115
  result.bill
115
116
  end
116
117
 
118
+ def renegotiate_bill(bill_id)
119
+ response = @gql.query(RENEGOTIATE_BILL_MUTATION, { id: bill_id })
120
+
121
+ response.data.renegotiate_bill
122
+ end
123
+
117
124
  def cancel_bill(bill_id)
118
125
  response = @gql.query(CANCEL_BILL_MUTATION, { id: bill_id })
119
126
 
@@ -133,11 +140,39 @@ module Billfixers
133
140
  response = @gql.query(REJECT_OFFER_MUTATION, { id: offer_id })
134
141
 
135
142
  result = response.data.reject_offer
143
+ # binding.pry
136
144
  raise Error, result.errors.join(' ') unless result.success
137
145
 
138
146
  result.offer
139
147
  end
140
148
 
149
+ def respond_to_information_request(information_request_id, params)
150
+ response = @gql.query(
151
+ RESPOND_TO_INFORMATION_REQUEST,
152
+ {
153
+ id: information_request_id,
154
+ information_request: camelize(params)
155
+ }
156
+ )
157
+
158
+ result = response.data.respond_to_information_request
159
+ raise Error, result.errors.join(' ') unless result.success
160
+
161
+ result.information_request
162
+ end
163
+
164
+ def calculate_savings_estimate(provider_id, current_monthly_payment)
165
+ response = @gql.query(
166
+ CALCULATE_SAVINGS_ESTIMATE,
167
+ {
168
+ provider_id: provider_id,
169
+ current_monthly_amount: current_monthly_payment
170
+ }
171
+ )
172
+
173
+ response.data.calculate_savings_estimate
174
+ end
175
+
141
176
  private
142
177
 
143
178
  def camelize(hsh)
@@ -7,6 +7,11 @@ module Billfixers
7
7
  name
8
8
  services
9
9
  billFields
10
+ logo {
11
+ thumbnailUrl
12
+ smallUrl
13
+ mediumUrl
14
+ }
10
15
  )
11
16
 
12
17
  CUSTOMER_FRAGMENT = %(
@@ -18,12 +23,6 @@ module Billfixers
18
23
  phoneNumber
19
24
  avatarUrl
20
25
  b2b
21
- addressLine1
22
- addressLine2
23
- addressCity
24
- addressState
25
- addressPostalCode
26
- addressCountryCode
27
26
  createdAt
28
27
  updatedAt
29
28
  )
@@ -209,8 +208,8 @@ module Billfixers
209
208
  )
210
209
 
211
210
  CREATE_BILL_MUTATION = %(
212
- mutation($bill: BillAttributes!) {
213
- CreateBill(input: { bill: $bill }) {
211
+ mutation($customer_id: ID!, $bill: BillAttributes!) {
212
+ CreateBill(input: { customerId: $customer_id, bill: $bill }) {
214
213
  success
215
214
  errors
216
215
  bill {
@@ -228,6 +227,18 @@ module Billfixers
228
227
  }
229
228
  )
230
229
 
230
+ RENEGOTIATE_BILL_MUTATION = %(
231
+ mutation($id: ID!) {
232
+ RenegotiateBill(input: { id: $id }) {
233
+ success
234
+ errors
235
+ bill {
236
+ #{BILL_FRAGMENT}
237
+ }
238
+ }
239
+ }
240
+ )
241
+
231
242
  ACCEPT_OFFER_MUTATION = %(
232
243
  mutation($id: ID!) {
233
244
  AcceptOffer(input: { id: $id }) {
@@ -251,5 +262,42 @@ module Billfixers
251
262
  }
252
263
  }
253
264
  )
265
+
266
+ RESPOND_TO_INFORMATION_REQUEST = %(
267
+ mutation($id: ID!, $ir: InformationRequestAttributes!) {
268
+ RespondToInformationRequest(input: {
269
+ id: $id,
270
+ informationRequest: $ir
271
+ }) {
272
+ success
273
+ errors
274
+ informationRequest {
275
+ #{INFORMATION_REQUEST_FRAGMENT}
276
+ }
277
+ }
278
+ }
279
+ )
280
+
281
+ CALCULATE_SAVINGS_ESTIMATE = %(
282
+ query(
283
+ $providerId: ID!
284
+ $currentMonthlyAmount: Float!
285
+ ) {
286
+ CalculateSavingsEstimate {
287
+ estimatedAnnualSavings(
288
+ providerId: $providerId
289
+ currentMonthlyAmount: $currentMonthlyAmount
290
+ )
291
+ estimatedMonthlySavings(
292
+ providerId: $providerId
293
+ currentMonthlyAmount: $currentMonthlyAmount
294
+ )
295
+ percentageSavings(
296
+ providerId: $providerId
297
+ currentMonthlyAmount: $currentMonthlyAmount
298
+ )
299
+ }
300
+ }
301
+ )
254
302
  end
255
303
  end
@@ -1,5 +1,7 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Billfixers
2
4
  module Partner
3
- VERSION = '0.1.4'.freeze
5
+ VERSION = '1.1.3'
4
6
  end
5
7
  end
data/partner_schema.json CHANGED
@@ -156,6 +156,22 @@
156
156
  "isDeprecated": false,
157
157
  "deprecationReason": null
158
158
  },
159
+ {
160
+ "name": "customerId",
161
+ "description": "Billfixer's alpha-numeric Customer ID",
162
+ "args": [],
163
+ "type": {
164
+ "kind": "NON_NULL",
165
+ "name": null,
166
+ "ofType": {
167
+ "kind": "SCALAR",
168
+ "name": "ID",
169
+ "ofType": null
170
+ }
171
+ },
172
+ "isDeprecated": false,
173
+ "deprecationReason": null
174
+ },
159
175
  {
160
176
  "name": "id",
161
177
  "description": "Alpha-numeric unique identifier",
@@ -401,16 +417,12 @@
401
417
  "defaultValue": null
402
418
  },
403
419
  {
404
- "name": "customer",
420
+ "name": "createdVia",
405
421
  "description": null,
406
422
  "type": {
407
- "kind": "NON_NULL",
408
- "name": null,
409
- "ofType": {
410
- "kind": "INPUT_OBJECT",
411
- "name": "CustomerAttributes",
412
- "ofType": null
413
- }
423
+ "kind": "SCALAR",
424
+ "name": "String",
425
+ "ofType": null
414
426
  },
415
427
  "defaultValue": null
416
428
  }
@@ -655,6 +667,20 @@
655
667
  "description": "Autogenerated input type of CreateBill",
656
668
  "fields": null,
657
669
  "inputFields": [
670
+ {
671
+ "name": "customerId",
672
+ "description": null,
673
+ "type": {
674
+ "kind": "NON_NULL",
675
+ "name": null,
676
+ "ofType": {
677
+ "kind": "SCALAR",
678
+ "name": "ID",
679
+ "ofType": null
680
+ }
681
+ },
682
+ "defaultValue": null
683
+ },
658
684
  {
659
685
  "name": "bill",
660
686
  "description": null,
@@ -874,78 +900,6 @@
874
900
  "name": "Customer",
875
901
  "description": "The person being billed by a provider",
876
902
  "fields": [
877
- {
878
- "name": "addressCity",
879
- "description": null,
880
- "args": [],
881
- "type": {
882
- "kind": "SCALAR",
883
- "name": "String",
884
- "ofType": null
885
- },
886
- "isDeprecated": false,
887
- "deprecationReason": null
888
- },
889
- {
890
- "name": "addressCountryCode",
891
- "description": null,
892
- "args": [],
893
- "type": {
894
- "kind": "SCALAR",
895
- "name": "String",
896
- "ofType": null
897
- },
898
- "isDeprecated": false,
899
- "deprecationReason": null
900
- },
901
- {
902
- "name": "addressLine1",
903
- "description": null,
904
- "args": [],
905
- "type": {
906
- "kind": "SCALAR",
907
- "name": "String",
908
- "ofType": null
909
- },
910
- "isDeprecated": false,
911
- "deprecationReason": null
912
- },
913
- {
914
- "name": "addressLine2",
915
- "description": null,
916
- "args": [],
917
- "type": {
918
- "kind": "SCALAR",
919
- "name": "String",
920
- "ofType": null
921
- },
922
- "isDeprecated": false,
923
- "deprecationReason": null
924
- },
925
- {
926
- "name": "addressPostalCode",
927
- "description": null,
928
- "args": [],
929
- "type": {
930
- "kind": "SCALAR",
931
- "name": "String",
932
- "ofType": null
933
- },
934
- "isDeprecated": false,
935
- "deprecationReason": null
936
- },
937
- {
938
- "name": "addressState",
939
- "description": null,
940
- "args": [],
941
- "type": {
942
- "kind": "SCALAR",
943
- "name": "String",
944
- "ofType": null
945
- },
946
- "isDeprecated": false,
947
- "deprecationReason": null
948
- },
949
903
  {
950
904
  "name": "avatarUrl",
951
905
  "description": null,
@@ -1233,66 +1187,6 @@
1233
1187
  },
1234
1188
  "defaultValue": null
1235
1189
  },
1236
- {
1237
- "name": "addressLine1",
1238
- "description": null,
1239
- "type": {
1240
- "kind": "SCALAR",
1241
- "name": "String",
1242
- "ofType": null
1243
- },
1244
- "defaultValue": null
1245
- },
1246
- {
1247
- "name": "addressLine2",
1248
- "description": null,
1249
- "type": {
1250
- "kind": "SCALAR",
1251
- "name": "String",
1252
- "ofType": null
1253
- },
1254
- "defaultValue": null
1255
- },
1256
- {
1257
- "name": "addressCity",
1258
- "description": null,
1259
- "type": {
1260
- "kind": "SCALAR",
1261
- "name": "String",
1262
- "ofType": null
1263
- },
1264
- "defaultValue": null
1265
- },
1266
- {
1267
- "name": "addressState",
1268
- "description": null,
1269
- "type": {
1270
- "kind": "SCALAR",
1271
- "name": "String",
1272
- "ofType": null
1273
- },
1274
- "defaultValue": null
1275
- },
1276
- {
1277
- "name": "addressPostalCode",
1278
- "description": null,
1279
- "type": {
1280
- "kind": "SCALAR",
1281
- "name": "String",
1282
- "ofType": null
1283
- },
1284
- "defaultValue": null
1285
- },
1286
- {
1287
- "name": "addressCountryCode",
1288
- "description": null,
1289
- "type": {
1290
- "kind": "SCALAR",
1291
- "name": "String",
1292
- "ofType": null
1293
- },
1294
- "defaultValue": null
1295
- },
1296
1190
  {
1297
1191
  "name": "phoneNumber",
1298
1192
  "description": null,
@@ -1567,6 +1461,16 @@
1567
1461
  "enumValues": null,
1568
1462
  "possibleTypes": null
1569
1463
  },
1464
+ {
1465
+ "kind": "SCALAR",
1466
+ "name": "Float",
1467
+ "description": "Represents signed double-precision fractional values as specified by [IEEE 754](https://en.wikipedia.org/wiki/IEEE_floating_point).",
1468
+ "fields": null,
1469
+ "inputFields": null,
1470
+ "interfaces": null,
1471
+ "enumValues": null,
1472
+ "possibleTypes": null
1473
+ },
1570
1474
  {
1571
1475
  "kind": "SCALAR",
1572
1476
  "name": "ID",
@@ -2335,6 +2239,22 @@
2335
2239
  "isDeprecated": false,
2336
2240
  "deprecationReason": null
2337
2241
  },
2242
+ {
2243
+ "name": "type",
2244
+ "description": "The type of item",
2245
+ "args": [],
2246
+ "type": {
2247
+ "kind": "NON_NULL",
2248
+ "name": null,
2249
+ "ofType": {
2250
+ "kind": "SCALAR",
2251
+ "name": "String",
2252
+ "ofType": null
2253
+ }
2254
+ },
2255
+ "isDeprecated": false,
2256
+ "deprecationReason": null
2257
+ },
2338
2258
  {
2339
2259
  "name": "underContract",
2340
2260
  "description": "Indicates the item is under contract",
@@ -2523,6 +2443,33 @@
2523
2443
  "isDeprecated": false,
2524
2444
  "deprecationReason": null
2525
2445
  },
2446
+ {
2447
+ "name": "RenegotiateBill",
2448
+ "description": null,
2449
+ "args": [
2450
+ {
2451
+ "name": "input",
2452
+ "description": null,
2453
+ "type": {
2454
+ "kind": "NON_NULL",
2455
+ "name": null,
2456
+ "ofType": {
2457
+ "kind": "INPUT_OBJECT",
2458
+ "name": "RenegotiateBillInput",
2459
+ "ofType": null
2460
+ }
2461
+ },
2462
+ "defaultValue": null
2463
+ }
2464
+ ],
2465
+ "type": {
2466
+ "kind": "OBJECT",
2467
+ "name": "RenegotiateBillPayload",
2468
+ "ofType": null
2469
+ },
2470
+ "isDeprecated": false,
2471
+ "deprecationReason": null
2472
+ },
2526
2473
  {
2527
2474
  "name": "RespondToInformationRequest",
2528
2475
  "description": null,
@@ -2576,6 +2523,33 @@
2576
2523
  },
2577
2524
  "isDeprecated": false,
2578
2525
  "deprecationReason": null
2526
+ },
2527
+ {
2528
+ "name": "UpdateWebhookUrls",
2529
+ "description": null,
2530
+ "args": [
2531
+ {
2532
+ "name": "input",
2533
+ "description": null,
2534
+ "type": {
2535
+ "kind": "NON_NULL",
2536
+ "name": null,
2537
+ "ofType": {
2538
+ "kind": "INPUT_OBJECT",
2539
+ "name": "UpdateWebhookUrlsInput",
2540
+ "ofType": null
2541
+ }
2542
+ },
2543
+ "defaultValue": null
2544
+ }
2545
+ ],
2546
+ "type": {
2547
+ "kind": "OBJECT",
2548
+ "name": "UpdateWebhookUrlsPayload",
2549
+ "ofType": null
2550
+ },
2551
+ "isDeprecated": false,
2552
+ "deprecationReason": null
2579
2553
  }
2580
2554
  ],
2581
2555
  "inputFields": null,
@@ -3296,43 +3270,35 @@
3296
3270
  },
3297
3271
  {
3298
3272
  "kind": "OBJECT",
3299
- "name": "Provider",
3273
+ "name": "Partner",
3300
3274
  "description": null,
3301
3275
  "fields": [
3302
3276
  {
3303
- "name": "billFields",
3277
+ "name": "createdAt",
3304
3278
  "description": null,
3305
3279
  "args": [],
3306
3280
  "type": {
3307
3281
  "kind": "NON_NULL",
3308
3282
  "name": null,
3309
3283
  "ofType": {
3310
- "kind": "LIST",
3311
- "name": null,
3312
- "ofType": {
3313
- "kind": "NON_NULL",
3314
- "name": null,
3315
- "ofType": {
3316
- "kind": "SCALAR",
3317
- "name": "String",
3318
- "ofType": null
3319
- }
3320
- }
3284
+ "kind": "SCALAR",
3285
+ "name": "DateTime",
3286
+ "ofType": null
3321
3287
  }
3322
3288
  },
3323
3289
  "isDeprecated": false,
3324
3290
  "deprecationReason": null
3325
3291
  },
3326
3292
  {
3327
- "name": "createdAt",
3328
- "description": null,
3293
+ "name": "id",
3294
+ "description": "Alpha-numeric unique identifier",
3329
3295
  "args": [],
3330
3296
  "type": {
3331
3297
  "kind": "NON_NULL",
3332
3298
  "name": null,
3333
3299
  "ofType": {
3334
3300
  "kind": "SCALAR",
3335
- "name": "DateTime",
3301
+ "name": "String",
3336
3302
  "ofType": null
3337
3303
  }
3338
3304
  },
@@ -3340,12 +3306,147 @@
3340
3306
  "deprecationReason": null
3341
3307
  },
3342
3308
  {
3343
- "name": "id",
3344
- "description": null,
3309
+ "name": "liveWebhookUrl",
3310
+ "description": "Webhook URL for live/production requests",
3345
3311
  "args": [],
3346
3312
  "type": {
3347
- "kind": "NON_NULL",
3348
- "name": null,
3313
+ "kind": "SCALAR",
3314
+ "name": "String",
3315
+ "ofType": null
3316
+ },
3317
+ "isDeprecated": false,
3318
+ "deprecationReason": null
3319
+ },
3320
+ {
3321
+ "name": "name",
3322
+ "description": "Name of the partner",
3323
+ "args": [],
3324
+ "type": {
3325
+ "kind": "NON_NULL",
3326
+ "name": null,
3327
+ "ofType": {
3328
+ "kind": "SCALAR",
3329
+ "name": "String",
3330
+ "ofType": null
3331
+ }
3332
+ },
3333
+ "isDeprecated": false,
3334
+ "deprecationReason": null
3335
+ },
3336
+ {
3337
+ "name": "referralCode",
3338
+ "description": "The partner's referral code",
3339
+ "args": [],
3340
+ "type": {
3341
+ "kind": "SCALAR",
3342
+ "name": "String",
3343
+ "ofType": null
3344
+ },
3345
+ "isDeprecated": false,
3346
+ "deprecationReason": null
3347
+ },
3348
+ {
3349
+ "name": "referralLink",
3350
+ "description": "The partner's referral link",
3351
+ "args": [],
3352
+ "type": {
3353
+ "kind": "NON_NULL",
3354
+ "name": null,
3355
+ "ofType": {
3356
+ "kind": "SCALAR",
3357
+ "name": "String",
3358
+ "ofType": null
3359
+ }
3360
+ },
3361
+ "isDeprecated": false,
3362
+ "deprecationReason": null
3363
+ },
3364
+ {
3365
+ "name": "testWebhookUrl",
3366
+ "description": "Webhook URL for test/development requests",
3367
+ "args": [],
3368
+ "type": {
3369
+ "kind": "SCALAR",
3370
+ "name": "String",
3371
+ "ofType": null
3372
+ },
3373
+ "isDeprecated": false,
3374
+ "deprecationReason": null
3375
+ },
3376
+ {
3377
+ "name": "updatedAt",
3378
+ "description": null,
3379
+ "args": [],
3380
+ "type": {
3381
+ "kind": "NON_NULL",
3382
+ "name": null,
3383
+ "ofType": {
3384
+ "kind": "SCALAR",
3385
+ "name": "DateTime",
3386
+ "ofType": null
3387
+ }
3388
+ },
3389
+ "isDeprecated": false,
3390
+ "deprecationReason": null
3391
+ }
3392
+ ],
3393
+ "inputFields": null,
3394
+ "interfaces": [],
3395
+ "enumValues": null,
3396
+ "possibleTypes": null
3397
+ },
3398
+ {
3399
+ "kind": "OBJECT",
3400
+ "name": "Provider",
3401
+ "description": null,
3402
+ "fields": [
3403
+ {
3404
+ "name": "billFields",
3405
+ "description": null,
3406
+ "args": [],
3407
+ "type": {
3408
+ "kind": "NON_NULL",
3409
+ "name": null,
3410
+ "ofType": {
3411
+ "kind": "LIST",
3412
+ "name": null,
3413
+ "ofType": {
3414
+ "kind": "NON_NULL",
3415
+ "name": null,
3416
+ "ofType": {
3417
+ "kind": "SCALAR",
3418
+ "name": "String",
3419
+ "ofType": null
3420
+ }
3421
+ }
3422
+ }
3423
+ },
3424
+ "isDeprecated": false,
3425
+ "deprecationReason": null
3426
+ },
3427
+ {
3428
+ "name": "createdAt",
3429
+ "description": null,
3430
+ "args": [],
3431
+ "type": {
3432
+ "kind": "NON_NULL",
3433
+ "name": null,
3434
+ "ofType": {
3435
+ "kind": "SCALAR",
3436
+ "name": "DateTime",
3437
+ "ofType": null
3438
+ }
3439
+ },
3440
+ "isDeprecated": false,
3441
+ "deprecationReason": null
3442
+ },
3443
+ {
3444
+ "name": "id",
3445
+ "description": null,
3446
+ "args": [],
3447
+ "type": {
3448
+ "kind": "NON_NULL",
3449
+ "name": null,
3349
3450
  "ofType": {
3350
3451
  "kind": "SCALAR",
3351
3452
  "name": "ID",
@@ -3434,6 +3535,22 @@
3434
3535
  "name": "Query",
3435
3536
  "description": null,
3436
3537
  "fields": [
3538
+ {
3539
+ "name": "CalculateSavingsEstimate",
3540
+ "description": null,
3541
+ "args": [],
3542
+ "type": {
3543
+ "kind": "NON_NULL",
3544
+ "name": null,
3545
+ "ofType": {
3546
+ "kind": "OBJECT",
3547
+ "name": "SavingsEstimate",
3548
+ "ofType": null
3549
+ }
3550
+ },
3551
+ "isDeprecated": false,
3552
+ "deprecationReason": null
3553
+ },
3437
3554
  {
3438
3555
  "name": "FindBill",
3439
3556
  "description": null,
@@ -3461,6 +3578,22 @@
3461
3578
  "isDeprecated": false,
3462
3579
  "deprecationReason": null
3463
3580
  },
3581
+ {
3582
+ "name": "FindCurrentPartner",
3583
+ "description": null,
3584
+ "args": [],
3585
+ "type": {
3586
+ "kind": "NON_NULL",
3587
+ "name": null,
3588
+ "ofType": {
3589
+ "kind": "OBJECT",
3590
+ "name": "Partner",
3591
+ "ofType": null
3592
+ }
3593
+ },
3594
+ "isDeprecated": false,
3595
+ "deprecationReason": null
3596
+ },
3464
3597
  {
3465
3598
  "name": "FindCustomer",
3466
3599
  "description": null,
@@ -4070,51 +4203,455 @@
4070
4203
  "deprecationReason": null
4071
4204
  },
4072
4205
  {
4073
- "name": "errors",
4206
+ "name": "errors",
4207
+ "description": null,
4208
+ "args": [],
4209
+ "type": {
4210
+ "kind": "NON_NULL",
4211
+ "name": null,
4212
+ "ofType": {
4213
+ "kind": "LIST",
4214
+ "name": null,
4215
+ "ofType": {
4216
+ "kind": "NON_NULL",
4217
+ "name": null,
4218
+ "ofType": {
4219
+ "kind": "SCALAR",
4220
+ "name": "String",
4221
+ "ofType": null
4222
+ }
4223
+ }
4224
+ }
4225
+ },
4226
+ "isDeprecated": false,
4227
+ "deprecationReason": null
4228
+ },
4229
+ {
4230
+ "name": "offer",
4231
+ "description": null,
4232
+ "args": [],
4233
+ "type": {
4234
+ "kind": "OBJECT",
4235
+ "name": "Offer",
4236
+ "ofType": null
4237
+ },
4238
+ "isDeprecated": false,
4239
+ "deprecationReason": null
4240
+ },
4241
+ {
4242
+ "name": "success",
4243
+ "description": null,
4244
+ "args": [],
4245
+ "type": {
4246
+ "kind": "NON_NULL",
4247
+ "name": null,
4248
+ "ofType": {
4249
+ "kind": "SCALAR",
4250
+ "name": "Boolean",
4251
+ "ofType": null
4252
+ }
4253
+ },
4254
+ "isDeprecated": false,
4255
+ "deprecationReason": null
4256
+ }
4257
+ ],
4258
+ "inputFields": null,
4259
+ "interfaces": [],
4260
+ "enumValues": null,
4261
+ "possibleTypes": null
4262
+ },
4263
+ {
4264
+ "kind": "INPUT_OBJECT",
4265
+ "name": "RenegotiateBillInput",
4266
+ "description": "Autogenerated input type of RenegotiateBill",
4267
+ "fields": null,
4268
+ "inputFields": [
4269
+ {
4270
+ "name": "id",
4271
+ "description": "Id of the bill that should be renegotiated",
4272
+ "type": {
4273
+ "kind": "NON_NULL",
4274
+ "name": null,
4275
+ "ofType": {
4276
+ "kind": "SCALAR",
4277
+ "name": "ID",
4278
+ "ofType": null
4279
+ }
4280
+ },
4281
+ "defaultValue": null
4282
+ },
4283
+ {
4284
+ "name": "clientMutationId",
4285
+ "description": "A unique identifier for the client performing the mutation.",
4286
+ "type": {
4287
+ "kind": "SCALAR",
4288
+ "name": "String",
4289
+ "ofType": null
4290
+ },
4291
+ "defaultValue": null
4292
+ }
4293
+ ],
4294
+ "interfaces": null,
4295
+ "enumValues": null,
4296
+ "possibleTypes": null
4297
+ },
4298
+ {
4299
+ "kind": "OBJECT",
4300
+ "name": "RenegotiateBillPayload",
4301
+ "description": "Autogenerated return type of RenegotiateBill",
4302
+ "fields": [
4303
+ {
4304
+ "name": "bill",
4305
+ "description": null,
4306
+ "args": [],
4307
+ "type": {
4308
+ "kind": "OBJECT",
4309
+ "name": "Bill",
4310
+ "ofType": null
4311
+ },
4312
+ "isDeprecated": false,
4313
+ "deprecationReason": null
4314
+ },
4315
+ {
4316
+ "name": "clientMutationId",
4317
+ "description": "A unique identifier for the client performing the mutation.",
4318
+ "args": [],
4319
+ "type": {
4320
+ "kind": "SCALAR",
4321
+ "name": "String",
4322
+ "ofType": null
4323
+ },
4324
+ "isDeprecated": false,
4325
+ "deprecationReason": null
4326
+ },
4327
+ {
4328
+ "name": "errors",
4329
+ "description": null,
4330
+ "args": [],
4331
+ "type": {
4332
+ "kind": "NON_NULL",
4333
+ "name": null,
4334
+ "ofType": {
4335
+ "kind": "LIST",
4336
+ "name": null,
4337
+ "ofType": {
4338
+ "kind": "NON_NULL",
4339
+ "name": null,
4340
+ "ofType": {
4341
+ "kind": "SCALAR",
4342
+ "name": "String",
4343
+ "ofType": null
4344
+ }
4345
+ }
4346
+ }
4347
+ },
4348
+ "isDeprecated": false,
4349
+ "deprecationReason": null
4350
+ },
4351
+ {
4352
+ "name": "success",
4353
+ "description": null,
4354
+ "args": [],
4355
+ "type": {
4356
+ "kind": "NON_NULL",
4357
+ "name": null,
4358
+ "ofType": {
4359
+ "kind": "SCALAR",
4360
+ "name": "Boolean",
4361
+ "ofType": null
4362
+ }
4363
+ },
4364
+ "isDeprecated": false,
4365
+ "deprecationReason": null
4366
+ }
4367
+ ],
4368
+ "inputFields": null,
4369
+ "interfaces": [],
4370
+ "enumValues": null,
4371
+ "possibleTypes": null
4372
+ },
4373
+ {
4374
+ "kind": "INPUT_OBJECT",
4375
+ "name": "RespondToInformationRequestInput",
4376
+ "description": "Autogenerated input type of RespondToInformationRequest",
4377
+ "fields": null,
4378
+ "inputFields": [
4379
+ {
4380
+ "name": "id",
4381
+ "description": "Id of the information request",
4382
+ "type": {
4383
+ "kind": "NON_NULL",
4384
+ "name": null,
4385
+ "ofType": {
4386
+ "kind": "SCALAR",
4387
+ "name": "ID",
4388
+ "ofType": null
4389
+ }
4390
+ },
4391
+ "defaultValue": null
4392
+ },
4393
+ {
4394
+ "name": "informationRequest",
4395
+ "description": null,
4396
+ "type": {
4397
+ "kind": "NON_NULL",
4398
+ "name": null,
4399
+ "ofType": {
4400
+ "kind": "INPUT_OBJECT",
4401
+ "name": "InformationRequestAttributes",
4402
+ "ofType": null
4403
+ }
4404
+ },
4405
+ "defaultValue": null
4406
+ },
4407
+ {
4408
+ "name": "clientMutationId",
4409
+ "description": "A unique identifier for the client performing the mutation.",
4410
+ "type": {
4411
+ "kind": "SCALAR",
4412
+ "name": "String",
4413
+ "ofType": null
4414
+ },
4415
+ "defaultValue": null
4416
+ }
4417
+ ],
4418
+ "interfaces": null,
4419
+ "enumValues": null,
4420
+ "possibleTypes": null
4421
+ },
4422
+ {
4423
+ "kind": "OBJECT",
4424
+ "name": "RespondToInformationRequestPayload",
4425
+ "description": "Autogenerated return type of RespondToInformationRequest",
4426
+ "fields": [
4427
+ {
4428
+ "name": "bill",
4429
+ "description": null,
4430
+ "args": [],
4431
+ "type": {
4432
+ "kind": "OBJECT",
4433
+ "name": "Bill",
4434
+ "ofType": null
4435
+ },
4436
+ "isDeprecated": false,
4437
+ "deprecationReason": null
4438
+ },
4439
+ {
4440
+ "name": "clientMutationId",
4441
+ "description": "A unique identifier for the client performing the mutation.",
4442
+ "args": [],
4443
+ "type": {
4444
+ "kind": "SCALAR",
4445
+ "name": "String",
4446
+ "ofType": null
4447
+ },
4448
+ "isDeprecated": false,
4449
+ "deprecationReason": null
4450
+ },
4451
+ {
4452
+ "name": "errors",
4453
+ "description": null,
4454
+ "args": [],
4455
+ "type": {
4456
+ "kind": "NON_NULL",
4457
+ "name": null,
4458
+ "ofType": {
4459
+ "kind": "LIST",
4460
+ "name": null,
4461
+ "ofType": {
4462
+ "kind": "NON_NULL",
4463
+ "name": null,
4464
+ "ofType": {
4465
+ "kind": "SCALAR",
4466
+ "name": "String",
4467
+ "ofType": null
4468
+ }
4469
+ }
4470
+ }
4471
+ },
4472
+ "isDeprecated": false,
4473
+ "deprecationReason": null
4474
+ },
4475
+ {
4476
+ "name": "informationRequest",
4477
+ "description": null,
4478
+ "args": [],
4479
+ "type": {
4480
+ "kind": "OBJECT",
4481
+ "name": "InformationRequest",
4482
+ "ofType": null
4483
+ },
4484
+ "isDeprecated": false,
4485
+ "deprecationReason": null
4486
+ },
4487
+ {
4488
+ "name": "negotiation",
4489
+ "description": null,
4490
+ "args": [],
4491
+ "type": {
4492
+ "kind": "OBJECT",
4493
+ "name": "Negotiation",
4494
+ "ofType": null
4495
+ },
4496
+ "isDeprecated": false,
4497
+ "deprecationReason": null
4498
+ },
4499
+ {
4500
+ "name": "success",
4074
4501
  "description": null,
4075
4502
  "args": [],
4076
4503
  "type": {
4077
4504
  "kind": "NON_NULL",
4078
4505
  "name": null,
4079
4506
  "ofType": {
4080
- "kind": "LIST",
4081
- "name": null,
4082
- "ofType": {
4507
+ "kind": "SCALAR",
4508
+ "name": "Boolean",
4509
+ "ofType": null
4510
+ }
4511
+ },
4512
+ "isDeprecated": false,
4513
+ "deprecationReason": null
4514
+ }
4515
+ ],
4516
+ "inputFields": null,
4517
+ "interfaces": [],
4518
+ "enumValues": null,
4519
+ "possibleTypes": null
4520
+ },
4521
+ {
4522
+ "kind": "OBJECT",
4523
+ "name": "SavingsEstimate",
4524
+ "description": null,
4525
+ "fields": [
4526
+ {
4527
+ "name": "estimatedAnnualSavings",
4528
+ "description": null,
4529
+ "args": [
4530
+ {
4531
+ "name": "providerId",
4532
+ "description": null,
4533
+ "type": {
4083
4534
  "kind": "NON_NULL",
4084
4535
  "name": null,
4085
4536
  "ofType": {
4086
4537
  "kind": "SCALAR",
4087
- "name": "String",
4538
+ "name": "ID",
4088
4539
  "ofType": null
4089
4540
  }
4090
- }
4541
+ },
4542
+ "defaultValue": null
4543
+ },
4544
+ {
4545
+ "name": "currentMonthlyAmount",
4546
+ "description": null,
4547
+ "type": {
4548
+ "kind": "NON_NULL",
4549
+ "name": null,
4550
+ "ofType": {
4551
+ "kind": "SCALAR",
4552
+ "name": "Float",
4553
+ "ofType": null
4554
+ }
4555
+ },
4556
+ "defaultValue": null
4557
+ }
4558
+ ],
4559
+ "type": {
4560
+ "kind": "NON_NULL",
4561
+ "name": null,
4562
+ "ofType": {
4563
+ "kind": "SCALAR",
4564
+ "name": "Money",
4565
+ "ofType": null
4091
4566
  }
4092
4567
  },
4093
4568
  "isDeprecated": false,
4094
4569
  "deprecationReason": null
4095
4570
  },
4096
4571
  {
4097
- "name": "offer",
4572
+ "name": "estimatedMonthlySavings",
4098
4573
  "description": null,
4099
- "args": [],
4574
+ "args": [
4575
+ {
4576
+ "name": "providerId",
4577
+ "description": null,
4578
+ "type": {
4579
+ "kind": "NON_NULL",
4580
+ "name": null,
4581
+ "ofType": {
4582
+ "kind": "SCALAR",
4583
+ "name": "ID",
4584
+ "ofType": null
4585
+ }
4586
+ },
4587
+ "defaultValue": null
4588
+ },
4589
+ {
4590
+ "name": "currentMonthlyAmount",
4591
+ "description": null,
4592
+ "type": {
4593
+ "kind": "NON_NULL",
4594
+ "name": null,
4595
+ "ofType": {
4596
+ "kind": "SCALAR",
4597
+ "name": "Float",
4598
+ "ofType": null
4599
+ }
4600
+ },
4601
+ "defaultValue": null
4602
+ }
4603
+ ],
4100
4604
  "type": {
4101
- "kind": "OBJECT",
4102
- "name": "Offer",
4103
- "ofType": null
4605
+ "kind": "NON_NULL",
4606
+ "name": null,
4607
+ "ofType": {
4608
+ "kind": "SCALAR",
4609
+ "name": "Money",
4610
+ "ofType": null
4611
+ }
4104
4612
  },
4105
4613
  "isDeprecated": false,
4106
4614
  "deprecationReason": null
4107
4615
  },
4108
4616
  {
4109
- "name": "success",
4617
+ "name": "percentageSavings",
4110
4618
  "description": null,
4111
- "args": [],
4619
+ "args": [
4620
+ {
4621
+ "name": "providerId",
4622
+ "description": null,
4623
+ "type": {
4624
+ "kind": "NON_NULL",
4625
+ "name": null,
4626
+ "ofType": {
4627
+ "kind": "SCALAR",
4628
+ "name": "ID",
4629
+ "ofType": null
4630
+ }
4631
+ },
4632
+ "defaultValue": null
4633
+ },
4634
+ {
4635
+ "name": "currentMonthlyAmount",
4636
+ "description": null,
4637
+ "type": {
4638
+ "kind": "NON_NULL",
4639
+ "name": null,
4640
+ "ofType": {
4641
+ "kind": "SCALAR",
4642
+ "name": "Float",
4643
+ "ofType": null
4644
+ }
4645
+ },
4646
+ "defaultValue": null
4647
+ }
4648
+ ],
4112
4649
  "type": {
4113
4650
  "kind": "NON_NULL",
4114
4651
  "name": null,
4115
4652
  "ofType": {
4116
4653
  "kind": "SCALAR",
4117
- "name": "Boolean",
4654
+ "name": "Float",
4118
4655
  "ofType": null
4119
4656
  }
4120
4657
  },
@@ -4127,15 +4664,25 @@
4127
4664
  "enumValues": null,
4128
4665
  "possibleTypes": null
4129
4666
  },
4667
+ {
4668
+ "kind": "SCALAR",
4669
+ "name": "String",
4670
+ "description": "Represents textual data as UTF-8 character sequences. This type is most often used by GraphQL to represent free-form human-readable text.",
4671
+ "fields": null,
4672
+ "inputFields": null,
4673
+ "interfaces": null,
4674
+ "enumValues": null,
4675
+ "possibleTypes": null
4676
+ },
4130
4677
  {
4131
4678
  "kind": "INPUT_OBJECT",
4132
- "name": "RespondToInformationRequestInput",
4133
- "description": "Autogenerated input type of RespondToInformationRequest",
4679
+ "name": "UpdateCustomerInput",
4680
+ "description": "Autogenerated input type of UpdateCustomer",
4134
4681
  "fields": null,
4135
4682
  "inputFields": [
4136
4683
  {
4137
4684
  "name": "id",
4138
- "description": "Id of the information request",
4685
+ "description": null,
4139
4686
  "type": {
4140
4687
  "kind": "NON_NULL",
4141
4688
  "name": null,
@@ -4148,14 +4695,14 @@
4148
4695
  "defaultValue": null
4149
4696
  },
4150
4697
  {
4151
- "name": "informationRequest",
4698
+ "name": "customer",
4152
4699
  "description": null,
4153
4700
  "type": {
4154
4701
  "kind": "NON_NULL",
4155
4702
  "name": null,
4156
4703
  "ofType": {
4157
4704
  "kind": "INPUT_OBJECT",
4158
- "name": "InformationRequestAttributes",
4705
+ "name": "CustomerAttributes",
4159
4706
  "ofType": null
4160
4707
  }
4161
4708
  },
@@ -4178,28 +4725,28 @@
4178
4725
  },
4179
4726
  {
4180
4727
  "kind": "OBJECT",
4181
- "name": "RespondToInformationRequestPayload",
4182
- "description": "Autogenerated return type of RespondToInformationRequest",
4728
+ "name": "UpdateCustomerPayload",
4729
+ "description": "Autogenerated return type of UpdateCustomer",
4183
4730
  "fields": [
4184
4731
  {
4185
- "name": "bill",
4186
- "description": null,
4732
+ "name": "clientMutationId",
4733
+ "description": "A unique identifier for the client performing the mutation.",
4187
4734
  "args": [],
4188
4735
  "type": {
4189
- "kind": "OBJECT",
4190
- "name": "Bill",
4736
+ "kind": "SCALAR",
4737
+ "name": "String",
4191
4738
  "ofType": null
4192
4739
  },
4193
4740
  "isDeprecated": false,
4194
4741
  "deprecationReason": null
4195
4742
  },
4196
4743
  {
4197
- "name": "clientMutationId",
4198
- "description": "A unique identifier for the client performing the mutation.",
4744
+ "name": "customer",
4745
+ "description": null,
4199
4746
  "args": [],
4200
4747
  "type": {
4201
- "kind": "SCALAR",
4202
- "name": "String",
4748
+ "kind": "OBJECT",
4749
+ "name": "Customer",
4203
4750
  "ofType": null
4204
4751
  },
4205
4752
  "isDeprecated": false,
@@ -4230,25 +4777,17 @@
4230
4777
  "deprecationReason": null
4231
4778
  },
4232
4779
  {
4233
- "name": "informationRequest",
4234
- "description": null,
4235
- "args": [],
4236
- "type": {
4237
- "kind": "OBJECT",
4238
- "name": "InformationRequest",
4239
- "ofType": null
4240
- },
4241
- "isDeprecated": false,
4242
- "deprecationReason": null
4243
- },
4244
- {
4245
- "name": "negotiation",
4780
+ "name": "success",
4246
4781
  "description": null,
4247
4782
  "args": [],
4248
4783
  "type": {
4249
- "kind": "OBJECT",
4250
- "name": "Negotiation",
4251
- "ofType": null
4784
+ "kind": "NON_NULL",
4785
+ "name": null,
4786
+ "ofType": {
4787
+ "kind": "SCALAR",
4788
+ "name": "Boolean",
4789
+ "ofType": null
4790
+ }
4252
4791
  },
4253
4792
  "isDeprecated": false,
4254
4793
  "deprecationReason": null
@@ -4259,47 +4798,29 @@
4259
4798
  "enumValues": null,
4260
4799
  "possibleTypes": null
4261
4800
  },
4262
- {
4263
- "kind": "SCALAR",
4264
- "name": "String",
4265
- "description": "Represents textual data as UTF-8 character sequences. This type is most often used by GraphQL to represent free-form human-readable text.",
4266
- "fields": null,
4267
- "inputFields": null,
4268
- "interfaces": null,
4269
- "enumValues": null,
4270
- "possibleTypes": null
4271
- },
4272
4801
  {
4273
4802
  "kind": "INPUT_OBJECT",
4274
- "name": "UpdateCustomerInput",
4275
- "description": "Autogenerated input type of UpdateCustomer",
4803
+ "name": "UpdateWebhookUrlsInput",
4804
+ "description": "Autogenerated input type of UpdateWebhookUrls",
4276
4805
  "fields": null,
4277
4806
  "inputFields": [
4278
4807
  {
4279
- "name": "id",
4808
+ "name": "liveWebhookUrl",
4280
4809
  "description": null,
4281
4810
  "type": {
4282
- "kind": "NON_NULL",
4283
- "name": null,
4284
- "ofType": {
4285
- "kind": "SCALAR",
4286
- "name": "ID",
4287
- "ofType": null
4288
- }
4811
+ "kind": "SCALAR",
4812
+ "name": "String",
4813
+ "ofType": null
4289
4814
  },
4290
4815
  "defaultValue": null
4291
4816
  },
4292
4817
  {
4293
- "name": "customer",
4818
+ "name": "testWebhookUrl",
4294
4819
  "description": null,
4295
4820
  "type": {
4296
- "kind": "NON_NULL",
4297
- "name": null,
4298
- "ofType": {
4299
- "kind": "INPUT_OBJECT",
4300
- "name": "CustomerAttributes",
4301
- "ofType": null
4302
- }
4821
+ "kind": "SCALAR",
4822
+ "name": "String",
4823
+ "ofType": null
4303
4824
  },
4304
4825
  "defaultValue": null
4305
4826
  },
@@ -4320,8 +4841,8 @@
4320
4841
  },
4321
4842
  {
4322
4843
  "kind": "OBJECT",
4323
- "name": "UpdateCustomerPayload",
4324
- "description": "Autogenerated return type of UpdateCustomer",
4844
+ "name": "UpdateWebhookUrlsPayload",
4845
+ "description": "Autogenerated return type of UpdateWebhookUrls",
4325
4846
  "fields": [
4326
4847
  {
4327
4848
  "name": "clientMutationId",
@@ -4335,18 +4856,6 @@
4335
4856
  "isDeprecated": false,
4336
4857
  "deprecationReason": null
4337
4858
  },
4338
- {
4339
- "name": "customer",
4340
- "description": null,
4341
- "args": [],
4342
- "type": {
4343
- "kind": "OBJECT",
4344
- "name": "Customer",
4345
- "ofType": null
4346
- },
4347
- "isDeprecated": false,
4348
- "deprecationReason": null
4349
- },
4350
4859
  {
4351
4860
  "name": "errors",
4352
4861
  "description": null,
@@ -4371,6 +4880,22 @@
4371
4880
  "isDeprecated": false,
4372
4881
  "deprecationReason": null
4373
4882
  },
4883
+ {
4884
+ "name": "partner",
4885
+ "description": null,
4886
+ "args": [],
4887
+ "type": {
4888
+ "kind": "NON_NULL",
4889
+ "name": null,
4890
+ "ofType": {
4891
+ "kind": "OBJECT",
4892
+ "name": "Partner",
4893
+ "ofType": null
4894
+ }
4895
+ },
4896
+ "isDeprecated": false,
4897
+ "deprecationReason": null
4898
+ },
4374
4899
  {
4375
4900
  "name": "success",
4376
4901
  "description": null,
@@ -5236,7 +5761,11 @@
5236
5761
  {
5237
5762
  "name": "include",
5238
5763
  "description": "Directs the executor to include this field or fragment only when the `if` argument is true.",
5239
- "locations": ["FIELD", "FRAGMENT_SPREAD", "INLINE_FRAGMENT"],
5764
+ "locations": [
5765
+ "FIELD",
5766
+ "FRAGMENT_SPREAD",
5767
+ "INLINE_FRAGMENT"
5768
+ ],
5240
5769
  "args": [
5241
5770
  {
5242
5771
  "name": "if",
@@ -5257,7 +5786,11 @@
5257
5786
  {
5258
5787
  "name": "skip",
5259
5788
  "description": "Directs the executor to skip this field or fragment when the `if` argument is true.",
5260
- "locations": ["FIELD", "FRAGMENT_SPREAD", "INLINE_FRAGMENT"],
5789
+ "locations": [
5790
+ "FIELD",
5791
+ "FRAGMENT_SPREAD",
5792
+ "INLINE_FRAGMENT"
5793
+ ],
5261
5794
  "args": [
5262
5795
  {
5263
5796
  "name": "if",
@@ -5278,7 +5811,10 @@
5278
5811
  {
5279
5812
  "name": "deprecated",
5280
5813
  "description": "Marks an element of a GraphQL schema as no longer supported.",
5281
- "locations": ["FIELD_DEFINITION", "ENUM_VALUE"],
5814
+ "locations": [
5815
+ "FIELD_DEFINITION",
5816
+ "ENUM_VALUE"
5817
+ ],
5282
5818
  "args": [
5283
5819
  {
5284
5820
  "name": "reason",
@@ -5295,4 +5831,4 @@
5295
5831
  ]
5296
5832
  }
5297
5833
  }
5298
- }
5834
+ }