@stable_sea/sdk 0.1.5 → 0.2.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.
- package/README.md +66 -1
- package/dist/client.d.ts +2 -2
- package/dist/gen/schema.d.ts +980 -40
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -21,7 +21,7 @@ import { createStableSeaClient } from "@stable_sea/sdk";
|
|
|
21
21
|
const client = createStableSeaClient({
|
|
22
22
|
apiKey: process.env.STABLE_SEA_API_KEY!,
|
|
23
23
|
baseUrl: process.env.STABLE_SEA_BASE_URL!,
|
|
24
|
-
version: "2026-
|
|
24
|
+
version: "2026-10-11",
|
|
25
25
|
});
|
|
26
26
|
```
|
|
27
27
|
|
|
@@ -106,6 +106,60 @@ quota. Authentication and IP/edge refusals omit them; outer timeout, cancellatio
|
|
|
106
106
|
and response-size failures may also omit them. On HTTP 429, wait at least
|
|
107
107
|
`Retry-After` seconds. For mutation retries, reuse the same idempotency key.
|
|
108
108
|
|
|
109
|
+
## Manage bank accounts
|
|
110
|
+
|
|
111
|
+
Select **Manage bank accounts** and **Read financial data** when creating the key
|
|
112
|
+
in Terminal. Submit registration with `POST /v1/bank_accounts`, poll the returned
|
|
113
|
+
`baop_` ID at `GET /v1/bank_account_operations/{id}`, then read the resulting
|
|
114
|
+
`bacc_` account. Registration preserves Terminal's screening rules and does not
|
|
115
|
+
enable funding or payouts. Remove an account with
|
|
116
|
+
`DELETE /v1/bank_accounts/{id}` without a body or idempotency key. HTTP 202
|
|
117
|
+
returns an operation to poll; repeat DELETE after success for a 200 deletion
|
|
118
|
+
receipt. Pending transactions prevent removal.
|
|
119
|
+
|
|
120
|
+
See [the bank account guide](../../docs/api/bank-accounts.md) for examples and retry behavior.
|
|
121
|
+
|
|
122
|
+
## Read saved bank accounts
|
|
123
|
+
|
|
124
|
+
Use a key with `money:read`:
|
|
125
|
+
|
|
126
|
+
```ts
|
|
127
|
+
const banks = await client.GET("/v1/bank_accounts");
|
|
128
|
+
if (banks.error) throw new Error(banks.error.error.message);
|
|
129
|
+
console.log(banks.data.data);
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
Account numbers and holder identity are masked by default. For complete values,
|
|
133
|
+
select **Read full bank details** alongside **Read financial data** when creating
|
|
134
|
+
or rotating the key in Terminal. Existing keys keep their permissions.
|
|
135
|
+
|
|
136
|
+
Use the returned `bacc_` ID with `GET /v1/bank_accounts/{id}`. Removed and
|
|
137
|
+
cross-business accounts return not found. Newly added or changed details can
|
|
138
|
+
briefly return 503; retry the read. Test keys read only their isolated sandbox
|
|
139
|
+
bank accounts.
|
|
140
|
+
|
|
141
|
+
## Funding and deposits
|
|
142
|
+
|
|
143
|
+
Select **Read financial data** and **Create deposits** in Terminal. Read
|
|
144
|
+
`GET /v1/funding` for current ACH limits, wire instructions and on-chain
|
|
145
|
+
addresses. For ACH, create a quote with `POST /v1/deposit_quotes`, poll its
|
|
146
|
+
`qt_` ID until ready, then review and acknowledge its bank authorization before
|
|
147
|
+
submitting `POST /v1/deposits`. Poll the `depo_` resource and its transaction for
|
|
148
|
+
the actual outcome. A quote expires five minutes after creation and can fund
|
|
149
|
+
one deposit. Keep the same mutation object and body for retries.
|
|
150
|
+
|
|
151
|
+
Authorization text is redacted on ordinary reads. To retrieve and review it,
|
|
152
|
+
select **Read full bank details** (`money:bank_accounts_sensitive_read`)
|
|
153
|
+
for the reading key, or obtain authorization through Terminal.
|
|
154
|
+
|
|
155
|
+
Declare an on-chain source address with `POST /v1/source_wallet_declarations`.
|
|
156
|
+
Poll its `swdec_` ID, check `cleared`, then read funding again. A declaration
|
|
157
|
+
does not send funds; replay does not renew clearance. Wire quotes estimate fees,
|
|
158
|
+
and wire transfers use the instructions returned by funding.
|
|
159
|
+
|
|
160
|
+
See [the funding guide](../../docs/api/funding.md) for the complete sequence,
|
|
161
|
+
permissions and retry behavior.
|
|
162
|
+
|
|
109
163
|
## Contract changes
|
|
110
164
|
|
|
111
165
|
- `GET /v1/balances`: `chain` gains the value `solana`. A USDC balance held on
|
|
@@ -113,3 +167,14 @@ and response-size failures may also omit them. On HTTP 429, wait at least
|
|
|
113
167
|
before this it reported `chain: "unknown"`. Code that switches on `chain`
|
|
114
168
|
should accept the new value, and code that keyed a Solana balance by its
|
|
115
169
|
`unknown` row should expect the `solana` row instead.
|
|
170
|
+
|
|
171
|
+
## October 11 API contract
|
|
172
|
+
|
|
173
|
+
Update to the latest SDK before using the revised contract. Send bank removal
|
|
174
|
+
with `client.DELETE("/v1/bank_accounts/{id}")`, without a body or idempotency key.
|
|
175
|
+
Read bank and wallet operation `status` instead of `state`. Retrieve issued
|
|
176
|
+
statement content with `GET /v1/statements/{id}`; the `/content` route is retired.
|
|
177
|
+
|
|
178
|
+
The HTTP request pin is `2026-10-11`. The retired pin returns
|
|
179
|
+
`400 unsupported_api_version`. Existing API keys remain valid; stored key and
|
|
180
|
+
thin-event/webhook versions are preserved.
|
package/dist/client.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import createClient from "openapi-fetch";
|
|
2
2
|
import type { FetchResponse } from "openapi-fetch";
|
|
3
|
-
import type { paths } from "./gen/schema.js";
|
|
3
|
+
import type { components, paths } from "./gen/schema.js";
|
|
4
4
|
export interface StableSeaClientOptions {
|
|
5
5
|
apiKey: string;
|
|
6
6
|
baseUrl: string;
|
|
7
|
-
version?: "
|
|
7
|
+
version?: components["schemas"]["HTTPAPIVersion"];
|
|
8
8
|
}
|
|
9
9
|
type GeneratedClient = ReturnType<typeof createClient<paths>>;
|
|
10
10
|
type MutationPath = {
|
package/dist/gen/schema.d.ts
CHANGED
|
@@ -122,6 +122,158 @@ export interface paths {
|
|
|
122
122
|
patch?: never;
|
|
123
123
|
trace?: never;
|
|
124
124
|
};
|
|
125
|
+
"/v1/bank_account_operations/{id}": {
|
|
126
|
+
parameters: {
|
|
127
|
+
query?: never;
|
|
128
|
+
header?: never;
|
|
129
|
+
path?: never;
|
|
130
|
+
cookie?: never;
|
|
131
|
+
};
|
|
132
|
+
/**
|
|
133
|
+
* Retrieve a bank account operation
|
|
134
|
+
* @description Returns bank registration or removal processing status. A succeeded registration records the account; it does not promise verification, enable funding or clear screening. Requires money:read.
|
|
135
|
+
*/
|
|
136
|
+
get: operations["bank_account_operations.get"];
|
|
137
|
+
put?: never;
|
|
138
|
+
post?: never;
|
|
139
|
+
delete?: never;
|
|
140
|
+
options?: never;
|
|
141
|
+
head?: never;
|
|
142
|
+
patch?: never;
|
|
143
|
+
trace?: never;
|
|
144
|
+
};
|
|
145
|
+
"/v1/bank_accounts": {
|
|
146
|
+
parameters: {
|
|
147
|
+
query?: never;
|
|
148
|
+
header?: never;
|
|
149
|
+
path?: never;
|
|
150
|
+
cookie?: never;
|
|
151
|
+
};
|
|
152
|
+
/**
|
|
153
|
+
* List bank accounts
|
|
154
|
+
* @description Lists saved US and Mexican bank accounts, newest first by created_ts, then ID. Requires money:read. Account numbers and holder identity are masked unless the key also has money:bank_accounts_sensitive_read. Institution, routing and postal address fields follow the same visibility as Terminal.
|
|
155
|
+
*
|
|
156
|
+
* Use either starting_after or ending_before with a bank account ID. limit defaults to 10 and cannot exceed 100. An unknown or removed cursor returns an error. Newly added or changed accounts can briefly return 503 before updated details are available; retry the read.
|
|
157
|
+
*/
|
|
158
|
+
get: operations["bank_accounts.list"];
|
|
159
|
+
put?: never;
|
|
160
|
+
/**
|
|
161
|
+
* Register a bank account
|
|
162
|
+
* @description Registers a US or Mexican bank account using Terminal's existing validation and screening. Provide country and the matching us_bank_account or mx_bank_account details. Requires money:bank_accounts_write and an Idempotency-Key. Poll the returned operation, then retrieve its bank_account with money:read. Registration alone does not enable the account or make it eligible for funding or payouts.
|
|
163
|
+
*/
|
|
164
|
+
post: operations["bank_accounts.create"];
|
|
165
|
+
delete?: never;
|
|
166
|
+
options?: never;
|
|
167
|
+
head?: never;
|
|
168
|
+
patch?: never;
|
|
169
|
+
trace?: never;
|
|
170
|
+
};
|
|
171
|
+
"/v1/bank_accounts/{id}": {
|
|
172
|
+
parameters: {
|
|
173
|
+
query?: never;
|
|
174
|
+
header?: never;
|
|
175
|
+
path?: never;
|
|
176
|
+
cookie?: never;
|
|
177
|
+
};
|
|
178
|
+
/**
|
|
179
|
+
* Retrieve a bank account
|
|
180
|
+
* @description Retrieves one saved bank account. Requires money:read; full account numbers and holder identity additionally require money:bank_accounts_sensitive_read. Unknown, removed and cross-business IDs return the same not-found response. Newly added or changed accounts can briefly return 503 before updated details are available; retry the read.
|
|
181
|
+
*/
|
|
182
|
+
get: operations["bank_accounts.get"];
|
|
183
|
+
put?: never;
|
|
184
|
+
post?: never;
|
|
185
|
+
/**
|
|
186
|
+
* Remove a bank account
|
|
187
|
+
* @description Archives a saved bank account and preserves its transaction history. Pending transactions prevent removal. Requires `money:bank_accounts_write`; send no body or idempotency key.
|
|
188
|
+
*
|
|
189
|
+
* HTTP 202 returns a processing operation: poll it until `status` is `succeeded` or `failed`. Repeat DELETE while pending to retrieve the same operation. After success, repeat DELETE to receive HTTP 200 with `id` and `deleted: true`. After a failed operation, resolve its cause and repeat DELETE to submit a new attempt. Removal does not cancel or reverse a deposit.
|
|
190
|
+
*/
|
|
191
|
+
delete: operations["bank_accounts.delete"];
|
|
192
|
+
options?: never;
|
|
193
|
+
head?: never;
|
|
194
|
+
patch?: never;
|
|
195
|
+
trace?: never;
|
|
196
|
+
};
|
|
197
|
+
"/v1/deposit_quotes": {
|
|
198
|
+
parameters: {
|
|
199
|
+
query?: never;
|
|
200
|
+
header?: never;
|
|
201
|
+
path?: never;
|
|
202
|
+
cookie?: never;
|
|
203
|
+
};
|
|
204
|
+
get?: never;
|
|
205
|
+
put?: never;
|
|
206
|
+
/**
|
|
207
|
+
* Create a deposit quote
|
|
208
|
+
* @description Creates a persisted ACH or wire fee quote. Requires money:read and an Idempotency-Key. Poll its ID until status is ready or failed. ACH needs an owned US bank account; the ready quote includes the amount-bound bank authorization to acknowledge before a deposit. Quotes expire five minutes after creation, and retries do not extend expiry. Wire fees are indicative; final fees use the first recorded receipt. No money moves when creating a quote.
|
|
209
|
+
*/
|
|
210
|
+
post: operations["deposit_quotes.create"];
|
|
211
|
+
delete?: never;
|
|
212
|
+
options?: never;
|
|
213
|
+
head?: never;
|
|
214
|
+
patch?: never;
|
|
215
|
+
trace?: never;
|
|
216
|
+
};
|
|
217
|
+
"/v1/deposit_quotes/{id}": {
|
|
218
|
+
parameters: {
|
|
219
|
+
query?: never;
|
|
220
|
+
header?: never;
|
|
221
|
+
path?: never;
|
|
222
|
+
cookie?: never;
|
|
223
|
+
};
|
|
224
|
+
/**
|
|
225
|
+
* Retrieve a deposit quote
|
|
226
|
+
* @description Returns the persisted quote and its fixed expiry. Requires money:read. The authorization's holder name stays masked unless the key also has money:bank_accounts_sensitive_read. Unknown and cross-business quote IDs return the same not-found response.
|
|
227
|
+
*/
|
|
228
|
+
get: operations["deposit_quotes.get"];
|
|
229
|
+
put?: never;
|
|
230
|
+
post?: never;
|
|
231
|
+
delete?: never;
|
|
232
|
+
options?: never;
|
|
233
|
+
head?: never;
|
|
234
|
+
patch?: never;
|
|
235
|
+
trace?: never;
|
|
236
|
+
};
|
|
237
|
+
"/v1/deposits": {
|
|
238
|
+
parameters: {
|
|
239
|
+
query?: never;
|
|
240
|
+
header?: never;
|
|
241
|
+
path?: never;
|
|
242
|
+
cookie?: never;
|
|
243
|
+
};
|
|
244
|
+
get?: never;
|
|
245
|
+
put?: never;
|
|
246
|
+
/**
|
|
247
|
+
* Submit an ACH deposit
|
|
248
|
+
* @description Submits an ACH deposit using one ready, unexpired deposit quote and explicit bank-authorization acknowledgement. Requires money:deposits_write and an Idempotency-Key. A quote can fund one deposit. Poll the deposit and its transaction for the actual outcome; acceptance is not settlement. The worker checks current business access, funding eligibility, fee terms and limits before booking. Retry the same request with the same key after a lost response to recover its original deposit.
|
|
249
|
+
*/
|
|
250
|
+
post: operations["deposits.create"];
|
|
251
|
+
delete?: never;
|
|
252
|
+
options?: never;
|
|
253
|
+
head?: never;
|
|
254
|
+
patch?: never;
|
|
255
|
+
trace?: never;
|
|
256
|
+
};
|
|
257
|
+
"/v1/deposits/{id}": {
|
|
258
|
+
parameters: {
|
|
259
|
+
query?: never;
|
|
260
|
+
header?: never;
|
|
261
|
+
path?: never;
|
|
262
|
+
cookie?: never;
|
|
263
|
+
};
|
|
264
|
+
/**
|
|
265
|
+
* Retrieve a deposit
|
|
266
|
+
* @description Returns the actual native funding lifecycle and transaction once booking commits. Requires money:read. A failed or returned bank pull is a failed deposit, not a settled transfer. Unknown and cross-business IDs return the same not-found response.
|
|
267
|
+
*/
|
|
268
|
+
get: operations["deposits.get"];
|
|
269
|
+
put?: never;
|
|
270
|
+
post?: never;
|
|
271
|
+
delete?: never;
|
|
272
|
+
options?: never;
|
|
273
|
+
head?: never;
|
|
274
|
+
patch?: never;
|
|
275
|
+
trace?: never;
|
|
276
|
+
};
|
|
125
277
|
"/v1/event_types": {
|
|
126
278
|
parameters: {
|
|
127
279
|
query?: never;
|
|
@@ -268,10 +420,34 @@ export interface paths {
|
|
|
268
420
|
get: operations["external_wallets.get"];
|
|
269
421
|
put?: never;
|
|
270
422
|
/**
|
|
271
|
-
*
|
|
272
|
-
* @description
|
|
423
|
+
* Update an external wallet
|
|
424
|
+
* @description Updates supported fields on a connected wallet. Currently only `name` is mutable; omitted or null fields remain unchanged. A new name is screened using the existing rules. Poll the returned operation until `status` is `succeeded` or `failed`. Address, network and screening status are server-controlled.
|
|
425
|
+
*/
|
|
426
|
+
post: operations["external_wallets.update"];
|
|
427
|
+
delete?: never;
|
|
428
|
+
options?: never;
|
|
429
|
+
head?: never;
|
|
430
|
+
patch?: never;
|
|
431
|
+
trace?: never;
|
|
432
|
+
};
|
|
433
|
+
"/v1/funding": {
|
|
434
|
+
parameters: {
|
|
435
|
+
query?: never;
|
|
436
|
+
header?: never;
|
|
437
|
+
path?: never;
|
|
438
|
+
cookie?: never;
|
|
439
|
+
};
|
|
440
|
+
/**
|
|
441
|
+
* Read deposit methods and instructions
|
|
442
|
+
* @description Returns ACH deposit limits, wire instructions and on-chain deposit addresses for your business. Requires money:read. Limits and method switches are read when you make the request; eligibility is checked again when a deposit executes.
|
|
443
|
+
*
|
|
444
|
+
* Wire instructions are available after business verification and funding setup. On-chain addresses follow the same network and source-wallet screening rules as Terminal. A nonempty memo must accompany the transfer.
|
|
445
|
+
*
|
|
446
|
+
* Instruction updates may briefly return 503 while they become available. instructions_updated_ts records their last refresh; observed_ts records the current limit and control observation. Test keys use isolated sandbox data and simulated financial partners.
|
|
273
447
|
*/
|
|
274
|
-
|
|
448
|
+
get: operations["funding.snapshot"];
|
|
449
|
+
put?: never;
|
|
450
|
+
post?: never;
|
|
275
451
|
delete?: never;
|
|
276
452
|
options?: never;
|
|
277
453
|
head?: never;
|
|
@@ -436,18 +612,38 @@ export interface paths {
|
|
|
436
612
|
patch?: never;
|
|
437
613
|
trace?: never;
|
|
438
614
|
};
|
|
439
|
-
"/v1/
|
|
615
|
+
"/v1/source_wallet_declarations": {
|
|
440
616
|
parameters: {
|
|
441
617
|
query?: never;
|
|
442
618
|
header?: never;
|
|
443
619
|
path?: never;
|
|
444
620
|
cookie?: never;
|
|
445
621
|
};
|
|
622
|
+
get?: never;
|
|
623
|
+
put?: never;
|
|
446
624
|
/**
|
|
447
|
-
*
|
|
448
|
-
* @description
|
|
625
|
+
* Declare a source wallet
|
|
626
|
+
* @description Screens the wallet you intend to fund from using Terminal's existing screening service. Requires money:deposits_write and an Idempotency-Key. Poll until status is screened or failed, then check funding for available deposit instructions. Only the clearance outcome is returned. Retrying a completed declaration does not screen it again or renew its clearance.
|
|
449
627
|
*/
|
|
450
|
-
|
|
628
|
+
post: operations["source_wallet_declarations.create"];
|
|
629
|
+
delete?: never;
|
|
630
|
+
options?: never;
|
|
631
|
+
head?: never;
|
|
632
|
+
patch?: never;
|
|
633
|
+
trace?: never;
|
|
634
|
+
};
|
|
635
|
+
"/v1/source_wallet_declarations/{id}": {
|
|
636
|
+
parameters: {
|
|
637
|
+
query?: never;
|
|
638
|
+
header?: never;
|
|
639
|
+
path?: never;
|
|
640
|
+
cookie?: never;
|
|
641
|
+
};
|
|
642
|
+
/**
|
|
643
|
+
* Retrieve a source-wallet declaration
|
|
644
|
+
* @description Returns the recorded screening outcome. Requires money:read. A completed declaration is historical; check funding for current deposit eligibility. Unknown and cross-business IDs return the same not-found response.
|
|
645
|
+
*/
|
|
646
|
+
get: operations["source_wallet_declarations.get"];
|
|
451
647
|
put?: never;
|
|
452
648
|
post?: never;
|
|
453
649
|
delete?: never;
|
|
@@ -456,7 +652,7 @@ export interface paths {
|
|
|
456
652
|
patch?: never;
|
|
457
653
|
trace?: never;
|
|
458
654
|
};
|
|
459
|
-
"/v1/statements
|
|
655
|
+
"/v1/statements": {
|
|
460
656
|
parameters: {
|
|
461
657
|
query?: never;
|
|
462
658
|
header?: never;
|
|
@@ -464,10 +660,10 @@ export interface paths {
|
|
|
464
660
|
cookie?: never;
|
|
465
661
|
};
|
|
466
662
|
/**
|
|
467
|
-
*
|
|
468
|
-
* @description Returns
|
|
663
|
+
* List statements
|
|
664
|
+
* @description Returns the business's monthly statements, newest period first. A period that has been corrected appears once, as its current document. Statements are metadata here: the document body is not part of this response.
|
|
469
665
|
*/
|
|
470
|
-
get: operations["statements.
|
|
666
|
+
get: operations["statements.list"];
|
|
471
667
|
put?: never;
|
|
472
668
|
post?: never;
|
|
473
669
|
delete?: never;
|
|
@@ -476,7 +672,7 @@ export interface paths {
|
|
|
476
672
|
patch?: never;
|
|
477
673
|
trace?: never;
|
|
478
674
|
};
|
|
479
|
-
"/v1/statements/{id}
|
|
675
|
+
"/v1/statements/{id}": {
|
|
480
676
|
parameters: {
|
|
481
677
|
query?: never;
|
|
482
678
|
header?: never;
|
|
@@ -484,10 +680,10 @@ export interface paths {
|
|
|
484
680
|
cookie?: never;
|
|
485
681
|
};
|
|
486
682
|
/**
|
|
487
|
-
* Retrieve statement
|
|
683
|
+
* Retrieve a statement
|
|
488
684
|
* @description Returns the immutable issued statement values as display-ready JSON. Corrected statements remain retrievable and name their replacement. Pay-ins and payouts are not served on this API, so they are not listed in transactions; the balances and totals are the printed ones and still include their effect, which means a statement for a period in which the business made a payment does not reconcile from its transactions alone.
|
|
489
685
|
*/
|
|
490
|
-
get: operations["statements.
|
|
686
|
+
get: operations["statements.retrieve"];
|
|
491
687
|
put?: never;
|
|
492
688
|
post?: never;
|
|
493
689
|
delete?: never;
|
|
@@ -797,7 +993,170 @@ export interface components {
|
|
|
797
993
|
/** @enum {string} */
|
|
798
994
|
object: "list";
|
|
799
995
|
};
|
|
996
|
+
BankAccount: {
|
|
997
|
+
/** @enum {string} */
|
|
998
|
+
beneficiary_type: "self" | "third_party";
|
|
999
|
+
/** @enum {string} */
|
|
1000
|
+
country: "US" | "MX";
|
|
1001
|
+
/** Format: date-time */
|
|
1002
|
+
created_ts: string;
|
|
1003
|
+
/** @enum {string} */
|
|
1004
|
+
currency: "USD" | "MXN";
|
|
1005
|
+
/** @description True when account numbers and holder identity are masked. Full details require money:bank_accounts_sensitive_read in addition to money:read. */
|
|
1006
|
+
details_masked: boolean;
|
|
1007
|
+
id: string;
|
|
1008
|
+
/** @description False for an isolated simulated bank account. */
|
|
1009
|
+
livemode: boolean;
|
|
1010
|
+
mx_bank_account?: components["schemas"]["MXBankAccountDetails"];
|
|
1011
|
+
/** @enum {string} */
|
|
1012
|
+
object: "bank_account";
|
|
1013
|
+
/**
|
|
1014
|
+
* @description Current bank account status. Does not guarantee that every funding or payout method is available.
|
|
1015
|
+
* @enum {string}
|
|
1016
|
+
*/
|
|
1017
|
+
status: "enabled" | "disabled";
|
|
1018
|
+
us_bank_account?: components["schemas"]["USBankAccountDetails"];
|
|
1019
|
+
};
|
|
1020
|
+
BankAccountAddress: {
|
|
1021
|
+
city: string;
|
|
1022
|
+
line1: string;
|
|
1023
|
+
line2?: string | null;
|
|
1024
|
+
postal_code: string;
|
|
1025
|
+
state: string;
|
|
1026
|
+
};
|
|
1027
|
+
BankAccountCreateAddress: {
|
|
1028
|
+
city: string;
|
|
1029
|
+
line1: string;
|
|
1030
|
+
line2?: string | null;
|
|
1031
|
+
postal_code: string;
|
|
1032
|
+
state: string;
|
|
1033
|
+
};
|
|
1034
|
+
BankAccountCreateInput: {
|
|
1035
|
+
/**
|
|
1036
|
+
* @description Declare self only when this business owns the account. Omission is treated as third_party.
|
|
1037
|
+
* @enum {string|null}
|
|
1038
|
+
*/
|
|
1039
|
+
beneficiary_type?: "self" | "third_party" | null;
|
|
1040
|
+
/** @enum {string} */
|
|
1041
|
+
country: "US" | "MX";
|
|
1042
|
+
mx_bank_account?: components["schemas"]["MXBankAccountCreateDetails"];
|
|
1043
|
+
us_bank_account?: components["schemas"]["USBankAccountCreateDetails"];
|
|
1044
|
+
};
|
|
1045
|
+
BankAccountDeleted: {
|
|
1046
|
+
/** @enum {boolean} */
|
|
1047
|
+
deleted: true;
|
|
1048
|
+
id: string;
|
|
1049
|
+
};
|
|
1050
|
+
BankAccountList: {
|
|
1051
|
+
data: components["schemas"]["BankAccount"][];
|
|
1052
|
+
has_more: boolean;
|
|
1053
|
+
/** @enum {string} */
|
|
1054
|
+
object: "list";
|
|
1055
|
+
};
|
|
1056
|
+
BankAccountOperation: {
|
|
1057
|
+
/** @description The registered or removed bank account, once processing succeeds. Registration does not enable funding or payouts. */
|
|
1058
|
+
bank_account?: string;
|
|
1059
|
+
/** Format: date-time */
|
|
1060
|
+
created_ts: string;
|
|
1061
|
+
failure_code?: string;
|
|
1062
|
+
id: string;
|
|
1063
|
+
livemode: boolean;
|
|
1064
|
+
/** @enum {string} */
|
|
1065
|
+
object: "bank_account_operation";
|
|
1066
|
+
/** @enum {string} */
|
|
1067
|
+
operation: "create" | "remove";
|
|
1068
|
+
/** @enum {string} */
|
|
1069
|
+
status: "pending" | "succeeded" | "failed";
|
|
1070
|
+
};
|
|
800
1071
|
Decimal: string;
|
|
1072
|
+
Deposit: {
|
|
1073
|
+
/** Format: date-time */
|
|
1074
|
+
created_ts: string;
|
|
1075
|
+
failure_code?: string;
|
|
1076
|
+
id: string;
|
|
1077
|
+
livemode: boolean;
|
|
1078
|
+
/** @enum {string} */
|
|
1079
|
+
object: "deposit";
|
|
1080
|
+
/**
|
|
1081
|
+
* @description Native funding lifecycle. A bank return is a failed deposit; submission is not settlement.
|
|
1082
|
+
* @enum {string}
|
|
1083
|
+
*/
|
|
1084
|
+
status: "pending" | "processing" | "completed" | "failed";
|
|
1085
|
+
transaction?: string;
|
|
1086
|
+
};
|
|
1087
|
+
DepositInput: {
|
|
1088
|
+
/** @description Acknowledge the ACH authorization returned with this quote before submission. */
|
|
1089
|
+
authorization_accepted: boolean;
|
|
1090
|
+
quote_id: string;
|
|
1091
|
+
};
|
|
1092
|
+
DepositQuote: {
|
|
1093
|
+
/** Format: date-time */
|
|
1094
|
+
created_ts: string;
|
|
1095
|
+
details: {
|
|
1096
|
+
amount_usd: string;
|
|
1097
|
+
authorization: {
|
|
1098
|
+
account_holder_name: string;
|
|
1099
|
+
account_number_masked: string;
|
|
1100
|
+
account_type: string;
|
|
1101
|
+
/** @description Bank acknowledgment text; redacted as **** without money:bank_accounts_sensitive_read. */
|
|
1102
|
+
acknowledgment: string;
|
|
1103
|
+
/** @description Amount-bound authorization details; redacted as **** without money:bank_accounts_sensitive_read. */
|
|
1104
|
+
authorization_details: string;
|
|
1105
|
+
bank_name: string;
|
|
1106
|
+
/** @description Whether holder identity and authorization text are redacted. */
|
|
1107
|
+
holder_masked: boolean;
|
|
1108
|
+
/** @description Bank authorization text; redacted as **** without money:bank_accounts_sensitive_read. */
|
|
1109
|
+
review_authorization: string;
|
|
1110
|
+
routing_number: string;
|
|
1111
|
+
} | null;
|
|
1112
|
+
bank_account: string | null;
|
|
1113
|
+
pricing: {
|
|
1114
|
+
bank_fee_usd: string;
|
|
1115
|
+
/** Format: int64 */
|
|
1116
|
+
bps: number;
|
|
1117
|
+
/** @description Whether current policy sweeps conversion surplus above 1:1 USD/USDC before fees. This does not guarantee a below-par top-up. */
|
|
1118
|
+
caps_at_par: boolean;
|
|
1119
|
+
/** @description USD amount converted before platform fees. */
|
|
1120
|
+
conversion_input: string;
|
|
1121
|
+
/** @description Indicative gross USDC proceeds before platform fees. */
|
|
1122
|
+
estimated_conversion_output?: string | null;
|
|
1123
|
+
/** @description Indicative USDC per USD before fees; not a guaranteed rate. */
|
|
1124
|
+
estimated_conversion_rate?: string | null;
|
|
1125
|
+
/** @description Indicative USDC proceeds after fees, not guaranteed settlement. */
|
|
1126
|
+
estimated_proceeds?: string | null;
|
|
1127
|
+
platform_fee_usdc: string;
|
|
1128
|
+
/** @enum {string} */
|
|
1129
|
+
settlement_asset: "USDC";
|
|
1130
|
+
/** @description Whether current policy targets 1:1 USD/USDC before fees. Below-par top-ups require a shortfall no greater than the larger of 25 basis points of principal or 1 USD, sufficient platform funds and accepted adjustment; otherwise settlement uses the market fill. */
|
|
1131
|
+
settles_at_par: boolean;
|
|
1132
|
+
/** @enum {string} */
|
|
1133
|
+
source_symbol: "USD";
|
|
1134
|
+
total_source_debit: string;
|
|
1135
|
+
};
|
|
1136
|
+
/** @enum {string} */
|
|
1137
|
+
rail: "ach" | "wire";
|
|
1138
|
+
/** @description ACH fees are fixed until expiry, subject to current fee terms and eligibility. Wire fees are indicative; final fees use the first recorded receipt. */
|
|
1139
|
+
terms_fixed: boolean;
|
|
1140
|
+
} | null;
|
|
1141
|
+
/**
|
|
1142
|
+
* Format: date-time
|
|
1143
|
+
* @description Fixed expiry for this quote; retries do not extend it.
|
|
1144
|
+
*/
|
|
1145
|
+
expires_ts: string;
|
|
1146
|
+
failure_code?: string;
|
|
1147
|
+
id: string;
|
|
1148
|
+
livemode: boolean;
|
|
1149
|
+
/** @enum {string} */
|
|
1150
|
+
object: "deposit_quote";
|
|
1151
|
+
/** @enum {string} */
|
|
1152
|
+
status: "pending" | "ready" | "failed";
|
|
1153
|
+
};
|
|
1154
|
+
DepositQuoteInput: {
|
|
1155
|
+
amount_usd: string;
|
|
1156
|
+
bank_account?: string;
|
|
1157
|
+
/** @enum {string} */
|
|
1158
|
+
rail: "ach" | "wire";
|
|
1159
|
+
};
|
|
801
1160
|
Error: {
|
|
802
1161
|
error: {
|
|
803
1162
|
/** @description Legal values/transitions on an illegal-transition conflict. */
|
|
@@ -861,7 +1220,7 @@ export interface components {
|
|
|
861
1220
|
object: "list";
|
|
862
1221
|
};
|
|
863
1222
|
/** @enum {string} */
|
|
864
|
-
EventTypeName: "external_wallet.created" | "external_wallet.updated" | "external_wallet_operation.updated" | "notification.created" | "order.updated" | "transaction.created" | "transaction.updated";
|
|
1223
|
+
EventTypeName: "bank_account.created" | "bank_account.removed" | "bank_account_operation.updated" | "deposit.updated" | "deposit_quote.updated" | "external_wallet.created" | "external_wallet.updated" | "external_wallet_operation.updated" | "notification.created" | "order.updated" | "source_wallet_declaration.updated" | "transaction.created" | "transaction.updated";
|
|
865
1224
|
ExternalWallet: {
|
|
866
1225
|
/** @description The wallet's on-chain address, exactly as the business connected it. */
|
|
867
1226
|
address: string;
|
|
@@ -949,19 +1308,112 @@ export interface components {
|
|
|
949
1308
|
/** @enum {string} */
|
|
950
1309
|
object: "external_wallet_operation";
|
|
951
1310
|
/** @enum {string} */
|
|
952
|
-
operation: "create" | "
|
|
1311
|
+
operation: "create" | "update";
|
|
953
1312
|
/** @enum {string} */
|
|
954
|
-
|
|
1313
|
+
status: "pending" | "succeeded" | "failed";
|
|
955
1314
|
};
|
|
956
|
-
|
|
957
|
-
name
|
|
1315
|
+
ExternalWalletUpdateInput: {
|
|
1316
|
+
name?: string | null;
|
|
1317
|
+
};
|
|
1318
|
+
FundingMethod: {
|
|
1319
|
+
ach?: {
|
|
1320
|
+
/** @enum {string} */
|
|
1321
|
+
binding_window: "daily" | "weekly";
|
|
1322
|
+
daily: {
|
|
1323
|
+
limit_usd: string;
|
|
1324
|
+
remaining_usd: string;
|
|
1325
|
+
/** Format: date-time */
|
|
1326
|
+
resets_ts: string;
|
|
1327
|
+
used_usd: string;
|
|
1328
|
+
};
|
|
1329
|
+
enabled: boolean;
|
|
1330
|
+
remaining_usd: string;
|
|
1331
|
+
weekly: {
|
|
1332
|
+
limit_usd: string;
|
|
1333
|
+
remaining_usd: string;
|
|
1334
|
+
/** Format: date-time */
|
|
1335
|
+
resets_ts: string;
|
|
1336
|
+
used_usd: string;
|
|
1337
|
+
};
|
|
1338
|
+
};
|
|
1339
|
+
/** @enum {string} */
|
|
1340
|
+
object: "funding_method";
|
|
1341
|
+
onchain?: {
|
|
1342
|
+
enabled: boolean;
|
|
1343
|
+
instructions: {
|
|
1344
|
+
address: string;
|
|
1345
|
+
/** @description Include a nonempty memo with the transfer. An empty memo means this address does not require one. */
|
|
1346
|
+
memo: string;
|
|
1347
|
+
payment_rail: string;
|
|
1348
|
+
symbol: string;
|
|
1349
|
+
}[];
|
|
1350
|
+
source_wallet_cleared: boolean;
|
|
1351
|
+
source_wallet_required: boolean;
|
|
1352
|
+
};
|
|
1353
|
+
/** @enum {string} */
|
|
1354
|
+
type: "ach" | "wire" | "onchain";
|
|
1355
|
+
wire?: {
|
|
1356
|
+
enabled: boolean;
|
|
1357
|
+
instructions: {
|
|
1358
|
+
account_number: string;
|
|
1359
|
+
account_type: string;
|
|
1360
|
+
bank_address: {
|
|
1361
|
+
city: string;
|
|
1362
|
+
country: string;
|
|
1363
|
+
line1: string;
|
|
1364
|
+
line2: string;
|
|
1365
|
+
postal_code: string;
|
|
1366
|
+
state: string;
|
|
1367
|
+
};
|
|
1368
|
+
bank_name: string;
|
|
1369
|
+
beneficiary_address: {
|
|
1370
|
+
city: string;
|
|
1371
|
+
country: string;
|
|
1372
|
+
line1: string;
|
|
1373
|
+
line2: string;
|
|
1374
|
+
postal_code: string;
|
|
1375
|
+
state: string;
|
|
1376
|
+
};
|
|
1377
|
+
beneficiary_name: string;
|
|
1378
|
+
reference: string;
|
|
1379
|
+
routing_number: string;
|
|
1380
|
+
} | null;
|
|
1381
|
+
};
|
|
1382
|
+
};
|
|
1383
|
+
FundingSnapshot: {
|
|
1384
|
+
data: components["schemas"]["FundingMethod"][];
|
|
1385
|
+
/** Format: date-time */
|
|
1386
|
+
instructions_updated_ts: string;
|
|
1387
|
+
livemode: boolean;
|
|
1388
|
+
/** @enum {string} */
|
|
1389
|
+
object: "funding_snapshot";
|
|
1390
|
+
/** Format: date-time */
|
|
1391
|
+
observed_ts: string;
|
|
958
1392
|
};
|
|
1393
|
+
/** @enum {string} */
|
|
1394
|
+
HTTPAPIVersion: "2026-10-11";
|
|
959
1395
|
List: {
|
|
960
1396
|
data: components["schemas"]["Resource"][];
|
|
961
1397
|
has_more: boolean;
|
|
962
1398
|
/** @enum {string} */
|
|
963
1399
|
object: "list";
|
|
964
1400
|
};
|
|
1401
|
+
MXBankAccountCreateDetails: {
|
|
1402
|
+
account_holder_first_name: string;
|
|
1403
|
+
account_holder_last_name: string;
|
|
1404
|
+
clabe: string;
|
|
1405
|
+
/** @description Optional RFC or CURP, validated by the existing recipient rules. */
|
|
1406
|
+
holder_identifier?: string;
|
|
1407
|
+
legal_entity_name: string;
|
|
1408
|
+
};
|
|
1409
|
+
MXBankAccountDetails: {
|
|
1410
|
+
account_holder_first_name: string;
|
|
1411
|
+
account_holder_last_name: string;
|
|
1412
|
+
clabe: string;
|
|
1413
|
+
/** @description Account holder RFC or CURP. Omitted when unavailable; masked unless full details are permitted. */
|
|
1414
|
+
holder_identifier?: string;
|
|
1415
|
+
legal_entity_name: string;
|
|
1416
|
+
};
|
|
965
1417
|
/** @description Customer metadata. Sensitive data is forbidden. */
|
|
966
1418
|
Metadata: {
|
|
967
1419
|
[key: string]: string;
|
|
@@ -1201,6 +1653,24 @@ export interface components {
|
|
|
1201
1653
|
/** @enum {string} */
|
|
1202
1654
|
object: "list";
|
|
1203
1655
|
};
|
|
1656
|
+
SourceWalletDeclaration: {
|
|
1657
|
+
/** @description Recorded screening outcome, once processed. Recheck funding for current eligibility; retries do not renew clearance. */
|
|
1658
|
+
cleared: boolean | null;
|
|
1659
|
+
/** Format: date-time */
|
|
1660
|
+
created_ts: string;
|
|
1661
|
+
failure_code?: string;
|
|
1662
|
+
id: string;
|
|
1663
|
+
livemode: boolean;
|
|
1664
|
+
/** @enum {string} */
|
|
1665
|
+
object: "source_wallet_declaration";
|
|
1666
|
+
/** @enum {string} */
|
|
1667
|
+
status: "pending" | "screened" | "failed";
|
|
1668
|
+
};
|
|
1669
|
+
SourceWalletDeclarationInput: {
|
|
1670
|
+
address: string;
|
|
1671
|
+
/** @enum {string} */
|
|
1672
|
+
chain: "ethereum" | "polygon" | "arbitrum" | "base" | "solana" | "stellar";
|
|
1673
|
+
};
|
|
1204
1674
|
Statement: {
|
|
1205
1675
|
/** Format: date-time */
|
|
1206
1676
|
created_ts: string;
|
|
@@ -1221,15 +1691,21 @@ export interface components {
|
|
|
1221
1691
|
label: string;
|
|
1222
1692
|
symbol: string;
|
|
1223
1693
|
};
|
|
1224
|
-
|
|
1694
|
+
StatementDetail: {
|
|
1225
1695
|
balances: components["schemas"]["StatementLine"][];
|
|
1226
1696
|
/** Format: date-time */
|
|
1227
1697
|
created_ts: string;
|
|
1228
1698
|
id: string;
|
|
1229
1699
|
livemode: boolean;
|
|
1700
|
+
/** Format: int32 */
|
|
1701
|
+
number: number;
|
|
1230
1702
|
/** @enum {string} */
|
|
1231
|
-
object: "
|
|
1703
|
+
object: "statement";
|
|
1232
1704
|
period: components["schemas"]["StatementPeriod"];
|
|
1705
|
+
/** Format: date-time */
|
|
1706
|
+
period_end_ts: string;
|
|
1707
|
+
/** Format: date-time */
|
|
1708
|
+
period_start_ts: string;
|
|
1233
1709
|
ramp_fees?: components["schemas"]["StatementRampFee"][];
|
|
1234
1710
|
superseded_by?: string;
|
|
1235
1711
|
totals: components["schemas"]["StatementTotals"];
|
|
@@ -1362,6 +1838,24 @@ export interface components {
|
|
|
1362
1838
|
/** @enum {string} */
|
|
1363
1839
|
object: "list";
|
|
1364
1840
|
};
|
|
1841
|
+
USBankAccountCreateDetails: {
|
|
1842
|
+
account_number: string;
|
|
1843
|
+
/** @enum {string} */
|
|
1844
|
+
account_type: "checking" | "saving";
|
|
1845
|
+
bank_name: string;
|
|
1846
|
+
owner_address: components["schemas"]["BankAccountCreateAddress"];
|
|
1847
|
+
owner_name: string;
|
|
1848
|
+
routing_number: string;
|
|
1849
|
+
};
|
|
1850
|
+
USBankAccountDetails: {
|
|
1851
|
+
account_number: string;
|
|
1852
|
+
/** @enum {string} */
|
|
1853
|
+
account_type: "checking" | "saving";
|
|
1854
|
+
bank_name: string;
|
|
1855
|
+
owner_address: components["schemas"]["BankAccountAddress"];
|
|
1856
|
+
owner_name: string;
|
|
1857
|
+
routing_number: string;
|
|
1858
|
+
};
|
|
1365
1859
|
WebhookDelivery: {
|
|
1366
1860
|
attempt_count: number;
|
|
1367
1861
|
/** Format: date-time */
|
|
@@ -1520,7 +2014,7 @@ export interface components {
|
|
|
1520
2014
|
};
|
|
1521
2015
|
parameters: {
|
|
1522
2016
|
"Idempotency-Key": string;
|
|
1523
|
-
"Stable-Sea-Version": components["schemas"]["
|
|
2017
|
+
"Stable-Sea-Version": components["schemas"]["HTTPAPIVersion"];
|
|
1524
2018
|
};
|
|
1525
2019
|
requestBodies: never;
|
|
1526
2020
|
headers: {
|
|
@@ -1737,6 +2231,374 @@ export interface operations {
|
|
|
1737
2231
|
};
|
|
1738
2232
|
};
|
|
1739
2233
|
};
|
|
2234
|
+
"bank_account_operations.get": {
|
|
2235
|
+
parameters: {
|
|
2236
|
+
query?: never;
|
|
2237
|
+
header?: never;
|
|
2238
|
+
path: {
|
|
2239
|
+
id: string;
|
|
2240
|
+
};
|
|
2241
|
+
cookie?: never;
|
|
2242
|
+
};
|
|
2243
|
+
requestBody?: never;
|
|
2244
|
+
responses: {
|
|
2245
|
+
/** @description OK */
|
|
2246
|
+
200: {
|
|
2247
|
+
headers: {
|
|
2248
|
+
"X-RateLimit-Limit": components["headers"]["X-RateLimit-Limit"];
|
|
2249
|
+
"X-RateLimit-Remaining": components["headers"]["X-RateLimit-Remaining"];
|
|
2250
|
+
"X-RateLimit-Reset": components["headers"]["X-RateLimit-Reset"];
|
|
2251
|
+
[name: string]: unknown;
|
|
2252
|
+
};
|
|
2253
|
+
content: {
|
|
2254
|
+
"application/json": components["schemas"]["BankAccountOperation"];
|
|
2255
|
+
};
|
|
2256
|
+
};
|
|
2257
|
+
400: components["responses"]["Error400"];
|
|
2258
|
+
401: components["responses"]["Error401"];
|
|
2259
|
+
403: components["responses"]["Error403"];
|
|
2260
|
+
429: components["responses"]["Error429"];
|
|
2261
|
+
/** @description Error response. */
|
|
2262
|
+
default: {
|
|
2263
|
+
headers: {
|
|
2264
|
+
[name: string]: unknown;
|
|
2265
|
+
};
|
|
2266
|
+
content: {
|
|
2267
|
+
"application/json": components["schemas"]["Error"];
|
|
2268
|
+
};
|
|
2269
|
+
};
|
|
2270
|
+
};
|
|
2271
|
+
};
|
|
2272
|
+
"bank_accounts.list": {
|
|
2273
|
+
parameters: {
|
|
2274
|
+
query?: {
|
|
2275
|
+
limit?: number;
|
|
2276
|
+
starting_after?: string;
|
|
2277
|
+
ending_before?: string;
|
|
2278
|
+
};
|
|
2279
|
+
header?: never;
|
|
2280
|
+
path?: never;
|
|
2281
|
+
cookie?: never;
|
|
2282
|
+
};
|
|
2283
|
+
requestBody?: never;
|
|
2284
|
+
responses: {
|
|
2285
|
+
/** @description OK */
|
|
2286
|
+
200: {
|
|
2287
|
+
headers: {
|
|
2288
|
+
"X-RateLimit-Limit": components["headers"]["X-RateLimit-Limit"];
|
|
2289
|
+
"X-RateLimit-Remaining": components["headers"]["X-RateLimit-Remaining"];
|
|
2290
|
+
"X-RateLimit-Reset": components["headers"]["X-RateLimit-Reset"];
|
|
2291
|
+
[name: string]: unknown;
|
|
2292
|
+
};
|
|
2293
|
+
content: {
|
|
2294
|
+
"application/json": components["schemas"]["BankAccountList"];
|
|
2295
|
+
};
|
|
2296
|
+
};
|
|
2297
|
+
400: components["responses"]["Error400"];
|
|
2298
|
+
401: components["responses"]["Error401"];
|
|
2299
|
+
403: components["responses"]["Error403"];
|
|
2300
|
+
429: components["responses"]["Error429"];
|
|
2301
|
+
/** @description Error response. */
|
|
2302
|
+
default: {
|
|
2303
|
+
headers: {
|
|
2304
|
+
[name: string]: unknown;
|
|
2305
|
+
};
|
|
2306
|
+
content: {
|
|
2307
|
+
"application/json": components["schemas"]["Error"];
|
|
2308
|
+
};
|
|
2309
|
+
};
|
|
2310
|
+
};
|
|
2311
|
+
};
|
|
2312
|
+
"bank_accounts.create": {
|
|
2313
|
+
parameters: {
|
|
2314
|
+
query?: never;
|
|
2315
|
+
header: {
|
|
2316
|
+
"Idempotency-Key": components["parameters"]["Idempotency-Key"];
|
|
2317
|
+
};
|
|
2318
|
+
path?: never;
|
|
2319
|
+
cookie?: never;
|
|
2320
|
+
};
|
|
2321
|
+
requestBody?: {
|
|
2322
|
+
content: {
|
|
2323
|
+
"application/json": components["schemas"]["BankAccountCreateInput"];
|
|
2324
|
+
};
|
|
2325
|
+
};
|
|
2326
|
+
responses: {
|
|
2327
|
+
/** @description OK */
|
|
2328
|
+
200: {
|
|
2329
|
+
headers: {
|
|
2330
|
+
"X-RateLimit-Limit": components["headers"]["X-RateLimit-Limit"];
|
|
2331
|
+
"X-RateLimit-Remaining": components["headers"]["X-RateLimit-Remaining"];
|
|
2332
|
+
"X-RateLimit-Reset": components["headers"]["X-RateLimit-Reset"];
|
|
2333
|
+
[name: string]: unknown;
|
|
2334
|
+
};
|
|
2335
|
+
content: {
|
|
2336
|
+
"application/json": components["schemas"]["BankAccountOperation"];
|
|
2337
|
+
};
|
|
2338
|
+
};
|
|
2339
|
+
400: components["responses"]["Error400"];
|
|
2340
|
+
401: components["responses"]["Error401"];
|
|
2341
|
+
403: components["responses"]["Error403"];
|
|
2342
|
+
409: components["responses"]["Error409"];
|
|
2343
|
+
429: components["responses"]["Error429"];
|
|
2344
|
+
/** @description Error response. */
|
|
2345
|
+
default: {
|
|
2346
|
+
headers: {
|
|
2347
|
+
[name: string]: unknown;
|
|
2348
|
+
};
|
|
2349
|
+
content: {
|
|
2350
|
+
"application/json": components["schemas"]["Error"];
|
|
2351
|
+
};
|
|
2352
|
+
};
|
|
2353
|
+
};
|
|
2354
|
+
};
|
|
2355
|
+
"bank_accounts.get": {
|
|
2356
|
+
parameters: {
|
|
2357
|
+
query?: never;
|
|
2358
|
+
header?: never;
|
|
2359
|
+
path: {
|
|
2360
|
+
id: string;
|
|
2361
|
+
};
|
|
2362
|
+
cookie?: never;
|
|
2363
|
+
};
|
|
2364
|
+
requestBody?: never;
|
|
2365
|
+
responses: {
|
|
2366
|
+
/** @description OK */
|
|
2367
|
+
200: {
|
|
2368
|
+
headers: {
|
|
2369
|
+
"X-RateLimit-Limit": components["headers"]["X-RateLimit-Limit"];
|
|
2370
|
+
"X-RateLimit-Remaining": components["headers"]["X-RateLimit-Remaining"];
|
|
2371
|
+
"X-RateLimit-Reset": components["headers"]["X-RateLimit-Reset"];
|
|
2372
|
+
[name: string]: unknown;
|
|
2373
|
+
};
|
|
2374
|
+
content: {
|
|
2375
|
+
"application/json": components["schemas"]["BankAccount"];
|
|
2376
|
+
};
|
|
2377
|
+
};
|
|
2378
|
+
400: components["responses"]["Error400"];
|
|
2379
|
+
401: components["responses"]["Error401"];
|
|
2380
|
+
403: components["responses"]["Error403"];
|
|
2381
|
+
429: components["responses"]["Error429"];
|
|
2382
|
+
/** @description Error response. */
|
|
2383
|
+
default: {
|
|
2384
|
+
headers: {
|
|
2385
|
+
[name: string]: unknown;
|
|
2386
|
+
};
|
|
2387
|
+
content: {
|
|
2388
|
+
"application/json": components["schemas"]["Error"];
|
|
2389
|
+
};
|
|
2390
|
+
};
|
|
2391
|
+
};
|
|
2392
|
+
};
|
|
2393
|
+
"bank_accounts.delete": {
|
|
2394
|
+
parameters: {
|
|
2395
|
+
query?: never;
|
|
2396
|
+
header?: never;
|
|
2397
|
+
path: {
|
|
2398
|
+
id: string;
|
|
2399
|
+
};
|
|
2400
|
+
cookie?: never;
|
|
2401
|
+
};
|
|
2402
|
+
requestBody?: never;
|
|
2403
|
+
responses: {
|
|
2404
|
+
/** @description OK */
|
|
2405
|
+
200: {
|
|
2406
|
+
headers: {
|
|
2407
|
+
"X-RateLimit-Limit": components["headers"]["X-RateLimit-Limit"];
|
|
2408
|
+
"X-RateLimit-Remaining": components["headers"]["X-RateLimit-Remaining"];
|
|
2409
|
+
"X-RateLimit-Reset": components["headers"]["X-RateLimit-Reset"];
|
|
2410
|
+
[name: string]: unknown;
|
|
2411
|
+
};
|
|
2412
|
+
content: {
|
|
2413
|
+
"application/json": components["schemas"]["BankAccountDeleted"];
|
|
2414
|
+
};
|
|
2415
|
+
};
|
|
2416
|
+
/** @description Accepted */
|
|
2417
|
+
202: {
|
|
2418
|
+
headers: {
|
|
2419
|
+
[name: string]: unknown;
|
|
2420
|
+
};
|
|
2421
|
+
content: {
|
|
2422
|
+
"application/json": components["schemas"]["BankAccountOperation"];
|
|
2423
|
+
};
|
|
2424
|
+
};
|
|
2425
|
+
400: components["responses"]["Error400"];
|
|
2426
|
+
401: components["responses"]["Error401"];
|
|
2427
|
+
403: components["responses"]["Error403"];
|
|
2428
|
+
429: components["responses"]["Error429"];
|
|
2429
|
+
/** @description Error response. */
|
|
2430
|
+
default: {
|
|
2431
|
+
headers: {
|
|
2432
|
+
[name: string]: unknown;
|
|
2433
|
+
};
|
|
2434
|
+
content: {
|
|
2435
|
+
"application/json": components["schemas"]["Error"];
|
|
2436
|
+
};
|
|
2437
|
+
};
|
|
2438
|
+
};
|
|
2439
|
+
};
|
|
2440
|
+
"deposit_quotes.create": {
|
|
2441
|
+
parameters: {
|
|
2442
|
+
query?: never;
|
|
2443
|
+
header: {
|
|
2444
|
+
"Idempotency-Key": components["parameters"]["Idempotency-Key"];
|
|
2445
|
+
};
|
|
2446
|
+
path?: never;
|
|
2447
|
+
cookie?: never;
|
|
2448
|
+
};
|
|
2449
|
+
requestBody?: {
|
|
2450
|
+
content: {
|
|
2451
|
+
"application/json": components["schemas"]["DepositQuoteInput"];
|
|
2452
|
+
};
|
|
2453
|
+
};
|
|
2454
|
+
responses: {
|
|
2455
|
+
/** @description OK */
|
|
2456
|
+
200: {
|
|
2457
|
+
headers: {
|
|
2458
|
+
"X-RateLimit-Limit": components["headers"]["X-RateLimit-Limit"];
|
|
2459
|
+
"X-RateLimit-Remaining": components["headers"]["X-RateLimit-Remaining"];
|
|
2460
|
+
"X-RateLimit-Reset": components["headers"]["X-RateLimit-Reset"];
|
|
2461
|
+
[name: string]: unknown;
|
|
2462
|
+
};
|
|
2463
|
+
content: {
|
|
2464
|
+
"application/json": components["schemas"]["DepositQuote"];
|
|
2465
|
+
};
|
|
2466
|
+
};
|
|
2467
|
+
400: components["responses"]["Error400"];
|
|
2468
|
+
401: components["responses"]["Error401"];
|
|
2469
|
+
403: components["responses"]["Error403"];
|
|
2470
|
+
409: components["responses"]["Error409"];
|
|
2471
|
+
429: components["responses"]["Error429"];
|
|
2472
|
+
/** @description Error response. */
|
|
2473
|
+
default: {
|
|
2474
|
+
headers: {
|
|
2475
|
+
[name: string]: unknown;
|
|
2476
|
+
};
|
|
2477
|
+
content: {
|
|
2478
|
+
"application/json": components["schemas"]["Error"];
|
|
2479
|
+
};
|
|
2480
|
+
};
|
|
2481
|
+
};
|
|
2482
|
+
};
|
|
2483
|
+
"deposit_quotes.get": {
|
|
2484
|
+
parameters: {
|
|
2485
|
+
query?: never;
|
|
2486
|
+
header?: never;
|
|
2487
|
+
path: {
|
|
2488
|
+
id: string;
|
|
2489
|
+
};
|
|
2490
|
+
cookie?: never;
|
|
2491
|
+
};
|
|
2492
|
+
requestBody?: never;
|
|
2493
|
+
responses: {
|
|
2494
|
+
/** @description OK */
|
|
2495
|
+
200: {
|
|
2496
|
+
headers: {
|
|
2497
|
+
"X-RateLimit-Limit": components["headers"]["X-RateLimit-Limit"];
|
|
2498
|
+
"X-RateLimit-Remaining": components["headers"]["X-RateLimit-Remaining"];
|
|
2499
|
+
"X-RateLimit-Reset": components["headers"]["X-RateLimit-Reset"];
|
|
2500
|
+
[name: string]: unknown;
|
|
2501
|
+
};
|
|
2502
|
+
content: {
|
|
2503
|
+
"application/json": components["schemas"]["DepositQuote"];
|
|
2504
|
+
};
|
|
2505
|
+
};
|
|
2506
|
+
400: components["responses"]["Error400"];
|
|
2507
|
+
401: components["responses"]["Error401"];
|
|
2508
|
+
403: components["responses"]["Error403"];
|
|
2509
|
+
429: components["responses"]["Error429"];
|
|
2510
|
+
/** @description Error response. */
|
|
2511
|
+
default: {
|
|
2512
|
+
headers: {
|
|
2513
|
+
[name: string]: unknown;
|
|
2514
|
+
};
|
|
2515
|
+
content: {
|
|
2516
|
+
"application/json": components["schemas"]["Error"];
|
|
2517
|
+
};
|
|
2518
|
+
};
|
|
2519
|
+
};
|
|
2520
|
+
};
|
|
2521
|
+
"deposits.create": {
|
|
2522
|
+
parameters: {
|
|
2523
|
+
query?: never;
|
|
2524
|
+
header: {
|
|
2525
|
+
"Idempotency-Key": components["parameters"]["Idempotency-Key"];
|
|
2526
|
+
};
|
|
2527
|
+
path?: never;
|
|
2528
|
+
cookie?: never;
|
|
2529
|
+
};
|
|
2530
|
+
requestBody?: {
|
|
2531
|
+
content: {
|
|
2532
|
+
"application/json": components["schemas"]["DepositInput"];
|
|
2533
|
+
};
|
|
2534
|
+
};
|
|
2535
|
+
responses: {
|
|
2536
|
+
/** @description OK */
|
|
2537
|
+
200: {
|
|
2538
|
+
headers: {
|
|
2539
|
+
"X-RateLimit-Limit": components["headers"]["X-RateLimit-Limit"];
|
|
2540
|
+
"X-RateLimit-Remaining": components["headers"]["X-RateLimit-Remaining"];
|
|
2541
|
+
"X-RateLimit-Reset": components["headers"]["X-RateLimit-Reset"];
|
|
2542
|
+
[name: string]: unknown;
|
|
2543
|
+
};
|
|
2544
|
+
content: {
|
|
2545
|
+
"application/json": components["schemas"]["Deposit"];
|
|
2546
|
+
};
|
|
2547
|
+
};
|
|
2548
|
+
400: components["responses"]["Error400"];
|
|
2549
|
+
401: components["responses"]["Error401"];
|
|
2550
|
+
403: components["responses"]["Error403"];
|
|
2551
|
+
409: components["responses"]["Error409"];
|
|
2552
|
+
429: components["responses"]["Error429"];
|
|
2553
|
+
/** @description Error response. */
|
|
2554
|
+
default: {
|
|
2555
|
+
headers: {
|
|
2556
|
+
[name: string]: unknown;
|
|
2557
|
+
};
|
|
2558
|
+
content: {
|
|
2559
|
+
"application/json": components["schemas"]["Error"];
|
|
2560
|
+
};
|
|
2561
|
+
};
|
|
2562
|
+
};
|
|
2563
|
+
};
|
|
2564
|
+
"deposits.get": {
|
|
2565
|
+
parameters: {
|
|
2566
|
+
query?: never;
|
|
2567
|
+
header?: never;
|
|
2568
|
+
path: {
|
|
2569
|
+
id: string;
|
|
2570
|
+
};
|
|
2571
|
+
cookie?: never;
|
|
2572
|
+
};
|
|
2573
|
+
requestBody?: never;
|
|
2574
|
+
responses: {
|
|
2575
|
+
/** @description OK */
|
|
2576
|
+
200: {
|
|
2577
|
+
headers: {
|
|
2578
|
+
"X-RateLimit-Limit": components["headers"]["X-RateLimit-Limit"];
|
|
2579
|
+
"X-RateLimit-Remaining": components["headers"]["X-RateLimit-Remaining"];
|
|
2580
|
+
"X-RateLimit-Reset": components["headers"]["X-RateLimit-Reset"];
|
|
2581
|
+
[name: string]: unknown;
|
|
2582
|
+
};
|
|
2583
|
+
content: {
|
|
2584
|
+
"application/json": components["schemas"]["Deposit"];
|
|
2585
|
+
};
|
|
2586
|
+
};
|
|
2587
|
+
400: components["responses"]["Error400"];
|
|
2588
|
+
401: components["responses"]["Error401"];
|
|
2589
|
+
403: components["responses"]["Error403"];
|
|
2590
|
+
429: components["responses"]["Error429"];
|
|
2591
|
+
/** @description Error response. */
|
|
2592
|
+
default: {
|
|
2593
|
+
headers: {
|
|
2594
|
+
[name: string]: unknown;
|
|
2595
|
+
};
|
|
2596
|
+
content: {
|
|
2597
|
+
"application/json": components["schemas"]["Error"];
|
|
2598
|
+
};
|
|
2599
|
+
};
|
|
2600
|
+
};
|
|
2601
|
+
};
|
|
1740
2602
|
"event_types.catalog": {
|
|
1741
2603
|
parameters: {
|
|
1742
2604
|
query?: never;
|
|
@@ -2018,7 +2880,7 @@ export interface operations {
|
|
|
2018
2880
|
};
|
|
2019
2881
|
};
|
|
2020
2882
|
};
|
|
2021
|
-
"external_wallets.
|
|
2883
|
+
"external_wallets.update": {
|
|
2022
2884
|
parameters: {
|
|
2023
2885
|
query?: never;
|
|
2024
2886
|
header: {
|
|
@@ -2031,7 +2893,7 @@ export interface operations {
|
|
|
2031
2893
|
};
|
|
2032
2894
|
requestBody?: {
|
|
2033
2895
|
content: {
|
|
2034
|
-
"application/json": components["schemas"]["
|
|
2896
|
+
"application/json": components["schemas"]["ExternalWalletUpdateInput"];
|
|
2035
2897
|
};
|
|
2036
2898
|
};
|
|
2037
2899
|
responses: {
|
|
@@ -2063,6 +2925,42 @@ export interface operations {
|
|
|
2063
2925
|
};
|
|
2064
2926
|
};
|
|
2065
2927
|
};
|
|
2928
|
+
"funding.snapshot": {
|
|
2929
|
+
parameters: {
|
|
2930
|
+
query?: never;
|
|
2931
|
+
header?: never;
|
|
2932
|
+
path?: never;
|
|
2933
|
+
cookie?: never;
|
|
2934
|
+
};
|
|
2935
|
+
requestBody?: never;
|
|
2936
|
+
responses: {
|
|
2937
|
+
/** @description OK */
|
|
2938
|
+
200: {
|
|
2939
|
+
headers: {
|
|
2940
|
+
"X-RateLimit-Limit": components["headers"]["X-RateLimit-Limit"];
|
|
2941
|
+
"X-RateLimit-Remaining": components["headers"]["X-RateLimit-Remaining"];
|
|
2942
|
+
"X-RateLimit-Reset": components["headers"]["X-RateLimit-Reset"];
|
|
2943
|
+
[name: string]: unknown;
|
|
2944
|
+
};
|
|
2945
|
+
content: {
|
|
2946
|
+
"application/json": components["schemas"]["FundingSnapshot"];
|
|
2947
|
+
};
|
|
2948
|
+
};
|
|
2949
|
+
400: components["responses"]["Error400"];
|
|
2950
|
+
401: components["responses"]["Error401"];
|
|
2951
|
+
403: components["responses"]["Error403"];
|
|
2952
|
+
429: components["responses"]["Error429"];
|
|
2953
|
+
/** @description Error response. */
|
|
2954
|
+
default: {
|
|
2955
|
+
headers: {
|
|
2956
|
+
[name: string]: unknown;
|
|
2957
|
+
};
|
|
2958
|
+
content: {
|
|
2959
|
+
"application/json": components["schemas"]["Error"];
|
|
2960
|
+
};
|
|
2961
|
+
};
|
|
2962
|
+
};
|
|
2963
|
+
};
|
|
2066
2964
|
"notifications.list": {
|
|
2067
2965
|
parameters: {
|
|
2068
2966
|
query?: {
|
|
@@ -2385,21 +3283,20 @@ export interface operations {
|
|
|
2385
3283
|
};
|
|
2386
3284
|
};
|
|
2387
3285
|
};
|
|
2388
|
-
"
|
|
3286
|
+
"source_wallet_declarations.create": {
|
|
2389
3287
|
parameters: {
|
|
2390
|
-
query?:
|
|
2391
|
-
|
|
2392
|
-
|
|
2393
|
-
/** @description Return the statements immediately after this statement id in the list order. Cannot be combined with ending_before. */
|
|
2394
|
-
starting_after?: string;
|
|
2395
|
-
/** @description Return the statements immediately before this statement id in the list order. Cannot be combined with starting_after. */
|
|
2396
|
-
ending_before?: string;
|
|
3288
|
+
query?: never;
|
|
3289
|
+
header: {
|
|
3290
|
+
"Idempotency-Key": components["parameters"]["Idempotency-Key"];
|
|
2397
3291
|
};
|
|
2398
|
-
header?: never;
|
|
2399
3292
|
path?: never;
|
|
2400
3293
|
cookie?: never;
|
|
2401
3294
|
};
|
|
2402
|
-
requestBody?:
|
|
3295
|
+
requestBody?: {
|
|
3296
|
+
content: {
|
|
3297
|
+
"application/json": components["schemas"]["SourceWalletDeclarationInput"];
|
|
3298
|
+
};
|
|
3299
|
+
};
|
|
2403
3300
|
responses: {
|
|
2404
3301
|
/** @description OK */
|
|
2405
3302
|
200: {
|
|
@@ -2410,12 +3307,13 @@ export interface operations {
|
|
|
2410
3307
|
[name: string]: unknown;
|
|
2411
3308
|
};
|
|
2412
3309
|
content: {
|
|
2413
|
-
"application/json": components["schemas"]["
|
|
3310
|
+
"application/json": components["schemas"]["SourceWalletDeclaration"];
|
|
2414
3311
|
};
|
|
2415
3312
|
};
|
|
2416
3313
|
400: components["responses"]["Error400"];
|
|
2417
3314
|
401: components["responses"]["Error401"];
|
|
2418
3315
|
403: components["responses"]["Error403"];
|
|
3316
|
+
409: components["responses"]["Error409"];
|
|
2419
3317
|
429: components["responses"]["Error429"];
|
|
2420
3318
|
/** @description Error response. */
|
|
2421
3319
|
default: {
|
|
@@ -2428,12 +3326,11 @@ export interface operations {
|
|
|
2428
3326
|
};
|
|
2429
3327
|
};
|
|
2430
3328
|
};
|
|
2431
|
-
"
|
|
3329
|
+
"source_wallet_declarations.get": {
|
|
2432
3330
|
parameters: {
|
|
2433
3331
|
query?: never;
|
|
2434
3332
|
header?: never;
|
|
2435
3333
|
path: {
|
|
2436
|
-
/** @description The statement id. */
|
|
2437
3334
|
id: string;
|
|
2438
3335
|
};
|
|
2439
3336
|
cookie?: never;
|
|
@@ -2449,7 +3346,50 @@ export interface operations {
|
|
|
2449
3346
|
[name: string]: unknown;
|
|
2450
3347
|
};
|
|
2451
3348
|
content: {
|
|
2452
|
-
"application/json": components["schemas"]["
|
|
3349
|
+
"application/json": components["schemas"]["SourceWalletDeclaration"];
|
|
3350
|
+
};
|
|
3351
|
+
};
|
|
3352
|
+
400: components["responses"]["Error400"];
|
|
3353
|
+
401: components["responses"]["Error401"];
|
|
3354
|
+
403: components["responses"]["Error403"];
|
|
3355
|
+
429: components["responses"]["Error429"];
|
|
3356
|
+
/** @description Error response. */
|
|
3357
|
+
default: {
|
|
3358
|
+
headers: {
|
|
3359
|
+
[name: string]: unknown;
|
|
3360
|
+
};
|
|
3361
|
+
content: {
|
|
3362
|
+
"application/json": components["schemas"]["Error"];
|
|
3363
|
+
};
|
|
3364
|
+
};
|
|
3365
|
+
};
|
|
3366
|
+
};
|
|
3367
|
+
"statements.list": {
|
|
3368
|
+
parameters: {
|
|
3369
|
+
query?: {
|
|
3370
|
+
/** @description How many statements to return. Defaults to 10. A value above 100 is rejected, not reduced. */
|
|
3371
|
+
limit?: number;
|
|
3372
|
+
/** @description Return the statements immediately after this statement id in the list order. Cannot be combined with ending_before. */
|
|
3373
|
+
starting_after?: string;
|
|
3374
|
+
/** @description Return the statements immediately before this statement id in the list order. Cannot be combined with starting_after. */
|
|
3375
|
+
ending_before?: string;
|
|
3376
|
+
};
|
|
3377
|
+
header?: never;
|
|
3378
|
+
path?: never;
|
|
3379
|
+
cookie?: never;
|
|
3380
|
+
};
|
|
3381
|
+
requestBody?: never;
|
|
3382
|
+
responses: {
|
|
3383
|
+
/** @description OK */
|
|
3384
|
+
200: {
|
|
3385
|
+
headers: {
|
|
3386
|
+
"X-RateLimit-Limit": components["headers"]["X-RateLimit-Limit"];
|
|
3387
|
+
"X-RateLimit-Remaining": components["headers"]["X-RateLimit-Remaining"];
|
|
3388
|
+
"X-RateLimit-Reset": components["headers"]["X-RateLimit-Reset"];
|
|
3389
|
+
[name: string]: unknown;
|
|
3390
|
+
};
|
|
3391
|
+
content: {
|
|
3392
|
+
"application/json": components["schemas"]["StatementList"];
|
|
2453
3393
|
};
|
|
2454
3394
|
};
|
|
2455
3395
|
400: components["responses"]["Error400"];
|
|
@@ -2467,7 +3407,7 @@ export interface operations {
|
|
|
2467
3407
|
};
|
|
2468
3408
|
};
|
|
2469
3409
|
};
|
|
2470
|
-
"statements.
|
|
3410
|
+
"statements.retrieve": {
|
|
2471
3411
|
parameters: {
|
|
2472
3412
|
query?: never;
|
|
2473
3413
|
header?: never;
|
|
@@ -2488,7 +3428,7 @@ export interface operations {
|
|
|
2488
3428
|
[name: string]: unknown;
|
|
2489
3429
|
};
|
|
2490
3430
|
content: {
|
|
2491
|
-
"application/json": components["schemas"]["
|
|
3431
|
+
"application/json": components["schemas"]["StatementDetail"];
|
|
2492
3432
|
};
|
|
2493
3433
|
};
|
|
2494
3434
|
400: components["responses"]["Error400"];
|