@naturalpay/sdk 0.3.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (184) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/client.d.mts +23 -20
  3. package/client.d.mts.map +1 -1
  4. package/client.d.ts +23 -20
  5. package/client.d.ts.map +1 -1
  6. package/client.js +11 -8
  7. package/client.js.map +1 -1
  8. package/client.mjs +12 -9
  9. package/client.mjs.map +1 -1
  10. package/internal/tslib.js +17 -17
  11. package/internal/utils/query.d.mts +3 -0
  12. package/internal/utils/query.d.mts.map +1 -1
  13. package/internal/utils/query.d.ts +3 -0
  14. package/internal/utils/query.d.ts.map +1 -1
  15. package/internal/utils/query.js +16 -3
  16. package/internal/utils/query.js.map +1 -1
  17. package/internal/utils/query.mjs +16 -2
  18. package/internal/utils/query.mjs.map +1 -1
  19. package/package.json +1 -1
  20. package/resources/agents.d.mts +554 -268
  21. package/resources/agents.d.mts.map +1 -1
  22. package/resources/agents.d.ts +554 -268
  23. package/resources/agents.d.ts.map +1 -1
  24. package/resources/agents.js +72 -20
  25. package/resources/agents.js.map +1 -1
  26. package/resources/agents.mjs +72 -20
  27. package/resources/agents.mjs.map +1 -1
  28. package/resources/api-keys.d.mts +16 -2
  29. package/resources/api-keys.d.mts.map +1 -1
  30. package/resources/api-keys.d.ts +16 -2
  31. package/resources/api-keys.d.ts.map +1 -1
  32. package/resources/api-keys.js +7 -4
  33. package/resources/api-keys.js.map +1 -1
  34. package/resources/api-keys.mjs +7 -4
  35. package/resources/api-keys.mjs.map +1 -1
  36. package/resources/customers.d.mts +243 -114
  37. package/resources/customers.d.mts.map +1 -1
  38. package/resources/customers.d.ts +243 -114
  39. package/resources/customers.d.ts.map +1 -1
  40. package/resources/customers.js +6 -7
  41. package/resources/customers.js.map +1 -1
  42. package/resources/customers.mjs +6 -7
  43. package/resources/customers.mjs.map +1 -1
  44. package/resources/index.d.mts +7 -7
  45. package/resources/index.d.mts.map +1 -1
  46. package/resources/index.d.ts +7 -7
  47. package/resources/index.d.ts.map +1 -1
  48. package/resources/index.js +3 -3
  49. package/resources/index.js.map +1 -1
  50. package/resources/index.mjs +2 -2
  51. package/resources/index.mjs.map +1 -1
  52. package/resources/invitations.d.mts +16 -7
  53. package/resources/invitations.d.mts.map +1 -1
  54. package/resources/invitations.d.ts +16 -7
  55. package/resources/invitations.d.ts.map +1 -1
  56. package/resources/invitations.js +6 -4
  57. package/resources/invitations.js.map +1 -1
  58. package/resources/invitations.mjs +6 -4
  59. package/resources/invitations.mjs.map +1 -1
  60. package/resources/parties.d.mts +53 -26
  61. package/resources/parties.d.mts.map +1 -1
  62. package/resources/parties.d.ts +53 -26
  63. package/resources/parties.d.ts.map +1 -1
  64. package/resources/parties.js +27 -1
  65. package/resources/parties.js.map +1 -1
  66. package/resources/parties.mjs +27 -1
  67. package/resources/parties.mjs.map +1 -1
  68. package/resources/payment-requests.d.mts +738 -33
  69. package/resources/payment-requests.d.mts.map +1 -1
  70. package/resources/payment-requests.d.ts +738 -33
  71. package/resources/payment-requests.d.ts.map +1 -1
  72. package/resources/payment-requests.js +82 -1
  73. package/resources/payment-requests.js.map +1 -1
  74. package/resources/payment-requests.mjs +82 -1
  75. package/resources/payment-requests.mjs.map +1 -1
  76. package/resources/payments.d.mts +390 -24
  77. package/resources/payments.d.mts.map +1 -1
  78. package/resources/payments.d.ts +390 -24
  79. package/resources/payments.d.ts.map +1 -1
  80. package/resources/payments.js +53 -3
  81. package/resources/payments.js.map +1 -1
  82. package/resources/payments.mjs +53 -3
  83. package/resources/payments.mjs.map +1 -1
  84. package/resources/transactions.d.mts +50 -118
  85. package/resources/transactions.d.mts.map +1 -1
  86. package/resources/transactions.d.ts +50 -118
  87. package/resources/transactions.d.ts.map +1 -1
  88. package/resources/transactions.js +2 -2
  89. package/resources/transactions.mjs +2 -2
  90. package/resources/transfers.d.mts +1030 -0
  91. package/resources/transfers.d.mts.map +1 -0
  92. package/resources/transfers.d.ts +1030 -0
  93. package/resources/transfers.d.ts.map +1 -0
  94. package/resources/transfers.js +114 -0
  95. package/resources/transfers.js.map +1 -0
  96. package/resources/transfers.mjs +110 -0
  97. package/resources/transfers.mjs.map +1 -0
  98. package/resources/wallet.d.mts +1 -189
  99. package/resources/wallet.d.mts.map +1 -1
  100. package/resources/wallet.d.ts +1 -189
  101. package/resources/wallet.d.ts.map +1 -1
  102. package/resources/wallet.js +0 -66
  103. package/resources/wallet.js.map +1 -1
  104. package/resources/wallet.mjs +0 -66
  105. package/resources/wallet.mjs.map +1 -1
  106. package/resources/webhooks.d.mts +7 -7
  107. package/resources/webhooks.d.mts.map +1 -1
  108. package/resources/webhooks.d.ts +7 -7
  109. package/resources/webhooks.d.ts.map +1 -1
  110. package/src/client.ts +82 -43
  111. package/src/internal/utils/query.ts +18 -2
  112. package/src/resources/agents.ts +676 -300
  113. package/src/resources/api-keys.ts +26 -4
  114. package/src/resources/customers.ts +273 -132
  115. package/src/resources/index.ts +38 -18
  116. package/src/resources/invitations.ts +26 -10
  117. package/src/resources/parties.ts +85 -30
  118. package/src/resources/payment-requests.ts +949 -58
  119. package/src/resources/payments.ts +518 -23
  120. package/src/resources/transactions.ts +50 -136
  121. package/src/resources/transfers.ts +1338 -0
  122. package/src/resources/wallet.ts +0 -268
  123. package/src/resources/webhooks.ts +7 -0
  124. package/src/version.ts +1 -1
  125. package/version.d.mts +1 -1
  126. package/version.d.ts +1 -1
  127. package/version.js +1 -1
  128. package/version.mjs +1 -1
  129. package/internal/qs/formats.d.mts +0 -7
  130. package/internal/qs/formats.d.mts.map +0 -1
  131. package/internal/qs/formats.d.ts +0 -7
  132. package/internal/qs/formats.d.ts.map +0 -1
  133. package/internal/qs/formats.js +0 -13
  134. package/internal/qs/formats.js.map +0 -1
  135. package/internal/qs/formats.mjs +0 -9
  136. package/internal/qs/formats.mjs.map +0 -1
  137. package/internal/qs/index.d.mts +0 -10
  138. package/internal/qs/index.d.mts.map +0 -1
  139. package/internal/qs/index.d.ts +0 -10
  140. package/internal/qs/index.d.ts.map +0 -1
  141. package/internal/qs/index.js +0 -14
  142. package/internal/qs/index.js.map +0 -1
  143. package/internal/qs/index.mjs +0 -10
  144. package/internal/qs/index.mjs.map +0 -1
  145. package/internal/qs/stringify.d.mts +0 -3
  146. package/internal/qs/stringify.d.mts.map +0 -1
  147. package/internal/qs/stringify.d.ts +0 -3
  148. package/internal/qs/stringify.d.ts.map +0 -1
  149. package/internal/qs/stringify.js +0 -277
  150. package/internal/qs/stringify.js.map +0 -1
  151. package/internal/qs/stringify.mjs +0 -274
  152. package/internal/qs/stringify.mjs.map +0 -1
  153. package/internal/qs/types.d.mts +0 -57
  154. package/internal/qs/types.d.mts.map +0 -1
  155. package/internal/qs/types.d.ts +0 -57
  156. package/internal/qs/types.d.ts.map +0 -1
  157. package/internal/qs/types.js +0 -3
  158. package/internal/qs/types.js.map +0 -1
  159. package/internal/qs/types.mjs +0 -2
  160. package/internal/qs/types.mjs.map +0 -1
  161. package/internal/qs/utils.d.mts +0 -15
  162. package/internal/qs/utils.d.mts.map +0 -1
  163. package/internal/qs/utils.d.ts +0 -15
  164. package/internal/qs/utils.d.ts.map +0 -1
  165. package/internal/qs/utils.js +0 -230
  166. package/internal/qs/utils.js.map +0 -1
  167. package/internal/qs/utils.mjs +0 -217
  168. package/internal/qs/utils.mjs.map +0 -1
  169. package/resources/delegations.d.mts +0 -458
  170. package/resources/delegations.d.mts.map +0 -1
  171. package/resources/delegations.d.ts +0 -458
  172. package/resources/delegations.d.ts.map +0 -1
  173. package/resources/delegations.js +0 -47
  174. package/resources/delegations.js.map +0 -1
  175. package/resources/delegations.mjs +0 -43
  176. package/resources/delegations.mjs.map +0 -1
  177. package/src/internal/qs/LICENSE.md +0 -13
  178. package/src/internal/qs/README.md +0 -3
  179. package/src/internal/qs/formats.ts +0 -10
  180. package/src/internal/qs/index.ts +0 -13
  181. package/src/internal/qs/stringify.ts +0 -385
  182. package/src/internal/qs/types.ts +0 -71
  183. package/src/internal/qs/utils.ts +0 -265
  184. package/src/resources/delegations.ts +0 -580
@@ -16,33 +16,30 @@ export {
16
16
  type AgentCreateResponse,
17
17
  type AgentUpdateResponse,
18
18
  type AgentListResponse,
19
- type AgentCreateInvitationsResponse,
19
+ type AgentCreateCustomerResponse,
20
20
  type AgentGetResponse,
21
- type AgentListInvitationsForDeveloperResponse,
21
+ type AgentGetCustomerResponse,
22
+ type AgentListCustomersResponse,
22
23
  type AgentRemoveResponse,
24
+ type AgentRemoveCustomerResponse,
23
25
  type AgentCreateParams,
24
26
  type AgentUpdateParams,
25
27
  type AgentListParams,
26
- type AgentCreateInvitationsParams,
28
+ type AgentCreateCustomerParams,
27
29
  type AgentGetParams,
28
- type AgentListInvitationsForDeveloperParams,
30
+ type AgentGetCustomerParams,
31
+ type AgentListCustomersParams,
29
32
  type AgentRemoveParams,
33
+ type AgentRemoveCustomerParams,
30
34
  } from './agents';
31
35
  export { Counterparties, type CounterpartyListResponse, type CounterpartyListParams } from './counterparties';
32
36
  export {
33
37
  Customers,
34
38
  type CustomerListResponse,
35
- type CustomerListInvitationsResponse,
39
+ type CustomerGetResponse,
36
40
  type CustomerListParams,
37
- type CustomerListInvitationsParams,
41
+ type CustomerGetParams,
38
42
  } from './customers';
39
- export {
40
- Delegations,
41
- type DelegationGetAgentDelegationResponse,
42
- type DelegationListAgentDelegationsResponse,
43
- type DelegationGetAgentDelegationParams,
44
- type DelegationListAgentDelegationsParams,
45
- } from './delegations';
46
43
  export {
47
44
  ExternalAccounts,
48
45
  type ExternalAccountListResponse,
@@ -64,20 +61,36 @@ export {
64
61
  type PartyUpdateResponse,
65
62
  type PartyGetResponse,
66
63
  type PartyListMembersResponse,
64
+ type PartyRemoveMemberResponse,
67
65
  type PartyUpdateParams,
68
66
  type PartyGetParams,
69
67
  type PartyListMembersParams,
68
+ type PartyRemoveMemberParams,
70
69
  } from './parties';
71
70
  export {
72
71
  PaymentRequests,
73
72
  type PaymentRequestCreateResponse,
74
73
  type PaymentRequestListResponse,
74
+ type PaymentRequestDeclineResponse,
75
+ type PaymentRequestFulfillResponse,
75
76
  type PaymentRequestGetResponse,
77
+ type PaymentRequestListIncomingResponse,
76
78
  type PaymentRequestCreateParams,
77
79
  type PaymentRequestListParams,
80
+ type PaymentRequestDeclineParams,
81
+ type PaymentRequestFulfillParams,
78
82
  type PaymentRequestGetParams,
83
+ type PaymentRequestListIncomingParams,
79
84
  } from './payment-requests';
80
- export { Payments, type PaymentCreateResponse, type PaymentCreateParams } from './payments';
85
+ export {
86
+ Payments,
87
+ type PaymentCreateResponse,
88
+ type PaymentListResponse,
89
+ type PaymentGetResponse,
90
+ type PaymentCreateParams,
91
+ type PaymentListParams,
92
+ type PaymentGetParams,
93
+ } from './payments';
81
94
  export {
82
95
  Transactions,
83
96
  type TransactionListResponse,
@@ -85,16 +98,23 @@ export {
85
98
  type TransactionListParams,
86
99
  type TransactionGetParams,
87
100
  } from './transactions';
101
+ export {
102
+ Transfers,
103
+ type TransferListResponse,
104
+ type TransferGetResponse,
105
+ type TransferInitiateDepositResponse,
106
+ type TransferInitiateWithdrawalResponse,
107
+ type TransferListParams,
108
+ type TransferGetParams,
109
+ type TransferInitiateDepositParams,
110
+ type TransferInitiateWithdrawalParams,
111
+ } from './transfers';
88
112
  export {
89
113
  Wallet,
90
114
  type WalletListResponse,
91
115
  type WalletGetResponse,
92
- type WalletInitiateDepositResponse,
93
- type WalletInitiateWithdrawalResponse,
94
116
  type WalletListParams,
95
117
  type WalletGetParams,
96
- type WalletInitiateDepositParams,
97
- type WalletInitiateWithdrawalParams,
98
118
  } from './wallet';
99
119
  export {
100
120
  Webhooks,
@@ -17,7 +17,7 @@ export class Invitations extends APIResource {
17
17
  * ```ts
18
18
  * const invitation = await client.invitations.create({
19
19
  * invitations: [
20
- * { email: 'dev@stainless.com', role: 'OWNER' },
20
+ * { email: 'dev@stainless.com', role: 'ADMIN' },
21
21
  * ],
22
22
  * });
23
23
  * ```
@@ -70,19 +70,25 @@ export class Invitations extends APIResource {
70
70
  * ```ts
71
71
  * const response = await client.invitations.revoke(
72
72
  * 'invitationId',
73
+ * { 'Idempotency-Key': 'Idempotency-Key' },
73
74
  * );
74
75
  * ```
75
76
  */
76
77
  revoke(
77
78
  invitationID: string,
78
- params: InvitationRevokeParams | null | undefined = {},
79
+ params: InvitationRevokeParams,
79
80
  options?: RequestOptions,
80
81
  ): APIPromise<InvitationRevokeResponse> {
81
- const { 'X-Agent-ID': xAgentID, 'X-Instance-ID': xInstanceID } = params ?? {};
82
- return this._client.post(path`/party-invitations/${invitationID}/revoke`, {
82
+ const {
83
+ 'Idempotency-Key': idempotencyKey,
84
+ 'X-Agent-ID': xAgentID,
85
+ 'X-Instance-ID': xInstanceID,
86
+ } = params;
87
+ return this._client.delete(path`/party-invitations/${invitationID}`, {
83
88
  ...options,
84
89
  headers: buildHeaders([
85
90
  {
91
+ 'Idempotency-Key': idempotencyKey,
86
92
  ...(xAgentID != null ? { 'X-Agent-ID': xAgentID } : undefined),
87
93
  ...(xInstanceID != null ? { 'X-Instance-ID': xInstanceID } : undefined),
88
94
  },
@@ -263,6 +269,8 @@ export namespace InvitationListResponse {
263
269
 
264
270
  export interface InvitationRevokeResponse {
265
271
  data: InvitationRevokeResponse.Data;
272
+
273
+ meta: InvitationRevokeResponse.Meta;
266
274
  }
267
275
 
268
276
  export namespace InvitationRevokeResponse {
@@ -319,6 +327,13 @@ export namespace InvitationRevokeResponse {
319
327
  status: 'PENDING' | 'ACCEPTED' | 'REVOKED';
320
328
  }
321
329
  }
330
+
331
+ export interface Meta {
332
+ /**
333
+ * Indicates the resource was deleted
334
+ */
335
+ deleted: true;
336
+ }
322
337
  }
323
338
 
324
339
  export interface InvitationCreateParams {
@@ -327,11 +342,6 @@ export interface InvitationCreateParams {
327
342
  */
328
343
  invitations: Array<InvitationCreateParams.Invitation>;
329
344
 
330
- /**
331
- * Body param: Days until invitation expires (1-30)
332
- */
333
- expiresInDays?: number;
334
-
335
345
  /**
336
346
  * Header param: Agent ID (agt_xxx) identifying which agent is making the request.
337
347
  */
@@ -357,7 +367,7 @@ export namespace InvitationCreateParams {
357
367
  /**
358
368
  * Role to assign on acceptance
359
369
  */
360
- role: 'OWNER' | 'ADMIN' | 'MEMBER' | 'VIEWER';
370
+ role: 'ADMIN' | 'MEMBER' | 'VIEWER';
361
371
  }
362
372
  }
363
373
 
@@ -390,6 +400,12 @@ export interface InvitationListParams {
390
400
  }
391
401
 
392
402
  export interface InvitationRevokeParams {
403
+ /**
404
+ * Unique key for idempotent request handling. If a request with the same key was
405
+ * already processed, the original response is returned.
406
+ */
407
+ 'Idempotency-Key': string;
408
+
393
409
  /**
394
410
  * Agent ID (agt_xxx) identifying which agent is making the request.
395
411
  */
@@ -4,6 +4,7 @@ import { APIResource } from '../core/resource';
4
4
  import { APIPromise } from '../core/api-promise';
5
5
  import { buildHeaders } from '../internal/headers';
6
6
  import { RequestOptions } from '../internal/request-options';
7
+ import { path } from '../internal/utils/path';
7
8
 
8
9
  /**
9
10
  * Party and organization management
@@ -58,7 +59,7 @@ export class Parties extends APIResource {
58
59
  }
59
60
 
60
61
  /**
61
- * List members and pending invitations.
62
+ * List active members of your party.
62
63
  *
63
64
  * @example
64
65
  * ```ts
@@ -82,6 +83,40 @@ export class Parties extends APIResource {
82
83
  ]),
83
84
  });
84
85
  }
86
+
87
+ /**
88
+ * Remove a user from the party membership.
89
+ *
90
+ * @example
91
+ * ```ts
92
+ * const response = await client.parties.removeMember(
93
+ * 'usr_ecc2efdd09bd231a9ad9bd2aada37aa7',
94
+ * { 'Idempotency-Key': 'Idempotency-Key' },
95
+ * );
96
+ * ```
97
+ */
98
+ removeMember(
99
+ userID: string,
100
+ params: PartyRemoveMemberParams,
101
+ options?: RequestOptions,
102
+ ): APIPromise<PartyRemoveMemberResponse> {
103
+ const {
104
+ 'Idempotency-Key': idempotencyKey,
105
+ 'X-Agent-ID': xAgentID,
106
+ 'X-Instance-ID': xInstanceID,
107
+ } = params;
108
+ return this._client.delete(path`/parties/me/members/${userID}`, {
109
+ ...options,
110
+ headers: buildHeaders([
111
+ {
112
+ 'Idempotency-Key': idempotencyKey,
113
+ ...(xAgentID != null ? { 'X-Agent-ID': xAgentID } : undefined),
114
+ ...(xInstanceID != null ? { 'X-Instance-ID': xInstanceID } : undefined),
115
+ },
116
+ options?.headers,
117
+ ]),
118
+ });
119
+ }
85
120
  }
86
121
 
87
122
  export interface PartyUpdateResponse {
@@ -323,8 +358,7 @@ export interface PartyListMembersResponse {
323
358
  export namespace PartyListMembersResponse {
324
359
  export interface Data {
325
360
  /**
326
- * Member id: a user id (usr_xxx), or an invitation id (inv_xxx) for pending
327
- * invitations
361
+ * User id (usr_xxx)
328
362
  */
329
363
  id: string;
330
364
 
@@ -359,16 +393,6 @@ export namespace PartyListMembersResponse {
359
393
  */
360
394
  firstName: string | null;
361
395
 
362
- /**
363
- * Invitation ID (only for type='invitation')
364
- */
365
- invitationId: string | null;
366
-
367
- /**
368
- * User ID who sent the invitation
369
- */
370
- invitedBy: string | null;
371
-
372
396
  /**
373
397
  * Last name of the user
374
398
  */
@@ -389,11 +413,6 @@ export namespace PartyListMembersResponse {
389
413
  */
390
414
  status: 'ACTIVE' | 'REVOKED' | 'DELETED';
391
415
 
392
- /**
393
- * Whether this is an active member or pending invitation
394
- */
395
- type: 'member' | 'invitation';
396
-
397
416
  /**
398
417
  * When the membership was last updated
399
418
  */
@@ -414,6 +433,33 @@ export namespace PartyListMembersResponse {
414
433
  }
415
434
  }
416
435
 
436
+ export interface PartyRemoveMemberResponse {
437
+ data: PartyRemoveMemberResponse.Data;
438
+
439
+ meta: PartyRemoveMemberResponse.Meta;
440
+ }
441
+
442
+ export namespace PartyRemoveMemberResponse {
443
+ export interface Data {
444
+ /**
445
+ * ID of the removed user
446
+ */
447
+ id: string;
448
+
449
+ /**
450
+ * Resource type
451
+ */
452
+ type: string;
453
+ }
454
+
455
+ export interface Meta {
456
+ /**
457
+ * Indicates the resource was deleted
458
+ */
459
+ deleted: true;
460
+ }
461
+ }
462
+
417
463
  export interface PartyUpdateParams {
418
464
  /**
419
465
  * Body param: Updated display name. Pass null to clear; empty string is rejected
@@ -421,12 +467,6 @@ export interface PartyUpdateParams {
421
467
  */
422
468
  displayName?: string | null;
423
469
 
424
- /**
425
- * Body param: Updated party persona: INDIVIDUAL or DEVELOPER. Clearing persona to
426
- * null is not supported.
427
- */
428
- persona?: 'INDIVIDUAL' | 'DEVELOPER';
429
-
430
470
  /**
431
471
  * Header param: Agent ID (agt_xxx) identifying which agent is making the request.
432
472
  */
@@ -458,12 +498,6 @@ export interface PartyListMembersParams {
458
498
  */
459
499
  cursor?: string;
460
500
 
461
- /**
462
- * Query param: Include pending invitations alongside active members. Defaults to
463
- * false.
464
- */
465
- includeInvitations?: boolean;
466
-
467
501
  /**
468
502
  * Query param: Max items per page
469
503
  */
@@ -481,13 +515,34 @@ export interface PartyListMembersParams {
481
515
  'X-Instance-ID'?: string;
482
516
  }
483
517
 
518
+ export interface PartyRemoveMemberParams {
519
+ /**
520
+ * Unique key for idempotent request handling. If a request with the same key was
521
+ * already processed, the original response is returned.
522
+ */
523
+ 'Idempotency-Key': string;
524
+
525
+ /**
526
+ * Agent ID (agt_xxx) identifying which agent is making the request.
527
+ */
528
+ 'X-Agent-ID'?: string;
529
+
530
+ /**
531
+ * Required when X-Agent-ID is present. Session or conversation ID for agent
532
+ * observability.
533
+ */
534
+ 'X-Instance-ID'?: string;
535
+ }
536
+
484
537
  export declare namespace Parties {
485
538
  export {
486
539
  type PartyUpdateResponse as PartyUpdateResponse,
487
540
  type PartyGetResponse as PartyGetResponse,
488
541
  type PartyListMembersResponse as PartyListMembersResponse,
542
+ type PartyRemoveMemberResponse as PartyRemoveMemberResponse,
489
543
  type PartyUpdateParams as PartyUpdateParams,
490
544
  type PartyGetParams as PartyGetParams,
491
545
  type PartyListMembersParams as PartyListMembersParams,
546
+ type PartyRemoveMemberParams as PartyRemoveMemberParams,
492
547
  };
493
548
  }