@1claw/sdk 0.54.0 → 0.56.3

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.
@@ -539,6 +539,28 @@ export interface paths {
539
539
  patch: operations["updateSecuritySettings"];
540
540
  trace?: never;
541
541
  };
542
+ "/v1/auth/human-factor-auth": {
543
+ parameters: {
544
+ query?: never;
545
+ header?: never;
546
+ path?: never;
547
+ cookie?: never;
548
+ };
549
+ /**
550
+ * Get effective human factor auth policy
551
+ * @description Returns the resolved HFA policy for treasury wallet send, swap, and export.
552
+ * Precedence: user override → spend policy → platform defaults.
553
+ */
554
+ get: operations["getHumanFactorAuth"];
555
+ /** Set user human factor auth policy */
556
+ put: operations["upsertHumanFactorAuth"];
557
+ post?: never;
558
+ delete?: never;
559
+ options?: never;
560
+ head?: never;
561
+ patch?: never;
562
+ trace?: never;
563
+ };
542
564
  "/v1/auth/mfa/status": {
543
565
  parameters: {
544
566
  query?: never;
@@ -1674,6 +1696,229 @@ export interface paths {
1674
1696
  patch?: never;
1675
1697
  trace?: never;
1676
1698
  };
1699
+ "/v1/agents/{agent_id}/accounts": {
1700
+ parameters: {
1701
+ query?: never;
1702
+ header?: never;
1703
+ path?: never;
1704
+ cookie?: never;
1705
+ };
1706
+ /** List agent on-chain accounts */
1707
+ get: operations["listAgentAccounts"];
1708
+ put?: never;
1709
+ /**
1710
+ * Provision an agent account record
1711
+ * @description Human-only. Creates a DB record for an EOA or Safe account (Safe onchain sync is stubbed).
1712
+ */
1713
+ post: operations["provisionAgentAccount"];
1714
+ delete?: never;
1715
+ options?: never;
1716
+ head?: never;
1717
+ patch?: never;
1718
+ trace?: never;
1719
+ };
1720
+ "/v1/agents/{agent_id}/accounts/migrate": {
1721
+ parameters: {
1722
+ query?: never;
1723
+ header?: never;
1724
+ path?: never;
1725
+ cookie?: never;
1726
+ };
1727
+ get?: never;
1728
+ put?: never;
1729
+ /**
1730
+ * EOA to Safe migration wizard
1731
+ * @description Human-only. Provisions counterfactual Safe and returns sweep plan. Onchain module broadcast stubbed pre-audit.
1732
+ */
1733
+ post: operations["migrateAgentToSafe"];
1734
+ delete?: never;
1735
+ options?: never;
1736
+ head?: never;
1737
+ patch?: never;
1738
+ trace?: never;
1739
+ };
1740
+ "/v1/agents/{agent_id}/accounts/{chain}/deprecate-eoa": {
1741
+ parameters: {
1742
+ query?: never;
1743
+ header?: never;
1744
+ path?: never;
1745
+ cookie?: never;
1746
+ };
1747
+ get?: never;
1748
+ put?: never;
1749
+ /** Mark agent EOA account deprecated */
1750
+ post: operations["deprecateAgentEoa"];
1751
+ delete?: never;
1752
+ options?: never;
1753
+ head?: never;
1754
+ patch?: never;
1755
+ trace?: never;
1756
+ };
1757
+ "/v1/agents/{agent_id}/accounts/{chain}/deploy": {
1758
+ parameters: {
1759
+ query?: never;
1760
+ header?: never;
1761
+ path?: never;
1762
+ cookie?: never;
1763
+ };
1764
+ get?: never;
1765
+ put?: never;
1766
+ /**
1767
+ * Lazy-deploy counterfactual Safe (stub)
1768
+ * @description Human-only. Broadcasts Safe deployment when Guard audit completes. Returns 501 pre-audit.
1769
+ */
1770
+ post: operations["deployAgentSafeAccount"];
1771
+ delete?: never;
1772
+ options?: never;
1773
+ head?: never;
1774
+ patch?: never;
1775
+ trace?: never;
1776
+ };
1777
+ "/v1/org/safe/sync-allowances": {
1778
+ parameters: {
1779
+ query?: never;
1780
+ header?: never;
1781
+ path?: never;
1782
+ cookie?: never;
1783
+ };
1784
+ get?: never;
1785
+ put?: never;
1786
+ /**
1787
+ * Reconcile Safe allowance targets (org admin)
1788
+ * @description Compiles tx_daily_limit targets for Safe agents. Onchain read/write stubbed pre-audit.
1789
+ */
1790
+ post: operations["syncOrgSafeAllowances"];
1791
+ delete?: never;
1792
+ options?: never;
1793
+ head?: never;
1794
+ patch?: never;
1795
+ trace?: never;
1796
+ };
1797
+ "/v1/treasury/{treasury_id}/safe/roles-sync": {
1798
+ parameters: {
1799
+ query?: never;
1800
+ header?: never;
1801
+ path?: never;
1802
+ cookie?: never;
1803
+ };
1804
+ get?: never;
1805
+ put?: never;
1806
+ /**
1807
+ * Sync treasury Safe Roles module (stub)
1808
+ * @description Human-only. Reconciles on-chain Roles config with agent guardrails. Returns 501 pre-audit.
1809
+ */
1810
+ post: operations["treasurySafeRolesSync"];
1811
+ delete?: never;
1812
+ options?: never;
1813
+ head?: never;
1814
+ patch?: never;
1815
+ trace?: never;
1816
+ };
1817
+ "/v1/agents/{agent_id}/safe/cosign": {
1818
+ parameters: {
1819
+ query?: never;
1820
+ header?: never;
1821
+ path?: never;
1822
+ cookie?: never;
1823
+ };
1824
+ get?: never;
1825
+ put?: never;
1826
+ /** Enable Vault co-signer (stub) */
1827
+ post: operations["enableSafeCosign"];
1828
+ delete?: never;
1829
+ options?: never;
1830
+ head?: never;
1831
+ patch?: never;
1832
+ trace?: never;
1833
+ };
1834
+ "/v1/agents/{agent_id}/safe/passkey-enroll": {
1835
+ parameters: {
1836
+ query?: never;
1837
+ header?: never;
1838
+ path?: never;
1839
+ cookie?: never;
1840
+ };
1841
+ get?: never;
1842
+ put?: never;
1843
+ /** Enroll passkey Safe owner (stub) */
1844
+ post: operations["enrollSafePasskeyOwner"];
1845
+ delete?: never;
1846
+ options?: never;
1847
+ head?: never;
1848
+ patch?: never;
1849
+ trace?: never;
1850
+ };
1851
+ "/v1/agents/{agent_id}/safe/timelock": {
1852
+ parameters: {
1853
+ query?: never;
1854
+ header?: never;
1855
+ path?: never;
1856
+ cookie?: never;
1857
+ };
1858
+ get?: never;
1859
+ put?: never;
1860
+ /** Configure Zodiac timelock (stub) */
1861
+ post: operations["configureSafeTimelock"];
1862
+ delete?: never;
1863
+ options?: never;
1864
+ head?: never;
1865
+ patch?: never;
1866
+ trace?: never;
1867
+ };
1868
+ "/v1/agents/{agent_id}/safe/erc4337": {
1869
+ parameters: {
1870
+ query?: never;
1871
+ header?: never;
1872
+ path?: never;
1873
+ cookie?: never;
1874
+ };
1875
+ get?: never;
1876
+ put?: never;
1877
+ /** Enable ERC-4337 Safe lane (stub) */
1878
+ post: operations["enableSafeErc4337"];
1879
+ delete?: never;
1880
+ options?: never;
1881
+ head?: never;
1882
+ patch?: never;
1883
+ trace?: never;
1884
+ };
1885
+ "/v1/agents/{agent_id}/guardrails/replay": {
1886
+ parameters: {
1887
+ query?: never;
1888
+ header?: never;
1889
+ path?: never;
1890
+ cookie?: never;
1891
+ };
1892
+ get?: never;
1893
+ put?: never;
1894
+ /**
1895
+ * Dry-run guardrail changes against recent transactions
1896
+ * @description Human-only. Compares draft guardrails against recent agent transactions.
1897
+ */
1898
+ post: operations["replayAgentGuardrails"];
1899
+ delete?: never;
1900
+ options?: never;
1901
+ head?: never;
1902
+ patch?: never;
1903
+ trace?: never;
1904
+ };
1905
+ "/v1/safe/module-registry/{chain}": {
1906
+ parameters: {
1907
+ query?: never;
1908
+ header?: never;
1909
+ path?: never;
1910
+ cookie?: never;
1911
+ };
1912
+ /** List Safe module registry entries for a chain */
1913
+ get: operations["getSafeModuleRegistry"];
1914
+ put?: never;
1915
+ post?: never;
1916
+ delete?: never;
1917
+ options?: never;
1918
+ head?: never;
1919
+ patch?: never;
1920
+ trace?: never;
1921
+ };
1677
1922
  "/v1/agents/{agent_id}/delegations": {
1678
1923
  parameters: {
1679
1924
  query?: never;
@@ -2077,6 +2322,66 @@ export interface paths {
2077
2322
  patch?: never;
2078
2323
  trace?: never;
2079
2324
  };
2325
+ "/v1/org/status": {
2326
+ parameters: {
2327
+ query?: never;
2328
+ header?: never;
2329
+ path?: never;
2330
+ cookie?: never;
2331
+ };
2332
+ /**
2333
+ * Organization operational status
2334
+ * @description Returns whether the org is emergency-frozen (blocks agent tx/execution).
2335
+ */
2336
+ get: operations["getOrgStatus"];
2337
+ put?: never;
2338
+ post?: never;
2339
+ delete?: never;
2340
+ options?: never;
2341
+ head?: never;
2342
+ patch?: never;
2343
+ trace?: never;
2344
+ };
2345
+ "/v1/org/freeze": {
2346
+ parameters: {
2347
+ query?: never;
2348
+ header?: never;
2349
+ path?: never;
2350
+ cookie?: never;
2351
+ };
2352
+ get?: never;
2353
+ put?: never;
2354
+ /**
2355
+ * Emergency org-wide freeze
2356
+ * @description Sets organizations.frozen_at — blocks agent tx/execution until unfreeze. Owner/admin only.
2357
+ */
2358
+ post: operations["freezeOrg"];
2359
+ delete?: never;
2360
+ options?: never;
2361
+ head?: never;
2362
+ patch?: never;
2363
+ trace?: never;
2364
+ };
2365
+ "/v1/org/unfreeze": {
2366
+ parameters: {
2367
+ query?: never;
2368
+ header?: never;
2369
+ path?: never;
2370
+ cookie?: never;
2371
+ };
2372
+ get?: never;
2373
+ put?: never;
2374
+ /**
2375
+ * Clear org-wide freeze
2376
+ * @description Clears organizations.frozen_at. Owner/admin only.
2377
+ */
2378
+ post: operations["unfreezeOrg"];
2379
+ delete?: never;
2380
+ options?: never;
2381
+ head?: never;
2382
+ patch?: never;
2383
+ trace?: never;
2384
+ };
2080
2385
  "/v1/org/bankr-config": {
2081
2386
  parameters: {
2082
2387
  query?: never;
@@ -2944,7 +3249,7 @@ export interface paths {
2944
3249
  patch?: never;
2945
3250
  trace?: never;
2946
3251
  };
2947
- "/v1/treasury/wallets/spend-policy": {
3252
+ "/v1/treasury/wallets/auth-policy": {
2948
3253
  parameters: {
2949
3254
  query?: never;
2950
3255
  header?: never;
@@ -2952,12 +3257,14 @@ export interface paths {
2952
3257
  cookie?: never;
2953
3258
  };
2954
3259
  /**
2955
- * Get effective spend policy for current user
2956
- * @description Returns the effective spend policy governing the authenticated user's
2957
- * wallet transactions. Resolves from per-user override (if set) or the
2958
- * app-wide default. Returns null if no policy is configured.
3260
+ * Get effective human factor auth policy for embedded clients
3261
+ * @description Returns the resolved human factor auth (HFA) policy governing treasury
3262
+ * wallet send, swap, and export, plus the number of passkeys registered
3263
+ * for the calling user. Intended for embedded wallet clients; equivalent
3264
+ * to GET /v1/auth/human-factor-auth with an additional passkey count.
3265
+ * Precedence: user override → platform app → spend policy → defaults.
2959
3266
  */
2960
- get: operations["getEffectiveSpendPolicy"];
3267
+ get: operations["getTreasuryAuthPolicy"];
2961
3268
  put?: never;
2962
3269
  post?: never;
2963
3270
  delete?: never;
@@ -2966,19 +3273,41 @@ export interface paths {
2966
3273
  patch?: never;
2967
3274
  trace?: never;
2968
3275
  };
2969
- "/v1/webhooks": {
3276
+ "/v1/treasury/wallets/spend-policy": {
2970
3277
  parameters: {
2971
3278
  query?: never;
2972
3279
  header?: never;
2973
3280
  path?: never;
2974
3281
  cookie?: never;
2975
3282
  };
2976
- /** List webhooks */
2977
- get: operations["listWebhooks"];
2978
- put?: never;
2979
- /** Register a webhook */
2980
- post: operations["createWebhook"];
2981
- delete?: never;
3283
+ /**
3284
+ * Get effective spend policy for current user
3285
+ * @description Returns the effective spend policy governing the authenticated user's
3286
+ * wallet transactions. Resolves from per-user override (if set) or the
3287
+ * app-wide default. Returns null if no policy is configured.
3288
+ */
3289
+ get: operations["getEffectiveSpendPolicy"];
3290
+ put?: never;
3291
+ post?: never;
3292
+ delete?: never;
3293
+ options?: never;
3294
+ head?: never;
3295
+ patch?: never;
3296
+ trace?: never;
3297
+ };
3298
+ "/v1/webhooks": {
3299
+ parameters: {
3300
+ query?: never;
3301
+ header?: never;
3302
+ path?: never;
3303
+ cookie?: never;
3304
+ };
3305
+ /** List webhooks */
3306
+ get: operations["listWebhooks"];
3307
+ put?: never;
3308
+ /** Register a webhook */
3309
+ post: operations["createWebhook"];
3310
+ delete?: never;
2982
3311
  options?: never;
2983
3312
  head?: never;
2984
3313
  patch?: never;
@@ -4727,9 +5056,10 @@ export interface paths {
4727
5056
  put?: never;
4728
5057
  /**
4729
5058
  * Begin passkey transaction authorization
4730
- * @description Requires `tx_digest` — SHA-256 hex of canonical `chain|to|value_wei|data`
4731
- * for the treasury send being authorized. The server recomputes this digest
4732
- * on send and rejects passkey tokens that do not match.
5059
+ * @description Requires `tx_digest` — SHA-256 hex of the canonical digest for the
5060
+ * treasury action being authorized (`send` or `swap`). The server
5061
+ * recomputes this digest on send/swap and rejects passkey tokens that
5062
+ * do not match.
4733
5063
  */
4734
5064
  post: operations["passkeyTxAssertBegin"];
4735
5065
  delete?: never;
@@ -6366,6 +6696,47 @@ export interface paths {
6366
6696
  patch?: never;
6367
6697
  trace?: never;
6368
6698
  };
6699
+ "/v1/org/guardrail-shadow-report": {
6700
+ parameters: {
6701
+ query?: never;
6702
+ header?: never;
6703
+ path?: never;
6704
+ cookie?: never;
6705
+ };
6706
+ /**
6707
+ * Get guardrail shadow divergence report
6708
+ * @description Returns Convention 6 shadow-mode violations (`guardrail_shadow.would_deny` audit events)
6709
+ * grouped by reason code. Owner/admin only.
6710
+ */
6711
+ get: operations["getGuardrailShadowReport"];
6712
+ put?: never;
6713
+ post?: never;
6714
+ delete?: never;
6715
+ options?: never;
6716
+ head?: never;
6717
+ patch?: never;
6718
+ trace?: never;
6719
+ };
6720
+ "/v1/org/guardrail-revisions": {
6721
+ parameters: {
6722
+ query?: never;
6723
+ header?: never;
6724
+ path?: never;
6725
+ cookie?: never;
6726
+ };
6727
+ /**
6728
+ * List guardrail revision history
6729
+ * @description Audit trail of agent and binding guardrail changes. Owner/admin only.
6730
+ */
6731
+ get: operations["listGuardrailRevisions"];
6732
+ put?: never;
6733
+ post?: never;
6734
+ delete?: never;
6735
+ options?: never;
6736
+ head?: never;
6737
+ patch?: never;
6738
+ trace?: never;
6739
+ };
6369
6740
  "/v1/org/contract-abis": {
6370
6741
  parameters: {
6371
6742
  query?: never;
@@ -7612,7 +7983,9 @@ export interface components {
7612
7983
  xrpl_allowed_tx_types?: string[];
7613
7984
  /**
7614
7985
  * @description Per-chain guardrail overrides. Keys are signing chains (ethereum, bitcoin, solana, xrp, cardano, tron).
7615
- * Each value may include max_value, daily_limit, to_allowlist, token_allowlist, max_per_day, overhead_budget, max_ata_creates_per_day.
7986
+ * Each value may include max_value, daily_limit, to_allowlist, token_allowlist, max_per_day,
7987
+ * overhead_budget, max_ata_creates_per_day, max_fee_per_gas_gwei, max_gas_limit,
7988
+ * gas_daily_budget_native (UTC-day cumulative EVM gas estimate in native units).
7616
7989
  * Strictest of global and per-chain limits wins. Daily limits apply per chain family spend, not cross-chain totals.
7617
7990
  */
7618
7991
  per_chain_guardrails?: {
@@ -7655,6 +8028,41 @@ export interface components {
7655
8028
  * @enum {string}
7656
8029
  */
7657
8030
  simulation_failure_policy?: "deny" | "approve";
8031
+ /**
8032
+ * @description Block unlimited ERC-20 approvals (max uint256 / setApprovalForAll).
8033
+ * @default false
8034
+ */
8035
+ tx_block_unlimited_approvals: boolean;
8036
+ /** @description Max transactions to the same recipient address per UTC day. */
8037
+ tx_per_recipient_max_per_day?: number | null;
8038
+ /** @description Max native-unit spend to the same recipient per UTC day. */
8039
+ tx_per_recipient_daily_limit?: string | null;
8040
+ /** @description Cap on first-time recipient spend in native units. */
8041
+ new_recipient_cap_native?: string | null;
8042
+ /** @description Per-transaction USD cap (requires price oracle). */
8043
+ tx_max_value_usd?: string | null;
8044
+ /** @description Rolling 24h USD spend cap (requires price oracle). */
8045
+ tx_daily_limit_usd?: string | null;
8046
+ /**
8047
+ * @description Raw digest signing policy — allow, deny, or route to HITL (approve).
8048
+ * @default allow
8049
+ * @enum {string}
8050
+ */
8051
+ raw_signing_policy: "allow" | "deny" | "approve";
8052
+ /** @description personal_sign guardrails (message allowlist, max bytes, etc.). */
8053
+ personal_sign_policy?: {
8054
+ [key: string]: unknown;
8055
+ };
8056
+ /**
8057
+ * @description Allow ERC-4337 gasless UserOperations.
8058
+ * @default false
8059
+ */
8060
+ allow_erc4337: boolean;
8061
+ /**
8062
+ * @description Allow EIP-7702 (tx type 4) set-code transactions.
8063
+ * @default false
8064
+ */
8065
+ allow_eip7702: boolean;
7658
8066
  /**
7659
8067
  * Format: date-time
7660
8068
  * @description Optional expiration time for the agent's API key.
@@ -7750,6 +8158,31 @@ export interface components {
7750
8158
  * @enum {string|null}
7751
8159
  */
7752
8160
  simulation_failure_policy?: "deny" | "approve" | null;
8161
+ /** @description Block unlimited ERC-20 approvals (max uint256 / setApprovalForAll). */
8162
+ tx_block_unlimited_approvals?: boolean;
8163
+ /** @description Max transactions to the same recipient per UTC day. Null clears. */
8164
+ tx_per_recipient_max_per_day?: number | null;
8165
+ /** @description Max native spend to same recipient per UTC day. Null clears. */
8166
+ tx_per_recipient_daily_limit?: string | null;
8167
+ /** @description First-time recipient native cap. Null clears. */
8168
+ new_recipient_cap_native?: string | null;
8169
+ /** @description Per-tx USD cap. Null clears. */
8170
+ tx_max_value_usd?: string | null;
8171
+ /** @description Rolling 24h USD spend cap. Null clears. */
8172
+ tx_daily_limit_usd?: string | null;
8173
+ /**
8174
+ * @description Raw digest signing policy.
8175
+ * @enum {string}
8176
+ */
8177
+ raw_signing_policy?: "allow" | "deny" | "approve";
8178
+ /** @description personal_sign guardrails JSON. */
8179
+ personal_sign_policy?: {
8180
+ [key: string]: unknown;
8181
+ };
8182
+ /** @description Allow ERC-4337 gasless UserOperations. */
8183
+ allow_erc4337?: boolean;
8184
+ /** @description Allow EIP-7702 (tx type 4). */
8185
+ allow_eip7702?: boolean;
7753
8186
  /** @description When true, clears circuit-breaker auto-suspension (human owner/admin only). */
7754
8187
  clear_auto_suspended?: boolean;
7755
8188
  /**
@@ -7781,7 +8214,8 @@ export interface components {
7781
8214
  xrpl_allowed_tx_types?: string[];
7782
8215
  /**
7783
8216
  * @description Per-chain guardrail overrides. Keys are signing chains (ethereum, bitcoin, solana, xrp, cardano, tron).
7784
- * Each value may include max_value, daily_limit, to_allowlist, token_allowlist (legacy *_eth keys accepted).
8217
+ * Each value may include max_value, daily_limit, to_allowlist, token_allowlist (legacy *_eth keys accepted),
8218
+ * max_fee_per_gas_gwei, max_gas_limit, gas_daily_budget_native (UTC-day cumulative EVM gas in native units).
7785
8219
  * Strictest of global and per-chain limits wins. Daily limits apply per chain family spend, not cross-chain totals.
7786
8220
  */
7787
8221
  per_chain_guardrails?: {
@@ -7802,6 +8236,15 @@ export interface components {
7802
8236
  per_environment_guardrails?: {
7803
8237
  [key: string]: unknown;
7804
8238
  };
8239
+ /** @description Recipient address screening policy. `mode` may be `off`, `deny`, or `approve`. */
8240
+ address_screening_policy?: {
8241
+ [key: string]: unknown;
8242
+ };
8243
+ /**
8244
+ * Format: uuid
8245
+ * @description Approved policy_change id when applying a queued guardrail widening. Resubmit PATCH with this field after the approval has been approved via POST /v1/approvals/{approval_id}/decide.
8246
+ */
8247
+ approval_id?: string;
7805
8248
  };
7806
8249
  AgentResponse: {
7807
8250
  /** Format: uuid */
@@ -7889,6 +8332,20 @@ export interface components {
7889
8332
  typed_data_policy?: "deny" | "approve" | null;
7890
8333
  /** @enum {string|null} */
7891
8334
  simulation_failure_policy?: "deny" | "approve" | null;
8335
+ /** @description Block unlimited ERC-20 approvals. */
8336
+ tx_block_unlimited_approvals?: boolean;
8337
+ tx_per_recipient_max_per_day?: number | null;
8338
+ tx_per_recipient_daily_limit?: string | null;
8339
+ new_recipient_cap_native?: string | null;
8340
+ tx_max_value_usd?: string | null;
8341
+ tx_daily_limit_usd?: string | null;
8342
+ /** @enum {string} */
8343
+ raw_signing_policy?: "allow" | "deny" | "approve";
8344
+ personal_sign_policy?: {
8345
+ [key: string]: unknown;
8346
+ } | null;
8347
+ allow_erc4337?: boolean;
8348
+ allow_eip7702?: boolean;
7892
8349
  /** @description True when circuit breaker auto-suspended the agent after repeated guardrail denials. */
7893
8350
  auto_suspended?: boolean;
7894
8351
  /** @description Today's transaction count (UTC calendar day). Present when intents_api_enabled. */
@@ -7958,6 +8415,10 @@ export interface components {
7958
8415
  per_environment_guardrails?: {
7959
8416
  [key: string]: unknown;
7960
8417
  };
8418
+ /** @description Recipient address screening policy. `mode` may be `off`, `deny`, or `approve`. */
8419
+ address_screening_policy?: {
8420
+ [key: string]: unknown;
8421
+ };
7961
8422
  };
7962
8423
  KnownToken: {
7963
8424
  /** Format: uuid */
@@ -10046,11 +10507,19 @@ export interface components {
10046
10507
  /** Format: date-time */
10047
10508
  expires_at?: string | null;
10048
10509
  };
10510
+ /**
10511
+ * @description Stable snake_case reason codes for guardrail violations (Convention 1).
10512
+ * Shadow-mode `"log"` emits the same codes in `guardrail_shadow.would_deny`
10513
+ * audit events with `enforced: false`. 202 HITL responses use
10514
+ * `approval_available: true` instead of a deny reason_code.
10515
+ * @enum {string}
10516
+ */
10517
+ GuardrailReasonCode: "binding_rpm_exceeded" | "agent_rpm_exceeded" | "graphql_mutation_blocked" | "graphql_depth_exceeded" | "graphql_parse_failed" | "graphql_introspection_blocked" | "response_too_large" | "request_too_large" | "method_not_allowed" | "header_not_allowed" | "dns_private_ip_blocked" | "agent_suspended" | "outside_time_window" | "secret_in_request" | "concurrency_exceeded" | "org_frozen" | "price_unavailable" | "gas_fee_exceeded" | "unlimited_approval_blocked" | "tx_per_recipient_limit_exceeded" | "tx_max_value_exceeded" | "tx_daily_limit_exceeded" | "delegation_signing_blocked" | "recipient_screening_failed" | "screening_provider_unavailable" | "human_factor_auth_required" | "register_passkey_required";
10518
+ /** @description Convention 1 machine-readable guardrail denial JSON body. */
10049
10519
  GuardrailViolation: {
10050
10520
  /** @enum {string} */
10051
10521
  error: "guardrail_violation";
10052
- /** @enum {string} */
10053
- reason_code: "binding_rpm_exceeded" | "agent_rpm_exceeded" | "graphql_mutation_blocked" | "graphql_depth_exceeded" | "graphql_parse_failed" | "graphql_introspection_blocked" | "response_too_large" | "request_too_large" | "method_not_allowed" | "header_not_allowed" | "dns_private_ip_blocked" | "agent_suspended" | "outside_time_window" | "secret_in_request" | "concurrency_exceeded" | "org_frozen";
10522
+ reason_code: components["schemas"]["GuardrailReasonCode"];
10054
10523
  limit?: string | null;
10055
10524
  current?: string | null;
10056
10525
  attempted?: string | null;
@@ -10059,6 +10528,8 @@ export interface components {
10059
10528
  retry_after_seconds?: number | null;
10060
10529
  detail?: string | null;
10061
10530
  };
10531
+ /** @description Alias of GuardrailViolation (Convention 1 JSON shape). */
10532
+ GuardrailDenial: components["schemas"]["GuardrailViolation"];
10062
10533
  EmailOtpVerifyResponse: {
10063
10534
  /** @description JWT access token */
10064
10535
  token: string;
@@ -10122,6 +10593,14 @@ export interface components {
10122
10593
  allowed_tokens?: string[];
10123
10594
  /** @description Maximum number of transactions per 24h window */
10124
10595
  max_transactions_per_day?: number;
10596
+ /**
10597
+ * @description Human factor auth requirements for send/swap/export.
10598
+ * Fields: send, swap, export (password_or_passkey | passkey_only | passkey_required | password_only | reauth_token_only),
10599
+ * conditional.require_passkey_above_usd, conditional.require_passkey_for_new_recipient.
10600
+ */
10601
+ human_factor_auth?: {
10602
+ [key: string]: unknown;
10603
+ };
10125
10604
  };
10126
10605
  SpendPolicyResponse: {
10127
10606
  /** Format: uuid */
@@ -10137,9 +10616,72 @@ export interface components {
10137
10616
  allowed_chains?: string[];
10138
10617
  allowed_tokens?: string[];
10139
10618
  max_transactions_per_day?: number | null;
10619
+ human_factor_auth?: {
10620
+ [key: string]: unknown;
10621
+ } | null;
10140
10622
  /** Format: date-time */
10141
10623
  created_at: string;
10142
10624
  };
10625
+ HumanFactorAuthPolicy: {
10626
+ /** @enum {string} */
10627
+ send?: "password_or_passkey" | "passkey_only" | "passkey_required" | "password_only" | "reauth_token_only";
10628
+ /** @enum {string} */
10629
+ swap?: "password_or_passkey" | "passkey_only" | "passkey_required" | "password_only" | "reauth_token_only";
10630
+ /** @enum {string} */
10631
+ export?: "password_or_passkey" | "passkey_only" | "passkey_required" | "password_only" | "reauth_token_only";
10632
+ conditional?: {
10633
+ require_passkey_above_usd?: string | null;
10634
+ require_passkey_for_new_recipient?: boolean;
10635
+ };
10636
+ };
10637
+ UpsertHumanFactorAuthRequest: {
10638
+ policy: components["schemas"]["HumanFactorAuthPolicy"];
10639
+ };
10640
+ HumanFactorAuthResponse: {
10641
+ policy: components["schemas"]["HumanFactorAuthPolicy"];
10642
+ /** @description user | platform_app | spend_policy | default */
10643
+ source: string;
10644
+ };
10645
+ TreasuryAuthPolicyResponse: {
10646
+ policy: components["schemas"]["HumanFactorAuthPolicy"];
10647
+ /** @description user | platform_app | spend_policy | default */
10648
+ source: string;
10649
+ /** @description Number of WebAuthn passkeys registered for the calling user. */
10650
+ registered_passkeys: number;
10651
+ };
10652
+ PasskeyTxAssertBeginRequest: {
10653
+ /** @description 64-char hex SHA-256 of canonical send or swap params */
10654
+ tx_digest: string;
10655
+ /**
10656
+ * @description Treasury action being authorized. Defaults to `send`.
10657
+ * @default send
10658
+ * @enum {string}
10659
+ */
10660
+ action: "send" | "swap";
10661
+ };
10662
+ PasskeyAssertBeginResponse: {
10663
+ challenge: string;
10664
+ rp_id: string;
10665
+ timeout: number;
10666
+ user_verification: string;
10667
+ allow_credentials: components["schemas"]["AllowCredential"][];
10668
+ };
10669
+ AllowCredential: {
10670
+ id: string;
10671
+ /** @enum {string} */
10672
+ type: "public-key";
10673
+ transports?: string[];
10674
+ };
10675
+ GuardrailWideningQueuedResponse: {
10676
+ /** @enum {string} */
10677
+ status: "awaiting_approval";
10678
+ /** Format: uuid */
10679
+ approval_id: string;
10680
+ /** Format: uuid */
10681
+ revision_id: string;
10682
+ /** @description Human-readable explanation of the queued change. */
10683
+ message: string;
10684
+ };
10143
10685
  RiskEvent: {
10144
10686
  /** Format: uuid */
10145
10687
  id: string;
@@ -10269,6 +10811,11 @@ export interface components {
10269
10811
  [key: string]: unknown;
10270
10812
  };
10271
10813
  credential_source?: components["schemas"]["CredentialSource"];
10814
+ /**
10815
+ * Format: uuid
10816
+ * @description Approved policy_change id when applying a queued binding guardrail widening. Resubmit PATCH with this field after approval via POST /v1/approvals/{approval_id}/decide.
10817
+ */
10818
+ approval_id?: string;
10272
10819
  };
10273
10820
  /** @description Per-binding execution guardrails enforced at execute time. */
10274
10821
  BindingGuardrails: {
@@ -11225,6 +11772,149 @@ export interface components {
11225
11772
  /** Format: date-time */
11226
11773
  created_at?: string;
11227
11774
  };
11775
+ GuardrailShadowReportResponse: {
11776
+ /** Format: uuid */
11777
+ org_id?: string;
11778
+ /** Format: date-time */
11779
+ since?: string;
11780
+ /** Format: date-time */
11781
+ until?: string;
11782
+ /** Format: int64 */
11783
+ total_would_deny?: number;
11784
+ by_reason?: components["schemas"]["GuardrailShadowReasonRow"][];
11785
+ };
11786
+ GuardrailShadowReasonRow: {
11787
+ reason_code?: string;
11788
+ /** Format: int64 */
11789
+ would_deny_count?: number;
11790
+ /** Format: int64 */
11791
+ enforced_count?: number;
11792
+ };
11793
+ GuardrailRevisionListResponse: {
11794
+ revisions?: components["schemas"]["GuardrailRevisionRow"][];
11795
+ };
11796
+ GuardrailRevisionRow: {
11797
+ /** Format: uuid */
11798
+ id?: string;
11799
+ /** Format: uuid */
11800
+ org_id?: string;
11801
+ /** @enum {string} */
11802
+ resource_type?: "agent" | "binding";
11803
+ /** Format: uuid */
11804
+ resource_id?: string;
11805
+ /** Format: uuid */
11806
+ actor_id?: string;
11807
+ before_json?: {
11808
+ [key: string]: unknown;
11809
+ };
11810
+ after_json?: {
11811
+ [key: string]: unknown;
11812
+ };
11813
+ /** @enum {string} */
11814
+ change_kind?: "narrowing" | "widening" | "neutral";
11815
+ /** Format: uuid */
11816
+ approval_id?: string | null;
11817
+ /** Format: date-time */
11818
+ created_at?: string;
11819
+ };
11820
+ GuardrailReplayRequest: {
11821
+ days?: number;
11822
+ draft_guardrails?: {
11823
+ [key: string]: unknown;
11824
+ };
11825
+ draft_approval_policy?: {
11826
+ [key: string]: unknown;
11827
+ };
11828
+ };
11829
+ GuardrailReplayResponse: {
11830
+ /** Format: uuid */
11831
+ agent_id?: string;
11832
+ /** Format: int64 */
11833
+ window_days?: number;
11834
+ /** Format: int64 */
11835
+ allowed?: number;
11836
+ /** Format: int64 */
11837
+ denied?: number;
11838
+ /** Format: int64 */
11839
+ would_require_approval?: number;
11840
+ samples?: {
11841
+ [key: string]: unknown;
11842
+ }[];
11843
+ };
11844
+ AgentAccountListResponse: {
11845
+ accounts?: components["schemas"]["AgentAccountResponse"][];
11846
+ };
11847
+ AgentAccountResponse: {
11848
+ /** Format: uuid */
11849
+ id?: string;
11850
+ /** Format: uuid */
11851
+ org_id?: string;
11852
+ /** Format: uuid */
11853
+ agent_id?: string;
11854
+ chain?: string;
11855
+ account_type?: string;
11856
+ address?: string;
11857
+ safe_version?: string;
11858
+ modules_enabled?: string[];
11859
+ deploy_status?: string;
11860
+ cosign_enabled?: boolean;
11861
+ metadata?: Record<string, never>;
11862
+ /** Format: date-time */
11863
+ created_at?: string;
11864
+ /** Format: date-time */
11865
+ updated_at?: string;
11866
+ };
11867
+ MigrationPlanResponse: {
11868
+ /** Format: uuid */
11869
+ agent_id?: string;
11870
+ chain?: string;
11871
+ safe_address?: string;
11872
+ safe_version?: string;
11873
+ modules?: string[];
11874
+ eoa_address?: string;
11875
+ sweep_instructions?: {
11876
+ asset?: string;
11877
+ action?: string;
11878
+ note?: string;
11879
+ }[];
11880
+ roles_config_hash?: string;
11881
+ allowance_config_hash?: string;
11882
+ warnings?: string[];
11883
+ deploy_status?: string;
11884
+ };
11885
+ ProvisionAgentAccountRequest: {
11886
+ chain: string;
11887
+ /** @default eoa */
11888
+ account_type: string;
11889
+ address?: string;
11890
+ };
11891
+ SafeModuleRegistryResponse: {
11892
+ chain?: string;
11893
+ modules?: components["schemas"]["SafeModuleInfo"][];
11894
+ };
11895
+ SafeModuleInfo: {
11896
+ name?: string;
11897
+ address?: string;
11898
+ version?: string;
11899
+ };
11900
+ AllowanceReconcileReport: {
11901
+ /** Format: uuid */
11902
+ org_id?: string;
11903
+ agents_checked?: number;
11904
+ compiled?: {
11905
+ [key: string]: unknown;
11906
+ }[];
11907
+ drift_detected?: {
11908
+ [key: string]: unknown;
11909
+ }[];
11910
+ /** @description counterfactual when on-chain broadcast is stubbed pre-audit */
11911
+ onchain_sync?: string;
11912
+ };
11913
+ NotImplementedResponse: {
11914
+ error: string;
11915
+ phase: string;
11916
+ message: string;
11917
+ };
11228
11918
  CreateContractAbiRequest: {
11229
11919
  chain: string;
11230
11920
  /** @description Contract address, or Solana program id when interface_kind is solana_idl */
@@ -12780,6 +13470,52 @@ export interface operations {
12780
13470
  403: components["responses"]["Forbidden"];
12781
13471
  };
12782
13472
  };
13473
+ getHumanFactorAuth: {
13474
+ parameters: {
13475
+ query?: never;
13476
+ header?: never;
13477
+ path?: never;
13478
+ cookie?: never;
13479
+ };
13480
+ requestBody?: never;
13481
+ responses: {
13482
+ /** @description Effective HFA policy */
13483
+ 200: {
13484
+ headers: {
13485
+ [name: string]: unknown;
13486
+ };
13487
+ content: {
13488
+ "application/json": components["schemas"]["HumanFactorAuthResponse"];
13489
+ };
13490
+ };
13491
+ 403: components["responses"]["Forbidden"];
13492
+ };
13493
+ };
13494
+ upsertHumanFactorAuth: {
13495
+ parameters: {
13496
+ query?: never;
13497
+ header?: never;
13498
+ path?: never;
13499
+ cookie?: never;
13500
+ };
13501
+ requestBody: {
13502
+ content: {
13503
+ "application/json": components["schemas"]["UpsertHumanFactorAuthRequest"];
13504
+ };
13505
+ };
13506
+ responses: {
13507
+ /** @description Updated policy */
13508
+ 200: {
13509
+ headers: {
13510
+ [name: string]: unknown;
13511
+ };
13512
+ content: {
13513
+ "application/json": components["schemas"]["HumanFactorAuthResponse"];
13514
+ };
13515
+ };
13516
+ 403: components["responses"]["Forbidden"];
13517
+ };
13518
+ };
12783
13519
  mfaStatus: {
12784
13520
  parameters: {
12785
13521
  query?: never;
@@ -14240,6 +14976,20 @@ export interface operations {
14240
14976
  "application/json": components["schemas"]["AgentResponse"];
14241
14977
  };
14242
14978
  };
14979
+ /**
14980
+ * @description Guardrail widening queued for human approval. The change is not
14981
+ * applied until approved via POST /v1/approvals/{approval_id}/decide.
14982
+ * Resubmit this PATCH with `approval_id` set to the returned value
14983
+ * after approval to apply the widening.
14984
+ */
14985
+ 202: {
14986
+ headers: {
14987
+ [name: string]: unknown;
14988
+ };
14989
+ content: {
14990
+ "application/json": components["schemas"]["GuardrailWideningQueuedResponse"];
14991
+ };
14992
+ };
14243
14993
  404: components["responses"]["NotFound"];
14244
14994
  };
14245
14995
  };
@@ -14592,127 +15342,465 @@ export interface operations {
14592
15342
  [name: string]: unknown;
14593
15343
  };
14594
15344
  content: {
14595
- "application/json": components["schemas"]["SigningKeyResponse"];
15345
+ "application/json": components["schemas"]["SigningKeyResponse"];
15346
+ };
15347
+ };
15348
+ 404: components["responses"]["NotFound"];
15349
+ };
15350
+ };
15351
+ deactivateSigningKey: {
15352
+ parameters: {
15353
+ query?: never;
15354
+ header?: never;
15355
+ path: {
15356
+ agent_id: components["parameters"]["AgentId"];
15357
+ chain: string;
15358
+ };
15359
+ cookie?: never;
15360
+ };
15361
+ requestBody?: never;
15362
+ responses: {
15363
+ /** @description Key deactivated */
15364
+ 204: {
15365
+ headers: {
15366
+ [name: string]: unknown;
15367
+ };
15368
+ content?: never;
15369
+ };
15370
+ 404: components["responses"]["NotFound"];
15371
+ };
15372
+ };
15373
+ exportSigningKey: {
15374
+ parameters: {
15375
+ query?: never;
15376
+ header: {
15377
+ /** @description Account password for re-authentication */
15378
+ "X-Auth-Confirm": string;
15379
+ };
15380
+ path: {
15381
+ agent_id: components["parameters"]["AgentId"];
15382
+ chain: string;
15383
+ };
15384
+ cookie?: never;
15385
+ };
15386
+ requestBody?: never;
15387
+ responses: {
15388
+ /** @description Signing key exported successfully */
15389
+ 200: {
15390
+ headers: {
15391
+ [name: string]: unknown;
15392
+ };
15393
+ content: {
15394
+ "application/json": {
15395
+ chain: string;
15396
+ curve: string;
15397
+ public_key: string;
15398
+ address?: string;
15399
+ private_key: string;
15400
+ key_version: number;
15401
+ /** Format: uuid */
15402
+ agent_id: string;
15403
+ };
15404
+ };
15405
+ };
15406
+ 403: components["responses"]["Forbidden"];
15407
+ 404: components["responses"]["NotFound"];
15408
+ };
15409
+ };
15410
+ getSigningKeyBalance: {
15411
+ parameters: {
15412
+ query?: never;
15413
+ header?: never;
15414
+ path: {
15415
+ agent_id: components["parameters"]["AgentId"];
15416
+ chain: string;
15417
+ };
15418
+ cookie?: never;
15419
+ };
15420
+ requestBody?: never;
15421
+ responses: {
15422
+ /** @description Signing key balance */
15423
+ 200: {
15424
+ headers: {
15425
+ [name: string]: unknown;
15426
+ };
15427
+ content: {
15428
+ "application/json": components["schemas"]["SigningKeyBalanceResponse"];
15429
+ };
15430
+ };
15431
+ 401: components["responses"]["Unauthorized"];
15432
+ 403: components["responses"]["Forbidden"];
15433
+ 404: components["responses"]["NotFound"];
15434
+ };
15435
+ };
15436
+ importSigningKey: {
15437
+ parameters: {
15438
+ query?: never;
15439
+ header?: never;
15440
+ path: {
15441
+ agent_id: components["parameters"]["AgentId"];
15442
+ chain: string;
15443
+ };
15444
+ cookie?: never;
15445
+ };
15446
+ requestBody: {
15447
+ content: {
15448
+ "application/json": components["schemas"]["ImportKeyRequest"];
15449
+ };
15450
+ };
15451
+ responses: {
15452
+ /** @description Signing key imported */
15453
+ 201: {
15454
+ headers: {
15455
+ [name: string]: unknown;
15456
+ };
15457
+ content: {
15458
+ "application/json": components["schemas"]["SigningKeyResponse"];
15459
+ };
15460
+ };
15461
+ 401: components["responses"]["Unauthorized"];
15462
+ 403: components["responses"]["Forbidden"];
15463
+ };
15464
+ };
15465
+ leaseBankrKey: {
15466
+ parameters: {
15467
+ query?: never;
15468
+ header?: never;
15469
+ path: {
15470
+ agent_id: components["parameters"]["AgentId"];
15471
+ };
15472
+ cookie?: never;
15473
+ };
15474
+ requestBody?: {
15475
+ content: {
15476
+ "application/json": components["schemas"]["LeaseBankrKeyRequest"];
15477
+ };
15478
+ };
15479
+ responses: {
15480
+ /** @description Bankr key leased */
15481
+ 201: {
15482
+ headers: {
15483
+ [name: string]: unknown;
15484
+ };
15485
+ content: {
15486
+ "application/json": components["schemas"]["LeaseBankrKeyResponse"];
15487
+ };
15488
+ };
15489
+ 400: components["responses"]["BadRequest"];
15490
+ 403: components["responses"]["Forbidden"];
15491
+ };
15492
+ };
15493
+ listBankrKeys: {
15494
+ parameters: {
15495
+ query?: never;
15496
+ header?: never;
15497
+ path: {
15498
+ agent_id: components["parameters"]["AgentId"];
15499
+ };
15500
+ cookie?: never;
15501
+ };
15502
+ requestBody?: never;
15503
+ responses: {
15504
+ /** @description Active leases (no secret values) */
15505
+ 200: {
15506
+ headers: {
15507
+ [name: string]: unknown;
15508
+ };
15509
+ content: {
15510
+ "application/json": components["schemas"]["BankrKeyLeaseListResponse"];
15511
+ };
15512
+ };
15513
+ 404: components["responses"]["NotFound"];
15514
+ };
15515
+ };
15516
+ revokeBankrKey: {
15517
+ parameters: {
15518
+ query?: never;
15519
+ header?: never;
15520
+ path: {
15521
+ agent_id: components["parameters"]["AgentId"];
15522
+ lease_id: string;
15523
+ };
15524
+ cookie?: never;
15525
+ };
15526
+ requestBody?: never;
15527
+ responses: {
15528
+ /** @description Lease revoked */
15529
+ 204: {
15530
+ headers: {
15531
+ [name: string]: unknown;
15532
+ };
15533
+ content?: never;
15534
+ };
15535
+ 404: components["responses"]["NotFound"];
15536
+ };
15537
+ };
15538
+ listAgentAccounts: {
15539
+ parameters: {
15540
+ query?: never;
15541
+ header?: never;
15542
+ path: {
15543
+ agent_id: components["parameters"]["AgentId"];
15544
+ };
15545
+ cookie?: never;
15546
+ };
15547
+ requestBody?: never;
15548
+ responses: {
15549
+ /** @description Agent accounts */
15550
+ 200: {
15551
+ headers: {
15552
+ [name: string]: unknown;
15553
+ };
15554
+ content: {
15555
+ "application/json": components["schemas"]["AgentAccountListResponse"];
15556
+ };
15557
+ };
15558
+ 401: components["responses"]["Unauthorized"];
15559
+ 403: components["responses"]["Forbidden"];
15560
+ 404: components["responses"]["NotFound"];
15561
+ };
15562
+ };
15563
+ provisionAgentAccount: {
15564
+ parameters: {
15565
+ query?: never;
15566
+ header?: never;
15567
+ path: {
15568
+ agent_id: components["parameters"]["AgentId"];
15569
+ };
15570
+ cookie?: never;
15571
+ };
15572
+ requestBody: {
15573
+ content: {
15574
+ "application/json": components["schemas"]["ProvisionAgentAccountRequest"];
15575
+ };
15576
+ };
15577
+ responses: {
15578
+ /** @description Account provisioned */
15579
+ 201: {
15580
+ headers: {
15581
+ [name: string]: unknown;
15582
+ };
15583
+ content: {
15584
+ "application/json": components["schemas"]["AgentAccountResponse"];
15585
+ };
15586
+ };
15587
+ 401: components["responses"]["Unauthorized"];
15588
+ 403: components["responses"]["Forbidden"];
15589
+ 404: components["responses"]["NotFound"];
15590
+ };
15591
+ };
15592
+ migrateAgentToSafe: {
15593
+ parameters: {
15594
+ query?: never;
15595
+ header?: never;
15596
+ path: {
15597
+ agent_id: components["parameters"]["AgentId"];
15598
+ };
15599
+ cookie?: never;
15600
+ };
15601
+ requestBody: {
15602
+ content: {
15603
+ "application/json": {
15604
+ chain: string;
15605
+ deprecate_eoa?: boolean;
15606
+ };
15607
+ };
15608
+ };
15609
+ responses: {
15610
+ /** @description Migration plan */
15611
+ 200: {
15612
+ headers: {
15613
+ [name: string]: unknown;
15614
+ };
15615
+ content: {
15616
+ "application/json": components["schemas"]["MigrationPlanResponse"];
15617
+ };
15618
+ };
15619
+ 401: components["responses"]["Unauthorized"];
15620
+ 403: components["responses"]["Forbidden"];
15621
+ 404: components["responses"]["NotFound"];
15622
+ };
15623
+ };
15624
+ deprecateAgentEoa: {
15625
+ parameters: {
15626
+ query?: never;
15627
+ header?: never;
15628
+ path: {
15629
+ agent_id: components["parameters"]["AgentId"];
15630
+ chain: string;
15631
+ };
15632
+ cookie?: never;
15633
+ };
15634
+ requestBody?: never;
15635
+ responses: {
15636
+ /** @description Updated account */
15637
+ 200: {
15638
+ headers: {
15639
+ [name: string]: unknown;
15640
+ };
15641
+ content: {
15642
+ "application/json": components["schemas"]["AgentAccountResponse"];
15643
+ };
15644
+ };
15645
+ 401: components["responses"]["Unauthorized"];
15646
+ 403: components["responses"]["Forbidden"];
15647
+ 404: components["responses"]["NotFound"];
15648
+ };
15649
+ };
15650
+ deployAgentSafeAccount: {
15651
+ parameters: {
15652
+ query?: never;
15653
+ header?: never;
15654
+ path: {
15655
+ agent_id: components["parameters"]["AgentId"];
15656
+ chain: string;
15657
+ };
15658
+ cookie?: never;
15659
+ };
15660
+ requestBody?: never;
15661
+ responses: {
15662
+ 401: components["responses"]["Unauthorized"];
15663
+ 403: components["responses"]["Forbidden"];
15664
+ 404: components["responses"]["NotFound"];
15665
+ /** @description Not implemented (Phase 5.1) */
15666
+ 501: {
15667
+ headers: {
15668
+ [name: string]: unknown;
15669
+ };
15670
+ content: {
15671
+ "application/json": components["schemas"]["NotImplementedResponse"];
15672
+ };
15673
+ };
15674
+ };
15675
+ };
15676
+ syncOrgSafeAllowances: {
15677
+ parameters: {
15678
+ query?: never;
15679
+ header?: never;
15680
+ path?: never;
15681
+ cookie?: never;
15682
+ };
15683
+ requestBody?: never;
15684
+ responses: {
15685
+ /** @description Reconciliation report */
15686
+ 200: {
15687
+ headers: {
15688
+ [name: string]: unknown;
15689
+ };
15690
+ content: {
15691
+ "application/json": components["schemas"]["AllowanceReconcileReport"];
15692
+ };
15693
+ };
15694
+ 401: components["responses"]["Unauthorized"];
15695
+ 403: components["responses"]["Forbidden"];
15696
+ };
15697
+ };
15698
+ treasurySafeRolesSync: {
15699
+ parameters: {
15700
+ query?: never;
15701
+ header?: never;
15702
+ path: {
15703
+ treasury_id: string;
15704
+ };
15705
+ cookie?: never;
15706
+ };
15707
+ requestBody?: never;
15708
+ responses: {
15709
+ 401: components["responses"]["Unauthorized"];
15710
+ 403: components["responses"]["Forbidden"];
15711
+ 404: components["responses"]["NotFound"];
15712
+ /** @description Not implemented (Phase 5.9) */
15713
+ 501: {
15714
+ headers: {
15715
+ [name: string]: unknown;
15716
+ };
15717
+ content: {
15718
+ "application/json": components["schemas"]["NotImplementedResponse"];
14596
15719
  };
14597
15720
  };
14598
- 404: components["responses"]["NotFound"];
14599
15721
  };
14600
15722
  };
14601
- deactivateSigningKey: {
15723
+ enableSafeCosign: {
14602
15724
  parameters: {
14603
15725
  query?: never;
14604
15726
  header?: never;
14605
15727
  path: {
14606
15728
  agent_id: components["parameters"]["AgentId"];
14607
- chain: string;
14608
15729
  };
14609
15730
  cookie?: never;
14610
15731
  };
14611
15732
  requestBody?: never;
14612
15733
  responses: {
14613
- /** @description Key deactivated */
14614
- 204: {
15734
+ /** @description Not implemented (Phase 5.2) */
15735
+ 501: {
14615
15736
  headers: {
14616
15737
  [name: string]: unknown;
14617
15738
  };
14618
15739
  content?: never;
14619
15740
  };
14620
- 404: components["responses"]["NotFound"];
14621
15741
  };
14622
15742
  };
14623
- exportSigningKey: {
15743
+ enrollSafePasskeyOwner: {
14624
15744
  parameters: {
14625
15745
  query?: never;
14626
- header: {
14627
- /** @description Account password for re-authentication */
14628
- "X-Auth-Confirm": string;
14629
- };
15746
+ header?: never;
14630
15747
  path: {
14631
15748
  agent_id: components["parameters"]["AgentId"];
14632
- chain: string;
14633
15749
  };
14634
15750
  cookie?: never;
14635
15751
  };
14636
15752
  requestBody?: never;
14637
15753
  responses: {
14638
- /** @description Signing key exported successfully */
14639
- 200: {
15754
+ /** @description Not implemented (Phase 5.5) */
15755
+ 501: {
14640
15756
  headers: {
14641
15757
  [name: string]: unknown;
14642
15758
  };
14643
- content: {
14644
- "application/json": {
14645
- chain: string;
14646
- curve: string;
14647
- public_key: string;
14648
- address?: string;
14649
- private_key: string;
14650
- key_version: number;
14651
- /** Format: uuid */
14652
- agent_id: string;
14653
- };
14654
- };
15759
+ content?: never;
14655
15760
  };
14656
- 403: components["responses"]["Forbidden"];
14657
- 404: components["responses"]["NotFound"];
14658
15761
  };
14659
15762
  };
14660
- getSigningKeyBalance: {
15763
+ configureSafeTimelock: {
14661
15764
  parameters: {
14662
15765
  query?: never;
14663
15766
  header?: never;
14664
15767
  path: {
14665
15768
  agent_id: components["parameters"]["AgentId"];
14666
- chain: string;
14667
15769
  };
14668
15770
  cookie?: never;
14669
15771
  };
14670
15772
  requestBody?: never;
14671
15773
  responses: {
14672
- /** @description Signing key balance */
14673
- 200: {
15774
+ /** @description Not implemented (Phase 5.6) */
15775
+ 501: {
14674
15776
  headers: {
14675
15777
  [name: string]: unknown;
14676
15778
  };
14677
- content: {
14678
- "application/json": components["schemas"]["SigningKeyBalanceResponse"];
14679
- };
15779
+ content?: never;
14680
15780
  };
14681
- 401: components["responses"]["Unauthorized"];
14682
- 403: components["responses"]["Forbidden"];
14683
- 404: components["responses"]["NotFound"];
14684
15781
  };
14685
15782
  };
14686
- importSigningKey: {
15783
+ enableSafeErc4337: {
14687
15784
  parameters: {
14688
15785
  query?: never;
14689
15786
  header?: never;
14690
15787
  path: {
14691
15788
  agent_id: components["parameters"]["AgentId"];
14692
- chain: string;
14693
15789
  };
14694
15790
  cookie?: never;
14695
15791
  };
14696
- requestBody: {
14697
- content: {
14698
- "application/json": components["schemas"]["ImportKeyRequest"];
14699
- };
14700
- };
15792
+ requestBody?: never;
14701
15793
  responses: {
14702
- /** @description Signing key imported */
14703
- 201: {
15794
+ /** @description Not implemented (Phase 5.8) */
15795
+ 501: {
14704
15796
  headers: {
14705
15797
  [name: string]: unknown;
14706
15798
  };
14707
- content: {
14708
- "application/json": components["schemas"]["SigningKeyResponse"];
14709
- };
15799
+ content?: never;
14710
15800
  };
14711
- 401: components["responses"]["Unauthorized"];
14712
- 403: components["responses"]["Forbidden"];
14713
15801
  };
14714
15802
  };
14715
- leaseBankrKey: {
15803
+ replayAgentGuardrails: {
14716
15804
  parameters: {
14717
15805
  query?: never;
14718
15806
  header?: never;
@@ -14723,66 +15811,44 @@ export interface operations {
14723
15811
  };
14724
15812
  requestBody?: {
14725
15813
  content: {
14726
- "application/json": components["schemas"]["LeaseBankrKeyRequest"];
15814
+ "application/json": components["schemas"]["GuardrailReplayRequest"];
14727
15815
  };
14728
15816
  };
14729
15817
  responses: {
14730
- /** @description Bankr key leased */
14731
- 201: {
15818
+ /** @description Replay report */
15819
+ 200: {
14732
15820
  headers: {
14733
15821
  [name: string]: unknown;
14734
15822
  };
14735
15823
  content: {
14736
- "application/json": components["schemas"]["LeaseBankrKeyResponse"];
15824
+ "application/json": components["schemas"]["GuardrailReplayResponse"];
14737
15825
  };
14738
15826
  };
14739
- 400: components["responses"]["BadRequest"];
15827
+ 401: components["responses"]["Unauthorized"];
14740
15828
  403: components["responses"]["Forbidden"];
15829
+ 404: components["responses"]["NotFound"];
14741
15830
  };
14742
15831
  };
14743
- listBankrKeys: {
15832
+ getSafeModuleRegistry: {
14744
15833
  parameters: {
14745
15834
  query?: never;
14746
15835
  header?: never;
14747
15836
  path: {
14748
- agent_id: components["parameters"]["AgentId"];
15837
+ chain: string;
14749
15838
  };
14750
15839
  cookie?: never;
14751
15840
  };
14752
15841
  requestBody?: never;
14753
15842
  responses: {
14754
- /** @description Active leases (no secret values) */
15843
+ /** @description Module registry */
14755
15844
  200: {
14756
15845
  headers: {
14757
15846
  [name: string]: unknown;
14758
15847
  };
14759
15848
  content: {
14760
- "application/json": components["schemas"]["BankrKeyLeaseListResponse"];
14761
- };
14762
- };
14763
- 404: components["responses"]["NotFound"];
14764
- };
14765
- };
14766
- revokeBankrKey: {
14767
- parameters: {
14768
- query?: never;
14769
- header?: never;
14770
- path: {
14771
- agent_id: components["parameters"]["AgentId"];
14772
- lease_id: string;
14773
- };
14774
- cookie?: never;
14775
- };
14776
- requestBody?: never;
14777
- responses: {
14778
- /** @description Lease revoked */
14779
- 204: {
14780
- headers: {
14781
- [name: string]: unknown;
15849
+ "application/json": components["schemas"]["SafeModuleRegistryResponse"];
14782
15850
  };
14783
- content?: never;
14784
15851
  };
14785
- 404: components["responses"]["NotFound"];
14786
15852
  };
14787
15853
  };
14788
15854
  listDelegations: {
@@ -15096,6 +16162,19 @@ export interface operations {
15096
16162
  "application/json": components["schemas"]["BindingResponse"];
15097
16163
  };
15098
16164
  };
16165
+ /**
16166
+ * @description Binding guardrail widening queued for human approval. Resubmit
16167
+ * PATCH with `approval_id` after approval via
16168
+ * POST /v1/approvals/{approval_id}/decide.
16169
+ */
16170
+ 202: {
16171
+ headers: {
16172
+ [name: string]: unknown;
16173
+ };
16174
+ content: {
16175
+ "application/json": components["schemas"]["GuardrailWideningQueuedResponse"];
16176
+ };
16177
+ };
15099
16178
  400: components["responses"]["BadRequest"];
15100
16179
  404: components["responses"]["NotFound"];
15101
16180
  };
@@ -15587,6 +16666,104 @@ export interface operations {
15587
16666
  };
15588
16667
  };
15589
16668
  };
16669
+ getOrgStatus: {
16670
+ parameters: {
16671
+ query?: never;
16672
+ header?: never;
16673
+ path?: never;
16674
+ cookie?: never;
16675
+ };
16676
+ requestBody?: never;
16677
+ responses: {
16678
+ /** @description Current org status */
16679
+ 200: {
16680
+ headers: {
16681
+ [name: string]: unknown;
16682
+ };
16683
+ content: {
16684
+ "application/json": {
16685
+ /** Format: uuid */
16686
+ org_id: string;
16687
+ /** @enum {string} */
16688
+ status: "active" | "frozen";
16689
+ /** Format: date-time */
16690
+ frozen_at?: string | null;
16691
+ };
16692
+ };
16693
+ };
16694
+ /** @description Forbidden */
16695
+ 403: {
16696
+ headers: {
16697
+ [name: string]: unknown;
16698
+ };
16699
+ content?: never;
16700
+ };
16701
+ };
16702
+ };
16703
+ freezeOrg: {
16704
+ parameters: {
16705
+ query?: never;
16706
+ header?: never;
16707
+ path?: never;
16708
+ cookie?: never;
16709
+ };
16710
+ requestBody?: never;
16711
+ responses: {
16712
+ /** @description Organization frozen */
16713
+ 200: {
16714
+ headers: {
16715
+ [name: string]: unknown;
16716
+ };
16717
+ content: {
16718
+ "application/json": {
16719
+ /** @enum {string} */
16720
+ status?: "frozen";
16721
+ /** Format: uuid */
16722
+ org_id?: string;
16723
+ };
16724
+ };
16725
+ };
16726
+ /** @description Forbidden */
16727
+ 403: {
16728
+ headers: {
16729
+ [name: string]: unknown;
16730
+ };
16731
+ content?: never;
16732
+ };
16733
+ };
16734
+ };
16735
+ unfreezeOrg: {
16736
+ parameters: {
16737
+ query?: never;
16738
+ header?: never;
16739
+ path?: never;
16740
+ cookie?: never;
16741
+ };
16742
+ requestBody?: never;
16743
+ responses: {
16744
+ /** @description Organization unfrozen */
16745
+ 200: {
16746
+ headers: {
16747
+ [name: string]: unknown;
16748
+ };
16749
+ content: {
16750
+ "application/json": {
16751
+ /** @enum {string} */
16752
+ status?: "unfrozen";
16753
+ /** Format: uuid */
16754
+ org_id?: string;
16755
+ };
16756
+ };
16757
+ };
16758
+ /** @description Forbidden */
16759
+ 403: {
16760
+ headers: {
16761
+ [name: string]: unknown;
16762
+ };
16763
+ content?: never;
16764
+ };
16765
+ };
16766
+ };
15590
16767
  getOrgBankrConfig: {
15591
16768
  parameters: {
15592
16769
  query?: never;
@@ -16973,6 +18150,27 @@ export interface operations {
16973
18150
  403: components["responses"]["Forbidden"];
16974
18151
  };
16975
18152
  };
18153
+ getTreasuryAuthPolicy: {
18154
+ parameters: {
18155
+ query?: never;
18156
+ header?: never;
18157
+ path?: never;
18158
+ cookie?: never;
18159
+ };
18160
+ requestBody?: never;
18161
+ responses: {
18162
+ /** @description Effective HFA policy with passkey registration count */
18163
+ 200: {
18164
+ headers: {
18165
+ [name: string]: unknown;
18166
+ };
18167
+ content: {
18168
+ "application/json": components["schemas"]["TreasuryAuthPolicyResponse"];
18169
+ };
18170
+ };
18171
+ 403: components["responses"]["Forbidden"];
18172
+ };
18173
+ };
16976
18174
  getEffectiveSpendPolicy: {
16977
18175
  parameters: {
16978
18176
  query?: never;
@@ -18171,10 +19369,7 @@ export interface operations {
18171
19369
  };
18172
19370
  requestBody: {
18173
19371
  content: {
18174
- "application/json": {
18175
- /** @description 64-char hex SHA-256 of canonical send params */
18176
- tx_digest: string;
18177
- };
19372
+ "application/json": components["schemas"]["PasskeyTxAssertBeginRequest"];
18178
19373
  };
18179
19374
  };
18180
19375
  responses: {
@@ -18183,15 +19378,25 @@ export interface operations {
18183
19378
  headers: {
18184
19379
  [name: string]: unknown;
18185
19380
  };
18186
- content?: never;
19381
+ content: {
19382
+ "application/json": components["schemas"]["PasskeyAssertBeginResponse"];
19383
+ };
18187
19384
  };
18188
- /** @description Missing or invalid tx_digest */
19385
+ /** @description Missing or invalid tx_digest, or invalid action */
18189
19386
  400: {
18190
19387
  headers: {
18191
19388
  [name: string]: unknown;
18192
19389
  };
18193
19390
  content?: never;
18194
19391
  };
19392
+ 403: components["responses"]["Forbidden"];
19393
+ /** @description No passkeys registered for the user */
19394
+ 404: {
19395
+ headers: {
19396
+ [name: string]: unknown;
19397
+ };
19398
+ content?: never;
19399
+ };
18195
19400
  };
18196
19401
  };
18197
19402
  passkeyTxAssertComplete: {
@@ -20889,6 +22094,53 @@ export interface operations {
20889
22094
  403: components["responses"]["Forbidden"];
20890
22095
  };
20891
22096
  };
22097
+ getGuardrailShadowReport: {
22098
+ parameters: {
22099
+ query?: {
22100
+ since?: string;
22101
+ until?: string;
22102
+ };
22103
+ header?: never;
22104
+ path?: never;
22105
+ cookie?: never;
22106
+ };
22107
+ requestBody?: never;
22108
+ responses: {
22109
+ /** @description Guardrail shadow report */
22110
+ 200: {
22111
+ headers: {
22112
+ [name: string]: unknown;
22113
+ };
22114
+ content: {
22115
+ "application/json": components["schemas"]["GuardrailShadowReportResponse"];
22116
+ };
22117
+ };
22118
+ 401: components["responses"]["Unauthorized"];
22119
+ 403: components["responses"]["Forbidden"];
22120
+ };
22121
+ };
22122
+ listGuardrailRevisions: {
22123
+ parameters: {
22124
+ query?: never;
22125
+ header?: never;
22126
+ path?: never;
22127
+ cookie?: never;
22128
+ };
22129
+ requestBody?: never;
22130
+ responses: {
22131
+ /** @description Guardrail revisions */
22132
+ 200: {
22133
+ headers: {
22134
+ [name: string]: unknown;
22135
+ };
22136
+ content: {
22137
+ "application/json": components["schemas"]["GuardrailRevisionListResponse"];
22138
+ };
22139
+ };
22140
+ 401: components["responses"]["Unauthorized"];
22141
+ 403: components["responses"]["Forbidden"];
22142
+ };
22143
+ };
20892
22144
  listContractAbis: {
20893
22145
  parameters: {
20894
22146
  query?: {