@checkdigit/eslint-plugin 7.18.0-PR.143-072f → 7.18.0-PR.143-518d

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.
@@ -1,680 +1,67 @@
1
1
  {
2
2
  "apis": {
3
- "/teampay-client-management/v1/ping": {
4
- "get": {
5
- "request": {
6
- "$schema": "https://json-schema.org/draft/2020-12/schema",
7
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/api/PingGetRequestContext",
8
- "type": "object",
9
- "properties": {
10
- "headers": {
11
- "type": "object",
12
- "additionalProperties": true
13
- }
14
- },
15
- "required": [],
16
- "additionalProperties": false
17
- },
18
- "responses": {
19
- "200": {
20
- "$schema": "https://json-schema.org/draft/2020-12/schema",
21
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/api/PingGetResponseOK",
22
- "type": "object",
23
- "properties": {
24
- "headers": {
25
- "type": "object",
26
- "additionalProperties": true
27
- },
28
- "body": {
29
- "$schema": "https://json-schema.org/draft/2020-12/schema",
30
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Ping",
31
- "type": "object",
32
- "additionalProperties": false,
33
- "required": ["serverTime"],
34
- "properties": {
35
- "serverTime": {
36
- "type": "string",
37
- "format": "date-time",
38
- "description": "Current server time"
39
- }
40
- }
41
- }
42
- },
43
- "required": ["body"],
44
- "additionalProperties": false
45
- },
46
- "default": {
47
- "$schema": "https://json-schema.org/draft/2020-12/schema",
48
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/api/PingGetResponseDefault",
49
- "type": "object",
50
- "properties": {
51
- "headers": {
52
- "type": "object",
53
- "additionalProperties": true
54
- },
55
- "body": {
56
- "$schema": "https://json-schema.org/draft/2020-12/schema",
57
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Error",
58
- "type": "object",
59
- "additionalProperties": false,
60
- "description": "Server error message",
61
- "properties": {
62
- "message": {
63
- "type": "string"
64
- },
65
- "code": {
66
- "type": "string"
67
- }
68
- }
69
- }
70
- },
71
- "required": ["body"],
72
- "additionalProperties": false
73
- }
74
- }
75
- }
76
- },
3
+ "/teampay-client-management/v1/ping": {},
77
4
  "/teampay-client-management/v1/client/:clientId": {
78
- "get": {
5
+ "put": {
79
6
  "request": {
80
7
  "$schema": "https://json-schema.org/draft/2020-12/schema",
81
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/api/ClientGetRequestContext",
8
+ "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/api/ClientPutRequestContext",
82
9
  "type": "object",
83
10
  "properties": {
84
11
  "params": {
85
12
  "type": "object",
86
13
  "additionalProperties": false,
87
14
  "properties": {
88
- "at": {
15
+ "clientId": {
16
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
17
+ "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/ClientId",
89
18
  "type": "string",
90
- "format": "date-time"
19
+ "description": "The Unique identifier for the client in uuid format",
20
+ "format": "uuid"
91
21
  }
92
22
  },
93
- "required": ["at"]
23
+ "required": ["clientId"]
94
24
  },
95
25
  "headers": {
96
26
  "type": "object",
97
- "additionalProperties": true
98
- }
99
- },
100
- "required": ["params", "query"],
101
- "additionalProperties": false
102
- },
103
- "responses": {
104
- "200": {
105
- "$schema": "https://json-schema.org/draft/2020-12/schema",
106
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/api/ClientGetResponseOK",
107
- "type": "object",
108
- "properties": {
109
- "headers": {
110
- "type": "object",
111
- "properties": {
112
- "last-modified": {
113
- "type": "string",
114
- "format": "date-time"
115
- },
116
- "created-on": {
117
- "type": "string",
118
- "format": "date-time"
119
- },
120
- "updated-on": {
121
- "type": "string",
122
- "format": "date-time"
123
- },
124
- "etag": {
125
- "type": "string"
126
- }
27
+ "additionalProperties": true,
28
+ "properties": {
29
+ "if-match": {
30
+ "type": "string"
31
+ }
32
+ }
33
+ },
34
+ "body": {
35
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
36
+ "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/NewClient",
37
+ "type": "object",
38
+ "additionalProperties": false,
39
+ "description": "New client request schema.",
40
+ "required": ["name", "address", "issuingCountryCode", "products", "limits"],
41
+ "properties": {
42
+ "name": {
43
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
44
+ "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Name",
45
+ "type": "string",
46
+ "description": "The name of the client.",
47
+ "minLength": 1
127
48
  },
128
- "required": ["last-modified", "created-on", "updated-on", "etag"]
129
- },
130
- "body": {
131
- "$schema": "https://json-schema.org/draft/2020-12/schema",
132
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Client",
133
- "type": "object",
134
- "additionalProperties": false,
135
- "description": "Client Schema.",
136
- "required": [
137
- "name",
138
- "address",
139
- "issuingCountryCode",
140
- "limits",
141
- "products",
142
- "clientAccountId",
143
- "lastModified",
144
- "createdOn",
145
- "funding",
146
- "active",
147
- "configurationId"
148
- ],
149
- "properties": {
150
- "name": {
151
- "$schema": "https://json-schema.org/draft/2020-12/schema",
152
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Name",
153
- "type": "string",
154
- "description": "The name of the client.",
155
- "minLength": 1
156
- },
157
- "address": {
158
- "$schema": "https://json-schema.org/draft/2020-12/schema",
159
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Address",
160
- "description": "The business address of the client. This will be the address used by the Address Verification Service",
161
- "required": ["country", "streetLines"],
162
- "type": "object",
163
- "properties": {
164
- "streetLines": {
165
- "maxItems": 4,
166
- "minItems": 1,
167
- "type": "array",
168
- "description": "Street lines",
169
- "items": {
170
- "minLength": 1,
171
- "type": "string",
172
- "description": "Street line"
173
- }
174
- },
175
- "city": {
176
- "minLength": 1,
177
- "type": "string",
178
- "description": "City"
179
- },
180
- "region": {
181
- "minLength": 1,
182
- "type": "string",
183
- "description": "Region, State or Provence"
184
- },
185
- "postalCode": {
49
+ "address": {
50
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
51
+ "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Address",
52
+ "description": "The business address of the client. This will be the address used by the Address Verification Service",
53
+ "required": ["country", "streetLines"],
54
+ "type": "object",
55
+ "properties": {
56
+ "streetLines": {
57
+ "maxItems": 4,
58
+ "minItems": 1,
59
+ "type": "array",
60
+ "description": "Street lines",
61
+ "items": {
186
62
  "minLength": 1,
187
63
  "type": "string",
188
- "description": "Postal or zip code"
189
- },
190
- "reportablePostalCode": {
191
- "type": "string",
192
- "description": "Postal code for reporting purposes."
193
- },
194
- "country": {
195
- "type": "string",
196
- "description": "Country ISO 3166-1 alpha-2 codes",
197
- "enum": [
198
- "AD",
199
- "AE",
200
- "AF",
201
- "AG",
202
- "AI",
203
- "AL",
204
- "AM",
205
- "AO",
206
- "AQ",
207
- "AR",
208
- "AS",
209
- "AT",
210
- "AU",
211
- "AW",
212
- "AX",
213
- "AZ",
214
- "BA",
215
- "BB",
216
- "BD",
217
- "BE",
218
- "BF",
219
- "BG",
220
- "BH",
221
- "BI",
222
- "BJ",
223
- "BL",
224
- "BM",
225
- "BN",
226
- "BO",
227
- "BQ",
228
- "BR",
229
- "BS",
230
- "BT",
231
- "BV",
232
- "BW",
233
- "BY",
234
- "BZ",
235
- "CA",
236
- "CC",
237
- "CD",
238
- "CF",
239
- "CG",
240
- "CH",
241
- "CI",
242
- "CK",
243
- "CL",
244
- "CM",
245
- "CN",
246
- "CO",
247
- "CR",
248
- "CU",
249
- "CV",
250
- "CW",
251
- "CX",
252
- "CY",
253
- "CZ",
254
- "DE",
255
- "DJ",
256
- "DK",
257
- "DM",
258
- "DO",
259
- "DZ",
260
- "EC",
261
- "EE",
262
- "EG",
263
- "EH",
264
- "ER",
265
- "ES",
266
- "ET",
267
- "FI",
268
- "FJ",
269
- "FK",
270
- "FM",
271
- "FO",
272
- "FR",
273
- "GA",
274
- "GB",
275
- "GD",
276
- "GE",
277
- "GF",
278
- "GG",
279
- "GH",
280
- "GI",
281
- "GL",
282
- "GM",
283
- "GN",
284
- "GP",
285
- "GQ",
286
- "GR",
287
- "GS",
288
- "GT",
289
- "GU",
290
- "GW",
291
- "GY",
292
- "HK",
293
- "HM",
294
- "HN",
295
- "HR",
296
- "HT",
297
- "HU",
298
- "ID",
299
- "IE",
300
- "IL",
301
- "IM",
302
- "IN",
303
- "IO",
304
- "IQ",
305
- "IR",
306
- "IS",
307
- "IT",
308
- "JE",
309
- "JM",
310
- "JO",
311
- "JP",
312
- "KE",
313
- "KG",
314
- "KH",
315
- "KI",
316
- "KM",
317
- "KN",
318
- "KP",
319
- "KR",
320
- "KW",
321
- "KY",
322
- "KZ",
323
- "LA",
324
- "LB",
325
- "LC",
326
- "LI",
327
- "LK",
328
- "LR",
329
- "LS",
330
- "LT",
331
- "LU",
332
- "LV",
333
- "LY",
334
- "MA",
335
- "MC",
336
- "MD",
337
- "ME",
338
- "MF",
339
- "MG",
340
- "MH",
341
- "MK",
342
- "ML",
343
- "MM",
344
- "MN",
345
- "MO",
346
- "MP",
347
- "MQ",
348
- "MR",
349
- "MS",
350
- "MT",
351
- "MU",
352
- "MV",
353
- "MW",
354
- "MX",
355
- "MY",
356
- "MZ",
357
- "NA",
358
- "NC",
359
- "NE",
360
- "NF",
361
- "NG",
362
- "NI",
363
- "NL",
364
- "NO",
365
- "NP",
366
- "NR",
367
- "NU",
368
- "NZ",
369
- "OM",
370
- "PA",
371
- "PE",
372
- "PF",
373
- "PG",
374
- "PH",
375
- "PK",
376
- "PL",
377
- "PM",
378
- "PN",
379
- "PR",
380
- "PS",
381
- "PT",
382
- "PW",
383
- "PY",
384
- "QA",
385
- "RE",
386
- "RO",
387
- "RS",
388
- "RU",
389
- "RW",
390
- "SA",
391
- "SB",
392
- "SC",
393
- "SD",
394
- "SE",
395
- "SG",
396
- "SH",
397
- "SI",
398
- "SJ",
399
- "SK",
400
- "SL",
401
- "SM",
402
- "SN",
403
- "SO",
404
- "SR",
405
- "SS",
406
- "ST",
407
- "SV",
408
- "SX",
409
- "SY",
410
- "SZ",
411
- "TC",
412
- "TD",
413
- "TF",
414
- "TG",
415
- "TH",
416
- "TJ",
417
- "TK",
418
- "TL",
419
- "TM",
420
- "TN",
421
- "TO",
422
- "TR",
423
- "TT",
424
- "TV",
425
- "TW",
426
- "TZ",
427
- "UA",
428
- "UG",
429
- "UM",
430
- "US",
431
- "UY",
432
- "UZ",
433
- "VA",
434
- "VC",
435
- "VE",
436
- "VG",
437
- "VI",
438
- "VN",
439
- "VU",
440
- "WF",
441
- "WS",
442
- "YE",
443
- "YT",
444
- "ZA",
445
- "ZM",
446
- "ZW"
447
- ]
448
- }
449
- }
450
- },
451
- "issuingCountryCode": {
452
- "$schema": "https://json-schema.org/draft/2020-12/schema",
453
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/IssuingCountryCode",
454
- "type": "string",
455
- "description": "The country in which the cards are issued",
456
- "enum": ["US", "CA"]
457
- },
458
- "limits": {
459
- "$schema": "https://json-schema.org/draft/2020-12/schema",
460
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Limits",
461
- "type": "array",
462
- "minItems": 0,
463
- "description": "An array of limits that apply at the organization level.\nThe organization level represents the combined total of all card transactions for the client.\n",
464
- "items": {
465
- "$schema": "https://json-schema.org/draft/2020-12/schema",
466
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Limit",
467
- "type": "object",
468
- "additionalProperties": false,
469
- "description": "Limit Details\n- There can only be one limit per client for each period, periodLength, and limitFunction combination.\n Multiple limits with the same values for the combination of properties listed above will result in a 400 Bad Request.\n",
470
- "required": ["period", "periodLength", "limitFunction", "value"],
471
- "properties": {
472
- "period": {
473
- "$schema": "https://json-schema.org/draft/2020-12/schema",
474
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Period",
475
- "type": "string",
476
- "description": "DAY is a calendar day and will begin at 00:00:00 UTC.\nMONTH is a calendar month and will begin on the first day of the month at 00:00:00 UTC.\nAll periods are rolling if the associated periodLength is greater than 1\n",
477
- "enum": ["DAY", "MONTH"]
478
- },
479
- "periodLength": {
480
- "$schema": "https://json-schema.org/draft/2020-12/schema",
481
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/PeriodLength",
482
- "type": "string",
483
- "pattern": "^\\d+$",
484
- "minLength": 1,
485
- "description": "How long the period lasts"
486
- },
487
- "limitFunction": {
488
- "$schema": "https://json-schema.org/draft/2020-12/schema",
489
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/LimitFunction",
490
- "type": "string",
491
- "description": "AMOUNT functions by summing up the aggregate data point values.",
492
- "enum": ["AMOUNT"]
493
- },
494
- "value": {
495
- "$schema": "https://json-schema.org/draft/2020-12/schema",
496
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/LimitValue",
497
- "type": "string",
498
- "pattern": "^\\d+$",
499
- "minLength": 1,
500
- "description": "Limit value to use. The value is expected to be in cents."
501
- }
502
- }
503
- }
504
- },
505
- "products": {
506
- "$schema": "https://json-schema.org/draft/2020-12/schema",
507
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Products",
508
- "type": "array",
509
- "minItems": 1,
510
- "description": "Array of products that are applicable to the client",
511
- "items": {
512
- "$schema": "https://json-schema.org/draft/2020-12/schema",
513
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Product",
514
- "type": "string",
515
- "description": "Type of card product",
516
- "enum": ["VIRTUAL", "STANDARD", "PREMIUM"]
517
- }
518
- },
519
- "clientAccountId": {
520
- "type": "string",
521
- "description": "The ledger account that holds the funds which are spendable by cardholders linked to the client."
522
- },
523
- "lastModified": {
524
- "$schema": "https://json-schema.org/draft/2020-12/schema",
525
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/LastModified",
526
- "type": "string",
527
- "format": "date-time",
528
- "description": "Resource last modified date time"
529
- },
530
- "createdOn": {
531
- "$schema": "https://json-schema.org/draft/2020-12/schema",
532
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/CreatedOn",
533
- "type": "string",
534
- "format": "date-time",
535
- "description": "Original created on date time"
536
- },
537
- "updatedOn": {
538
- "$schema": "https://json-schema.org/draft/2020-12/schema",
539
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/UpdatedOn",
540
- "type": "string",
541
- "format": "date-time",
542
- "description": "Resource last modified date time"
543
- },
544
- "funding": {
545
- "$schema": "https://json-schema.org/draft/2020-12/schema",
546
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Funding",
547
- "type": "string",
548
- "description": "The way in which client accounts will be funded.\n- The default value is ACH if not supplied when creating a client\n- Credit clients are not permitted to create ach payment sources, a 400 Bad Request will be returned\n- ACH clients are not permitted to create credit account entries, a 400 Bad request will be returned\n",
549
- "enum": ["ACH", "CREDIT"]
550
- },
551
- "active": {
552
- "$schema": "https://json-schema.org/draft/2020-12/schema",
553
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/ActiveStatus",
554
- "type": "string",
555
- "description": "The client's active status\n- The value is set to ACTIVE by default if not present when creating a client\n- All new incoming card preauthorization and tokenization requests will be declined for INACTIVE clients\n",
556
- "enum": ["ACTIVE", "INACTIVE"]
557
- },
558
- "configurationId": {
559
- "type": "string",
560
- "description": "The unique identifier for the client's configuration data."
561
- },
562
- "subsidiaryOf": {
563
- "$schema": "https://json-schema.org/draft/2020-12/schema",
564
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/SubsidiaryOf",
565
- "type": "string",
566
- "description": "Used to indicate the client is a subsidiary of another client\n- This value must be set to a client ID of a client that is not already a subsidiary of another client\n- An attempt to change the value of this field once set will result in a 400 Bad Request\n",
567
- "format": "uuid"
568
- }
569
- }
570
- }
571
- },
572
- "required": ["headers", "body"],
573
- "additionalProperties": false
574
- },
575
- "404": {
576
- "$schema": "https://json-schema.org/draft/2020-12/schema",
577
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/api/ClientGetResponseNotFound",
578
- "type": "object",
579
- "properties": {
580
- "headers": {
581
- "type": "object",
582
- "additionalProperties": true
583
- }
584
- },
585
- "required": [],
586
- "additionalProperties": false
587
- },
588
- "default": {
589
- "$schema": "https://json-schema.org/draft/2020-12/schema",
590
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/api/ClientGetResponseDefault",
591
- "type": "object",
592
- "properties": {
593
- "headers": {
594
- "type": "object",
595
- "additionalProperties": true
596
- },
597
- "body": {
598
- "$schema": "https://json-schema.org/draft/2020-12/schema",
599
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Error",
600
- "type": "object",
601
- "additionalProperties": false,
602
- "description": "Server error message",
603
- "properties": {
604
- "message": {
605
- "type": "string"
606
- },
607
- "code": {
608
- "type": "string"
609
- }
610
- }
611
- }
612
- },
613
- "required": ["body"],
614
- "additionalProperties": false
615
- }
616
- }
617
- },
618
- "put": {
619
- "request": {
620
- "$schema": "https://json-schema.org/draft/2020-12/schema",
621
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/api/ClientPutRequestContext",
622
- "type": "object",
623
- "properties": {
624
- "params": {
625
- "type": "object",
626
- "additionalProperties": false,
627
- "properties": {
628
- "clientId": {
629
- "$schema": "https://json-schema.org/draft/2020-12/schema",
630
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/ClientId",
631
- "type": "string",
632
- "description": "The Unique identifier for the client in uuid format",
633
- "format": "uuid"
634
- }
635
- },
636
- "required": ["clientId"]
637
- },
638
- "headers": {
639
- "type": "object",
640
- "additionalProperties": true,
641
- "properties": {
642
- "if-match": {
643
- "type": "string"
644
- }
645
- }
646
- },
647
- "body": {
648
- "$schema": "https://json-schema.org/draft/2020-12/schema",
649
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/NewClient",
650
- "type": "object",
651
- "additionalProperties": false,
652
- "description": "New client request schema.",
653
- "required": ["name", "address", "issuingCountryCode", "products", "limits"],
654
- "properties": {
655
- "name": {
656
- "$schema": "https://json-schema.org/draft/2020-12/schema",
657
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Name",
658
- "type": "string",
659
- "description": "The name of the client.",
660
- "minLength": 1
661
- },
662
- "address": {
663
- "$schema": "https://json-schema.org/draft/2020-12/schema",
664
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Address",
665
- "description": "The business address of the client. This will be the address used by the Address Verification Service",
666
- "required": ["country", "streetLines"],
667
- "type": "object",
668
- "properties": {
669
- "streetLines": {
670
- "maxItems": 4,
671
- "minItems": 1,
672
- "type": "array",
673
- "description": "Street lines",
674
- "items": {
675
- "minLength": 1,
676
- "type": "string",
677
- "description": "Street line"
64
+ "description": "Street line"
678
65
  }
679
66
  },
680
67
  "city": {
@@ -1396,427 +783,78 @@
1396
783
  }
1397
784
  }
1398
785
  },
1399
- "issuingCountryCode": {
1400
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1401
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/IssuingCountryCode",
1402
- "type": "string",
1403
- "description": "The country in which the cards are issued",
1404
- "enum": ["US", "CA"]
1405
- },
1406
- "limits": {
1407
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1408
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Limits",
1409
- "type": "array",
1410
- "minItems": 0,
1411
- "description": "An array of limits that apply at the organization level.\nThe organization level represents the combined total of all card transactions for the client.\n",
1412
- "items": {
1413
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1414
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Limit",
1415
- "type": "object",
1416
- "additionalProperties": false,
1417
- "description": "Limit Details\n- There can only be one limit per client for each period, periodLength, and limitFunction combination.\n Multiple limits with the same values for the combination of properties listed above will result in a 400 Bad Request.\n",
1418
- "required": ["period", "periodLength", "limitFunction", "value"],
1419
- "properties": {
1420
- "period": {
1421
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1422
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Period",
1423
- "type": "string",
1424
- "description": "DAY is a calendar day and will begin at 00:00:00 UTC.\nMONTH is a calendar month and will begin on the first day of the month at 00:00:00 UTC.\nAll periods are rolling if the associated periodLength is greater than 1\n",
1425
- "enum": ["DAY", "MONTH"]
1426
- },
1427
- "periodLength": {
1428
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1429
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/PeriodLength",
1430
- "type": "string",
1431
- "pattern": "^\\d+$",
1432
- "minLength": 1,
1433
- "description": "How long the period lasts"
1434
- },
1435
- "limitFunction": {
1436
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1437
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/LimitFunction",
1438
- "type": "string",
1439
- "description": "AMOUNT functions by summing up the aggregate data point values.",
1440
- "enum": ["AMOUNT"]
1441
- },
1442
- "value": {
1443
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1444
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/LimitValue",
1445
- "type": "string",
1446
- "pattern": "^\\d+$",
1447
- "minLength": 1,
1448
- "description": "Limit value to use. The value is expected to be in cents."
1449
- }
1450
- }
1451
- }
1452
- },
1453
- "products": {
1454
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1455
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Products",
1456
- "type": "array",
1457
- "minItems": 1,
1458
- "description": "Array of products that are applicable to the client",
1459
- "items": {
1460
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1461
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Product",
1462
- "type": "string",
1463
- "description": "Type of card product",
1464
- "enum": ["VIRTUAL", "STANDARD", "PREMIUM"]
1465
- }
1466
- },
1467
- "clientAccountId": {
1468
- "type": "string",
1469
- "description": "The ledger account that holds the funds which are spendable by cardholders linked to the client."
1470
- },
1471
- "lastModified": {
1472
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1473
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/LastModified",
1474
- "type": "string",
1475
- "format": "date-time",
1476
- "description": "Resource last modified date time"
1477
- },
1478
- "createdOn": {
1479
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1480
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/CreatedOn",
1481
- "type": "string",
1482
- "format": "date-time",
1483
- "description": "Original created on date time"
1484
- },
1485
- "updatedOn": {
1486
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1487
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/UpdatedOn",
1488
- "type": "string",
1489
- "format": "date-time",
1490
- "description": "Resource last modified date time"
1491
- },
1492
- "funding": {
1493
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1494
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Funding",
1495
- "type": "string",
1496
- "description": "The way in which client accounts will be funded.\n- The default value is ACH if not supplied when creating a client\n- Credit clients are not permitted to create ach payment sources, a 400 Bad Request will be returned\n- ACH clients are not permitted to create credit account entries, a 400 Bad request will be returned\n",
1497
- "enum": ["ACH", "CREDIT"]
1498
- },
1499
- "active": {
1500
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1501
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/ActiveStatus",
1502
- "type": "string",
1503
- "description": "The client's active status\n- The value is set to ACTIVE by default if not present when creating a client\n- All new incoming card preauthorization and tokenization requests will be declined for INACTIVE clients\n",
1504
- "enum": ["ACTIVE", "INACTIVE"]
1505
- },
1506
- "configurationId": {
1507
- "type": "string",
1508
- "description": "The unique identifier for the client's configuration data."
1509
- },
1510
- "subsidiaryOf": {
1511
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1512
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/SubsidiaryOf",
1513
- "type": "string",
1514
- "description": "Used to indicate the client is a subsidiary of another client\n- This value must be set to a client ID of a client that is not already a subsidiary of another client\n- An attempt to change the value of this field once set will result in a 400 Bad Request\n",
1515
- "format": "uuid"
1516
- }
1517
- }
1518
- }
1519
- },
1520
- "required": ["headers", "body"],
1521
- "additionalProperties": false
1522
- },
1523
- "409": {
1524
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1525
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/api/ClientPutResponseConflict",
1526
- "type": "object",
1527
- "properties": {
1528
- "headers": {
1529
- "type": "object",
1530
- "additionalProperties": true
1531
- }
1532
- },
1533
- "required": [],
1534
- "additionalProperties": false
1535
- },
1536
- "412": {
1537
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1538
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/api/ClientPutResponsePreconditionFailed",
1539
- "type": "object",
1540
- "properties": {
1541
- "headers": {
1542
- "type": "object",
1543
- "additionalProperties": true
1544
- }
1545
- },
1546
- "required": [],
1547
- "additionalProperties": false
1548
- },
1549
- "default": {
1550
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1551
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/api/ClientPutResponseDefault",
1552
- "type": "object",
1553
- "properties": {
1554
- "headers": {
1555
- "type": "object",
1556
- "additionalProperties": true
1557
- },
1558
- "body": {
1559
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1560
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Error",
1561
- "type": "object",
1562
- "additionalProperties": false,
1563
- "description": "Server error message",
1564
- "properties": {
1565
- "message": {
1566
- "type": "string"
1567
- },
1568
- "code": {
1569
- "type": "string"
1570
- }
1571
- }
1572
- }
1573
- },
1574
- "required": ["body"],
1575
- "additionalProperties": false
1576
- }
1577
- }
1578
- }
1579
- },
1580
- "/teampay-client-management/v1/client/:clientId/balance": {
1581
- "get": {
1582
- "request": {
1583
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1584
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/api/ClientBalanceGetRequestContext",
1585
- "type": "object",
1586
- "properties": {
1587
- "params": {
1588
- "type": "object",
1589
- "additionalProperties": false,
1590
- "properties": {
1591
- "at": {
1592
- "type": "string",
1593
- "format": "date-time"
1594
- }
1595
- },
1596
- "required": ["at"]
1597
- },
1598
- "headers": {
1599
- "type": "object",
1600
- "additionalProperties": true
1601
- }
1602
- },
1603
- "required": ["params", "query"],
1604
- "additionalProperties": false
1605
- },
1606
- "responses": {
1607
- "200": {
1608
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1609
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/api/ClientBalanceGetResponseOK",
1610
- "type": "object",
1611
- "properties": {
1612
- "headers": {
1613
- "type": "object",
1614
- "additionalProperties": true
1615
- },
1616
- "body": {
1617
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1618
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/ClientBalance",
1619
- "type": "object",
1620
- "additionalProperties": false,
1621
- "description": "Client account balance details.\n- The currency of the balances are according to the issuingCountryCode of the client: USD for 'US' and CAD for 'CA'.\n- The balance values are to the smallest decimal place for that currency. For example, 100 US Dollars would show as 10000.\n- Negative balance values will have a '-' character in front of the value.\n",
1622
- "required": ["at", "ledgerBalance", "availableBalance"],
1623
- "properties": {
1624
- "at": {
1625
- "type": "string",
1626
- "format": "date-time",
1627
- "description": "The date/time that the balances apply to."
1628
- },
1629
- "ledgerBalance": {
1630
- "type": "string",
1631
- "minLength": 1,
1632
- "description": "Ledger balance of the client account. This value does not take into account any pending transactions."
1633
- },
1634
- "availableBalance": {
1635
- "type": "string",
1636
- "minLength": 1,
1637
- "description": "Available balance of the client account. This value takes into account pending transactions."
1638
- }
1639
- }
1640
- }
1641
- },
1642
- "required": ["body"],
1643
- "additionalProperties": false
1644
- },
1645
- "404": {
1646
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1647
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/api/ClientBalanceGetResponseNotFound",
1648
- "type": "object",
1649
- "properties": {
1650
- "headers": {
1651
- "type": "object",
1652
- "additionalProperties": true
1653
- }
1654
- },
1655
- "required": [],
1656
- "additionalProperties": false
1657
- },
1658
- "default": {
1659
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1660
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/api/ClientBalanceGetResponseDefault",
1661
- "type": "object",
1662
- "properties": {
1663
- "headers": {
1664
- "type": "object",
1665
- "additionalProperties": true
1666
- },
1667
- "body": {
1668
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1669
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Error",
1670
- "type": "object",
1671
- "additionalProperties": false,
1672
- "description": "Server error message",
1673
- "properties": {
1674
- "message": {
1675
- "type": "string"
1676
- },
1677
- "code": {
1678
- "type": "string"
1679
- }
1680
- }
1681
- }
1682
- },
1683
- "required": ["body"],
1684
- "additionalProperties": false
1685
- }
1686
- }
1687
- }
1688
- },
1689
- "/teampay-client-management/v1/ach-payment-source/:achPaymentSourceId": {
1690
- "get": {
1691
- "request": {
1692
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1693
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/api/AchPaymentSourceGetRequestContext",
1694
- "type": "object",
1695
- "properties": {
1696
- "params": {
1697
- "type": "object",
1698
- "additionalProperties": false,
1699
- "properties": {
1700
- "at": {
1701
- "type": "string",
1702
- "format": "date-time"
1703
- }
1704
- },
1705
- "required": ["at"]
1706
- },
1707
- "headers": {
1708
- "type": "object",
1709
- "additionalProperties": true
1710
- }
1711
- },
1712
- "required": ["params", "query"],
1713
- "additionalProperties": false
1714
- },
1715
- "responses": {
1716
- "200": {
1717
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1718
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/api/AchPaymentSourceGetResponseOK",
1719
- "type": "object",
1720
- "properties": {
1721
- "headers": {
1722
- "type": "object",
1723
- "properties": {
1724
- "last-modified": {
1725
- "type": "string",
1726
- "format": "date-time"
1727
- },
1728
- "created-on": {
1729
- "type": "string",
1730
- "format": "date-time"
1731
- },
1732
- "updated-on": {
1733
- "type": "string",
1734
- "format": "date-time"
1735
- }
1736
- },
1737
- "required": ["last-modified", "created-on", "updated-on"]
1738
- },
1739
- "body": {
1740
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1741
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/ClientAchPaymentSource",
1742
- "type": "object",
1743
- "additionalProperties": false,
1744
- "description": "Client ACH Payment Source Details",
1745
- "required": [
1746
- "achPaymentSourceId",
1747
- "clientId",
1748
- "transmissionKey",
1749
- "storageKeyId",
1750
- "achPaymentSource",
1751
- "lastModified",
1752
- "createdOn"
1753
- ],
1754
- "properties": {
1755
- "achPaymentSourceId": {
1756
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1757
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/AchPaymentSourceId",
1758
- "type": "string",
1759
- "description": "Identifier for the ACH payment source",
1760
- "format": "uuid"
1761
- },
1762
- "clientId": {
1763
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1764
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/ClientId",
1765
- "type": "string",
1766
- "description": "The Unique identifier for the client in uuid format",
1767
- "format": "uuid"
1768
- },
1769
- "transmissionKey": {
1770
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1771
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/TransmissionKey",
1772
- "description": "The Encrypted version of the AES-256 DEK",
1773
- "type": "string"
1774
- },
1775
- "storageKeyId": {
786
+ "issuingCountryCode": {
1776
787
  "$schema": "https://json-schema.org/draft/2020-12/schema",
1777
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/StorageKeyId",
788
+ "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/IssuingCountryCode",
1778
789
  "type": "string",
1779
- "description": "DEK's non-derived identifier to be used by Check Digit services only.\n"
790
+ "description": "The country in which the cards are issued",
791
+ "enum": ["US", "CA"]
1780
792
  },
1781
- "achPaymentSource": {
793
+ "limits": {
1782
794
  "$schema": "https://json-schema.org/draft/2020-12/schema",
1783
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/AchPaymentSource",
1784
- "type": "object",
1785
- "additionalProperties": false,
1786
- "description": "ACH Payment Source",
1787
- "required": ["accountName", "accountType", "accountNumber", "routingNumber"],
1788
- "properties": {
1789
- "accountName": {
1790
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1791
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/AccountName",
1792
- "type": "string",
1793
- "description": "Name of the account owner, encrypted. The following conditions not being met will result in a 400 Bad Request:\n- Must be less than or equal to 22 characters long\n- Must contain only alphanumeric and space characters\n",
1794
- "minLength": 1
1795
- },
1796
- "accountType": {
1797
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1798
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/AccountType",
1799
- "type": "string",
1800
- "description": "Type of account",
1801
- "minLength": 1,
1802
- "enum": ["CHECKING", "SAVINGS"]
1803
- },
1804
- "accountNumber": {
1805
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1806
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/AccountNumber",
1807
- "type": "string",
1808
- "description": "Account number, encrypted. The following conditions not being met will result in a 400 Bad Request:\n- Must be less than or equal to 17 characters long\n- Must contain only numerical digits\n- Must not only contain zeros\n",
1809
- "minLength": 1
1810
- },
1811
- "routingNumber": {
1812
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1813
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/RoutingNumber",
1814
- "type": "string",
1815
- "description": "Routing number, encrypted. The following conditions not being met will result in a 400 Bad Request:\n- Must be a valid bank routing number\n- Must be 9 characters\n- Must contain only numerical digits\n- Must not only contain zeros\n",
1816
- "minLength": 1
795
+ "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Limits",
796
+ "type": "array",
797
+ "minItems": 0,
798
+ "description": "An array of limits that apply at the organization level.\nThe organization level represents the combined total of all card transactions for the client.\n",
799
+ "items": {
800
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
801
+ "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Limit",
802
+ "type": "object",
803
+ "additionalProperties": false,
804
+ "description": "Limit Details\n- There can only be one limit per client for each period, periodLength, and limitFunction combination.\n Multiple limits with the same values for the combination of properties listed above will result in a 400 Bad Request.\n",
805
+ "required": ["period", "periodLength", "limitFunction", "value"],
806
+ "properties": {
807
+ "period": {
808
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
809
+ "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Period",
810
+ "type": "string",
811
+ "description": "DAY is a calendar day and will begin at 00:00:00 UTC.\nMONTH is a calendar month and will begin on the first day of the month at 00:00:00 UTC.\nAll periods are rolling if the associated periodLength is greater than 1\n",
812
+ "enum": ["DAY", "MONTH"]
813
+ },
814
+ "periodLength": {
815
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
816
+ "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/PeriodLength",
817
+ "type": "string",
818
+ "pattern": "^\\d+$",
819
+ "minLength": 1,
820
+ "description": "How long the period lasts"
821
+ },
822
+ "limitFunction": {
823
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
824
+ "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/LimitFunction",
825
+ "type": "string",
826
+ "description": "AMOUNT functions by summing up the aggregate data point values.",
827
+ "enum": ["AMOUNT"]
828
+ },
829
+ "value": {
830
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
831
+ "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/LimitValue",
832
+ "type": "string",
833
+ "pattern": "^\\d+$",
834
+ "minLength": 1,
835
+ "description": "Limit value to use. The value is expected to be in cents."
836
+ }
1817
837
  }
1818
838
  }
1819
839
  },
840
+ "products": {
841
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
842
+ "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Products",
843
+ "type": "array",
844
+ "minItems": 1,
845
+ "description": "Array of products that are applicable to the client",
846
+ "items": {
847
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
848
+ "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Product",
849
+ "type": "string",
850
+ "description": "Type of card product",
851
+ "enum": ["VIRTUAL", "STANDARD", "PREMIUM"]
852
+ }
853
+ },
854
+ "clientAccountId": {
855
+ "type": "string",
856
+ "description": "The ledger account that holds the funds which are spendable by cardholders linked to the client."
857
+ },
1820
858
  "lastModified": {
1821
859
  "$schema": "https://json-schema.org/draft/2020-12/schema",
1822
860
  "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/LastModified",
@@ -1837,6 +875,31 @@
1837
875
  "type": "string",
1838
876
  "format": "date-time",
1839
877
  "description": "Resource last modified date time"
878
+ },
879
+ "funding": {
880
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
881
+ "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Funding",
882
+ "type": "string",
883
+ "description": "The way in which client accounts will be funded.\n- The default value is ACH if not supplied when creating a client\n- Credit clients are not permitted to create ach payment sources, a 400 Bad Request will be returned\n- ACH clients are not permitted to create credit account entries, a 400 Bad request will be returned\n",
884
+ "enum": ["ACH", "CREDIT"]
885
+ },
886
+ "active": {
887
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
888
+ "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/ActiveStatus",
889
+ "type": "string",
890
+ "description": "The client's active status\n- The value is set to ACTIVE by default if not present when creating a client\n- All new incoming card preauthorization and tokenization requests will be declined for INACTIVE clients\n",
891
+ "enum": ["ACTIVE", "INACTIVE"]
892
+ },
893
+ "configurationId": {
894
+ "type": "string",
895
+ "description": "The unique identifier for the client's configuration data."
896
+ },
897
+ "subsidiaryOf": {
898
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
899
+ "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/SubsidiaryOf",
900
+ "type": "string",
901
+ "description": "Used to indicate the client is a subsidiary of another client\n- This value must be set to a client ID of a client that is not already a subsidiary of another client\n- An attempt to change the value of this field once set will result in a 400 Bad Request\n",
902
+ "format": "uuid"
1840
903
  }
1841
904
  }
1842
905
  }
@@ -1844,9 +907,22 @@
1844
907
  "required": ["headers", "body"],
1845
908
  "additionalProperties": false
1846
909
  },
1847
- "404": {
910
+ "409": {
911
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
912
+ "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/api/ClientPutResponseConflict",
913
+ "type": "object",
914
+ "properties": {
915
+ "headers": {
916
+ "type": "object",
917
+ "additionalProperties": true
918
+ }
919
+ },
920
+ "required": [],
921
+ "additionalProperties": false
922
+ },
923
+ "412": {
1848
924
  "$schema": "https://json-schema.org/draft/2020-12/schema",
1849
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/api/AchPaymentSourceGetResponseNotFound",
925
+ "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/api/ClientPutResponsePreconditionFailed",
1850
926
  "type": "object",
1851
927
  "properties": {
1852
928
  "headers": {
@@ -1859,7 +935,7 @@
1859
935
  },
1860
936
  "default": {
1861
937
  "$schema": "https://json-schema.org/draft/2020-12/schema",
1862
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/api/AchPaymentSourceGetResponseDefault",
938
+ "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/api/ClientPutResponseDefault",
1863
939
  "type": "object",
1864
940
  "properties": {
1865
941
  "headers": {
@@ -1886,7 +962,10 @@
1886
962
  "additionalProperties": false
1887
963
  }
1888
964
  }
1889
- },
965
+ }
966
+ },
967
+ "/teampay-client-management/v1/client/:clientId/balance": {},
968
+ "/teampay-client-management/v1/ach-payment-source/:achPaymentSourceId": {
1890
969
  "put": {
1891
970
  "request": {
1892
971
  "$schema": "https://json-schema.org/draft/2020-12/schema",
@@ -2153,185 +1232,7 @@
2153
1232
  }
2154
1233
  }
2155
1234
  },
2156
- "/teampay-client-management/v1/client/:clientId/ach-payment-sources": {
2157
- "get": {
2158
- "request": {
2159
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2160
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/api/ClientAchPaymentSourcesGetRequestContext",
2161
- "type": "object",
2162
- "properties": {
2163
- "params": {
2164
- "type": "object",
2165
- "additionalProperties": false,
2166
- "properties": {
2167
- "at": {
2168
- "type": "string",
2169
- "format": "date-time"
2170
- }
2171
- },
2172
- "required": ["at"]
2173
- },
2174
- "headers": {
2175
- "type": "object",
2176
- "additionalProperties": true
2177
- }
2178
- },
2179
- "required": ["params", "query"],
2180
- "additionalProperties": false
2181
- },
2182
- "responses": {
2183
- "200": {
2184
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2185
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/api/ClientAchPaymentSourcesGetResponseOK",
2186
- "type": "object",
2187
- "properties": {
2188
- "headers": {
2189
- "type": "object",
2190
- "additionalProperties": true
2191
- },
2192
- "body": {
2193
- "type": "array",
2194
- "description": "List of client ACH payment sources",
2195
- "items": {
2196
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2197
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/ClientAchPaymentSource",
2198
- "type": "object",
2199
- "additionalProperties": false,
2200
- "description": "Client ACH Payment Source Details",
2201
- "required": [
2202
- "achPaymentSourceId",
2203
- "clientId",
2204
- "transmissionKey",
2205
- "storageKeyId",
2206
- "achPaymentSource",
2207
- "lastModified",
2208
- "createdOn"
2209
- ],
2210
- "properties": {
2211
- "achPaymentSourceId": {
2212
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2213
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/AchPaymentSourceId",
2214
- "type": "string",
2215
- "description": "Identifier for the ACH payment source",
2216
- "format": "uuid"
2217
- },
2218
- "clientId": {
2219
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2220
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/ClientId",
2221
- "type": "string",
2222
- "description": "The Unique identifier for the client in uuid format",
2223
- "format": "uuid"
2224
- },
2225
- "transmissionKey": {
2226
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2227
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/TransmissionKey",
2228
- "description": "The Encrypted version of the AES-256 DEK",
2229
- "type": "string"
2230
- },
2231
- "storageKeyId": {
2232
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2233
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/StorageKeyId",
2234
- "type": "string",
2235
- "description": "DEK's non-derived identifier to be used by Check Digit services only.\n"
2236
- },
2237
- "achPaymentSource": {
2238
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2239
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/AchPaymentSource",
2240
- "type": "object",
2241
- "additionalProperties": false,
2242
- "description": "ACH Payment Source",
2243
- "required": ["accountName", "accountType", "accountNumber", "routingNumber"],
2244
- "properties": {
2245
- "accountName": {
2246
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2247
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/AccountName",
2248
- "type": "string",
2249
- "description": "Name of the account owner, encrypted. The following conditions not being met will result in a 400 Bad Request:\n- Must be less than or equal to 22 characters long\n- Must contain only alphanumeric and space characters\n",
2250
- "minLength": 1
2251
- },
2252
- "accountType": {
2253
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2254
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/AccountType",
2255
- "type": "string",
2256
- "description": "Type of account",
2257
- "minLength": 1,
2258
- "enum": ["CHECKING", "SAVINGS"]
2259
- },
2260
- "accountNumber": {
2261
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2262
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/AccountNumber",
2263
- "type": "string",
2264
- "description": "Account number, encrypted. The following conditions not being met will result in a 400 Bad Request:\n- Must be less than or equal to 17 characters long\n- Must contain only numerical digits\n- Must not only contain zeros\n",
2265
- "minLength": 1
2266
- },
2267
- "routingNumber": {
2268
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2269
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/RoutingNumber",
2270
- "type": "string",
2271
- "description": "Routing number, encrypted. The following conditions not being met will result in a 400 Bad Request:\n- Must be a valid bank routing number\n- Must be 9 characters\n- Must contain only numerical digits\n- Must not only contain zeros\n",
2272
- "minLength": 1
2273
- }
2274
- }
2275
- },
2276
- "lastModified": {
2277
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2278
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/LastModified",
2279
- "type": "string",
2280
- "format": "date-time",
2281
- "description": "Resource last modified date time"
2282
- },
2283
- "createdOn": {
2284
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2285
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/CreatedOn",
2286
- "type": "string",
2287
- "format": "date-time",
2288
- "description": "Original created on date time"
2289
- },
2290
- "updatedOn": {
2291
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2292
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/UpdatedOn",
2293
- "type": "string",
2294
- "format": "date-time",
2295
- "description": "Resource last modified date time"
2296
- }
2297
- }
2298
- }
2299
- }
2300
- },
2301
- "required": ["body"],
2302
- "additionalProperties": false
2303
- },
2304
- "default": {
2305
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2306
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/api/ClientAchPaymentSourcesGetResponseDefault",
2307
- "type": "object",
2308
- "properties": {
2309
- "headers": {
2310
- "type": "object",
2311
- "additionalProperties": true
2312
- },
2313
- "body": {
2314
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2315
- "$id": "https://eslint-plugin.checkdigit/teampay-client-management/v1/schemas/definitions/Error",
2316
- "type": "object",
2317
- "additionalProperties": false,
2318
- "description": "Server error message",
2319
- "properties": {
2320
- "message": {
2321
- "type": "string"
2322
- },
2323
- "code": {
2324
- "type": "string"
2325
- }
2326
- }
2327
- }
2328
- },
2329
- "required": ["body"],
2330
- "additionalProperties": false
2331
- }
2332
- }
2333
- }
2334
- },
1235
+ "/teampay-client-management/v1/client/:clientId/ach-payment-sources": {},
2335
1236
  "/teampay-client-management/v1/request/:paymentId": {
2336
1237
  "put": {
2337
1238
  "request": {