@1claw/openapi-spec 0.61.41 → 0.61.42

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/openapi.json +1538 -863
  2. package/openapi.yaml +379 -698
  3. package/package.json +1 -1
package/openapi.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "openapi": "3.1.0",
3
3
  "info": {
4
4
  "title": "1Claw API",
5
- "version": "0.61.41",
5
+ "version": "0.61.42",
6
6
  "description": "Secure secret management for AI agents. Provides vaults, secrets,\npolicy-based access control, agent identity, Intents API,\nsharing, billing, and audit logging. Automations (workflow_spec,\nwebhook tokens, event triggers, Assist), cloud runtimes with\ninteractive shell sessions, agent memory, and discovery.\n\n## Domains\n\n`api.1claw.co` is canonical: it is the OIDC issuer, the `aud` the API\nmints, and the first entry in `servers` — a generated client takes its\nbase URL from there, and the previous ordering pointed every SDK at the\ndomain the issuer had already left. `api.1claw.xyz` still answers and is\nstill accepted on token validation, because tokens minted before the\nmove carry it; it is never minted now.\n\nOne deliberate exception: the Shroud attestation identity token is\nrequested from GCP with `audience: https://api.1claw.xyz`, so\n`/v1/shroud/attestation` reports that as its `expected_audience`. That\nis accurate rather than stale — the audience is a verification contract\nwith anyone already checking the token, and moving it is a breaking\nchange for them, not a rename.\n\nAll endpoints require JWT Bearer authentication unless marked with\n`security: []`.\n",
7
7
  "contact": {
8
8
  "email": "ops@1claw.co"
@@ -1186,8 +1186,10 @@
1186
1186
  "type": "string"
1187
1187
  },
1188
1188
  "prf_supported": {
1189
- "type": "boolean",
1190
- "nullable": true,
1189
+ "type": [
1190
+ "boolean",
1191
+ "null"
1192
+ ],
1191
1193
  "description": "`true` — can hold a wallet share (WebAuthn PRF).\n`false` — cannot. `null` — registered before this\nwas captured.\n"
1192
1194
  }
1193
1195
  }
@@ -6192,10 +6194,11 @@
6192
6194
  ]
6193
6195
  },
6194
6196
  "notes": {
6195
- "type": "string",
6196
- "nullable": true,
6197
- "description": "Internal review notes",
6198
- "never public": null
6197
+ "type": [
6198
+ "string",
6199
+ "null"
6200
+ ],
6201
+ "description": "Internal review notes, never public"
6199
6202
  }
6200
6203
  }
6201
6204
  }
@@ -7195,9 +7198,11 @@
7195
7198
  ]
7196
7199
  },
7197
7200
  "frozen_at": {
7198
- "type": "string",
7199
- "format": "date-time",
7200
- "nullable": true
7201
+ "type": [
7202
+ "string",
7203
+ "null"
7204
+ ],
7205
+ "format": "date-time"
7201
7206
  }
7202
7207
  }
7203
7208
  }
@@ -7552,31 +7557,6 @@
7552
7557
  }
7553
7558
  }
7554
7559
  },
7555
- "/v1/org/env-vars/{id}": {
7556
- "delete": {
7557
- "tags": [
7558
- "Organization"
7559
- ],
7560
- "summary": "Delete org shared environment variable",
7561
- "operationId": "deleteOrgEnvVar",
7562
- "parameters": [
7563
- {
7564
- "name": "id",
7565
- "in": "path",
7566
- "required": true,
7567
- "schema": {
7568
- "type": "string",
7569
- "format": "uuid"
7570
- }
7571
- }
7572
- ],
7573
- "responses": {
7574
- "204": {
7575
- "description": "Deleted"
7576
- }
7577
- }
7578
- }
7579
- },
7580
7560
  "/v1/org/env-vars/{id}/link": {
7581
7561
  "post": {
7582
7562
  "tags": [
@@ -9711,8 +9691,7 @@
9711
9691
  },
9712
9692
  "value": {
9713
9693
  "type": "string",
9714
- "description": "Major units",
9715
- "e.g. \"0.5\".": null
9694
+ "description": "Major units, e.g. \"0.5\"."
9716
9695
  },
9717
9696
  "memo": {
9718
9697
  "type": "string"
@@ -10533,8 +10512,7 @@
10533
10512
  },
10534
10513
  "data": {
10535
10514
  "type": "string",
10536
- "description": "Hex calldata",
10537
- "optional.": null
10515
+ "description": "Hex calldata, optional."
10538
10516
  }
10539
10517
  }
10540
10518
  }
@@ -10667,8 +10645,10 @@
10667
10645
  "type": "string"
10668
10646
  },
10669
10647
  "deploy_tx_hash": {
10670
- "type": "string",
10671
- "nullable": true
10648
+ "type": [
10649
+ "string",
10650
+ "null"
10651
+ ]
10672
10652
  },
10673
10653
  "tx_hash": {
10674
10654
  "type": "string"
@@ -10782,9 +10762,7 @@
10782
10762
  },
10783
10763
  "allowance_amount": {
10784
10764
  "type": "string",
10785
- "description": "Base units",
10786
- "decimal string": null,
10787
- "≤ 2^96-1.": null
10765
+ "description": "Base units, decimal string, ≤ 2^96-1."
10788
10766
  },
10789
10767
  "reset_time_min": {
10790
10768
  "type": "integer",
@@ -10927,8 +10905,7 @@
10927
10905
  },
10928
10906
  "amount": {
10929
10907
  "type": "string",
10930
- "description": "Base units",
10931
- "decimal string.": null
10908
+ "description": "Base units, decimal string."
10932
10909
  },
10933
10910
  "token": {
10934
10911
  "type": "string",
@@ -11569,10 +11546,12 @@
11569
11546
  "type": "object",
11570
11547
  "properties": {
11571
11548
  "policy": {
11572
- "nullable": true,
11573
- "allOf": [
11549
+ "oneOf": [
11574
11550
  {
11575
11551
  "$ref": "#/components/schemas/SpendPolicyResponse"
11552
+ },
11553
+ {
11554
+ "type": "null"
11576
11555
  }
11577
11556
  ]
11578
11557
  }
@@ -12811,9 +12790,11 @@
12811
12790
  "type": "object",
12812
12791
  "properties": {
12813
12792
  "api_key_expires_at": {
12814
- "type": "string",
12793
+ "type": [
12794
+ "string",
12795
+ "null"
12796
+ ],
12815
12797
  "format": "date-time",
12816
- "nullable": true,
12817
12798
  "description": "Optional expiration for the new key."
12818
12799
  }
12819
12800
  }
@@ -12837,9 +12818,11 @@
12837
12818
  "type": "string"
12838
12819
  },
12839
12820
  "api_key_expires_at": {
12840
- "type": "string",
12841
- "format": "date-time",
12842
- "nullable": true
12821
+ "type": [
12822
+ "string",
12823
+ "null"
12824
+ ],
12825
+ "format": "date-time"
12843
12826
  }
12844
12827
  }
12845
12828
  }
@@ -13169,8 +13152,10 @@
13169
13152
  "type": "string"
13170
13153
  },
13171
13154
  "description": {
13172
- "type": "string",
13173
- "nullable": true
13155
+ "type": [
13156
+ "string",
13157
+ "null"
13158
+ ]
13174
13159
  },
13175
13160
  "spec": {
13176
13161
  "type": "object",
@@ -14317,9 +14302,11 @@
14317
14302
  "format": "date-time"
14318
14303
  },
14319
14304
  "details": {
14320
- "type": "object",
14321
- "additionalProperties": true,
14322
- "nullable": true
14305
+ "type": [
14306
+ "object",
14307
+ "null"
14308
+ ],
14309
+ "additionalProperties": true
14323
14310
  }
14324
14311
  }
14325
14312
  }
@@ -18151,8 +18138,14 @@
18151
18138
  "type": "object",
18152
18139
  "properties": {
18153
18140
  "verdict": {
18154
- "$ref": "#/components/schemas/RiskVerdict",
18155
- "nullable": true
18141
+ "oneOf": [
18142
+ {
18143
+ "$ref": "#/components/schemas/RiskVerdict"
18144
+ },
18145
+ {
18146
+ "type": "null"
18147
+ }
18148
+ ]
18156
18149
  }
18157
18150
  }
18158
18151
  }
@@ -18625,8 +18618,7 @@
18625
18618
  }
18626
18619
  },
18627
18620
  "400": {
18628
- "description": "Not a usable 402 challenge",
18629
- "or a non-USDC asset": null
18621
+ "description": "Not a usable 402 challenge, or a non-USDC asset"
18630
18622
  },
18631
18623
  "403": {
18632
18624
  "description": "pay is not enabled for this agent"
@@ -18678,8 +18670,7 @@
18678
18670
  }
18679
18671
  },
18680
18672
  "403": {
18681
- "description": "Policy refused",
18682
- "or the required authorization was absent": null
18673
+ "description": "Policy refused, or the required authorization was absent"
18683
18674
  },
18684
18675
  "409": {
18685
18676
  "description": "ChallengeExpired. Re-fetch the resource for a fresh 402 and prepare again — re-preparing from the stored bytes would reproduce the same expired window.\n"
@@ -18718,11 +18709,13 @@
18718
18709
  "type": "integer"
18719
18710
  },
18720
18711
  "allowed_paytos": {
18721
- "type": "array",
18712
+ "type": [
18713
+ "array",
18714
+ "null"
18715
+ ],
18722
18716
  "items": {
18723
18717
  "type": "string"
18724
- },
18725
- "nullable": true
18718
+ }
18726
18719
  }
18727
18720
  }
18728
18721
  }
@@ -18763,9 +18756,7 @@
18763
18756
  "description": "Invalid terms"
18764
18757
  },
18765
18758
  "403": {
18766
- "description": "Not a human caller",
18767
- "grant mode disabled": null,
18768
- "or over the agent's maximum": null
18759
+ "description": "Not a human caller, grant mode disabled, or over the agent's maximum"
18769
18760
  }
18770
18761
  }
18771
18762
  }
@@ -18806,9 +18797,7 @@
18806
18797
  "description": "Grant created"
18807
18798
  },
18808
18799
  "403": {
18809
- "description": "Not a human caller",
18810
- "grant mode disabled": null,
18811
- "or terms exceed the agent's maximum": null
18800
+ "description": "Not a human caller, grant mode disabled, or terms exceed the agent's maximum"
18812
18801
  }
18813
18802
  }
18814
18803
  }
@@ -18901,12 +18890,10 @@
18901
18890
  ],
18902
18891
  "responses": {
18903
18892
  "200": {
18904
- "description": "Quote and status",
18905
- "rendered from the stored preimage": null
18893
+ "description": "Quote and status, rendered from the stored preimage"
18906
18894
  },
18907
18895
  "403": {
18908
- "description": "Not a human caller",
18909
- "or the session was raised for someone else": null
18896
+ "description": "Not a human caller, or the session was raised for someone else"
18910
18897
  }
18911
18898
  }
18912
18899
  }
@@ -18971,8 +18958,7 @@
18971
18958
  "description": "Revoked"
18972
18959
  },
18973
18960
  "404": {
18974
- "description": "Not found",
18975
- "or already revoked": null
18961
+ "description": "Not found, or already revoked"
18976
18962
  }
18977
18963
  }
18978
18964
  }
@@ -21891,12 +21877,16 @@
21891
21877
  "type": "boolean"
21892
21878
  },
21893
21879
  "message": {
21894
- "type": "string",
21895
- "nullable": true
21880
+ "type": [
21881
+ "string",
21882
+ "null"
21883
+ ]
21896
21884
  },
21897
21885
  "error": {
21898
- "type": "string",
21899
- "nullable": true
21886
+ "type": [
21887
+ "string",
21888
+ "null"
21889
+ ]
21900
21890
  }
21901
21891
  }
21902
21892
  }
@@ -22268,8 +22258,10 @@
22268
22258
  "type": "integer"
22269
22259
  },
22270
22260
  "would_write_rule": {
22271
- "type": "object",
22272
- "nullable": true
22261
+ "type": [
22262
+ "object",
22263
+ "null"
22264
+ ]
22273
22265
  },
22274
22266
  "blocked": {
22275
22267
  "type": "string",
@@ -23118,8 +23110,10 @@
23118
23110
  "type": "integer"
23119
23111
  },
23120
23112
  "avg_rating": {
23121
- "type": "number",
23122
- "nullable": true
23113
+ "type": [
23114
+ "number",
23115
+ "null"
23116
+ ]
23123
23117
  },
23124
23118
  "review_count": {
23125
23119
  "type": "integer"
@@ -23368,8 +23362,10 @@
23368
23362
  "type": "object"
23369
23363
  },
23370
23364
  "confidence": {
23371
- "type": "string",
23372
- "nullable": true
23365
+ "type": [
23366
+ "string",
23367
+ "null"
23368
+ ]
23373
23369
  },
23374
23370
  "why_we_believe_this": {
23375
23371
  "type": "array",
@@ -23834,8 +23830,10 @@
23834
23830
  ],
23835
23831
  "properties": {
23836
23832
  "likelihood": {
23837
- "type": "number",
23838
- "nullable": true,
23833
+ "type": [
23834
+ "number",
23835
+ "null"
23836
+ ],
23839
23837
  "description": "Absent when there is no comparable history."
23840
23838
  },
23841
23839
  "reasoning": {
@@ -24542,8 +24540,10 @@
24542
24540
  "type": "string"
24543
24541
  },
24544
24542
  "authorization_url": {
24545
- "type": "string",
24546
- "nullable": true,
24543
+ "type": [
24544
+ "string",
24545
+ "null"
24546
+ ],
24547
24547
  "description": "Absent for connectors that use a pasted API key rather than OAuth."
24548
24548
  },
24549
24549
  "next_step": {
@@ -29656,8 +29656,10 @@
29656
29656
  "content": {
29657
29657
  "application/json": {
29658
29658
  "schema": {
29659
- "nullable": true,
29660
- "type": "object",
29659
+ "type": [
29660
+ "object",
29661
+ "null"
29662
+ ],
29661
29663
  "properties": {
29662
29664
  "enabled": {
29663
29665
  "type": "boolean"
@@ -29760,11 +29762,7 @@
29760
29762
  "description": "The updated config, header names only"
29761
29763
  },
29762
29764
  "400": {
29763
- "description": "Endpoint refused (scheme",
29764
- "credentials": null,
29765
- "private or unresolvable host)": null,
29766
- "reserved header": null,
29767
- "or enabling with no endpoint": null
29765
+ "description": "Endpoint refused (scheme, credentials, private or unresolvable host), reserved header, or enabling with no endpoint"
29768
29766
  },
29769
29767
  "401": {
29770
29768
  "description": "Unauthenticated"
@@ -29809,8 +29807,7 @@
29809
29807
  }
29810
29808
  },
29811
29809
  "400": {
29812
- "description": "Not configured",
29813
- "or the send failed": null
29810
+ "description": "Not configured, or the send failed"
29814
29811
  },
29815
29812
  "401": {
29816
29813
  "description": "Unauthenticated"
@@ -29914,13 +29911,17 @@
29914
29911
  }
29915
29912
  },
29916
29913
  "latency_p50_ms": {
29917
- "type": "number",
29918
- "nullable": true,
29914
+ "type": [
29915
+ "number",
29916
+ "null"
29917
+ ],
29919
29918
  "description": "Null when nothing in the window recorded a duration."
29920
29919
  },
29921
29920
  "latency_p95_ms": {
29922
- "type": "number",
29923
- "nullable": true
29921
+ "type": [
29922
+ "number",
29923
+ "null"
29924
+ ]
29924
29925
  },
29925
29926
  "total_executions": {
29926
29927
  "type": "integer"
@@ -29984,47 +29985,63 @@
29984
29985
  "format": "uuid"
29985
29986
  },
29986
29987
  "score": {
29987
- "type": "integer",
29988
+ "type": [
29989
+ "integer",
29990
+ "null"
29991
+ ],
29988
29992
  "minimum": 0,
29989
- "maximum": 100,
29990
- "nullable": true
29993
+ "maximum": 100
29991
29994
  },
29992
29995
  "shadow": {
29993
29996
  "type": "boolean",
29994
29997
  "description": "True while the engine is recommend-only or the agent is unscored."
29995
29998
  },
29996
29999
  "updated_at": {
29997
- "type": "string",
29998
- "format": "date-time",
29999
- "nullable": true
30000
+ "type": [
30001
+ "string",
30002
+ "null"
30003
+ ],
30004
+ "format": "date-time"
30000
30005
  },
30001
30006
  "components": {
30002
30007
  "type": "object",
30003
30008
  "description": "0-100 per component; null means no source in this deployment.",
30004
30009
  "properties": {
30005
30010
  "denial_rate": {
30006
- "type": "integer",
30007
- "nullable": true
30011
+ "type": [
30012
+ "integer",
30013
+ "null"
30014
+ ]
30008
30015
  },
30009
30016
  "threat_hits": {
30010
- "type": "integer",
30011
- "nullable": true
30017
+ "type": [
30018
+ "integer",
30019
+ "null"
30020
+ ]
30012
30021
  },
30013
30022
  "egress_blocks": {
30014
- "type": "integer",
30015
- "nullable": true
30023
+ "type": [
30024
+ "integer",
30025
+ "null"
30026
+ ]
30016
30027
  },
30017
30028
  "spend_velocity": {
30018
- "type": "integer",
30019
- "nullable": true
30029
+ "type": [
30030
+ "integer",
30031
+ "null"
30032
+ ]
30020
30033
  },
30021
30034
  "off_hours": {
30022
- "type": "integer",
30023
- "nullable": true
30035
+ "type": [
30036
+ "integer",
30037
+ "null"
30038
+ ]
30024
30039
  },
30025
30040
  "consensus_bypass": {
30026
- "type": "integer",
30027
- "nullable": true
30041
+ "type": [
30042
+ "integer",
30043
+ "null"
30044
+ ]
30028
30045
  }
30029
30046
  }
30030
30047
  },
@@ -30070,8 +30087,10 @@
30070
30087
  "type": "string"
30071
30088
  },
30072
30089
  "resource_type": {
30073
- "type": "string",
30074
- "nullable": true
30090
+ "type": [
30091
+ "string",
30092
+ "null"
30093
+ ]
30075
30094
  }
30076
30095
  }
30077
30096
  }
@@ -30519,8 +30538,10 @@
30519
30538
  "type": "boolean"
30520
30539
  },
30521
30540
  "overrides": {
30522
- "type": "string",
30523
- "nullable": true
30541
+ "type": [
30542
+ "string",
30543
+ "null"
30544
+ ]
30524
30545
  }
30525
30546
  }
30526
30547
  }
@@ -30833,8 +30854,10 @@
30833
30854
  "type": "boolean"
30834
30855
  },
30835
30856
  "license": {
30836
- "type": "string",
30837
- "nullable": true,
30857
+ "type": [
30858
+ "string",
30859
+ "null"
30860
+ ],
30838
30861
  "description": "SPDX id, or null when the agent is proprietary"
30839
30862
  },
30840
30863
  "requires_vendor_subscription": {
@@ -30842,8 +30865,10 @@
30842
30865
  "description": "Whether the agent needs a paid account with its vendor. Independent of licence — the Codex CLI is Apache-2.0 and still requires a ChatGPT plan."
30843
30866
  },
30844
30867
  "vendor_credential_env": {
30845
- "type": "string",
30846
- "nullable": true
30868
+ "type": [
30869
+ "string",
30870
+ "null"
30871
+ ]
30847
30872
  }
30848
30873
  }
30849
30874
  }
@@ -31006,22 +31031,30 @@
31006
31031
  "type": "string"
31007
31032
  },
31008
31033
  "platform": {
31009
- "type": "string",
31010
- "nullable": true
31034
+ "type": [
31035
+ "string",
31036
+ "null"
31037
+ ]
31011
31038
  },
31012
31039
  "bridge_version": {
31013
- "type": "string",
31014
- "nullable": true
31040
+ "type": [
31041
+ "string",
31042
+ "null"
31043
+ ]
31015
31044
  },
31016
31045
  "last_seen_at": {
31017
- "type": "string",
31018
- "format": "date-time",
31019
- "nullable": true
31046
+ "type": [
31047
+ "string",
31048
+ "null"
31049
+ ],
31050
+ "format": "date-time"
31020
31051
  },
31021
31052
  "revoked_at": {
31022
- "type": "string",
31053
+ "type": [
31054
+ "string",
31055
+ "null"
31056
+ ],
31023
31057
  "format": "date-time",
31024
- "nullable": true,
31025
31058
  "description": "Set once revoked. A revoked credential stops resolving."
31026
31059
  },
31027
31060
  "created_at": {
@@ -31916,8 +31949,10 @@
31916
31949
  "description": "Sum of the blast radius. The sort key."
31917
31950
  },
31918
31951
  "resolved_by": {
31919
- "type": "string",
31920
- "nullable": true
31952
+ "type": [
31953
+ "string",
31954
+ "null"
31955
+ ]
31921
31956
  },
31922
31957
  "created_at": {
31923
31958
  "type": "string",
@@ -31974,16 +32009,22 @@
31974
32009
  "type": "boolean"
31975
32010
  },
31976
32011
  "pay_max_usd": {
31977
- "type": "string",
31978
- "nullable": true
32012
+ "type": [
32013
+ "string",
32014
+ "null"
32015
+ ]
31979
32016
  },
31980
32017
  "pay_daily_limit_usd": {
31981
- "type": "string",
31982
- "nullable": true
32018
+ "type": [
32019
+ "string",
32020
+ "null"
32021
+ ]
31983
32022
  },
31984
32023
  "pay_payto_allowlist": {
31985
- "type": "array",
31986
- "nullable": true,
32024
+ "type": [
32025
+ "array",
32026
+ "null"
32027
+ ],
31987
32028
  "items": {
31988
32029
  "type": "string"
31989
32030
  },
@@ -32000,12 +32041,16 @@
32000
32041
  "type": "boolean"
32001
32042
  },
32002
32043
  "pay_grant_max_usd": {
32003
- "type": "string",
32004
- "nullable": true
32044
+ "type": [
32045
+ "string",
32046
+ "null"
32047
+ ]
32005
32048
  },
32006
32049
  "pay_grant_max_ttl_secs": {
32007
- "type": "integer",
32008
- "nullable": true
32050
+ "type": [
32051
+ "integer",
32052
+ "null"
32053
+ ]
32009
32054
  }
32010
32055
  }
32011
32056
  },
@@ -32062,9 +32107,11 @@
32062
32107
  "additionalProperties": true
32063
32108
  },
32064
32109
  "valid_before": {
32065
- "type": "string",
32066
- "format": "date-time",
32067
- "nullable": true
32110
+ "type": [
32111
+ "string",
32112
+ "null"
32113
+ ],
32114
+ "format": "date-time"
32068
32115
  },
32069
32116
  "expires_at": {
32070
32117
  "type": "string",
@@ -32123,9 +32170,11 @@
32123
32170
  "type": "string"
32124
32171
  },
32125
32172
  "grant_id": {
32126
- "type": "string",
32127
- "format": "uuid",
32128
- "nullable": true
32173
+ "type": [
32174
+ "string",
32175
+ "null"
32176
+ ],
32177
+ "format": "uuid"
32129
32178
  }
32130
32179
  }
32131
32180
  },
@@ -32136,13 +32185,17 @@
32136
32185
  "type": "integer"
32137
32186
  },
32138
32187
  "settled": {
32139
- "type": "boolean",
32140
- "nullable": true,
32188
+ "type": [
32189
+ "boolean",
32190
+ "null"
32191
+ ],
32141
32192
  "description": "Null means the caller could not tell — a timeout after the header was sent, where the payment may or may not have been presented.\n"
32142
32193
  },
32143
32194
  "error": {
32144
- "type": "string",
32145
- "nullable": true
32195
+ "type": [
32196
+ "string",
32197
+ "null"
32198
+ ]
32146
32199
  }
32147
32200
  }
32148
32201
  },
@@ -32161,8 +32214,10 @@
32161
32214
  "type": "integer"
32162
32215
  },
32163
32216
  "allowed_paytos": {
32164
- "type": "array",
32165
- "nullable": true,
32217
+ "type": [
32218
+ "array",
32219
+ "null"
32220
+ ],
32166
32221
  "items": {
32167
32222
  "type": "string"
32168
32223
  },
@@ -32223,9 +32278,11 @@
32223
32278
  "format": "uuid"
32224
32279
  },
32225
32280
  "agent_id": {
32226
- "type": "string",
32227
- "format": "uuid",
32228
- "nullable": true
32281
+ "type": [
32282
+ "string",
32283
+ "null"
32284
+ ],
32285
+ "format": "uuid"
32229
32286
  },
32230
32287
  "issuer": {
32231
32288
  "type": "string",
@@ -32368,14 +32425,18 @@
32368
32425
  "type": "integer"
32369
32426
  },
32370
32427
  "reveal_expires_at": {
32371
- "type": "string",
32372
- "format": "date-time",
32373
- "nullable": true
32428
+ "type": [
32429
+ "string",
32430
+ "null"
32431
+ ],
32432
+ "format": "date-time"
32374
32433
  },
32375
32434
  "void_after": {
32376
- "type": "string",
32377
- "format": "date-time",
32378
- "nullable": true
32435
+ "type": [
32436
+ "string",
32437
+ "null"
32438
+ ],
32439
+ "format": "date-time"
32379
32440
  }
32380
32441
  }
32381
32442
  },
@@ -33843,8 +33904,10 @@
33843
33904
  "type": "string"
33844
33905
  },
33845
33906
  "fingerprint": {
33846
- "type": "string",
33847
- "nullable": true
33907
+ "type": [
33908
+ "string",
33909
+ "null"
33910
+ ]
33848
33911
  },
33849
33912
  "agent_id": {
33850
33913
  "type": "string",
@@ -33980,8 +34043,10 @@
33980
34043
  }
33981
34044
  },
33982
34045
  "token_ttl_seconds": {
33983
- "type": "integer",
33984
- "nullable": true,
34046
+ "type": [
34047
+ "integer",
34048
+ "null"
34049
+ ],
33985
34050
  "description": "Per-agent token TTL in seconds (overrides global default)"
33986
34051
  },
33987
34052
  "vault_ids": {
@@ -34061,13 +34126,17 @@
34061
34126
  "description": "Per-chain guardrail overrides. Keys are signing chains (ethereum, bitcoin, solana, xrp, cardano, tron).\nEach value may include max_value, daily_limit, to_allowlist, token_allowlist, max_per_day,\noverhead_budget, max_ata_creates_per_day, max_fee_per_gas_gwei, max_gas_limit,\ngas_daily_budget_native (UTC-day cumulative EVM gas estimate in native units).\nStrictest of global and per-chain limits wins. Daily limits apply per chain family spend, not cross-chain totals.\n"
34062
34127
  },
34063
34128
  "tx_max_per_day": {
34064
- "type": "integer",
34065
- "nullable": true,
34129
+ "type": [
34130
+ "integer",
34131
+ "null"
34132
+ ],
34066
34133
  "description": "Max transactions per UTC calendar day. Null = unlimited."
34067
34134
  },
34068
34135
  "tx_overhead_budget": {
34069
- "type": "object",
34070
- "nullable": true,
34136
+ "type": [
34137
+ "object",
34138
+ "null"
34139
+ ],
34071
34140
  "additionalProperties": {
34072
34141
  "type": "string"
34073
34142
  },
@@ -34109,15 +34178,19 @@
34109
34178
  "description": "When true, card orders route through the human approval queue before x402 payment."
34110
34179
  },
34111
34180
  "tx_approval_policy": {
34112
- "type": "object",
34181
+ "type": [
34182
+ "object",
34183
+ "null"
34184
+ ],
34113
34185
  "additionalProperties": true,
34114
- "nullable": true,
34115
34186
  "description": "Graduated transaction approval policy (HITL thresholds). Separate from hard guardrails."
34116
34187
  },
34117
34188
  "action_approval_policy": {
34118
- "type": "object",
34189
+ "type": [
34190
+ "object",
34191
+ "null"
34192
+ ],
34119
34193
  "additionalProperties": true,
34120
- "nullable": true,
34121
34194
  "description": "Which business actions this agent must ask a human about, and above what\namount. `{}` means no per-action rules.\n\nShape: `{ \"default_mode\": \"deny|approve|allow\", \"rules\": [ { \"action_type\":\n\"refund.create\", \"mode\": \"approve\", \"require_for_amount_above_usd\": \"50\",\n\"summary_template\": \"Refund {{amount_usd}} to {{customer_email}}\" } ] }`.\n\nA rule can only raise the bar. Editing this is classified as a guardrail\nwidening, so it routes through the same approval flow as loosening a\ntransaction limit. Malformed rules are rejected on write rather than\nignored at request time.\n"
34122
34195
  },
34123
34196
  "typed_data_policy": {
@@ -34142,28 +34215,38 @@
34142
34215
  "description": "Block unlimited ERC-20 approvals (max uint256 / setApprovalForAll)."
34143
34216
  },
34144
34217
  "tx_per_recipient_max_per_day": {
34145
- "type": "integer",
34146
- "nullable": true,
34218
+ "type": [
34219
+ "integer",
34220
+ "null"
34221
+ ],
34147
34222
  "description": "Max transactions to the same recipient address per UTC day."
34148
34223
  },
34149
34224
  "tx_per_recipient_daily_limit": {
34150
- "type": "string",
34151
- "nullable": true,
34225
+ "type": [
34226
+ "string",
34227
+ "null"
34228
+ ],
34152
34229
  "description": "Max native-unit spend to the same recipient per UTC day."
34153
34230
  },
34154
34231
  "new_recipient_cap_native": {
34155
- "type": "string",
34156
- "nullable": true,
34232
+ "type": [
34233
+ "string",
34234
+ "null"
34235
+ ],
34157
34236
  "description": "Cap on first-time recipient spend in native units."
34158
34237
  },
34159
34238
  "tx_max_value_usd": {
34160
- "type": "string",
34161
- "nullable": true,
34239
+ "type": [
34240
+ "string",
34241
+ "null"
34242
+ ],
34162
34243
  "description": "Per-transaction USD cap (requires price oracle)."
34163
34244
  },
34164
34245
  "tx_daily_limit_usd": {
34165
- "type": "string",
34166
- "nullable": true,
34246
+ "type": [
34247
+ "string",
34248
+ "null"
34249
+ ],
34167
34250
  "description": "Rolling 24h USD spend cap (requires price oracle)."
34168
34251
  },
34169
34252
  "raw_signing_policy": {
@@ -34192,9 +34275,11 @@
34192
34275
  "description": "Allow EIP-7702 (tx type 4) set-code transactions."
34193
34276
  },
34194
34277
  "api_key_expires_at": {
34195
- "type": "string",
34278
+ "type": [
34279
+ "string",
34280
+ "null"
34281
+ ],
34196
34282
  "format": "date-time",
34197
- "nullable": true,
34198
34283
  "description": "Optional expiration time for the agent's API key."
34199
34284
  },
34200
34285
  "environment": {
@@ -34361,8 +34446,10 @@
34361
34446
  }
34362
34447
  },
34363
34448
  "token_ttl_seconds": {
34364
- "type": "integer",
34365
- "nullable": true
34449
+ "type": [
34450
+ "integer",
34451
+ "null"
34452
+ ]
34366
34453
  },
34367
34454
  "vault_ids": {
34368
34455
  "type": "array",
@@ -34379,8 +34466,10 @@
34379
34466
  "$ref": "#/components/schemas/ShroudConfig"
34380
34467
  },
34381
34468
  "system_prompt": {
34382
- "type": "string",
34383
- "nullable": true,
34469
+ "type": [
34470
+ "string",
34471
+ "null"
34472
+ ],
34384
34473
  "description": "Default system prompt for agent chat (null clears)."
34385
34474
  },
34386
34475
  "execution_intents_enabled": {
@@ -34401,13 +34490,17 @@
34401
34490
  "description": "When true, execute requests must arrive via TEE and all direct secret reads are blocked (Pro+ only)"
34402
34491
  },
34403
34492
  "tx_max_per_day": {
34404
- "type": "integer",
34405
- "nullable": true,
34493
+ "type": [
34494
+ "integer",
34495
+ "null"
34496
+ ],
34406
34497
  "description": "Max transactions per UTC calendar day. Null = unlimited."
34407
34498
  },
34408
34499
  "tx_overhead_budget": {
34409
- "type": "object",
34410
- "nullable": true,
34500
+ "type": [
34501
+ "object",
34502
+ "null"
34503
+ ],
34411
34504
  "additionalProperties": {
34412
34505
  "type": "string"
34413
34506
  },
@@ -34425,13 +34518,17 @@
34425
34518
  "description": "Whether this agent may order payment cards (x402 card ordering). Pro+ tier."
34426
34519
  },
34427
34520
  "card_max_order_usd": {
34428
- "type": "string",
34429
- "nullable": true,
34521
+ "type": [
34522
+ "string",
34523
+ "null"
34524
+ ],
34430
34525
  "description": "Maximum USD amount for a single card order. null clears."
34431
34526
  },
34432
34527
  "card_daily_limit_usd": {
34433
- "type": "string",
34434
- "nullable": true,
34528
+ "type": [
34529
+ "string",
34530
+ "null"
34531
+ ],
34435
34532
  "description": "Maximum cumulative USD spent ordering cards per rolling 24h window. null clears."
34436
34533
  },
34437
34534
  "card_payto_allowlist": {
@@ -34450,33 +34547,41 @@
34450
34547
  "description": "When true, card orders route through the human approval queue before x402 payment."
34451
34548
  },
34452
34549
  "tx_approval_policy": {
34453
- "type": "object",
34550
+ "type": [
34551
+ "object",
34552
+ "null"
34553
+ ],
34454
34554
  "additionalProperties": true,
34455
- "nullable": true,
34456
34555
  "description": "Graduated transaction approval policy (HITL thresholds)."
34457
34556
  },
34458
34557
  "action_approval_policy": {
34459
- "type": "object",
34558
+ "type": [
34559
+ "object",
34560
+ "null"
34561
+ ],
34460
34562
  "additionalProperties": true,
34461
- "nullable": true,
34462
34563
  "description": "Which business actions this agent must ask a human about, and above what\namount. `{}` means no per-action rules.\n\nShape: `{ \"default_mode\": \"deny|approve|allow\", \"rules\": [ { \"action_type\":\n\"refund.create\", \"mode\": \"approve\", \"require_for_amount_above_usd\": \"50\",\n\"summary_template\": \"Refund {{amount_usd}} to {{customer_email}}\" } ] }`.\n\nA rule can only raise the bar. Editing this is classified as a guardrail\nwidening, so it routes through the same approval flow as loosening a\ntransaction limit. Malformed rules are rejected on write rather than\nignored at request time.\n"
34463
34564
  },
34464
34565
  "typed_data_policy": {
34465
- "type": "string",
34566
+ "type": [
34567
+ "string",
34568
+ "null"
34569
+ ],
34466
34570
  "enum": [
34467
34571
  "deny",
34468
34572
  "approve"
34469
34573
  ],
34470
- "nullable": true,
34471
34574
  "description": "EIP-712 escalation policy."
34472
34575
  },
34473
34576
  "simulation_failure_policy": {
34474
- "type": "string",
34577
+ "type": [
34578
+ "string",
34579
+ "null"
34580
+ ],
34475
34581
  "enum": [
34476
34582
  "deny",
34477
34583
  "approve"
34478
34584
  ],
34479
- "nullable": true,
34480
34585
  "description": "Simulation failure escalation policy."
34481
34586
  },
34482
34587
  "tx_block_unlimited_approvals": {
@@ -34484,28 +34589,38 @@
34484
34589
  "description": "Block unlimited ERC-20 approvals (max uint256 / setApprovalForAll)."
34485
34590
  },
34486
34591
  "tx_per_recipient_max_per_day": {
34487
- "type": "integer",
34488
- "nullable": true,
34592
+ "type": [
34593
+ "integer",
34594
+ "null"
34595
+ ],
34489
34596
  "description": "Max transactions to the same recipient per UTC day. Null clears."
34490
34597
  },
34491
34598
  "tx_per_recipient_daily_limit": {
34492
- "type": "string",
34493
- "nullable": true,
34599
+ "type": [
34600
+ "string",
34601
+ "null"
34602
+ ],
34494
34603
  "description": "Max native spend to same recipient per UTC day. Null clears."
34495
34604
  },
34496
34605
  "new_recipient_cap_native": {
34497
- "type": "string",
34498
- "nullable": true,
34606
+ "type": [
34607
+ "string",
34608
+ "null"
34609
+ ],
34499
34610
  "description": "First-time recipient native cap. Null clears."
34500
34611
  },
34501
34612
  "tx_max_value_usd": {
34502
- "type": "string",
34503
- "nullable": true,
34613
+ "type": [
34614
+ "string",
34615
+ "null"
34616
+ ],
34504
34617
  "description": "Per-tx USD cap. Null clears."
34505
34618
  },
34506
34619
  "tx_daily_limit_usd": {
34507
- "type": "string",
34508
- "nullable": true,
34620
+ "type": [
34621
+ "string",
34622
+ "null"
34623
+ ],
34509
34624
  "description": "Rolling 24h USD spend cap. Null clears."
34510
34625
  },
34511
34626
  "raw_signing_policy": {
@@ -34547,10 +34662,12 @@
34547
34662
  "description": "Allowlist of `aud` values the federation token-exchange may issue\ntokens for (e.g. `[\"https://api.anthropic.com\"]`). Empty array\nblocks all federation requests (zero-trust default).\n"
34548
34663
  },
34549
34664
  "federated_token_ttl_seconds": {
34550
- "type": "integer",
34665
+ "type": [
34666
+ "integer",
34667
+ "null"
34668
+ ],
34551
34669
  "minimum": 60,
34552
34670
  "maximum": 3600,
34553
- "nullable": true,
34554
34671
  "description": "Per-agent TTL override for federation tokens (seconds). NULL falls\nback to the global default (`ONECLAW_JWT_FEDERATED_TOKEN_EXPIRY_SECS`).\nHard-capped at 3600 seconds.\n"
34555
34672
  },
34556
34673
  "tx_token_allowlist": {
@@ -34578,14 +34695,18 @@
34578
34695
  "description": "Per-chain guardrail overrides. Keys are signing chains (ethereum, bitcoin, solana, xrp, cardano, tron).\nEach value may include max_value, daily_limit, to_allowlist, token_allowlist (legacy *_eth keys accepted),\nmax_fee_per_gas_gwei, max_gas_limit, gas_daily_budget_native (UTC-day cumulative EVM gas in native units).\nStrictest of global and per-chain limits wins. Daily limits apply per chain family spend, not cross-chain totals.\n"
34579
34696
  },
34580
34697
  "api_key_expires_at": {
34581
- "type": "string",
34698
+ "type": [
34699
+ "string",
34700
+ "null"
34701
+ ],
34582
34702
  "format": "date-time",
34583
- "nullable": true,
34584
34703
  "description": "Optional expiration time for the agent's API key. Set to null to clear."
34585
34704
  },
34586
34705
  "environment": {
34587
- "type": "string",
34588
- "nullable": true,
34706
+ "type": [
34707
+ "string",
34708
+ "null"
34709
+ ],
34589
34710
  "description": "Named environment for this agent (production, preview, development, or custom)."
34590
34711
  },
34591
34712
  "environment_locked": {
@@ -34727,8 +34848,10 @@
34727
34848
  }
34728
34849
  },
34729
34850
  "token_ttl_seconds": {
34730
- "type": "integer",
34731
- "nullable": true
34851
+ "type": [
34852
+ "integer",
34853
+ "null"
34854
+ ]
34732
34855
  },
34733
34856
  "vault_ids": {
34734
34857
  "type": "array",
@@ -34786,13 +34909,17 @@
34786
34909
  "description": "When true, execute requests must arrive via TEE and all direct secret reads are blocked (Pro+ only)"
34787
34910
  },
34788
34911
  "tx_max_per_day": {
34789
- "type": "integer",
34790
- "nullable": true,
34912
+ "type": [
34913
+ "integer",
34914
+ "null"
34915
+ ],
34791
34916
  "description": "Max transactions per UTC calendar day. Null = unlimited."
34792
34917
  },
34793
34918
  "tx_overhead_budget": {
34794
- "type": "object",
34795
- "nullable": true,
34919
+ "type": [
34920
+ "object",
34921
+ "null"
34922
+ ],
34796
34923
  "additionalProperties": {
34797
34924
  "type": "string"
34798
34925
  },
@@ -34833,56 +34960,74 @@
34833
34960
  "description": "When true, card orders route through the human approval queue before x402 payment."
34834
34961
  },
34835
34962
  "tx_approval_policy": {
34836
- "type": "object",
34963
+ "type": [
34964
+ "object",
34965
+ "null"
34966
+ ],
34837
34967
  "additionalProperties": true,
34838
- "nullable": true,
34839
34968
  "description": "Graduated transaction approval policy (HITL thresholds)."
34840
34969
  },
34841
34970
  "action_approval_policy": {
34842
- "type": "object",
34971
+ "type": [
34972
+ "object",
34973
+ "null"
34974
+ ],
34843
34975
  "additionalProperties": true,
34844
- "nullable": true,
34845
34976
  "description": "Which business actions this agent must ask a human about, and above what\namount. `{}` means no per-action rules.\n\nShape: `{ \"default_mode\": \"deny|approve|allow\", \"rules\": [ { \"action_type\":\n\"refund.create\", \"mode\": \"approve\", \"require_for_amount_above_usd\": \"50\",\n\"summary_template\": \"Refund {{amount_usd}} to {{customer_email}}\" } ] }`.\n\nA rule can only raise the bar. Editing this is classified as a guardrail\nwidening, so it routes through the same approval flow as loosening a\ntransaction limit. Malformed rules are rejected on write rather than\nignored at request time.\n"
34846
34977
  },
34847
34978
  "typed_data_policy": {
34848
- "type": "string",
34979
+ "type": [
34980
+ "string",
34981
+ "null"
34982
+ ],
34849
34983
  "enum": [
34850
34984
  "deny",
34851
34985
  "approve"
34852
- ],
34853
- "nullable": true
34986
+ ]
34854
34987
  },
34855
34988
  "simulation_failure_policy": {
34856
- "type": "string",
34989
+ "type": [
34990
+ "string",
34991
+ "null"
34992
+ ],
34857
34993
  "enum": [
34858
34994
  "deny",
34859
34995
  "approve"
34860
- ],
34861
- "nullable": true
34996
+ ]
34862
34997
  },
34863
34998
  "tx_block_unlimited_approvals": {
34864
34999
  "type": "boolean",
34865
35000
  "description": "Block unlimited ERC-20 approvals."
34866
35001
  },
34867
35002
  "tx_per_recipient_max_per_day": {
34868
- "type": "integer",
34869
- "nullable": true
35003
+ "type": [
35004
+ "integer",
35005
+ "null"
35006
+ ]
34870
35007
  },
34871
35008
  "tx_per_recipient_daily_limit": {
34872
- "type": "string",
34873
- "nullable": true
35009
+ "type": [
35010
+ "string",
35011
+ "null"
35012
+ ]
34874
35013
  },
34875
35014
  "new_recipient_cap_native": {
34876
- "type": "string",
34877
- "nullable": true
35015
+ "type": [
35016
+ "string",
35017
+ "null"
35018
+ ]
34878
35019
  },
34879
35020
  "tx_max_value_usd": {
34880
- "type": "string",
34881
- "nullable": true
35021
+ "type": [
35022
+ "string",
35023
+ "null"
35024
+ ]
34882
35025
  },
34883
35026
  "tx_daily_limit_usd": {
34884
- "type": "string",
34885
- "nullable": true
35027
+ "type": [
35028
+ "string",
35029
+ "null"
35030
+ ]
34886
35031
  },
34887
35032
  "raw_signing_policy": {
34888
35033
  "type": "string",
@@ -34893,9 +35038,11 @@
34893
35038
  ]
34894
35039
  },
34895
35040
  "personal_sign_policy": {
34896
- "type": "object",
34897
- "additionalProperties": true,
34898
- "nullable": true
35041
+ "type": [
35042
+ "object",
35043
+ "null"
35044
+ ],
35045
+ "additionalProperties": true
34899
35046
  },
34900
35047
  "allow_erc4337": {
34901
35048
  "type": "boolean"
@@ -34931,8 +35078,10 @@
34931
35078
  "description": "Allowlist of audience URIs the agent may federate to."
34932
35079
  },
34933
35080
  "federated_token_ttl_seconds": {
34934
- "type": "integer",
34935
- "nullable": true,
35081
+ "type": [
35082
+ "integer",
35083
+ "null"
35084
+ ],
34936
35085
  "description": "Per-agent TTL override for federation tokens (60..=3600)."
34937
35086
  },
34938
35087
  "signing_chains": {
@@ -34996,14 +35145,18 @@
34996
35145
  "description": "Per-chain-family daily spend in native major units (keys: evm, bitcoin, solana, xrp, cardano, tron)."
34997
35146
  },
34998
35147
  "api_key_expires_at": {
34999
- "type": "string",
35148
+ "type": [
35149
+ "string",
35150
+ "null"
35151
+ ],
35000
35152
  "format": "date-time",
35001
- "nullable": true,
35002
35153
  "description": "Optional expiration time for the agent's API key."
35003
35154
  },
35004
35155
  "evm_address": {
35005
- "type": "string",
35006
- "nullable": true,
35156
+ "type": [
35157
+ "string",
35158
+ "null"
35159
+ ],
35007
35160
  "description": "Agent's Ethereum EOA address (used as Safe signer for smart accounts and Intents API)."
35008
35161
  },
35009
35162
  "created_at": {
@@ -35026,8 +35179,10 @@
35026
35179
  }
35027
35180
  },
35028
35181
  "environment": {
35029
- "type": "string",
35030
- "nullable": true,
35182
+ "type": [
35183
+ "string",
35184
+ "null"
35185
+ ],
35031
35186
  "description": "Named environment this agent belongs to (production, preview, development, or custom)."
35032
35187
  },
35033
35188
  "environment_locked": {
@@ -35089,8 +35244,10 @@
35089
35244
  "type": "boolean"
35090
35245
  },
35091
35246
  "logo_url": {
35092
- "type": "string",
35093
- "nullable": true
35247
+ "type": [
35248
+ "string",
35249
+ "null"
35250
+ ]
35094
35251
  },
35095
35252
  "created_at": {
35096
35253
  "type": "string",
@@ -35150,8 +35307,10 @@
35150
35307
  "default": true
35151
35308
  },
35152
35309
  "logo_url": {
35153
- "type": "string",
35154
- "nullable": true
35310
+ "type": [
35311
+ "string",
35312
+ "null"
35313
+ ]
35155
35314
  }
35156
35315
  }
35157
35316
  },
@@ -36201,8 +36360,10 @@
36201
36360
  "type": "string"
36202
36361
  },
36203
36362
  "address": {
36204
- "type": "string",
36205
- "nullable": true
36363
+ "type": [
36364
+ "string",
36365
+ "null"
36366
+ ]
36206
36367
  },
36207
36368
  "key_version": {
36208
36369
  "type": "integer"
@@ -36215,9 +36376,11 @@
36215
36376
  "format": "date-time"
36216
36377
  },
36217
36378
  "rotated_at": {
36218
- "type": "string",
36219
- "format": "date-time",
36220
- "nullable": true
36379
+ "type": [
36380
+ "string",
36381
+ "null"
36382
+ ],
36383
+ "format": "date-time"
36221
36384
  },
36222
36385
  "custody": {
36223
36386
  "type": "string",
@@ -36308,8 +36471,10 @@
36308
36471
  "description": "Agent memory, off by default. Until this field existed a\nplatform app had no way to turn it on: a bootstrap template\naccepted `memory_enabled` in its spec and never read it, so\nthe capability was reachable only from the end user's own\ndashboard. Templates now honour the flag too.\n"
36309
36472
  },
36310
36473
  "system_prompt": {
36311
- "type": "string",
36312
- "nullable": true
36474
+ "type": [
36475
+ "string",
36476
+ "null"
36477
+ ]
36313
36478
  }
36314
36479
  }
36315
36480
  },
@@ -36330,8 +36495,10 @@
36330
36495
  "type": "boolean"
36331
36496
  },
36332
36497
  "system_prompt": {
36333
- "type": "string",
36334
- "nullable": true
36498
+ "type": [
36499
+ "string",
36500
+ "null"
36501
+ ]
36335
36502
  }
36336
36503
  }
36337
36504
  },
@@ -36518,9 +36685,11 @@
36518
36685
  "type": "boolean"
36519
36686
  },
36520
36687
  "expires_at": {
36521
- "type": "string",
36522
- "format": "date-time",
36523
- "nullable": true
36688
+ "type": [
36689
+ "string",
36690
+ "null"
36691
+ ],
36692
+ "format": "date-time"
36524
36693
  }
36525
36694
  }
36526
36695
  },
@@ -36562,8 +36731,10 @@
36562
36731
  }
36563
36732
  },
36564
36733
  "max_daily_delegations": {
36565
- "type": "integer",
36566
- "nullable": true
36734
+ "type": [
36735
+ "integer",
36736
+ "null"
36737
+ ]
36567
36738
  },
36568
36739
  "max_depth": {
36569
36740
  "type": "integer"
@@ -36587,9 +36758,11 @@
36587
36758
  "format": "uuid"
36588
36759
  },
36589
36760
  "expires_at": {
36590
- "type": "string",
36591
- "format": "date-time",
36592
- "nullable": true
36761
+ "type": [
36762
+ "string",
36763
+ "null"
36764
+ ],
36765
+ "format": "date-time"
36593
36766
  },
36594
36767
  "created_at": {
36595
36768
  "type": "string",
@@ -36766,28 +36939,40 @@
36766
36939
  "type": "string"
36767
36940
  },
36768
36941
  "signature": {
36769
- "type": "string",
36770
- "nullable": true
36942
+ "type": [
36943
+ "string",
36944
+ "null"
36945
+ ]
36771
36946
  },
36772
36947
  "signed_tx": {
36773
- "type": "string",
36774
- "nullable": true
36948
+ "type": [
36949
+ "string",
36950
+ "null"
36951
+ ]
36775
36952
  },
36776
36953
  "tx_hash": {
36777
- "type": "string",
36778
- "nullable": true
36954
+ "type": [
36955
+ "string",
36956
+ "null"
36957
+ ]
36779
36958
  },
36780
36959
  "message_hash": {
36781
- "type": "string",
36782
- "nullable": true
36960
+ "type": [
36961
+ "string",
36962
+ "null"
36963
+ ]
36783
36964
  },
36784
36965
  "typed_data_hash": {
36785
- "type": "string",
36786
- "nullable": true
36966
+ "type": [
36967
+ "string",
36968
+ "null"
36969
+ ]
36787
36970
  },
36788
36971
  "tx_type": {
36789
- "type": "integer",
36790
- "nullable": true
36972
+ "type": [
36973
+ "integer",
36974
+ "null"
36975
+ ]
36791
36976
  }
36792
36977
  }
36793
36978
  },
@@ -36826,8 +37011,10 @@
36826
37011
  ]
36827
37012
  },
36828
37013
  "signed_tx": {
36829
- "type": "string",
36830
- "nullable": true,
37014
+ "type": [
37015
+ "string",
37016
+ "null"
37017
+ ],
36831
37018
  "description": "Raw signed transaction hex. On GET list and GET by id, this property is omitted by default (absent from the response). Pass `include_signed_tx=true` on those endpoints to include it. Always present on the initial POST submit response.\n"
36832
37019
  },
36833
37020
  "tx_hash": {
@@ -37332,9 +37519,11 @@
37332
37519
  "type": "boolean"
37333
37520
  },
37334
37521
  "default_vault_id": {
37335
- "type": "string",
37336
- "format": "uuid",
37337
- "nullable": true
37522
+ "type": [
37523
+ "string",
37524
+ "null"
37525
+ ],
37526
+ "format": "uuid"
37338
37527
  }
37339
37528
  }
37340
37529
  },
@@ -37756,21 +37945,27 @@
37756
37945
  "description": "Metered line from Stripe upcoming invoice (usage detail when available).",
37757
37946
  "properties": {
37758
37947
  "description": {
37759
- "type": "string",
37760
- "nullable": true
37948
+ "type": [
37949
+ "string",
37950
+ "null"
37951
+ ]
37761
37952
  },
37762
37953
  "amount_cents": {
37763
37954
  "type": "integer",
37764
37955
  "format": "int64"
37765
37956
  },
37766
37957
  "quantity": {
37767
- "type": "number",
37768
- "nullable": true,
37958
+ "type": [
37959
+ "number",
37960
+ "null"
37961
+ ],
37769
37962
  "description": "Billed usage units when Stripe returns quantity (e.g. tokens)."
37770
37963
  },
37771
37964
  "price_nickname": {
37772
- "type": "string",
37773
- "nullable": true
37965
+ "type": [
37966
+ "string",
37967
+ "null"
37968
+ ]
37774
37969
  }
37775
37970
  }
37776
37971
  },
@@ -37779,14 +37974,18 @@
37779
37974
  "description": "Accrued LLM charges for the current Stripe subscription period (upcoming invoice).",
37780
37975
  "properties": {
37781
37976
  "period_start": {
37782
- "type": "string",
37783
- "format": "date-time",
37784
- "nullable": true
37977
+ "type": [
37978
+ "string",
37979
+ "null"
37980
+ ],
37981
+ "format": "date-time"
37785
37982
  },
37786
37983
  "period_end": {
37787
- "type": "string",
37788
- "format": "date-time",
37789
- "nullable": true
37984
+ "type": [
37985
+ "string",
37986
+ "null"
37987
+ ],
37988
+ "format": "date-time"
37790
37989
  },
37791
37990
  "accrued_usage_cents": {
37792
37991
  "type": "integer",
@@ -38034,9 +38233,11 @@
38034
38233
  "description": "Total events examined"
38035
38234
  },
38036
38235
  "broken_at_event_id": {
38037
- "type": "string",
38236
+ "type": [
38237
+ "string",
38238
+ "null"
38239
+ ],
38038
38240
  "format": "uuid",
38039
- "nullable": true,
38040
38241
  "description": "First event where chain integrity broke (null if valid)"
38041
38242
  },
38042
38243
  "scheme": {
@@ -38096,9 +38297,15 @@
38096
38297
  "description": "GCE metadata identity JWT (verify against Google public keys)"
38097
38298
  },
38098
38299
  "confidential_claims": {
38099
- "nullable": true,
38100
38300
  "description": "Confidential Computing claims extracted from the identity JWT",
38101
- "$ref": "#/components/schemas/ConfidentialClaims"
38301
+ "oneOf": [
38302
+ {
38303
+ "$ref": "#/components/schemas/ConfidentialClaims"
38304
+ },
38305
+ {
38306
+ "type": "null"
38307
+ }
38308
+ ]
38102
38309
  },
38103
38310
  "verification": {
38104
38311
  "type": "object",
@@ -38121,8 +38328,10 @@
38121
38328
  }
38122
38329
  },
38123
38330
  "ConfidentialClaims": {
38124
- "type": "object",
38125
- "nullable": true,
38331
+ "type": [
38332
+ "object",
38333
+ "null"
38334
+ ],
38126
38335
  "properties": {
38127
38336
  "secboot": {
38128
38337
  "type": "boolean",
@@ -38708,19 +38917,25 @@
38708
38917
  "type": "string"
38709
38918
  },
38710
38919
  "data_hex": {
38711
- "type": "string",
38712
- "nullable": true
38920
+ "type": [
38921
+ "string",
38922
+ "null"
38923
+ ]
38713
38924
  },
38714
38925
  "operation": {
38715
38926
  "type": "integer"
38716
38927
  },
38717
38928
  "safe_tx_hash": {
38718
- "type": "string",
38719
- "nullable": true
38929
+ "type": [
38930
+ "string",
38931
+ "null"
38932
+ ]
38720
38933
  },
38721
38934
  "nonce": {
38722
- "type": "integer",
38723
- "nullable": true
38935
+ "type": [
38936
+ "integer",
38937
+ "null"
38938
+ ]
38724
38939
  },
38725
38940
  "status": {
38726
38941
  "type": "string",
@@ -38737,18 +38952,24 @@
38737
38952
  "type": "integer"
38738
38953
  },
38739
38954
  "expires_at": {
38740
- "type": "string",
38741
- "format": "date-time",
38742
- "nullable": true
38955
+ "type": [
38956
+ "string",
38957
+ "null"
38958
+ ],
38959
+ "format": "date-time"
38743
38960
  },
38744
38961
  "executed_tx_hash": {
38745
- "type": "string",
38746
- "nullable": true
38962
+ "type": [
38963
+ "string",
38964
+ "null"
38965
+ ]
38747
38966
  },
38748
38967
  "executed_at": {
38749
- "type": "string",
38750
- "format": "date-time",
38751
- "nullable": true
38968
+ "type": [
38969
+ "string",
38970
+ "null"
38971
+ ],
38972
+ "format": "date-time"
38752
38973
  },
38753
38974
  "signatures": {
38754
38975
  "type": "array",
@@ -39256,15 +39477,19 @@
39256
39477
  "type": "string"
39257
39478
  },
39258
39479
  "symbol": {
39259
- "type": "string",
39260
- "nullable": true
39480
+ "type": [
39481
+ "string",
39482
+ "null"
39483
+ ]
39261
39484
  },
39262
39485
  "balance": {
39263
39486
  "type": "string"
39264
39487
  },
39265
39488
  "decimals": {
39266
- "type": "integer",
39267
- "nullable": true
39489
+ "type": [
39490
+ "integer",
39491
+ "null"
39492
+ ]
39268
39493
  }
39269
39494
  }
39270
39495
  }
@@ -39647,13 +39872,17 @@
39647
39872
  "default": "silent"
39648
39873
  },
39649
39874
  "max_connected_users": {
39650
- "type": "integer",
39651
- "nullable": true
39875
+ "type": [
39876
+ "integer",
39877
+ "null"
39878
+ ]
39652
39879
  },
39653
39880
  "api_key_expires_at": {
39654
- "type": "string",
39881
+ "type": [
39882
+ "string",
39883
+ "null"
39884
+ ],
39655
39885
  "format": "date-time",
39656
- "nullable": true,
39657
39886
  "description": "Optional expiration time for the platform API key."
39658
39887
  }
39659
39888
  }
@@ -39706,21 +39935,27 @@
39706
39935
  ]
39707
39936
  },
39708
39937
  "max_connected_users": {
39709
- "type": "integer",
39710
- "nullable": true
39938
+ "type": [
39939
+ "integer",
39940
+ "null"
39941
+ ]
39711
39942
  },
39712
39943
  "is_active": {
39713
39944
  "type": "boolean"
39714
39945
  },
39715
39946
  "api_key_expires_at": {
39716
- "type": "string",
39947
+ "type": [
39948
+ "string",
39949
+ "null"
39950
+ ],
39717
39951
  "format": "date-time",
39718
- "nullable": true,
39719
39952
  "description": "Optional expiration time for the platform API key. Set to null to clear."
39720
39953
  },
39721
39954
  "siwe_domain": {
39722
- "type": "string",
39723
- "nullable": true,
39955
+ "type": [
39956
+ "string",
39957
+ "null"
39958
+ ],
39724
39959
  "description": "Hostname allowed in SIWE messages for wallet sign-in (EIP-4361)."
39725
39960
  }
39726
39961
  }
@@ -39805,23 +40040,31 @@
39805
40040
  "type": "string"
39806
40041
  },
39807
40042
  "logo_url": {
39808
- "type": "string",
39809
- "nullable": true
40043
+ "type": [
40044
+ "string",
40045
+ "null"
40046
+ ]
39810
40047
  },
39811
40048
  "api_key_prefix": {
39812
40049
  "type": "string"
39813
40050
  },
39814
40051
  "oidc_jwks_url": {
39815
- "type": "string",
39816
- "nullable": true
40052
+ "type": [
40053
+ "string",
40054
+ "null"
40055
+ ]
39817
40056
  },
39818
40057
  "oidc_issuer": {
39819
- "type": "string",
39820
- "nullable": true
40058
+ "type": [
40059
+ "string",
40060
+ "null"
40061
+ ]
39821
40062
  },
39822
40063
  "oidc_audience": {
39823
- "type": "string",
39824
- "nullable": true,
40064
+ "type": [
40065
+ "string",
40066
+ "null"
40067
+ ],
39825
40068
  "description": "Expected audience claim for OIDC token validation"
39826
40069
  },
39827
40070
  "redirect_uris": {
@@ -39831,8 +40074,10 @@
39831
40074
  }
39832
40075
  },
39833
40076
  "webhook_url": {
39834
- "type": "string",
39835
- "nullable": true
40077
+ "type": [
40078
+ "string",
40079
+ "null"
40080
+ ]
39836
40081
  },
39837
40082
  "is_active": {
39838
40083
  "type": "boolean"
@@ -39844,27 +40089,35 @@
39844
40089
  "type": "string"
39845
40090
  },
39846
40091
  "max_connected_users": {
39847
- "type": "integer",
39848
- "nullable": true
40092
+ "type": [
40093
+ "integer",
40094
+ "null"
40095
+ ]
39849
40096
  },
39850
40097
  "connected_users": {
39851
40098
  "type": "integer"
39852
40099
  },
39853
40100
  "api_key_expires_at": {
39854
- "type": "string",
40101
+ "type": [
40102
+ "string",
40103
+ "null"
40104
+ ],
39855
40105
  "format": "date-time",
39856
- "nullable": true,
39857
40106
  "description": "When the platform API key expires."
39858
40107
  },
39859
40108
  "api_key_rotated_at": {
39860
- "type": "string",
40109
+ "type": [
40110
+ "string",
40111
+ "null"
40112
+ ],
39861
40113
  "format": "date-time",
39862
- "nullable": true,
39863
40114
  "description": "When the platform API key was last rotated."
39864
40115
  },
39865
40116
  "siwe_domain": {
39866
- "type": "string",
39867
- "nullable": true,
40117
+ "type": [
40118
+ "string",
40119
+ "null"
40120
+ ],
39868
40121
  "description": "Hostname allowed in SIWE messages for wallet sign-in (EIP-4361)."
39869
40122
  },
39870
40123
  "created_at": {
@@ -40515,9 +40768,11 @@
40515
40768
  "format": "date-time"
40516
40769
  },
40517
40770
  "claimed_at": {
40518
- "type": "string",
40519
- "format": "date-time",
40520
- "nullable": true
40771
+ "type": [
40772
+ "string",
40773
+ "null"
40774
+ ],
40775
+ "format": "date-time"
40521
40776
  }
40522
40777
  }
40523
40778
  },
@@ -40563,14 +40818,18 @@
40563
40818
  "type": "object",
40564
40819
  "properties": {
40565
40820
  "vault_id": {
40566
- "type": "string",
40567
- "format": "uuid",
40568
- "nullable": true
40821
+ "type": [
40822
+ "string",
40823
+ "null"
40824
+ ],
40825
+ "format": "uuid"
40569
40826
  },
40570
40827
  "agent_id": {
40571
- "type": "string",
40572
- "format": "uuid",
40573
- "nullable": true
40828
+ "type": [
40829
+ "string",
40830
+ "null"
40831
+ ],
40832
+ "format": "uuid"
40574
40833
  },
40575
40834
  "agent_ids": {
40576
40835
  "type": "array",
@@ -40595,13 +40854,17 @@
40595
40854
  "description": "Chains with provisioned signing keys"
40596
40855
  },
40597
40856
  "agent_api_key": {
40598
- "type": "string",
40599
- "nullable": true,
40857
+ "type": [
40858
+ "string",
40859
+ "null"
40860
+ ],
40600
40861
  "description": "One-time agent API key (ocv_ prefix). Store securely — not retrievable later."
40601
40862
  },
40602
40863
  "agent_evm_address": {
40603
- "type": "string",
40604
- "nullable": true,
40864
+ "type": [
40865
+ "string",
40866
+ "null"
40867
+ ],
40605
40868
  "description": "EOA address when provision_eoa is true in the template"
40606
40869
  },
40607
40870
  "signing_keys": {
@@ -40699,12 +40962,16 @@
40699
40962
  "type": "string"
40700
40963
  },
40701
40964
  "logo_url": {
40702
- "type": "string",
40703
- "nullable": true
40965
+ "type": [
40966
+ "string",
40967
+ "null"
40968
+ ]
40704
40969
  },
40705
40970
  "category": {
40706
- "type": "string",
40707
- "nullable": true
40971
+ "type": [
40972
+ "string",
40973
+ "null"
40974
+ ]
40708
40975
  },
40709
40976
  "listing_tags": {
40710
40977
  "type": "array",
@@ -40719,8 +40986,10 @@
40719
40986
  }
40720
40987
  },
40721
40988
  "pricing_summary": {
40722
- "type": "string",
40723
- "nullable": true
40989
+ "type": [
40990
+ "string",
40991
+ "null"
40992
+ ]
40724
40993
  }
40725
40994
  }
40726
40995
  }
@@ -40833,9 +41102,11 @@
40833
41102
  }
40834
41103
  },
40835
41104
  "expires_at": {
40836
- "type": "string",
40837
- "format": "date-time",
40838
- "nullable": true
41105
+ "type": [
41106
+ "string",
41107
+ "null"
41108
+ ],
41109
+ "format": "date-time"
40839
41110
  },
40840
41111
  "created_at": {
40841
41112
  "type": "string",
@@ -40893,8 +41164,10 @@
40893
41164
  "type": "string"
40894
41165
  },
40895
41166
  "app_logo_url": {
40896
- "type": "string",
40897
- "nullable": true
41167
+ "type": [
41168
+ "string",
41169
+ "null"
41170
+ ]
40898
41171
  },
40899
41172
  "auth_mode": {
40900
41173
  "type": "string"
@@ -40926,8 +41199,10 @@
40926
41199
  "type": "boolean"
40927
41200
  },
40928
41201
  "return_to": {
40929
- "type": "string",
40930
- "nullable": true
41202
+ "type": [
41203
+ "string",
41204
+ "null"
41205
+ ]
40931
41206
  }
40932
41207
  }
40933
41208
  },
@@ -40956,8 +41231,10 @@
40956
41231
  }
40957
41232
  },
40958
41233
  "return_to": {
40959
- "type": "string",
40960
- "nullable": true
41234
+ "type": [
41235
+ "string",
41236
+ "null"
41237
+ ]
40961
41238
  },
40962
41239
  "dashboard_url": {
40963
41240
  "type": "string"
@@ -41048,9 +41325,11 @@
41048
41325
  "type": "boolean"
41049
41326
  },
41050
41327
  "last_used_at": {
41051
- "type": "string",
41052
- "format": "date-time",
41053
- "nullable": true
41328
+ "type": [
41329
+ "string",
41330
+ "null"
41331
+ ],
41332
+ "format": "date-time"
41054
41333
  },
41055
41334
  "created_at": {
41056
41335
  "type": "string",
@@ -41314,8 +41593,10 @@
41314
41593
  "type": "string"
41315
41594
  },
41316
41595
  "display_name": {
41317
- "type": "string",
41318
- "nullable": true
41596
+ "type": [
41597
+ "string",
41598
+ "null"
41599
+ ]
41319
41600
  },
41320
41601
  "profile": {
41321
41602
  "type": "object",
@@ -41358,8 +41639,10 @@
41358
41639
  "additionalProperties": true
41359
41640
  },
41360
41641
  "confidence": {
41361
- "type": "string",
41362
- "nullable": true,
41642
+ "type": [
41643
+ "string",
41644
+ "null"
41645
+ ],
41363
41646
  "description": "0..1, capped below certainty — no history makes the next decision certain."
41364
41647
  },
41365
41648
  "provenance": {
@@ -41405,14 +41688,18 @@
41405
41688
  ]
41406
41689
  },
41407
41690
  "user_id": {
41408
- "type": "string",
41409
- "format": "uuid",
41410
- "nullable": true
41691
+ "type": [
41692
+ "string",
41693
+ "null"
41694
+ ],
41695
+ "format": "uuid"
41411
41696
  },
41412
41697
  "agent_id": {
41413
- "type": "string",
41414
- "format": "uuid",
41415
- "nullable": true
41698
+ "type": [
41699
+ "string",
41700
+ "null"
41701
+ ],
41702
+ "format": "uuid"
41416
41703
  },
41417
41704
  "config": {
41418
41705
  "type": "object",
@@ -41465,8 +41752,10 @@
41465
41752
  "example": "communication"
41466
41753
  },
41467
41754
  "provider_slug": {
41468
- "type": "string",
41469
- "nullable": true,
41755
+ "type": [
41756
+ "string",
41757
+ "null"
41758
+ ],
41470
41759
  "description": "`oauth_providers.slug`, or null when the connector uses a pasted API key."
41471
41760
  },
41472
41761
  "oauth_scopes": {
@@ -41604,26 +41893,34 @@
41604
41893
  "description": "First 20 characters (`sk-shroud-v1-` + 7) — enough to recognise, not to use"
41605
41894
  },
41606
41895
  "max_concurrent_streams": {
41607
- "type": "integer",
41608
- "nullable": true
41896
+ "type": [
41897
+ "integer",
41898
+ "null"
41899
+ ]
41609
41900
  },
41610
41901
  "spend_cap_usd": {
41611
- "type": "number",
41612
- "nullable": true
41902
+ "type": [
41903
+ "number",
41904
+ "null"
41905
+ ]
41613
41906
  },
41614
41907
  "created_at": {
41615
41908
  "type": "string",
41616
41909
  "format": "date-time"
41617
41910
  },
41618
41911
  "last_used_at": {
41619
- "type": "string",
41620
- "format": "date-time",
41621
- "nullable": true
41912
+ "type": [
41913
+ "string",
41914
+ "null"
41915
+ ],
41916
+ "format": "date-time"
41622
41917
  },
41623
41918
  "revoked_at": {
41624
- "type": "string",
41625
- "format": "date-time",
41626
- "nullable": true
41919
+ "type": [
41920
+ "string",
41921
+ "null"
41922
+ ],
41923
+ "format": "date-time"
41627
41924
  }
41628
41925
  }
41629
41926
  },
@@ -41726,9 +42023,11 @@
41726
42023
  }
41727
42024
  },
41728
42025
  "created_by": {
41729
- "type": "string",
41730
- "format": "uuid",
41731
- "nullable": true
42026
+ "type": [
42027
+ "string",
42028
+ "null"
42029
+ ],
42030
+ "format": "uuid"
41732
42031
  },
41733
42032
  "created_at": {
41734
42033
  "type": "string",
@@ -41842,13 +42141,17 @@
41842
42141
  "format": "date-time"
41843
42142
  },
41844
42143
  "last_polled_at": {
41845
- "type": "string",
41846
- "format": "date-time",
41847
- "nullable": true
42144
+ "type": [
42145
+ "string",
42146
+ "null"
42147
+ ],
42148
+ "format": "date-time"
41848
42149
  },
41849
42150
  "last_error": {
41850
- "type": "string",
41851
- "nullable": true
42151
+ "type": [
42152
+ "string",
42153
+ "null"
42154
+ ]
41852
42155
  },
41853
42156
  "consecutive_errors": {
41854
42157
  "type": "integer"
@@ -41886,8 +42189,10 @@
41886
42189
  "type": "string"
41887
42190
  },
41888
42191
  "display_name": {
41889
- "type": "string",
41890
- "nullable": true,
42192
+ "type": [
42193
+ "string",
42194
+ "null"
42195
+ ],
41891
42196
  "description": "Null if the preset has since been retired from the catalogue."
41892
42197
  },
41893
42198
  "is_active": {
@@ -41935,9 +42240,11 @@
41935
42240
  "format": "uuid"
41936
42241
  },
41937
42242
  "agent_id": {
41938
- "type": "string",
41939
- "format": "uuid",
41940
- "nullable": true
42243
+ "type": [
42244
+ "string",
42245
+ "null"
42246
+ ],
42247
+ "format": "uuid"
41941
42248
  },
41942
42249
  "action": {
41943
42250
  "type": "string"
@@ -41955,10 +42262,12 @@
41955
42262
  "description": "The tier actually enforced. Authoritative."
41956
42263
  },
41957
42264
  "declared_risk_tier": {
41958
- "type": "integer",
42265
+ "type": [
42266
+ "integer",
42267
+ "null"
42268
+ ],
41959
42269
  "minimum": 1,
41960
42270
  "maximum": 3,
41961
- "nullable": true,
41962
42271
  "description": "What the caller asked for, when it asked for anything."
41963
42272
  },
41964
42273
  "declared_below_floor": {
@@ -41966,8 +42275,10 @@
41966
42275
  "description": "The caller asked for a lower tier than policy required."
41967
42276
  },
41968
42277
  "human_summary": {
41969
- "type": "string",
41970
- "nullable": true,
42278
+ "type": [
42279
+ "string",
42280
+ "null"
42281
+ ],
41971
42282
  "description": "Plain-language line sent to SMS, push and email."
41972
42283
  },
41973
42284
  "payload": {
@@ -41989,27 +42300,37 @@
41989
42300
  "description": "Structured summary of the action requiring approval"
41990
42301
  },
41991
42302
  "reason": {
41992
- "type": "string",
41993
- "nullable": true
42303
+ "type": [
42304
+ "string",
42305
+ "null"
42306
+ ]
41994
42307
  },
41995
42308
  "decision_reason": {
41996
- "type": "string",
41997
- "nullable": true
42309
+ "type": [
42310
+ "string",
42311
+ "null"
42312
+ ]
41998
42313
  },
41999
42314
  "decided_by": {
42000
- "type": "string",
42001
- "format": "uuid",
42002
- "nullable": true
42315
+ "type": [
42316
+ "string",
42317
+ "null"
42318
+ ],
42319
+ "format": "uuid"
42003
42320
  },
42004
42321
  "decided_at": {
42005
- "type": "string",
42006
- "format": "date-time",
42007
- "nullable": true
42322
+ "type": [
42323
+ "string",
42324
+ "null"
42325
+ ],
42326
+ "format": "date-time"
42008
42327
  },
42009
42328
  "expires_at": {
42010
- "type": "string",
42011
- "format": "date-time",
42012
- "nullable": true
42329
+ "type": [
42330
+ "string",
42331
+ "null"
42332
+ ],
42333
+ "format": "date-time"
42013
42334
  },
42014
42335
  "created_at": {
42015
42336
  "type": "string",
@@ -42052,9 +42373,11 @@
42052
42373
  ]
42053
42374
  },
42054
42375
  "expires_at": {
42055
- "type": "string",
42056
- "format": "date-time",
42057
- "nullable": true
42376
+ "type": [
42377
+ "string",
42378
+ "null"
42379
+ ],
42380
+ "format": "date-time"
42058
42381
  }
42059
42382
  }
42060
42383
  },
@@ -42110,28 +42433,38 @@
42110
42433
  "$ref": "#/components/schemas/GuardrailReasonCode"
42111
42434
  },
42112
42435
  "limit": {
42113
- "type": "string",
42114
- "nullable": true
42436
+ "type": [
42437
+ "string",
42438
+ "null"
42439
+ ]
42115
42440
  },
42116
42441
  "current": {
42117
- "type": "string",
42118
- "nullable": true
42442
+ "type": [
42443
+ "string",
42444
+ "null"
42445
+ ]
42119
42446
  },
42120
42447
  "attempted": {
42121
- "type": "string",
42122
- "nullable": true
42448
+ "type": [
42449
+ "string",
42450
+ "null"
42451
+ ]
42123
42452
  },
42124
42453
  "approval_available": {
42125
42454
  "type": "boolean",
42126
42455
  "default": false
42127
42456
  },
42128
42457
  "retry_after_seconds": {
42129
- "type": "integer",
42130
- "nullable": true
42458
+ "type": [
42459
+ "integer",
42460
+ "null"
42461
+ ]
42131
42462
  },
42132
42463
  "detail": {
42133
- "type": "string",
42134
- "nullable": true
42464
+ "type": [
42465
+ "string",
42466
+ "null"
42467
+ ]
42135
42468
  }
42136
42469
  }
42137
42470
  },
@@ -42173,8 +42506,10 @@
42173
42506
  "format": "email"
42174
42507
  },
42175
42508
  "wallet_address": {
42176
- "type": "string",
42177
- "nullable": true,
42509
+ "type": [
42510
+ "string",
42511
+ "null"
42512
+ ],
42178
42513
  "description": "Ethereum address if auto_provision_chains included an EVM chain"
42179
42514
  }
42180
42515
  }
@@ -42196,9 +42531,11 @@
42196
42531
  "type": "string"
42197
42532
  },
42198
42533
  "app_logo_url": {
42199
- "type": "string",
42200
- "format": "uri",
42201
- "nullable": true
42534
+ "type": [
42535
+ "string",
42536
+ "null"
42537
+ ],
42538
+ "format": "uri"
42202
42539
  },
42203
42540
  "scopes": {
42204
42541
  "type": "array",
@@ -42238,13 +42575,17 @@
42238
42575
  "description": "Token lifetime in seconds"
42239
42576
  },
42240
42577
  "refresh_token": {
42241
- "type": "string",
42242
- "nullable": true,
42578
+ "type": [
42579
+ "string",
42580
+ "null"
42581
+ ],
42243
42582
  "description": "Refresh token for obtaining new access tokens (when offline_access scope was granted)"
42244
42583
  },
42245
42584
  "id_token": {
42246
- "type": "string",
42247
- "nullable": true,
42585
+ "type": [
42586
+ "string",
42587
+ "null"
42588
+ ],
42248
42589
  "description": "OIDC ID token (when openid scope was granted)"
42249
42590
  },
42250
42591
  "scope": {
@@ -42268,12 +42609,16 @@
42268
42609
  "format": "email"
42269
42610
  },
42270
42611
  "name": {
42271
- "type": "string",
42272
- "nullable": true
42612
+ "type": [
42613
+ "string",
42614
+ "null"
42615
+ ]
42273
42616
  },
42274
42617
  "wallet_address": {
42275
- "type": "string",
42276
- "nullable": true
42618
+ "type": [
42619
+ "string",
42620
+ "null"
42621
+ ]
42277
42622
  }
42278
42623
  }
42279
42624
  },
@@ -42423,13 +42768,17 @@
42423
42768
  "type": "string"
42424
42769
  },
42425
42770
  "provisioned_tier": {
42426
- "type": "string",
42427
- "nullable": true,
42771
+ "type": [
42772
+ "string",
42773
+ "null"
42774
+ ],
42428
42775
  "description": "Billing tier granted to the end-user org when billing_model is platform_pays\n(from template plan at bootstrap). Null when not provisioned.\n"
42429
42776
  },
42430
42777
  "wallet_address": {
42431
- "type": "string",
42432
- "nullable": true
42778
+ "type": [
42779
+ "string",
42780
+ "null"
42781
+ ]
42433
42782
  },
42434
42783
  "vault_ids": {
42435
42784
  "type": "array",
@@ -42460,9 +42809,11 @@
42460
42809
  }
42461
42810
  },
42462
42811
  "claimed_at": {
42463
- "type": "string",
42464
- "format": "date-time",
42465
- "nullable": true
42812
+ "type": [
42813
+ "string",
42814
+ "null"
42815
+ ],
42816
+ "format": "date-time"
42466
42817
  },
42467
42818
  "claim": {
42468
42819
  "$ref": "#/components/schemas/ClaimStatusResponse"
@@ -42484,9 +42835,11 @@
42484
42835
  ]
42485
42836
  },
42486
42837
  "redeemed_at": {
42487
- "type": "string",
42488
- "format": "date-time",
42489
- "nullable": true
42838
+ "type": [
42839
+ "string",
42840
+ "null"
42841
+ ],
42842
+ "format": "date-time"
42490
42843
  }
42491
42844
  }
42492
42845
  },
@@ -42572,13 +42925,17 @@
42572
42925
  "type": "string"
42573
42926
  },
42574
42927
  "last_value_raw": {
42575
- "type": "string",
42576
- "nullable": true
42928
+ "type": [
42929
+ "string",
42930
+ "null"
42931
+ ]
42577
42932
  },
42578
42933
  "last_checked_at": {
42579
- "type": "string",
42580
- "format": "date-time",
42581
- "nullable": true
42934
+ "type": [
42935
+ "string",
42936
+ "null"
42937
+ ],
42938
+ "format": "date-time"
42582
42939
  }
42583
42940
  }
42584
42941
  },
@@ -42651,9 +43008,11 @@
42651
43008
  "format": "date-time"
42652
43009
  },
42653
43010
  "connection_id": {
42654
- "type": "string",
42655
- "format": "uuid",
42656
- "nullable": true
43011
+ "type": [
43012
+ "string",
43013
+ "null"
43014
+ ],
43015
+ "format": "uuid"
42657
43016
  }
42658
43017
  }
42659
43018
  },
@@ -42661,12 +43020,12 @@
42661
43020
  "type": "object",
42662
43021
  "properties": {
42663
43022
  "allowance_usd": {
42664
- "type": "string",
42665
- "nullable": true
42666
- },
42667
- "remaining_usd": {
42668
- "nullable": true
43023
+ "type": [
43024
+ "string",
43025
+ "null"
43026
+ ]
42669
43027
  },
43028
+ "remaining_usd": {},
42670
43029
  "message": {
42671
43030
  "type": "string"
42672
43031
  }
@@ -42689,9 +43048,11 @@
42689
43048
  "format": "uuid"
42690
43049
  },
42691
43050
  "user_id": {
42692
- "type": "string",
42693
- "format": "uuid",
42694
- "nullable": true
43051
+ "type": [
43052
+ "string",
43053
+ "null"
43054
+ ],
43055
+ "format": "uuid"
42695
43056
  },
42696
43057
  "to_allowlist": {
42697
43058
  "type": "array",
@@ -42706,12 +43067,16 @@
42706
43067
  }
42707
43068
  },
42708
43069
  "max_value_per_tx_eth": {
42709
- "type": "string",
42710
- "nullable": true
43070
+ "type": [
43071
+ "string",
43072
+ "null"
43073
+ ]
42711
43074
  },
42712
43075
  "daily_limit_eth": {
42713
- "type": "string",
42714
- "nullable": true
43076
+ "type": [
43077
+ "string",
43078
+ "null"
43079
+ ]
42715
43080
  },
42716
43081
  "allowed_chains": {
42717
43082
  "type": "array",
@@ -42726,33 +43091,47 @@
42726
43091
  }
42727
43092
  },
42728
43093
  "max_transactions_per_day": {
42729
- "type": "integer",
42730
- "nullable": true
43094
+ "type": [
43095
+ "integer",
43096
+ "null"
43097
+ ]
42731
43098
  },
42732
43099
  "inference_allowance_usd": {
42733
- "type": "string",
42734
- "nullable": true
43100
+ "type": [
43101
+ "string",
43102
+ "null"
43103
+ ]
42735
43104
  },
42736
43105
  "inference_reserved_pct": {
42737
- "type": "integer",
42738
- "nullable": true
43106
+ "type": [
43107
+ "integer",
43108
+ "null"
43109
+ ]
42739
43110
  },
42740
43111
  "inference_hard_stop": {
42741
- "type": "boolean",
42742
- "nullable": true
43112
+ "type": [
43113
+ "boolean",
43114
+ "null"
43115
+ ]
42743
43116
  },
42744
43117
  "inference_allowance_mode": {
42745
- "type": "string",
42746
- "nullable": true
43118
+ "type": [
43119
+ "string",
43120
+ "null"
43121
+ ]
42747
43122
  },
42748
43123
  "max_request_cost_usd": {
42749
- "type": "string",
42750
- "nullable": true
43124
+ "type": [
43125
+ "string",
43126
+ "null"
43127
+ ]
42751
43128
  },
42752
43129
  "human_factor_auth": {
42753
- "type": "object",
42754
- "additionalProperties": true,
42755
- "nullable": true
43130
+ "type": [
43131
+ "object",
43132
+ "null"
43133
+ ],
43134
+ "additionalProperties": true
42756
43135
  },
42757
43136
  "created_at": {
42758
43137
  "type": "string",
@@ -42797,8 +43176,10 @@
42797
43176
  "type": "object",
42798
43177
  "properties": {
42799
43178
  "require_passkey_above_usd": {
42800
- "type": "string",
42801
- "nullable": true
43179
+ "type": [
43180
+ "string",
43181
+ "null"
43182
+ ]
42802
43183
  },
42803
43184
  "require_passkey_for_new_recipient": {
42804
43185
  "type": "boolean"
@@ -42918,8 +43299,10 @@
42918
43299
  "type": "string"
42919
43300
  },
42920
43301
  "prf_supported": {
42921
- "type": "boolean",
42922
- "nullable": true,
43302
+ "type": [
43303
+ "boolean",
43304
+ "null"
43305
+ ],
42923
43306
  "description": "`prf.enabled` from `credential.getClientExtensionResults()` —\nwhether this authenticator can derive the secret that wraps a\nwallet share. Omit if the client did not request the extension.\n"
42924
43307
  }
42925
43308
  }
@@ -42941,9 +43324,11 @@
42941
43324
  "description": "Sidecar wraps are stored through `PUT /v1/keys/{key_id}/client-share/holder`."
42942
43325
  },
42943
43326
  "credential_id": {
42944
- "type": "string",
43327
+ "type": [
43328
+ "string",
43329
+ "null"
43330
+ ],
42945
43331
  "format": "uuid",
42946
- "nullable": true,
42947
43332
  "description": "Required for `passkey_prf`; the passkey id from `GET /v1/auth/passkeys`."
42948
43333
  },
42949
43334
  "wrapped_share": {
@@ -42983,14 +43368,18 @@
42983
43368
  ]
42984
43369
  },
42985
43370
  "credential_id": {
42986
- "type": "string",
42987
- "format": "uuid",
42988
- "nullable": true
43371
+ "type": [
43372
+ "string",
43373
+ "null"
43374
+ ],
43375
+ "format": "uuid"
42989
43376
  },
42990
43377
  "holder_id": {
42991
- "type": "string",
42992
- "format": "uuid",
42993
- "nullable": true
43378
+ "type": [
43379
+ "string",
43380
+ "null"
43381
+ ],
43382
+ "format": "uuid"
42994
43383
  },
42995
43384
  "wrapped_share": {
42996
43385
  "type": "string",
@@ -43059,13 +43448,17 @@
43059
43448
  "format": "uuid"
43060
43449
  },
43061
43450
  "passkey_name": {
43062
- "type": "string",
43063
- "nullable": true,
43451
+ "type": [
43452
+ "string",
43453
+ "null"
43454
+ ],
43064
43455
  "description": "The owning passkey's name — only that credential can sign for the Safe."
43065
43456
  },
43066
43457
  "passkey_rp_id": {
43067
- "type": "string",
43068
- "nullable": true,
43458
+ "type": [
43459
+ "string",
43460
+ "null"
43461
+ ],
43069
43462
  "description": "The domain the owning passkey was registered under (WebAuthn rpId); a browser on another domain cannot use it."
43070
43463
  },
43071
43464
  "custody": {
@@ -43082,8 +43475,10 @@
43082
43475
  ]
43083
43476
  },
43084
43477
  "deploy_tx_hash": {
43085
- "type": "string",
43086
- "nullable": true
43478
+ "type": [
43479
+ "string",
43480
+ "null"
43481
+ ]
43087
43482
  },
43088
43483
  "owner_signer": {
43089
43484
  "type": "string",
@@ -43143,16 +43538,20 @@
43143
43538
  "type": "string"
43144
43539
  },
43145
43540
  "transports": {
43146
- "type": "array",
43147
- "nullable": true,
43541
+ "type": [
43542
+ "array",
43543
+ "null"
43544
+ ],
43148
43545
  "items": {
43149
43546
  "type": "string"
43150
43547
  },
43151
43548
  "description": "The passkey's registered transports (`internal`, `hybrid`, `usb`…) — pass as the `allowCredentials` hint so the browser asks the right authenticator."
43152
43549
  },
43153
43550
  "passkey_name": {
43154
- "type": "string",
43155
- "nullable": true
43551
+ "type": [
43552
+ "string",
43553
+ "null"
43554
+ ]
43156
43555
  },
43157
43556
  "rp_id": {
43158
43557
  "type": "string"
@@ -43202,12 +43601,16 @@
43202
43601
  ]
43203
43602
  },
43204
43603
  "setup_tx_hash": {
43205
- "type": "string",
43206
- "nullable": true
43604
+ "type": [
43605
+ "string",
43606
+ "null"
43607
+ ]
43207
43608
  },
43208
43609
  "revoke_tx_hash": {
43209
- "type": "string",
43210
- "nullable": true
43610
+ "type": [
43611
+ "string",
43612
+ "null"
43613
+ ]
43211
43614
  },
43212
43615
  "created_at": {
43213
43616
  "type": "string",
@@ -43443,44 +43846,64 @@
43443
43846
  "description": "Risk event type (e.g. first_seen, geo_velocity, honeytoken_access)"
43444
43847
  },
43445
43848
  "ip": {
43446
- "type": "string",
43447
- "nullable": true
43849
+ "type": [
43850
+ "string",
43851
+ "null"
43852
+ ]
43448
43853
  },
43449
43854
  "asn": {
43450
- "type": "integer",
43451
- "nullable": true
43855
+ "type": [
43856
+ "integer",
43857
+ "null"
43858
+ ]
43452
43859
  },
43453
43860
  "asn_org": {
43454
- "type": "string",
43455
- "nullable": true
43861
+ "type": [
43862
+ "string",
43863
+ "null"
43864
+ ]
43456
43865
  },
43457
43866
  "country_code": {
43458
- "type": "string",
43459
- "nullable": true
43867
+ "type": [
43868
+ "string",
43869
+ "null"
43870
+ ]
43460
43871
  },
43461
43872
  "region": {
43462
- "type": "string",
43463
- "nullable": true
43873
+ "type": [
43874
+ "string",
43875
+ "null"
43876
+ ]
43464
43877
  },
43465
43878
  "city": {
43466
- "type": "string",
43467
- "nullable": true
43879
+ "type": [
43880
+ "string",
43881
+ "null"
43882
+ ]
43468
43883
  },
43469
43884
  "latitude": {
43470
- "type": "number",
43471
- "nullable": true
43885
+ "type": [
43886
+ "number",
43887
+ "null"
43888
+ ]
43472
43889
  },
43473
43890
  "longitude": {
43474
- "type": "number",
43475
- "nullable": true
43891
+ "type": [
43892
+ "number",
43893
+ "null"
43894
+ ]
43476
43895
  },
43477
43896
  "user_agent": {
43478
- "type": "string",
43479
- "nullable": true
43897
+ "type": [
43898
+ "string",
43899
+ "null"
43900
+ ]
43480
43901
  },
43481
43902
  "severity": {
43482
- "type": "string",
43483
- "nullable": true,
43903
+ "type": [
43904
+ "string",
43905
+ "null"
43906
+ ],
43484
43907
  "description": "Computed severity at event time (low, medium, high, critical)"
43485
43908
  },
43486
43909
  "payload": {
@@ -43633,16 +44056,20 @@
43633
44056
  "format": "date-time"
43634
44057
  },
43635
44058
  "notes": {
43636
- "type": "string",
43637
- "nullable": true
44059
+ "type": [
44060
+ "string",
44061
+ "null"
44062
+ ]
43638
44063
  },
43639
44064
  "triggered_count": {
43640
44065
  "type": "integer"
43641
44066
  },
43642
44067
  "last_triggered_at": {
43643
- "type": "string",
43644
- "format": "date-time",
43645
- "nullable": true
44068
+ "type": [
44069
+ "string",
44070
+ "null"
44071
+ ],
44072
+ "format": "date-time"
43646
44073
  }
43647
44074
  }
43648
44075
  },
@@ -43909,23 +44336,29 @@
43909
44336
  "description": "Whether a credential is stored for this binding. The value itself is never returned."
43910
44337
  },
43911
44338
  "credential_source_type": {
43912
- "type": "string",
44339
+ "type": [
44340
+ "string",
44341
+ "null"
44342
+ ],
43913
44343
  "enum": [
43914
44344
  "inline",
43915
44345
  "vault_ref"
43916
44346
  ],
43917
- "nullable": true,
43918
44347
  "description": "How the credential is sourced — inline (HSM-encrypted copy) or vault_ref (live pointer)."
43919
44348
  },
43920
44349
  "credential_vault_id": {
43921
- "type": "string",
44350
+ "type": [
44351
+ "string",
44352
+ "null"
44353
+ ],
43922
44354
  "format": "uuid",
43923
- "nullable": true,
43924
44355
  "description": "For vault_ref credentials — the vault containing the referenced secret."
43925
44356
  },
43926
44357
  "credential_path": {
43927
- "type": "string",
43928
- "nullable": true,
44358
+ "type": [
44359
+ "string",
44360
+ "null"
44361
+ ],
43929
44362
  "description": "For vault_ref credentials — the secret path in the referenced vault."
43930
44363
  },
43931
44364
  "created_at": {
@@ -43952,8 +44385,10 @@
43952
44385
  "type": "integer"
43953
44386
  },
43954
44387
  "error": {
43955
- "type": "string",
43956
- "nullable": true
44388
+ "type": [
44389
+ "string",
44390
+ "null"
44391
+ ]
43957
44392
  }
43958
44393
  }
43959
44394
  },
@@ -44024,9 +44459,11 @@
44024
44459
  ]
44025
44460
  },
44026
44461
  "expires_at": {
44027
- "type": "string",
44028
- "format": "date-time",
44029
- "nullable": true
44462
+ "type": [
44463
+ "string",
44464
+ "null"
44465
+ ],
44466
+ "format": "date-time"
44030
44467
  }
44031
44468
  }
44032
44469
  },
@@ -44048,14 +44485,18 @@
44048
44485
  "format": "uuid"
44049
44486
  },
44050
44487
  "tx_id": {
44051
- "type": "string",
44052
- "format": "uuid",
44053
- "nullable": true
44488
+ "type": [
44489
+ "string",
44490
+ "null"
44491
+ ],
44492
+ "format": "uuid"
44054
44493
  },
44055
44494
  "expires_at": {
44056
- "type": "string",
44057
- "format": "date-time",
44058
- "nullable": true
44495
+ "type": [
44496
+ "string",
44497
+ "null"
44498
+ ],
44499
+ "format": "date-time"
44059
44500
  }
44060
44501
  }
44061
44502
  },
@@ -44076,13 +44517,17 @@
44076
44517
  "type": "string"
44077
44518
  },
44078
44519
  "result": {
44079
- "type": "object",
44080
- "additionalProperties": true,
44081
- "nullable": true
44520
+ "type": [
44521
+ "object",
44522
+ "null"
44523
+ ],
44524
+ "additionalProperties": true
44082
44525
  },
44083
44526
  "error": {
44084
- "type": "string",
44085
- "nullable": true
44527
+ "type": [
44528
+ "string",
44529
+ "null"
44530
+ ]
44086
44531
  },
44087
44532
  "duration_ms": {
44088
44533
  "type": "integer"
@@ -44136,25 +44581,33 @@
44136
44581
  "type": "string"
44137
44582
  },
44138
44583
  "request_summary": {
44139
- "type": "object",
44140
- "additionalProperties": true,
44141
- "nullable": true
44584
+ "type": [
44585
+ "object",
44586
+ "null"
44587
+ ],
44588
+ "additionalProperties": true
44142
44589
  },
44143
44590
  "result_summary": {
44144
- "type": "object",
44145
- "additionalProperties": true,
44146
- "nullable": true
44591
+ "type": [
44592
+ "object",
44593
+ "null"
44594
+ ],
44595
+ "additionalProperties": true
44147
44596
  },
44148
44597
  "error_message": {
44149
- "type": "string",
44150
- "nullable": true
44598
+ "type": [
44599
+ "string",
44600
+ "null"
44601
+ ]
44151
44602
  },
44152
44603
  "duration_ms": {
44153
44604
  "type": "integer"
44154
44605
  },
44155
44606
  "cost_cents": {
44156
- "type": "integer",
44157
- "nullable": true
44607
+ "type": [
44608
+ "integer",
44609
+ "null"
44610
+ ]
44158
44611
  },
44159
44612
  "redactions_applied": {
44160
44613
  "type": "integer"
@@ -44204,9 +44657,11 @@
44204
44657
  "example": "UTC"
44205
44658
  },
44206
44659
  "event_filter": {
44207
- "type": "object",
44208
- "additionalProperties": true,
44209
- "nullable": true
44660
+ "type": [
44661
+ "object",
44662
+ "null"
44663
+ ],
44664
+ "additionalProperties": true
44210
44665
  },
44211
44666
  "workflow_spec": {
44212
44667
  "description": "Workflow steps. Accepts a bare array `[...]` or\n`{ \"steps\": [...] }` (dashboard / preset shape).\nSupported step types: get_secret, put_secret, http_request,\nrotate_secret, notify_human, ai_generate, memory_get,\nmemory_put, memory_search, notify, approval_request,\ncondition, execute_binding.\n",
@@ -44275,16 +44730,20 @@
44275
44730
  "type": "string"
44276
44731
  },
44277
44732
  "cron_expr": {
44278
- "type": "string",
44279
- "nullable": true
44733
+ "type": [
44734
+ "string",
44735
+ "null"
44736
+ ]
44280
44737
  },
44281
44738
  "timezone": {
44282
44739
  "type": "string"
44283
44740
  },
44284
44741
  "event_filter": {
44285
- "type": "object",
44286
- "additionalProperties": true,
44287
- "nullable": true
44742
+ "type": [
44743
+ "object",
44744
+ "null"
44745
+ ],
44746
+ "additionalProperties": true
44288
44747
  },
44289
44748
  "workflow_spec": {
44290
44749
  "oneOf": [
@@ -44314,9 +44773,11 @@
44314
44773
  "description": "Note recorded on the new spec version."
44315
44774
  },
44316
44775
  "webhook_signature": {
44317
- "nullable": true,
44318
44776
  "description": "Inbound signature scheme for a webhook-triggered automation. `stripe`\n(`Stripe-Signature: t=…,v1=…` over `<t>.<body>`), `github`\n(`X-Hub-Signature-256: sha256=…` over the body) or `hmac_sha256`\n(`<header>: <hex|base64>` over the body). The secret is stored encrypted\nand never returned; `null` removes the scheme. With a scheme set, an\nunsigned or mis-signed delivery starts nothing.\n",
44319
- "type": "object",
44777
+ "type": [
44778
+ "object",
44779
+ "null"
44780
+ ],
44320
44781
  "properties": {
44321
44782
  "scheme": {
44322
44783
  "type": "string",
@@ -44381,8 +44842,10 @@
44381
44842
  "type": "string"
44382
44843
  },
44383
44844
  "note": {
44384
- "type": "string",
44385
- "nullable": true
44845
+ "type": [
44846
+ "string",
44847
+ "null"
44848
+ ]
44386
44849
  },
44387
44850
  "created_at": {
44388
44851
  "type": "string",
@@ -44441,9 +44904,11 @@
44441
44904
  "format": "uuid"
44442
44905
  },
44443
44906
  "org_id": {
44444
- "type": "string",
44907
+ "type": [
44908
+ "string",
44909
+ "null"
44910
+ ],
44445
44911
  "format": "uuid",
44446
- "nullable": true,
44447
44912
  "description": "Null for a global row."
44448
44913
  },
44449
44914
  "provider": {
@@ -44621,8 +45086,10 @@
44621
45086
  "type": "number"
44622
45087
  },
44623
45088
  "trend_pct": {
44624
- "type": "number",
44625
- "nullable": true
45089
+ "type": [
45090
+ "number",
45091
+ "null"
45092
+ ]
44626
45093
  }
44627
45094
  }
44628
45095
  }
@@ -44663,8 +45130,10 @@
44663
45130
  "type": "number"
44664
45131
  },
44665
45132
  "trend_pct": {
44666
- "type": "number",
44667
- "nullable": true
45133
+ "type": [
45134
+ "number",
45135
+ "null"
45136
+ ]
44668
45137
  }
44669
45138
  }
44670
45139
  }
@@ -44700,24 +45169,32 @@
44700
45169
  "format": "int64"
44701
45170
  },
44702
45171
  "top_model": {
44703
- "type": "string",
44704
- "nullable": true
45172
+ "type": [
45173
+ "string",
45174
+ "null"
45175
+ ]
44705
45176
  },
44706
45177
  "top_provider": {
44707
- "type": "string",
44708
- "nullable": true
45178
+ "type": [
45179
+ "string",
45180
+ "null"
45181
+ ]
44709
45182
  },
44710
45183
  "previous_cost_usd": {
44711
45184
  "type": "number"
44712
45185
  },
44713
45186
  "last_request_at": {
44714
- "type": "string",
44715
- "format": "date-time",
44716
- "nullable": true
45187
+ "type": [
45188
+ "string",
45189
+ "null"
45190
+ ],
45191
+ "format": "date-time"
44717
45192
  },
44718
45193
  "daily_budget_usd": {
44719
- "type": "number",
44720
- "nullable": true
45194
+ "type": [
45195
+ "number",
45196
+ "null"
45197
+ ]
44721
45198
  },
44722
45199
  "today_cost_usd": {
44723
45200
  "type": "number"
@@ -44727,25 +45204,33 @@
44727
45204
  "format": "int64"
44728
45205
  },
44729
45206
  "max_tokens_per_request": {
44730
- "type": "integer",
44731
- "format": "int64",
44732
- "nullable": true
45207
+ "type": [
45208
+ "integer",
45209
+ "null"
45210
+ ],
45211
+ "format": "int64"
44733
45212
  },
44734
45213
  "max_requests_per_day": {
44735
- "type": "integer",
44736
- "format": "int64",
44737
- "nullable": true
45214
+ "type": [
45215
+ "integer",
45216
+ "null"
45217
+ ],
45218
+ "format": "int64"
44738
45219
  },
44739
45220
  "share_pct": {
44740
45221
  "type": "number"
44741
45222
  },
44742
45223
  "trend_pct": {
44743
- "type": "number",
44744
- "nullable": true
45224
+ "type": [
45225
+ "number",
45226
+ "null"
45227
+ ]
44745
45228
  },
44746
45229
  "budget_used_pct": {
44747
- "type": "number",
44748
- "nullable": true
45230
+ "type": [
45231
+ "number",
45232
+ "null"
45233
+ ]
44749
45234
  }
44750
45235
  }
44751
45236
  }
@@ -44792,13 +45277,17 @@
44792
45277
  "type": "number"
44793
45278
  },
44794
45279
  "cap_usd": {
44795
- "type": "number",
44796
- "nullable": true
45280
+ "type": [
45281
+ "number",
45282
+ "null"
45283
+ ]
44797
45284
  },
44798
45285
  "last_used_at": {
44799
- "type": "string",
44800
- "format": "date-time",
44801
- "nullable": true
45286
+ "type": [
45287
+ "string",
45288
+ "null"
45289
+ ],
45290
+ "format": "date-time"
44802
45291
  }
44803
45292
  }
44804
45293
  }
@@ -44982,8 +45471,10 @@
44982
45471
  "type": "integer"
44983
45472
  },
44984
45473
  "name": {
44985
- "type": "string",
44986
- "nullable": true
45474
+ "type": [
45475
+ "string",
45476
+ "null"
45477
+ ]
44987
45478
  },
44988
45479
  "type": {
44989
45480
  "type": "string"
@@ -44997,8 +45488,10 @@
44997
45488
  "description": "The step after template substitution."
44998
45489
  },
44999
45490
  "skipped_by": {
45000
- "type": "string",
45001
- "nullable": true
45491
+ "type": [
45492
+ "string",
45493
+ "null"
45494
+ ]
45002
45495
  },
45003
45496
  "effect": {
45004
45497
  "type": "string"
@@ -45024,8 +45517,10 @@
45024
45517
  }
45025
45518
  },
45026
45519
  "budget_exceeded": {
45027
- "type": "string",
45028
- "nullable": true
45520
+ "type": [
45521
+ "string",
45522
+ "null"
45523
+ ]
45029
45524
  }
45030
45525
  }
45031
45526
  }
@@ -45082,16 +45577,20 @@
45082
45577
  ]
45083
45578
  },
45084
45579
  "cron_expr": {
45085
- "type": "string",
45086
- "nullable": true
45580
+ "type": [
45581
+ "string",
45582
+ "null"
45583
+ ]
45087
45584
  },
45088
45585
  "timezone": {
45089
45586
  "type": "string"
45090
45587
  },
45091
45588
  "event_filter": {
45092
- "type": "object",
45093
- "additionalProperties": true,
45094
- "nullable": true
45589
+ "type": [
45590
+ "object",
45591
+ "null"
45592
+ ],
45593
+ "additionalProperties": true
45095
45594
  },
45096
45595
  "workflow_spec": {
45097
45596
  "oneOf": [
@@ -45112,33 +45611,45 @@
45112
45611
  "type": "boolean"
45113
45612
  },
45114
45613
  "last_run_at": {
45115
- "type": "string",
45116
- "format": "date-time",
45117
- "nullable": true
45614
+ "type": [
45615
+ "string",
45616
+ "null"
45617
+ ],
45618
+ "format": "date-time"
45118
45619
  },
45119
45620
  "next_run_at": {
45120
- "type": "string",
45121
- "format": "date-time",
45122
- "nullable": true
45621
+ "type": [
45622
+ "string",
45623
+ "null"
45624
+ ],
45625
+ "format": "date-time"
45123
45626
  },
45124
45627
  "last_run_status": {
45125
- "type": "string",
45126
- "nullable": true,
45628
+ "type": [
45629
+ "string",
45630
+ "null"
45631
+ ],
45127
45632
  "description": "Status of the most recent run (enriched list field)"
45128
45633
  },
45129
45634
  "total_runs": {
45130
- "type": "integer",
45131
- "nullable": true,
45635
+ "type": [
45636
+ "integer",
45637
+ "null"
45638
+ ],
45132
45639
  "description": "Total runs in the last 30 days (enriched list field)"
45133
45640
  },
45134
45641
  "success_rate": {
45135
- "type": "number",
45136
- "nullable": true,
45642
+ "type": [
45643
+ "number",
45644
+ "null"
45645
+ ],
45137
45646
  "description": "Success rate percentage (enriched list field)"
45138
45647
  },
45139
45648
  "agent_name": {
45140
- "type": "string",
45141
- "nullable": true,
45649
+ "type": [
45650
+ "string",
45651
+ "null"
45652
+ ],
45142
45653
  "description": "Resolved agent display name (enriched list field)"
45143
45654
  },
45144
45655
  "created_by_type": {
@@ -45162,8 +45673,10 @@
45162
45673
  "description": "Current `automation_versions` version."
45163
45674
  },
45164
45675
  "webhook_signature_scheme": {
45165
- "type": "string",
45166
- "nullable": true,
45676
+ "type": [
45677
+ "string",
45678
+ "null"
45679
+ ],
45167
45680
  "description": "Inbound signature scheme name, never the secret."
45168
45681
  }
45169
45682
  }
@@ -45241,13 +45754,17 @@
45241
45754
  }
45242
45755
  },
45243
45756
  "runtime_id": {
45244
- "type": "string",
45245
- "format": "uuid",
45246
- "nullable": true
45757
+ "type": [
45758
+ "string",
45759
+ "null"
45760
+ ],
45761
+ "format": "uuid"
45247
45762
  },
45248
45763
  "runtime_status": {
45249
- "type": "string",
45250
- "nullable": true
45764
+ "type": [
45765
+ "string",
45766
+ "null"
45767
+ ]
45251
45768
  },
45252
45769
  "cli_hint": {
45253
45770
  "type": "string"
@@ -45308,8 +45825,10 @@
45308
45825
  "description": "`awaiting_approval`, `waiting` (a `wait_until` park) and `awaiting_callback`\nare parked states: the run's clock is stopped and it continues when the\napproval is decided, the wake time passes, or the callback URL is posted to.\n"
45309
45826
  },
45310
45827
  "paused_reason": {
45311
- "type": "string",
45312
- "nullable": true,
45828
+ "type": [
45829
+ "string",
45830
+ "null"
45831
+ ],
45313
45832
  "enum": [
45314
45833
  "approval",
45315
45834
  "wait_until",
@@ -45317,53 +45836,71 @@
45317
45836
  ]
45318
45837
  },
45319
45838
  "paused_at_step": {
45320
- "type": "integer",
45321
- "nullable": true
45839
+ "type": [
45840
+ "integer",
45841
+ "null"
45842
+ ]
45322
45843
  },
45323
45844
  "paused_approval_id": {
45324
- "type": "string",
45325
- "format": "uuid",
45326
- "nullable": true
45845
+ "type": [
45846
+ "string",
45847
+ "null"
45848
+ ],
45849
+ "format": "uuid"
45327
45850
  },
45328
45851
  "paused_until": {
45329
- "type": "string",
45330
- "format": "date-time",
45331
- "nullable": true
45852
+ "type": [
45853
+ "string",
45854
+ "null"
45855
+ ],
45856
+ "format": "date-time"
45332
45857
  },
45333
45858
  "paused_expires_at": {
45334
- "type": "string",
45335
- "format": "date-time",
45336
- "nullable": true
45859
+ "type": [
45860
+ "string",
45861
+ "null"
45862
+ ],
45863
+ "format": "date-time"
45337
45864
  },
45338
45865
  "spec_version": {
45339
- "type": "integer",
45340
- "nullable": true
45866
+ "type": [
45867
+ "integer",
45868
+ "null"
45869
+ ]
45341
45870
  },
45342
45871
  "idempotency_key": {
45343
- "type": "string",
45344
- "nullable": true
45872
+ "type": [
45873
+ "string",
45874
+ "null"
45875
+ ]
45345
45876
  },
45346
45877
  "parent_run_id": {
45347
- "type": "string",
45878
+ "type": [
45879
+ "string",
45880
+ "null"
45881
+ ],
45348
45882
  "format": "uuid",
45349
- "nullable": true,
45350
45883
  "description": "Set when a `call_automation` step started this run."
45351
45884
  },
45352
- "step_results": {
45353
- "nullable": true
45354
- },
45885
+ "step_results": {},
45355
45886
  "error": {
45356
- "type": "string",
45357
- "nullable": true
45887
+ "type": [
45888
+ "string",
45889
+ "null"
45890
+ ]
45358
45891
  },
45359
45892
  "trigger_source": {
45360
- "type": "string",
45361
- "nullable": true
45893
+ "type": [
45894
+ "string",
45895
+ "null"
45896
+ ]
45362
45897
  },
45363
45898
  "context": {
45364
- "type": "object",
45899
+ "type": [
45900
+ "object",
45901
+ "null"
45902
+ ],
45365
45903
  "additionalProperties": true,
45366
- "nullable": true,
45367
45904
  "description": "JSONB context passed between workflow steps"
45368
45905
  },
45369
45906
  "started_at": {
@@ -45371,9 +45908,11 @@
45371
45908
  "format": "date-time"
45372
45909
  },
45373
45910
  "finished_at": {
45374
- "type": "string",
45375
- "format": "date-time",
45376
- "nullable": true
45911
+ "type": [
45912
+ "string",
45913
+ "null"
45914
+ ],
45915
+ "format": "date-time"
45377
45916
  },
45378
45917
  "tokens_used": {
45379
45918
  "type": "integer"
@@ -45421,8 +45960,10 @@
45421
45960
  "type": "string"
45422
45961
  },
45423
45962
  "cron_expr": {
45424
- "type": "string",
45425
- "nullable": true
45963
+ "type": [
45964
+ "string",
45965
+ "null"
45966
+ ]
45426
45967
  },
45427
45968
  "workflow_spec": {
45428
45969
  "type": "object",
@@ -45546,9 +46087,11 @@
45546
46087
  "type": "object",
45547
46088
  "properties": {
45548
46089
  "schedule": {
45549
- "nullable": true,
45550
46090
  "description": "Scheduled start/stop: start the container when `start_cron` fires (IANA\n`timezone`, default UTC) and stop it `stop_after_secs` later (60–86400; null\nleaves it to the idle reconciler). `null` clears the schedule.\n",
45551
- "type": "object",
46091
+ "type": [
46092
+ "object",
46093
+ "null"
46094
+ ],
45552
46095
  "properties": {
45553
46096
  "start_cron": {
45554
46097
  "type": "string"
@@ -45558,8 +46101,10 @@
45558
46101
  "default": "UTC"
45559
46102
  },
45560
46103
  "stop_after_secs": {
45561
- "type": "integer",
45562
- "nullable": true
46104
+ "type": [
46105
+ "integer",
46106
+ "null"
46107
+ ]
45563
46108
  }
45564
46109
  }
45565
46110
  },
@@ -45628,28 +46173,38 @@
45628
46173
  ],
45629
46174
  "properties": {
45630
46175
  "previous_image_digest": {
45631
- "type": "string",
45632
- "nullable": true
46176
+ "type": [
46177
+ "string",
46178
+ "null"
46179
+ ]
45633
46180
  },
45634
46181
  "image_digest": {
45635
- "type": "string",
45636
- "nullable": true,
46182
+ "type": [
46183
+ "string",
46184
+ "null"
46185
+ ],
45637
46186
  "description": "Resolved image (digest form when the provider reports one); runtime-minted agent tokens carry it as `runtime_image`, which access policies can require via `conditions.runtime_image_in`."
45638
46187
  },
45639
46188
  "schedule": {
45640
- "type": "object",
45641
- "nullable": true,
46189
+ "type": [
46190
+ "object",
46191
+ "null"
46192
+ ],
45642
46193
  "additionalProperties": true
45643
46194
  },
45644
46195
  "next_scheduled_start_at": {
45645
- "type": "string",
45646
- "format": "date-time",
45647
- "nullable": true
46196
+ "type": [
46197
+ "string",
46198
+ "null"
46199
+ ],
46200
+ "format": "date-time"
45648
46201
  },
45649
46202
  "scheduled_stop_at": {
45650
- "type": "string",
45651
- "format": "date-time",
45652
- "nullable": true
46203
+ "type": [
46204
+ "string",
46205
+ "null"
46206
+ ],
46207
+ "format": "date-time"
45653
46208
  },
45654
46209
  "id": {
45655
46210
  "type": "string",
@@ -45663,16 +46218,22 @@
45663
46218
  "format": "uuid"
45664
46219
  },
45665
46220
  "template": {
45666
- "type": "string",
45667
- "nullable": true
46221
+ "type": [
46222
+ "string",
46223
+ "null"
46224
+ ]
45668
46225
  },
45669
46226
  "preset": {
45670
- "type": "string",
45671
- "nullable": true
46227
+ "type": [
46228
+ "string",
46229
+ "null"
46230
+ ]
45672
46231
  },
45673
46232
  "provider": {
45674
- "type": "string",
45675
- "nullable": true
46233
+ "type": [
46234
+ "string",
46235
+ "null"
46236
+ ]
45676
46237
  },
45677
46238
  "status": {
45678
46239
  "type": "string",
@@ -45686,49 +46247,67 @@
45686
46247
  ]
45687
46248
  },
45688
46249
  "image": {
45689
- "type": "string",
45690
- "nullable": true
46250
+ "type": [
46251
+ "string",
46252
+ "null"
46253
+ ]
45691
46254
  },
45692
46255
  "environment": {
45693
- "type": "string",
45694
- "nullable": true,
46256
+ "type": [
46257
+ "string",
46258
+ "null"
46259
+ ],
45695
46260
  "description": "Vault environment for env var resolution"
45696
46261
  },
45697
46262
  "env_public": {
45698
- "type": "object",
46263
+ "type": [
46264
+ "object",
46265
+ "null"
46266
+ ],
45699
46267
  "additionalProperties": {
45700
46268
  "type": "string"
45701
- },
45702
- "nullable": true
46269
+ }
45703
46270
  },
45704
46271
  "idle_timeout_secs": {
45705
- "type": "integer",
45706
- "nullable": true
46272
+ "type": [
46273
+ "integer",
46274
+ "null"
46275
+ ]
45707
46276
  },
45708
46277
  "expose_http": {
45709
- "type": "boolean",
45710
- "nullable": true
46278
+ "type": [
46279
+ "boolean",
46280
+ "null"
46281
+ ]
45711
46282
  },
45712
46283
  "slug": {
45713
- "type": "string",
45714
- "nullable": true
46284
+ "type": [
46285
+ "string",
46286
+ "null"
46287
+ ]
45715
46288
  },
45716
46289
  "public_url": {
45717
- "type": "string",
45718
- "nullable": true
46290
+ "type": [
46291
+ "string",
46292
+ "null"
46293
+ ]
45719
46294
  },
45720
46295
  "http_port": {
45721
- "type": "integer",
45722
- "nullable": true
46296
+ "type": [
46297
+ "integer",
46298
+ "null"
46299
+ ]
45723
46300
  },
45724
46301
  "inbound_auth": {
45725
- "type": "string",
46302
+ "type": [
46303
+ "string",
46304
+ "null"
46305
+ ],
45726
46306
  "enum": [
45727
46307
  "api_key",
45728
46308
  "jwt",
45729
46309
  "public"
45730
- ],
45731
- "nullable": true
46310
+ ]
45732
46311
  },
45733
46312
  "shell_access_enabled": {
45734
46313
  "type": "boolean"
@@ -45740,8 +46319,10 @@
45740
46319
  "type": "integer"
45741
46320
  },
45742
46321
  "monthly_hours_used": {
45743
- "type": "number",
45744
- "nullable": true
46322
+ "type": [
46323
+ "number",
46324
+ "null"
46325
+ ]
45745
46326
  },
45746
46327
  "has_paid_addon": {
45747
46328
  "type": "boolean",
@@ -45815,8 +46396,10 @@
45815
46396
  "type": "string"
45816
46397
  },
45817
46398
  "reason": {
45818
- "type": "string",
45819
- "nullable": true
46399
+ "type": [
46400
+ "string",
46401
+ "null"
46402
+ ]
45820
46403
  }
45821
46404
  }
45822
46405
  },
@@ -45936,9 +46519,11 @@
45936
46519
  "format": "date-time"
45937
46520
  },
45938
46521
  "ttl_expires_at": {
45939
- "type": "string",
45940
- "format": "date-time",
45941
- "nullable": true
46522
+ "type": [
46523
+ "string",
46524
+ "null"
46525
+ ],
46526
+ "format": "date-time"
45942
46527
  }
45943
46528
  }
45944
46529
  },
@@ -45952,8 +46537,10 @@
45952
46537
  "type": "string"
45953
46538
  },
45954
46539
  "ttl_seconds": {
45955
- "type": "integer",
45956
- "nullable": true
46540
+ "type": [
46541
+ "integer",
46542
+ "null"
46543
+ ]
45957
46544
  }
45958
46545
  }
45959
46546
  },
@@ -46047,8 +46634,10 @@
46047
46634
  "type": "string"
46048
46635
  },
46049
46636
  "description": {
46050
- "type": "string",
46051
- "nullable": true
46637
+ "type": [
46638
+ "string",
46639
+ "null"
46640
+ ]
46052
46641
  },
46053
46642
  "capabilities": {
46054
46643
  "type": "array",
@@ -46057,12 +46646,16 @@
46057
46646
  }
46058
46647
  },
46059
46648
  "a2a_url": {
46060
- "type": "string",
46061
- "nullable": true
46649
+ "type": [
46650
+ "string",
46651
+ "null"
46652
+ ]
46062
46653
  },
46063
46654
  "mcp_url": {
46064
- "type": "string",
46065
- "nullable": true
46655
+ "type": [
46656
+ "string",
46657
+ "null"
46658
+ ]
46066
46659
  },
46067
46660
  "tags": {
46068
46661
  "type": "array",
@@ -46087,8 +46680,10 @@
46087
46680
  "type": "string"
46088
46681
  },
46089
46682
  "description": {
46090
- "type": "string",
46091
- "nullable": true
46683
+ "type": [
46684
+ "string",
46685
+ "null"
46686
+ ]
46092
46687
  },
46093
46688
  "tags": {
46094
46689
  "type": "array",
@@ -46103,16 +46698,22 @@
46103
46698
  }
46104
46699
  },
46105
46700
  "a2a_url": {
46106
- "type": "string",
46107
- "nullable": true
46701
+ "type": [
46702
+ "string",
46703
+ "null"
46704
+ ]
46108
46705
  },
46109
46706
  "mcp_url": {
46110
- "type": "string",
46111
- "nullable": true
46707
+ "type": [
46708
+ "string",
46709
+ "null"
46710
+ ]
46112
46711
  },
46113
46712
  "org_name": {
46114
- "type": "string",
46115
- "nullable": true
46713
+ "type": [
46714
+ "string",
46715
+ "null"
46716
+ ]
46116
46717
  }
46117
46718
  }
46118
46719
  },
@@ -46173,12 +46774,16 @@
46173
46774
  }
46174
46775
  },
46175
46776
  "a2a_url": {
46176
- "type": "string",
46177
- "nullable": true
46777
+ "type": [
46778
+ "string",
46779
+ "null"
46780
+ ]
46178
46781
  },
46179
46782
  "mcp_url": {
46180
- "type": "string",
46181
- "nullable": true
46783
+ "type": [
46784
+ "string",
46785
+ "null"
46786
+ ]
46182
46787
  },
46183
46788
  "intents_api_enabled": {
46184
46789
  "type": "boolean"
@@ -46514,9 +47119,11 @@
46514
47119
  "type": "boolean"
46515
47120
  },
46516
47121
  "config": {
46517
- "type": "object",
47122
+ "type": [
47123
+ "object",
47124
+ "null"
47125
+ ],
46518
47126
  "additionalProperties": true,
46519
- "nullable": true,
46520
47127
  "description": "Channel-specific configuration JSON. May include:\n- sender_allowlist (array of strings): restrict which external senders can trigger the agent\n- auto_respond_enabled (boolean): whether the agent auto-responds to inbound messages\n"
46521
47128
  },
46522
47129
  "slash_commands_enabled": {
@@ -46528,9 +47135,11 @@
46528
47135
  "description": "Whether voice message transcription is enabled"
46529
47136
  },
46530
47137
  "unified_conversation_id": {
46531
- "type": "string",
47138
+ "type": [
47139
+ "string",
47140
+ "null"
47141
+ ],
46532
47142
  "format": "uuid",
46533
- "nullable": true,
46534
47143
  "description": "ID linking this channel to a unified cross-platform conversation"
46535
47144
  },
46536
47145
  "is_home_platform": {
@@ -46538,11 +47147,13 @@
46538
47147
  "description": "Whether this is the agent's home platform channel"
46539
47148
  },
46540
47149
  "sender_allowlist": {
46541
- "type": "array",
47150
+ "type": [
47151
+ "array",
47152
+ "null"
47153
+ ],
46542
47154
  "items": {
46543
47155
  "type": "string"
46544
47156
  },
46545
- "nullable": true,
46546
47157
  "description": "List of allowed sender IDs for auto-respond"
46547
47158
  },
46548
47159
  "auto_respond_enabled": {
@@ -46628,18 +47239,24 @@
46628
47239
  "description": "Whether this message was a voice message"
46629
47240
  },
46630
47241
  "voice_file_id": {
46631
- "type": "string",
46632
- "nullable": true,
47242
+ "type": [
47243
+ "string",
47244
+ "null"
47245
+ ],
46633
47246
  "description": "Telegram voice file ID"
46634
47247
  },
46635
47248
  "voice_duration_secs": {
46636
- "type": "integer",
46637
- "nullable": true,
47249
+ "type": [
47250
+ "integer",
47251
+ "null"
47252
+ ],
46638
47253
  "description": "Duration of voice message in seconds"
46639
47254
  },
46640
47255
  "transcription_status": {
46641
- "type": "string",
46642
- "nullable": true,
47256
+ "type": [
47257
+ "string",
47258
+ "null"
47259
+ ],
46643
47260
  "enum": [
46644
47261
  "pending",
46645
47262
  "completed",
@@ -46716,20 +47333,24 @@
46716
47333
  }
46717
47334
  },
46718
47335
  "extra_auth_params": {
46719
- "type": "object",
47336
+ "type": [
47337
+ "object",
47338
+ "null"
47339
+ ],
46720
47340
  "additionalProperties": {
46721
47341
  "type": "string"
46722
- },
46723
- "nullable": true
47342
+ }
46724
47343
  },
46725
47344
  "requires_app_credentials": {
46726
47345
  "type": "boolean",
46727
47346
  "description": "Whether custom app credentials are required (vs. shared 1Claw app)"
46728
47347
  },
46729
47348
  "documentation_url": {
46730
- "type": "string",
46731
- "format": "uri",
46732
- "nullable": true
47349
+ "type": [
47350
+ "string",
47351
+ "null"
47352
+ ],
47353
+ "format": "uri"
46733
47354
  }
46734
47355
  }
46735
47356
  },
@@ -46864,9 +47485,11 @@
46864
47485
  "type": "string"
46865
47486
  },
46866
47487
  "redirect_uri": {
46867
- "type": "string",
46868
- "format": "uri",
46869
- "nullable": true
47488
+ "type": [
47489
+ "string",
47490
+ "null"
47491
+ ],
47492
+ "format": "uri"
46870
47493
  },
46871
47494
  "created_at": {
46872
47495
  "type": "string",
@@ -47443,9 +48066,11 @@
47443
48066
  ]
47444
48067
  },
47445
48068
  "approval_id": {
47446
- "type": "string",
47447
- "format": "uuid",
47448
- "nullable": true
48069
+ "type": [
48070
+ "string",
48071
+ "null"
48072
+ ],
48073
+ "format": "uuid"
47449
48074
  },
47450
48075
  "created_at": {
47451
48076
  "type": "string",
@@ -48861,8 +49486,10 @@
48861
49486
  "type": "string"
48862
49487
  },
48863
49488
  "nonce": {
48864
- "type": "integer",
48865
- "nullable": true
49489
+ "type": [
49490
+ "integer",
49491
+ "null"
49492
+ ]
48866
49493
  },
48867
49494
  "created_at": {
48868
49495
  "type": "string",
@@ -48887,27 +49514,35 @@
48887
49514
  }
48888
49515
  },
48889
49516
  "git_branch": {
48890
- "type": "string",
48891
- "nullable": true
49517
+ "type": [
49518
+ "string",
49519
+ "null"
49520
+ ]
48892
49521
  },
48893
49522
  "sensitive": {
48894
49523
  "type": "boolean"
48895
49524
  },
48896
49525
  "comment": {
48897
- "type": "string",
48898
- "nullable": true
49526
+ "type": [
49527
+ "string",
49528
+ "null"
49529
+ ]
48899
49530
  },
48900
49531
  "value": {
48901
- "type": "string",
48902
- "nullable": true,
49532
+ "type": [
49533
+ "string",
49534
+ "null"
49535
+ ],
48903
49536
  "description": "Null for sensitive vars in list responses"
48904
49537
  },
48905
49538
  "version": {
48906
49539
  "type": "integer"
48907
49540
  },
48908
49541
  "created_by": {
48909
- "type": "string",
48910
- "nullable": true
49542
+ "type": [
49543
+ "string",
49544
+ "null"
49545
+ ]
48911
49546
  },
48912
49547
  "created_at": {
48913
49548
  "type": "string",
@@ -49001,8 +49636,10 @@
49001
49636
  "type": "string"
49002
49637
  },
49003
49638
  "git_branch": {
49004
- "type": "string",
49005
- "nullable": true
49639
+ "type": [
49640
+ "string",
49641
+ "null"
49642
+ ]
49006
49643
  },
49007
49644
  "resolved_at": {
49008
49645
  "type": "string",
@@ -49021,15 +49658,19 @@
49021
49658
  "type": "string"
49022
49659
  },
49023
49660
  "description": {
49024
- "type": "string",
49025
- "nullable": true
49661
+ "type": [
49662
+ "string",
49663
+ "null"
49664
+ ]
49026
49665
  },
49027
49666
  "is_builtin": {
49028
49667
  "type": "boolean"
49029
49668
  },
49030
49669
  "copied_from": {
49031
- "type": "string",
49032
- "nullable": true
49670
+ "type": [
49671
+ "string",
49672
+ "null"
49673
+ ]
49033
49674
  },
49034
49675
  "is_detached": {
49035
49676
  "type": "boolean"
@@ -49079,12 +49720,16 @@
49079
49720
  "type": "boolean"
49080
49721
  },
49081
49722
  "comment": {
49082
- "type": "string",
49083
- "nullable": true
49723
+ "type": [
49724
+ "string",
49725
+ "null"
49726
+ ]
49084
49727
  },
49085
49728
  "value": {
49086
- "type": "string",
49087
- "nullable": true
49729
+ "type": [
49730
+ "string",
49731
+ "null"
49732
+ ]
49088
49733
  },
49089
49734
  "version": {
49090
49735
  "type": "integer"
@@ -49174,9 +49819,11 @@
49174
49819
  "description": "Policy scope — org-wide, platform app, or single wallet"
49175
49820
  },
49176
49821
  "scope_id": {
49177
- "type": "string",
49822
+ "type": [
49823
+ "string",
49824
+ "null"
49825
+ ],
49178
49826
  "format": "uuid",
49179
- "nullable": true,
49180
49827
  "description": "Wallet or platform app UUID when scope_type is not org"
49181
49828
  },
49182
49829
  "principal_type": {
@@ -49253,9 +49900,11 @@
49253
49900
  "type": "string"
49254
49901
  },
49255
49902
  "scope_id": {
49256
- "type": "string",
49257
- "format": "uuid",
49258
- "nullable": true
49903
+ "type": [
49904
+ "string",
49905
+ "null"
49906
+ ],
49907
+ "format": "uuid"
49259
49908
  },
49260
49909
  "principal_type": {
49261
49910
  "type": "string"
@@ -49285,12 +49934,16 @@
49285
49934
  }
49286
49935
  },
49287
49936
  "max_value_per_tx_eth": {
49288
- "type": "string",
49289
- "nullable": true
49937
+ "type": [
49938
+ "string",
49939
+ "null"
49940
+ ]
49290
49941
  },
49291
49942
  "daily_limit_eth": {
49292
- "type": "string",
49293
- "nullable": true
49943
+ "type": [
49944
+ "string",
49945
+ "null"
49946
+ ]
49294
49947
  },
49295
49948
  "conditions": {
49296
49949
  "type": "object"
@@ -49299,9 +49952,11 @@
49299
49952
  "type": "boolean"
49300
49953
  },
49301
49954
  "expires_at": {
49302
- "type": "string",
49303
- "format": "date-time",
49304
- "nullable": true
49955
+ "type": [
49956
+ "string",
49957
+ "null"
49958
+ ],
49959
+ "format": "date-time"
49305
49960
  },
49306
49961
  "created_by": {
49307
49962
  "type": "string",
@@ -49403,8 +50058,10 @@
49403
50058
  ]
49404
50059
  },
49405
50060
  "recovery_code": {
49406
- "type": "string",
49407
- "nullable": true,
50061
+ "type": [
50062
+ "string",
50063
+ "null"
50064
+ ],
49408
50065
  "description": "One-time recovery code (only present for certain recovery types)"
49409
50066
  }
49410
50067
  }
@@ -49564,24 +50221,34 @@
49564
50221
  "type": "boolean"
49565
50222
  },
49566
50223
  "kek_id": {
49567
- "type": "string",
49568
- "nullable": true
50224
+ "type": [
50225
+ "string",
50226
+ "null"
50227
+ ]
49569
50228
  },
49570
50229
  "threshold": {
49571
- "type": "integer",
49572
- "nullable": true
50230
+ "type": [
50231
+ "integer",
50232
+ "null"
50233
+ ]
49573
50234
  },
49574
50235
  "total_shares": {
49575
- "type": "integer",
49576
- "nullable": true
50236
+ "type": [
50237
+ "integer",
50238
+ "null"
50239
+ ]
49577
50240
  },
49578
50241
  "custody_mode": {
49579
- "type": "string",
49580
- "nullable": true
50242
+ "type": [
50243
+ "string",
50244
+ "null"
50245
+ ]
49581
50246
  },
49582
50247
  "custodians": {
49583
- "type": "array",
49584
- "nullable": true,
50248
+ "type": [
50249
+ "array",
50250
+ "null"
50251
+ ],
49585
50252
  "items": {
49586
50253
  "type": "object",
49587
50254
  "properties": {
@@ -49596,9 +50263,11 @@
49596
50263
  }
49597
50264
  },
49598
50265
  "created_at": {
49599
- "type": "string",
49600
- "format": "date-time",
49601
- "nullable": true
50266
+ "type": [
50267
+ "string",
50268
+ "null"
50269
+ ],
50270
+ "format": "date-time"
49602
50271
  }
49603
50272
  }
49604
50273
  },
@@ -49728,13 +50397,17 @@
49728
50397
  "type": "integer"
49729
50398
  },
49730
50399
  "delta_pct": {
49731
- "type": "number",
49732
- "nullable": true,
50400
+ "type": [
50401
+ "number",
50402
+ "null"
50403
+ ],
49733
50404
  "description": "Null when both the current and prior totals are 0."
49734
50405
  },
49735
50406
  "notes": {
49736
- "type": "string",
49737
- "nullable": true,
50407
+ "type": [
50408
+ "string",
50409
+ "null"
50410
+ ],
49738
50411
  "description": "A known limitation worth surfacing for this vertical (e.g. a source table with no org_id to exclude test-fixture activity from). Null for the clean verticals.\n"
49739
50412
  }
49740
50413
  }
@@ -49757,8 +50430,10 @@
49757
50430
  "type": "integer"
49758
50431
  },
49759
50432
  "retention_pct": {
49760
- "type": "number",
49761
- "nullable": true,
50433
+ "type": [
50434
+ "number",
50435
+ "null"
50436
+ ],
49762
50437
  "description": "Null when there is no cohort yet (platform younger than the window)."
49763
50438
  }
49764
50439
  }