@gol/sdk 0.2.0 → 0.3.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 +6 -5
- package/dist/generated/platform.d.ts +391 -2
- package/dist/generated/platform.d.ts.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/owner.d.ts +9 -1
- package/dist/owner.d.ts.map +1 -1
- package/dist/owner.js +45 -0
- package/dist/owner.js.map +1 -1
- package/dist/server.d.ts +10 -3
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +22 -1
- package/dist/server.js.map +1 -1
- package/dist/types.d.ts +4 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
TypeScript SDK for GOL Network bounded mandates with hosted, owner-reimbursed gas on Base Sepolia testnet (chain `84532`).
|
|
4
4
|
|
|
5
|
-
A developer's agent sends bounded USDC transfers from an end user's existing smart account. GOL's relayer pays the network gas first. After the action
|
|
5
|
+
A developer's agent sends bounded USDC transfers from an end user's existing smart account. GOL's relayer pays the network gas first. After the action reaches the hosted profile's selected Base head, GOL claims the actual gas back in native ETH from the same account, within caps the owner signed. The owner signs every authority in their own wallet and can pause, resume, or revoke without GOL.
|
|
6
6
|
|
|
7
7
|
Supported accounts are four exact configurations: Safe 1.4.1, Biconomy Nexus 1.0.0, ZeroDev Kernel v0.3.1, and Alchemy Modular Account v2. The transfer asset is Circle USDC on Base Sepolia. Read deployed addresses and limits from `getGasConfiguration`; do not hard-code them.
|
|
8
8
|
|
|
@@ -21,10 +21,11 @@ Create a test project and an API key with `project:read`, `accounts:read`, `mand
|
|
|
21
21
|
1. **Install the core on the owner's account.** `getAccountStatus` reports the detected family and whether the core is installed. If not, build the owner operation in the browser with `prepareOwnerInstallation` and `prepareOwnerOperation`, have the owner sign it with `signOwnerOperation`, and submit the returned transaction (a Safe transaction, or an EntryPoint v0.7 user operation for Nexus, Kernel, and Alchemy).
|
|
22
22
|
2. **Prepare the approval on your server.** `prepareGasPolicy` compiles the exact mandate policy (allowed recipients, per-action and total USDC caps) and gas policy (per-action and total ETH reimbursement caps, expiry, chargeable outcomes).
|
|
23
23
|
3. **Have the owner sign in the browser.** `signPreparedGasPolicy(ownerWallet, prepared, expectations)` independently recomputes every ID, digest, and wallet payload, asks the wallet for one `eth_signTypedData_v4` signature, and returns a `createMandateWithGas` call. Any address may send it; authority comes only from the owner's signature.
|
|
24
|
-
4. **Confirm.** `confirmGasPolicy` (or `waitForGasPolicyConfirmation`) returns the policy once the approval
|
|
24
|
+
4. **Confirm.** `confirmGasPolicy` (or `waitForGasPolicyConfirmation`) returns the policy once both receipt providers observe the approval at the hosted profile's selected Base head. Profile 3 uses the lower `safe` head, usually tens of seconds behind the latest head on Base Sepolia. This is earlier than Ethereum finality, and timing varies with network conditions.
|
|
25
25
|
5. **Submit actions from your agent.** `prepareGasExecution` returns EIP-712 typed data; your agent signs it and you call `submitGasExecution` with the same 32-byte action ID as the idempotency key. A retry with the same ID and signature returns the original execution and moves no additional value.
|
|
26
26
|
6. **Observe.** Poll `getGasExecution` or `waitForGasExecution`, or receive signed webhooks. Network cost, owner reimbursement, and GOL cost are reported separately.
|
|
27
|
-
7. **
|
|
27
|
+
7. **Pause or resume.** On your server, call `prepareGasPolicySafetyAction(projectId, gasPolicyId, { action: "pause" })` or use `"resume"`. In the owner's browser, `signPreparedSafetyAction(walletClient, prepared)` verifies the digest and wallet payload before signing and returns a core call that any address may relay. Alternatively, submit `prepared.directOwnerCall` through the owner's account. Confirm the transaction with `waitForGasPolicySafetyAction`. A paused policy refuses new submissions. An accepted action waiting to be sent remains held while paused, proceeds if the owner resumes before its quote expires, or closes without owner liability at quote expiry.
|
|
28
|
+
8. **Revoke.** `prepareGasPolicyRevocation` returns both owner paths: a relayed owner signature (`signPreparedRevocation`) and a direct account call. Either works without GOL or the agent.
|
|
28
29
|
|
|
29
30
|
```ts
|
|
30
31
|
// Server
|
|
@@ -81,7 +82,7 @@ const event = verifyWebhook(
|
|
|
81
82
|
|
|
82
83
|
Each family's owner path is fixed: Safe `SafeMessage` under the account's domain, Nexus ERC-7739 `PersonalSign` with the K1 validator prefix, Kernel `Kernel(bytes32 hash)` with the root locator, and Alchemy `ReplaySafeHash` with the entity-zero prefix. `buildWalletSigningPayload` and `verifyWalletSigningPayload` expose them. The SDK never signs a raw hash with `personal_sign` for an approval, and never receives an owner key. Owner user operations for Nexus, Kernel, and Alchemy are signed with `personal_sign` over the EntryPoint v0.7 user operation hash. An Alchemy account can hold one GOL validation at entity 1; remove an earlier GOL core with `preparePermanentRemoval` before installing this one.
|
|
83
84
|
|
|
84
|
-
The encoders are checked against the independent Python reference vectors in `contracts/tools/encoding/gol_encoding.py`, and `pnpm verify:owner-fork` drives installation, approval, and both revocation paths for the four families on an anvil fork of Base Sepolia.
|
|
85
|
+
The encoders are checked against the independent Python reference vectors in `contracts/tools/encoding/gol_encoding.py`, and `pnpm verify:owner-fork` drives installation, approval, relayed and direct pause and resume, and both revocation paths for the four families on an anvil fork of Base Sepolia.
|
|
85
86
|
|
|
86
87
|
## API key authentication
|
|
87
88
|
|
|
@@ -136,7 +137,7 @@ pnpm verify:account-dialects
|
|
|
136
137
|
pnpm format:check
|
|
137
138
|
```
|
|
138
139
|
|
|
139
|
-
`pnpm upstream:check` and `pnpm verify:gas-encoding` need sibling `platform` and `contracts` checkouts. `pnpm verify:account-dialects` reads Base Sepolia over RPC, using `BASE_SEPOLIA_RPC_URL`
|
|
140
|
+
`pnpm upstream:check` and `pnpm verify:gas-encoding` need sibling `platform` and `contracts` checkouts. `pnpm verify:account-dialects` reads Base Sepolia over RPC, using `BASE_SEPOLIA_RPC_URL`, else an Alchemy endpoint built from `ALCHEMY_API_KEY`, else the public endpoint. CI runs `generate:check`, `typecheck`, `lint`, `test`, `format:check`, and `verify:pack` on Node.js 22; it does not run the sibling or RPC checks.
|
|
140
141
|
|
|
141
142
|
`openapi/platform.json` is a versioned snapshot of the platform contract. `pnpm sync:openapi` refreshes the snapshot from `../platform/openapi/openapi.json` by default and regenerates TypeScript declarations. Set `GOL_PLATFORM_OPENAPI_PATH` when the platform repository is elsewhere.
|
|
142
143
|
|
|
@@ -358,6 +358,38 @@ export interface paths {
|
|
|
358
358
|
patch?: never;
|
|
359
359
|
trace?: never;
|
|
360
360
|
};
|
|
361
|
+
"/v1/projects/{projectId}/gas-policies/{gasPolicyId}/safety-actions/prepare": {
|
|
362
|
+
parameters: {
|
|
363
|
+
query?: never;
|
|
364
|
+
header?: never;
|
|
365
|
+
path?: never;
|
|
366
|
+
cookie?: never;
|
|
367
|
+
};
|
|
368
|
+
get?: never;
|
|
369
|
+
put?: never;
|
|
370
|
+
post: operations["prepareGasPolicySafetyAction"];
|
|
371
|
+
delete?: never;
|
|
372
|
+
options?: never;
|
|
373
|
+
head?: never;
|
|
374
|
+
patch?: never;
|
|
375
|
+
trace?: never;
|
|
376
|
+
};
|
|
377
|
+
"/v1/projects/{projectId}/gas-policies/{gasPolicyId}/safety-actions/confirm": {
|
|
378
|
+
parameters: {
|
|
379
|
+
query?: never;
|
|
380
|
+
header?: never;
|
|
381
|
+
path?: never;
|
|
382
|
+
cookie?: never;
|
|
383
|
+
};
|
|
384
|
+
get?: never;
|
|
385
|
+
put?: never;
|
|
386
|
+
post: operations["confirmGasPolicySafetyAction"];
|
|
387
|
+
delete?: never;
|
|
388
|
+
options?: never;
|
|
389
|
+
head?: never;
|
|
390
|
+
patch?: never;
|
|
391
|
+
trace?: never;
|
|
392
|
+
};
|
|
361
393
|
"/v1/projects/{projectId}/gas-executions/{executionId}/disputes": {
|
|
362
394
|
parameters: {
|
|
363
395
|
query?: never;
|
|
@@ -648,7 +680,7 @@ export interface components {
|
|
|
648
680
|
account: string;
|
|
649
681
|
family: ("safe" | "nexus" | "kernel" | "alchemy") | null;
|
|
650
682
|
agent: string;
|
|
651
|
-
status: "active" | "revoked" | "expired" | "unavailable";
|
|
683
|
+
status: "active" | "paused" | "revoked" | "expired" | "unavailable";
|
|
652
684
|
maxPerActionWei: string;
|
|
653
685
|
maxTotalWei: string;
|
|
654
686
|
spentWei: string;
|
|
@@ -769,6 +801,8 @@ export interface operations {
|
|
|
769
801
|
status: "ready";
|
|
770
802
|
version: string;
|
|
771
803
|
sourceCommit: string;
|
|
804
|
+
/** @description Whether operational alerting reported within the last five minutes. It does not change readiness. */
|
|
805
|
+
alerting?: "ok" | "stale";
|
|
772
806
|
};
|
|
773
807
|
};
|
|
774
808
|
};
|
|
@@ -4908,6 +4942,361 @@ export interface operations {
|
|
|
4908
4942
|
};
|
|
4909
4943
|
};
|
|
4910
4944
|
};
|
|
4945
|
+
prepareGasPolicySafetyAction: {
|
|
4946
|
+
parameters: {
|
|
4947
|
+
query?: never;
|
|
4948
|
+
header?: never;
|
|
4949
|
+
path: {
|
|
4950
|
+
projectId: string;
|
|
4951
|
+
gasPolicyId: string;
|
|
4952
|
+
};
|
|
4953
|
+
cookie?: never;
|
|
4954
|
+
};
|
|
4955
|
+
requestBody: {
|
|
4956
|
+
content: {
|
|
4957
|
+
"application/json": {
|
|
4958
|
+
action: "pause" | "resume";
|
|
4959
|
+
deadline?: number;
|
|
4960
|
+
};
|
|
4961
|
+
};
|
|
4962
|
+
};
|
|
4963
|
+
responses: {
|
|
4964
|
+
/** @description Default Response */
|
|
4965
|
+
200: {
|
|
4966
|
+
headers: {
|
|
4967
|
+
[name: string]: unknown;
|
|
4968
|
+
};
|
|
4969
|
+
content: {
|
|
4970
|
+
"application/json": {
|
|
4971
|
+
gasPolicyId: string;
|
|
4972
|
+
mandateId: string;
|
|
4973
|
+
account: string;
|
|
4974
|
+
family: "safe" | "nexus" | "kernel" | "alchemy";
|
|
4975
|
+
/** @enum {number} */
|
|
4976
|
+
chainId: 84532;
|
|
4977
|
+
core: string;
|
|
4978
|
+
action: "pause" | "resume";
|
|
4979
|
+
actionCode: 1 | 2;
|
|
4980
|
+
nonce: string;
|
|
4981
|
+
deadline: number;
|
|
4982
|
+
digest: string;
|
|
4983
|
+
directOwnerCall: {
|
|
4984
|
+
to: string;
|
|
4985
|
+
data: string;
|
|
4986
|
+
};
|
|
4987
|
+
relayed: {
|
|
4988
|
+
signing: components["schemas"]["def-5"];
|
|
4989
|
+
/** @enum {string} */
|
|
4990
|
+
functionName: "safetyAction";
|
|
4991
|
+
};
|
|
4992
|
+
observedBlockNumber: string;
|
|
4993
|
+
};
|
|
4994
|
+
};
|
|
4995
|
+
};
|
|
4996
|
+
/** @description Default Response */
|
|
4997
|
+
400: {
|
|
4998
|
+
headers: {
|
|
4999
|
+
[name: string]: unknown;
|
|
5000
|
+
};
|
|
5001
|
+
content: {
|
|
5002
|
+
"application/json": {
|
|
5003
|
+
error: {
|
|
5004
|
+
code: string;
|
|
5005
|
+
message: string;
|
|
5006
|
+
/** Format: uuid */
|
|
5007
|
+
correlationId: string;
|
|
5008
|
+
};
|
|
5009
|
+
};
|
|
5010
|
+
};
|
|
5011
|
+
};
|
|
5012
|
+
/** @description Default Response */
|
|
5013
|
+
401: {
|
|
5014
|
+
headers: {
|
|
5015
|
+
[name: string]: unknown;
|
|
5016
|
+
};
|
|
5017
|
+
content: {
|
|
5018
|
+
"application/json": {
|
|
5019
|
+
error: {
|
|
5020
|
+
code: string;
|
|
5021
|
+
message: string;
|
|
5022
|
+
/** Format: uuid */
|
|
5023
|
+
correlationId: string;
|
|
5024
|
+
};
|
|
5025
|
+
};
|
|
5026
|
+
};
|
|
5027
|
+
};
|
|
5028
|
+
/** @description Default Response */
|
|
5029
|
+
403: {
|
|
5030
|
+
headers: {
|
|
5031
|
+
[name: string]: unknown;
|
|
5032
|
+
};
|
|
5033
|
+
content: {
|
|
5034
|
+
"application/json": {
|
|
5035
|
+
error: {
|
|
5036
|
+
code: string;
|
|
5037
|
+
message: string;
|
|
5038
|
+
/** Format: uuid */
|
|
5039
|
+
correlationId: string;
|
|
5040
|
+
};
|
|
5041
|
+
};
|
|
5042
|
+
};
|
|
5043
|
+
};
|
|
5044
|
+
/** @description Default Response */
|
|
5045
|
+
404: {
|
|
5046
|
+
headers: {
|
|
5047
|
+
[name: string]: unknown;
|
|
5048
|
+
};
|
|
5049
|
+
content: {
|
|
5050
|
+
"application/json": {
|
|
5051
|
+
error: {
|
|
5052
|
+
code: string;
|
|
5053
|
+
message: string;
|
|
5054
|
+
/** Format: uuid */
|
|
5055
|
+
correlationId: string;
|
|
5056
|
+
};
|
|
5057
|
+
};
|
|
5058
|
+
};
|
|
5059
|
+
};
|
|
5060
|
+
/** @description Default Response */
|
|
5061
|
+
409: {
|
|
5062
|
+
headers: {
|
|
5063
|
+
[name: string]: unknown;
|
|
5064
|
+
};
|
|
5065
|
+
content: {
|
|
5066
|
+
"application/json": {
|
|
5067
|
+
error: {
|
|
5068
|
+
code: string;
|
|
5069
|
+
message: string;
|
|
5070
|
+
/** Format: uuid */
|
|
5071
|
+
correlationId: string;
|
|
5072
|
+
};
|
|
5073
|
+
};
|
|
5074
|
+
};
|
|
5075
|
+
};
|
|
5076
|
+
/** @description Default Response */
|
|
5077
|
+
429: {
|
|
5078
|
+
headers: {
|
|
5079
|
+
[name: string]: unknown;
|
|
5080
|
+
};
|
|
5081
|
+
content: {
|
|
5082
|
+
"application/json": {
|
|
5083
|
+
error: {
|
|
5084
|
+
code: string;
|
|
5085
|
+
message: string;
|
|
5086
|
+
/** Format: uuid */
|
|
5087
|
+
correlationId: string;
|
|
5088
|
+
};
|
|
5089
|
+
};
|
|
5090
|
+
};
|
|
5091
|
+
};
|
|
5092
|
+
/** @description Default Response */
|
|
5093
|
+
500: {
|
|
5094
|
+
headers: {
|
|
5095
|
+
[name: string]: unknown;
|
|
5096
|
+
};
|
|
5097
|
+
content: {
|
|
5098
|
+
"application/json": {
|
|
5099
|
+
error: {
|
|
5100
|
+
code: string;
|
|
5101
|
+
message: string;
|
|
5102
|
+
/** Format: uuid */
|
|
5103
|
+
correlationId: string;
|
|
5104
|
+
};
|
|
5105
|
+
};
|
|
5106
|
+
};
|
|
5107
|
+
};
|
|
5108
|
+
/** @description Default Response */
|
|
5109
|
+
503: {
|
|
5110
|
+
headers: {
|
|
5111
|
+
[name: string]: unknown;
|
|
5112
|
+
};
|
|
5113
|
+
content: {
|
|
5114
|
+
"application/json": {
|
|
5115
|
+
error: {
|
|
5116
|
+
code: string;
|
|
5117
|
+
message: string;
|
|
5118
|
+
/** Format: uuid */
|
|
5119
|
+
correlationId: string;
|
|
5120
|
+
};
|
|
5121
|
+
};
|
|
5122
|
+
};
|
|
5123
|
+
};
|
|
5124
|
+
};
|
|
5125
|
+
};
|
|
5126
|
+
confirmGasPolicySafetyAction: {
|
|
5127
|
+
parameters: {
|
|
5128
|
+
query?: never;
|
|
5129
|
+
header?: never;
|
|
5130
|
+
path: {
|
|
5131
|
+
projectId: string;
|
|
5132
|
+
gasPolicyId: string;
|
|
5133
|
+
};
|
|
5134
|
+
cookie?: never;
|
|
5135
|
+
};
|
|
5136
|
+
requestBody: {
|
|
5137
|
+
content: {
|
|
5138
|
+
"application/json": {
|
|
5139
|
+
action: "pause" | "resume";
|
|
5140
|
+
transactionHash: string;
|
|
5141
|
+
};
|
|
5142
|
+
};
|
|
5143
|
+
};
|
|
5144
|
+
responses: {
|
|
5145
|
+
/** @description Default Response */
|
|
5146
|
+
200: {
|
|
5147
|
+
headers: {
|
|
5148
|
+
[name: string]: unknown;
|
|
5149
|
+
};
|
|
5150
|
+
content: {
|
|
5151
|
+
"application/json": components["schemas"]["def-6"];
|
|
5152
|
+
};
|
|
5153
|
+
};
|
|
5154
|
+
/** @description Default Response */
|
|
5155
|
+
202: {
|
|
5156
|
+
headers: {
|
|
5157
|
+
[name: string]: unknown;
|
|
5158
|
+
};
|
|
5159
|
+
content: {
|
|
5160
|
+
"application/json": {
|
|
5161
|
+
/** @enum {string} */
|
|
5162
|
+
status: "observing";
|
|
5163
|
+
transactionHash: string;
|
|
5164
|
+
/** Format: uuid */
|
|
5165
|
+
draftId?: string;
|
|
5166
|
+
gasPolicyId?: string;
|
|
5167
|
+
};
|
|
5168
|
+
};
|
|
5169
|
+
};
|
|
5170
|
+
/** @description Default Response */
|
|
5171
|
+
400: {
|
|
5172
|
+
headers: {
|
|
5173
|
+
[name: string]: unknown;
|
|
5174
|
+
};
|
|
5175
|
+
content: {
|
|
5176
|
+
"application/json": {
|
|
5177
|
+
error: {
|
|
5178
|
+
code: string;
|
|
5179
|
+
message: string;
|
|
5180
|
+
/** Format: uuid */
|
|
5181
|
+
correlationId: string;
|
|
5182
|
+
};
|
|
5183
|
+
};
|
|
5184
|
+
};
|
|
5185
|
+
};
|
|
5186
|
+
/** @description Default Response */
|
|
5187
|
+
401: {
|
|
5188
|
+
headers: {
|
|
5189
|
+
[name: string]: unknown;
|
|
5190
|
+
};
|
|
5191
|
+
content: {
|
|
5192
|
+
"application/json": {
|
|
5193
|
+
error: {
|
|
5194
|
+
code: string;
|
|
5195
|
+
message: string;
|
|
5196
|
+
/** Format: uuid */
|
|
5197
|
+
correlationId: string;
|
|
5198
|
+
};
|
|
5199
|
+
};
|
|
5200
|
+
};
|
|
5201
|
+
};
|
|
5202
|
+
/** @description Default Response */
|
|
5203
|
+
403: {
|
|
5204
|
+
headers: {
|
|
5205
|
+
[name: string]: unknown;
|
|
5206
|
+
};
|
|
5207
|
+
content: {
|
|
5208
|
+
"application/json": {
|
|
5209
|
+
error: {
|
|
5210
|
+
code: string;
|
|
5211
|
+
message: string;
|
|
5212
|
+
/** Format: uuid */
|
|
5213
|
+
correlationId: string;
|
|
5214
|
+
};
|
|
5215
|
+
};
|
|
5216
|
+
};
|
|
5217
|
+
};
|
|
5218
|
+
/** @description Default Response */
|
|
5219
|
+
404: {
|
|
5220
|
+
headers: {
|
|
5221
|
+
[name: string]: unknown;
|
|
5222
|
+
};
|
|
5223
|
+
content: {
|
|
5224
|
+
"application/json": {
|
|
5225
|
+
error: {
|
|
5226
|
+
code: string;
|
|
5227
|
+
message: string;
|
|
5228
|
+
/** Format: uuid */
|
|
5229
|
+
correlationId: string;
|
|
5230
|
+
};
|
|
5231
|
+
};
|
|
5232
|
+
};
|
|
5233
|
+
};
|
|
5234
|
+
/** @description Default Response */
|
|
5235
|
+
409: {
|
|
5236
|
+
headers: {
|
|
5237
|
+
[name: string]: unknown;
|
|
5238
|
+
};
|
|
5239
|
+
content: {
|
|
5240
|
+
"application/json": {
|
|
5241
|
+
error: {
|
|
5242
|
+
code: string;
|
|
5243
|
+
message: string;
|
|
5244
|
+
/** Format: uuid */
|
|
5245
|
+
correlationId: string;
|
|
5246
|
+
};
|
|
5247
|
+
};
|
|
5248
|
+
};
|
|
5249
|
+
};
|
|
5250
|
+
/** @description Default Response */
|
|
5251
|
+
429: {
|
|
5252
|
+
headers: {
|
|
5253
|
+
[name: string]: unknown;
|
|
5254
|
+
};
|
|
5255
|
+
content: {
|
|
5256
|
+
"application/json": {
|
|
5257
|
+
error: {
|
|
5258
|
+
code: string;
|
|
5259
|
+
message: string;
|
|
5260
|
+
/** Format: uuid */
|
|
5261
|
+
correlationId: string;
|
|
5262
|
+
};
|
|
5263
|
+
};
|
|
5264
|
+
};
|
|
5265
|
+
};
|
|
5266
|
+
/** @description Default Response */
|
|
5267
|
+
500: {
|
|
5268
|
+
headers: {
|
|
5269
|
+
[name: string]: unknown;
|
|
5270
|
+
};
|
|
5271
|
+
content: {
|
|
5272
|
+
"application/json": {
|
|
5273
|
+
error: {
|
|
5274
|
+
code: string;
|
|
5275
|
+
message: string;
|
|
5276
|
+
/** Format: uuid */
|
|
5277
|
+
correlationId: string;
|
|
5278
|
+
};
|
|
5279
|
+
};
|
|
5280
|
+
};
|
|
5281
|
+
};
|
|
5282
|
+
/** @description Default Response */
|
|
5283
|
+
503: {
|
|
5284
|
+
headers: {
|
|
5285
|
+
[name: string]: unknown;
|
|
5286
|
+
};
|
|
5287
|
+
content: {
|
|
5288
|
+
"application/json": {
|
|
5289
|
+
error: {
|
|
5290
|
+
code: string;
|
|
5291
|
+
message: string;
|
|
5292
|
+
/** Format: uuid */
|
|
5293
|
+
correlationId: string;
|
|
5294
|
+
};
|
|
5295
|
+
};
|
|
5296
|
+
};
|
|
5297
|
+
};
|
|
5298
|
+
};
|
|
5299
|
+
};
|
|
4911
5300
|
openGasExecutionDispute: {
|
|
4912
5301
|
parameters: {
|
|
4913
5302
|
query?: never;
|
|
@@ -5238,7 +5627,7 @@ export interface operations {
|
|
|
5238
5627
|
"application/json": {
|
|
5239
5628
|
url: string;
|
|
5240
5629
|
description?: string;
|
|
5241
|
-
eventTypes?: ("gas_execution.updated" | "gas_policy.confirmed" | "gas_policy.revoked" | "webhook.test")[];
|
|
5630
|
+
eventTypes?: ("gas_execution.updated" | "gas_policy.confirmed" | "gas_policy.revoked" | "gas_policy.paused" | "gas_policy.resumed" | "webhook.test")[];
|
|
5242
5631
|
};
|
|
5243
5632
|
};
|
|
5244
5633
|
};
|