@1claw/openapi-spec 0.46.0 → 0.47.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/openapi.json +6893 -5391
- package/openapi.yaml +1105 -114
- package/package.json +1 -1
package/openapi.yaml
CHANGED
|
@@ -2,7 +2,7 @@ openapi: 3.1.0
|
|
|
2
2
|
|
|
3
3
|
info:
|
|
4
4
|
title: 1Claw API
|
|
5
|
-
version: 2.
|
|
5
|
+
version: 2.36.0
|
|
6
6
|
description: |
|
|
7
7
|
Secure secret management for AI agents. Provides vaults, secrets,
|
|
8
8
|
policy-based access control, agent identity, Intents API,
|
|
@@ -98,6 +98,14 @@ tags:
|
|
|
98
98
|
description: OAuth connected accounts for agents (provider registry, connect flows, app credentials)
|
|
99
99
|
- name: Delegations
|
|
100
100
|
description: Agent-to-agent delegation management (human-controlled authorization)
|
|
101
|
+
- name: Cedar Policies
|
|
102
|
+
description: Cedar policy engine (Team+ tier)
|
|
103
|
+
- name: OPA Policies
|
|
104
|
+
description: OPA policy engine (Business+ tier)
|
|
105
|
+
- name: Sub-Organizations
|
|
106
|
+
description: Sub-organization management
|
|
107
|
+
- name: Portfolio
|
|
108
|
+
description: Unified balance aggregator
|
|
101
109
|
|
|
102
110
|
# =============================================================================
|
|
103
111
|
# PATHS
|
|
@@ -2453,6 +2461,41 @@ paths:
|
|
|
2453
2461
|
"404":
|
|
2454
2462
|
$ref: "#/components/responses/NotFound"
|
|
2455
2463
|
|
|
2464
|
+
/v1/agents/{agent_id}/signing-keys/{chain}/import:
|
|
2465
|
+
post:
|
|
2466
|
+
tags: [Signing Keys]
|
|
2467
|
+
summary: Import a signing key for a chain
|
|
2468
|
+
description: |
|
|
2469
|
+
Import an existing private key for a specific chain. Human-only,
|
|
2470
|
+
requires password re-authentication.
|
|
2471
|
+
operationId: importSigningKey
|
|
2472
|
+
security:
|
|
2473
|
+
- BearerAuth: []
|
|
2474
|
+
parameters:
|
|
2475
|
+
- $ref: "#/components/parameters/AgentId"
|
|
2476
|
+
- name: chain
|
|
2477
|
+
in: path
|
|
2478
|
+
required: true
|
|
2479
|
+
schema:
|
|
2480
|
+
type: string
|
|
2481
|
+
requestBody:
|
|
2482
|
+
required: true
|
|
2483
|
+
content:
|
|
2484
|
+
application/json:
|
|
2485
|
+
schema:
|
|
2486
|
+
$ref: "#/components/schemas/ImportKeyRequest"
|
|
2487
|
+
responses:
|
|
2488
|
+
"201":
|
|
2489
|
+
description: Signing key imported
|
|
2490
|
+
content:
|
|
2491
|
+
application/json:
|
|
2492
|
+
schema:
|
|
2493
|
+
$ref: "#/components/schemas/SigningKeyResponse"
|
|
2494
|
+
"401":
|
|
2495
|
+
$ref: "#/components/responses/Unauthorized"
|
|
2496
|
+
"403":
|
|
2497
|
+
$ref: "#/components/responses/Forbidden"
|
|
2498
|
+
|
|
2456
2499
|
# ---------------------------------------------------------------------------
|
|
2457
2500
|
# Bankr Dynamic Key Vending
|
|
2458
2501
|
# ---------------------------------------------------------------------------
|
|
@@ -3533,6 +3576,23 @@ paths:
|
|
|
3533
3576
|
schema:
|
|
3534
3577
|
$ref: "#/components/schemas/LlmDisableResponse"
|
|
3535
3578
|
|
|
3579
|
+
/v1/billing/llm-token-billing/cancel-duplicates:
|
|
3580
|
+
post:
|
|
3581
|
+
tags: [Billing]
|
|
3582
|
+
summary: Cancel duplicate LLM billing subscriptions
|
|
3583
|
+
operationId: cancelLlmDuplicateSubscriptions
|
|
3584
|
+
description: >
|
|
3585
|
+
Cancels extra Stripe LLM billing subscriptions for the org,
|
|
3586
|
+
keeping a single primary subscription (active preferred over trialing).
|
|
3587
|
+
Does not change the org LLM billing enabled setting.
|
|
3588
|
+
responses:
|
|
3589
|
+
"200":
|
|
3590
|
+
description: Duplicate subscriptions cancelled
|
|
3591
|
+
content:
|
|
3592
|
+
application/json:
|
|
3593
|
+
schema:
|
|
3594
|
+
$ref: "#/components/schemas/LlmCancelDuplicatesResponse"
|
|
3595
|
+
|
|
3536
3596
|
/v1/billing/overage-method:
|
|
3537
3597
|
patch:
|
|
3538
3598
|
tags: [Billing]
|
|
@@ -4462,6 +4522,40 @@ paths:
|
|
|
4462
4522
|
"404":
|
|
4463
4523
|
$ref: "#/components/responses/NotFound"
|
|
4464
4524
|
|
|
4525
|
+
/v1/treasury/wallets/{chain}/import:
|
|
4526
|
+
post:
|
|
4527
|
+
tags: [Treasury Wallets]
|
|
4528
|
+
summary: Import a treasury wallet
|
|
4529
|
+
description: |
|
|
4530
|
+
Import an existing private key as a treasury wallet. Human-only,
|
|
4531
|
+
requires password re-authentication via X-Auth-Confirm header.
|
|
4532
|
+
operationId: importTreasuryWallet
|
|
4533
|
+
security:
|
|
4534
|
+
- BearerAuth: []
|
|
4535
|
+
parameters:
|
|
4536
|
+
- name: chain
|
|
4537
|
+
in: path
|
|
4538
|
+
required: true
|
|
4539
|
+
schema:
|
|
4540
|
+
type: string
|
|
4541
|
+
requestBody:
|
|
4542
|
+
required: true
|
|
4543
|
+
content:
|
|
4544
|
+
application/json:
|
|
4545
|
+
schema:
|
|
4546
|
+
$ref: "#/components/schemas/ImportKeyRequest"
|
|
4547
|
+
responses:
|
|
4548
|
+
"201":
|
|
4549
|
+
description: Treasury wallet imported
|
|
4550
|
+
content:
|
|
4551
|
+
application/json:
|
|
4552
|
+
schema:
|
|
4553
|
+
$ref: "#/components/schemas/TreasuryWalletResponse"
|
|
4554
|
+
"401":
|
|
4555
|
+
$ref: "#/components/responses/Unauthorized"
|
|
4556
|
+
"403":
|
|
4557
|
+
$ref: "#/components/responses/Forbidden"
|
|
4558
|
+
|
|
4465
4559
|
/v1/treasury/wallets/spend-policy:
|
|
4466
4560
|
get:
|
|
4467
4561
|
tags: [Treasury Wallets]
|
|
@@ -8703,119 +8797,639 @@ paths:
|
|
|
8703
8797
|
"302":
|
|
8704
8798
|
description: Redirect to dashboard with success or error status
|
|
8705
8799
|
|
|
8706
|
-
#
|
|
8707
|
-
#
|
|
8708
|
-
#
|
|
8800
|
+
# ---------------------------------------------------------------------------
|
|
8801
|
+
# Cedar Policies
|
|
8802
|
+
# ---------------------------------------------------------------------------
|
|
8709
8803
|
|
|
8710
|
-
|
|
8711
|
-
|
|
8712
|
-
|
|
8713
|
-
|
|
8714
|
-
|
|
8715
|
-
|
|
8716
|
-
|
|
8717
|
-
|
|
8718
|
-
|
|
8719
|
-
|
|
8804
|
+
/v1/org/cedar-policies:
|
|
8805
|
+
post:
|
|
8806
|
+
tags: [Cedar Policies]
|
|
8807
|
+
summary: Create a Cedar policy
|
|
8808
|
+
description: Create a new Cedar policy for the organization. Team+ tier required.
|
|
8809
|
+
operationId: createCedarPolicy
|
|
8810
|
+
security:
|
|
8811
|
+
- BearerAuth: []
|
|
8812
|
+
requestBody:
|
|
8813
|
+
required: true
|
|
8814
|
+
content:
|
|
8815
|
+
application/json:
|
|
8816
|
+
schema:
|
|
8817
|
+
$ref: "#/components/schemas/CreateCedarPolicyRequest"
|
|
8818
|
+
responses:
|
|
8819
|
+
"201":
|
|
8820
|
+
description: Cedar policy created
|
|
8821
|
+
content:
|
|
8822
|
+
application/json:
|
|
8823
|
+
schema:
|
|
8824
|
+
$ref: "#/components/schemas/CedarPolicyResponse"
|
|
8825
|
+
"400":
|
|
8826
|
+
$ref: "#/components/responses/BadRequest"
|
|
8827
|
+
"401":
|
|
8828
|
+
$ref: "#/components/responses/Unauthorized"
|
|
8829
|
+
"403":
|
|
8830
|
+
$ref: "#/components/responses/Forbidden"
|
|
8831
|
+
get:
|
|
8832
|
+
tags: [Cedar Policies]
|
|
8833
|
+
summary: List Cedar policies
|
|
8834
|
+
description: List all Cedar policies for the organization.
|
|
8835
|
+
operationId: listCedarPolicies
|
|
8836
|
+
security:
|
|
8837
|
+
- BearerAuth: []
|
|
8838
|
+
responses:
|
|
8839
|
+
"200":
|
|
8840
|
+
description: Cedar policies list
|
|
8841
|
+
content:
|
|
8842
|
+
application/json:
|
|
8843
|
+
schema:
|
|
8844
|
+
$ref: "#/components/schemas/CedarPolicyListResponse"
|
|
8845
|
+
"401":
|
|
8846
|
+
$ref: "#/components/responses/Unauthorized"
|
|
8720
8847
|
|
|
8721
|
-
|
|
8722
|
-
|
|
8723
|
-
|
|
8724
|
-
|
|
8725
|
-
|
|
8726
|
-
|
|
8727
|
-
|
|
8728
|
-
|
|
8729
|
-
|
|
8730
|
-
|
|
8731
|
-
|
|
8732
|
-
|
|
8733
|
-
|
|
8734
|
-
|
|
8735
|
-
|
|
8736
|
-
|
|
8737
|
-
|
|
8738
|
-
|
|
8739
|
-
|
|
8740
|
-
|
|
8741
|
-
|
|
8742
|
-
|
|
8743
|
-
|
|
8744
|
-
|
|
8745
|
-
|
|
8746
|
-
|
|
8747
|
-
|
|
8748
|
-
|
|
8749
|
-
|
|
8750
|
-
|
|
8751
|
-
|
|
8752
|
-
|
|
8753
|
-
|
|
8754
|
-
|
|
8755
|
-
|
|
8756
|
-
|
|
8757
|
-
|
|
8758
|
-
|
|
8759
|
-
|
|
8760
|
-
|
|
8761
|
-
|
|
8762
|
-
|
|
8763
|
-
|
|
8764
|
-
|
|
8765
|
-
|
|
8766
|
-
|
|
8767
|
-
|
|
8768
|
-
example: false
|
|
8848
|
+
/v1/org/cedar-policies/{id}:
|
|
8849
|
+
get:
|
|
8850
|
+
tags: [Cedar Policies]
|
|
8851
|
+
summary: Get a Cedar policy
|
|
8852
|
+
description: Retrieve a specific Cedar policy by ID.
|
|
8853
|
+
operationId: getCedarPolicy
|
|
8854
|
+
security:
|
|
8855
|
+
- BearerAuth: []
|
|
8856
|
+
parameters:
|
|
8857
|
+
- name: id
|
|
8858
|
+
in: path
|
|
8859
|
+
required: true
|
|
8860
|
+
schema:
|
|
8861
|
+
type: string
|
|
8862
|
+
format: uuid
|
|
8863
|
+
responses:
|
|
8864
|
+
"200":
|
|
8865
|
+
description: Cedar policy details
|
|
8866
|
+
content:
|
|
8867
|
+
application/json:
|
|
8868
|
+
schema:
|
|
8869
|
+
$ref: "#/components/schemas/CedarPolicyResponse"
|
|
8870
|
+
"401":
|
|
8871
|
+
$ref: "#/components/responses/Unauthorized"
|
|
8872
|
+
"404":
|
|
8873
|
+
$ref: "#/components/responses/NotFound"
|
|
8874
|
+
delete:
|
|
8875
|
+
tags: [Cedar Policies]
|
|
8876
|
+
summary: Delete a Cedar policy
|
|
8877
|
+
description: Delete a Cedar policy by ID.
|
|
8878
|
+
operationId: deleteCedarPolicy
|
|
8879
|
+
security:
|
|
8880
|
+
- BearerAuth: []
|
|
8881
|
+
parameters:
|
|
8882
|
+
- name: id
|
|
8883
|
+
in: path
|
|
8884
|
+
required: true
|
|
8885
|
+
schema:
|
|
8886
|
+
type: string
|
|
8887
|
+
format: uuid
|
|
8888
|
+
responses:
|
|
8889
|
+
"204":
|
|
8890
|
+
description: Cedar policy deleted
|
|
8891
|
+
"401":
|
|
8892
|
+
$ref: "#/components/responses/Unauthorized"
|
|
8893
|
+
"404":
|
|
8894
|
+
$ref: "#/components/responses/NotFound"
|
|
8769
8895
|
|
|
8770
|
-
|
|
8771
|
-
|
|
8772
|
-
|
|
8773
|
-
|
|
8774
|
-
|
|
8775
|
-
|
|
8776
|
-
|
|
8777
|
-
|
|
8778
|
-
|
|
8779
|
-
|
|
8780
|
-
|
|
8781
|
-
|
|
8782
|
-
|
|
8783
|
-
|
|
8784
|
-
|
|
8785
|
-
|
|
8786
|
-
|
|
8787
|
-
|
|
8788
|
-
|
|
8789
|
-
|
|
8790
|
-
|
|
8791
|
-
|
|
8792
|
-
|
|
8793
|
-
|
|
8794
|
-
|
|
8795
|
-
PaymentRequired:
|
|
8796
|
-
description: x402 payment required
|
|
8797
|
-
content:
|
|
8798
|
-
application/json:
|
|
8799
|
-
schema:
|
|
8800
|
-
$ref: "#/components/schemas/PaymentRequirement"
|
|
8801
|
-
Conflict:
|
|
8802
|
-
description: Resource already exists or conflict
|
|
8803
|
-
content:
|
|
8804
|
-
application/json:
|
|
8805
|
-
schema:
|
|
8806
|
-
$ref: "#/components/schemas/ProblemDetails"
|
|
8896
|
+
/v1/org/cedar-policies/test:
|
|
8897
|
+
post:
|
|
8898
|
+
tags: [Cedar Policies]
|
|
8899
|
+
summary: Test Cedar policy evaluation
|
|
8900
|
+
description: Evaluate the organization's Cedar policies against a test request.
|
|
8901
|
+
operationId: testCedarPolicy
|
|
8902
|
+
security:
|
|
8903
|
+
- BearerAuth: []
|
|
8904
|
+
requestBody:
|
|
8905
|
+
required: true
|
|
8906
|
+
content:
|
|
8907
|
+
application/json:
|
|
8908
|
+
schema:
|
|
8909
|
+
$ref: "#/components/schemas/CedarPolicyTestRequest"
|
|
8910
|
+
responses:
|
|
8911
|
+
"200":
|
|
8912
|
+
description: Policy evaluation result
|
|
8913
|
+
content:
|
|
8914
|
+
application/json:
|
|
8915
|
+
schema:
|
|
8916
|
+
$ref: "#/components/schemas/CedarPolicyTestResponse"
|
|
8917
|
+
"400":
|
|
8918
|
+
$ref: "#/components/responses/BadRequest"
|
|
8919
|
+
"401":
|
|
8920
|
+
$ref: "#/components/responses/Unauthorized"
|
|
8807
8921
|
|
|
8808
|
-
|
|
8809
|
-
|
|
8810
|
-
|
|
8811
|
-
|
|
8812
|
-
|
|
8813
|
-
|
|
8814
|
-
|
|
8815
|
-
|
|
8816
|
-
|
|
8817
|
-
|
|
8818
|
-
|
|
8922
|
+
# ---------------------------------------------------------------------------
|
|
8923
|
+
# OPA Policies
|
|
8924
|
+
# ---------------------------------------------------------------------------
|
|
8925
|
+
|
|
8926
|
+
/v1/org/opa-policies:
|
|
8927
|
+
post:
|
|
8928
|
+
tags: [OPA Policies]
|
|
8929
|
+
summary: Create an OPA policy
|
|
8930
|
+
description: Create a new OPA Rego policy for the organization. Business+ tier required.
|
|
8931
|
+
operationId: createOpaPolicy
|
|
8932
|
+
security:
|
|
8933
|
+
- BearerAuth: []
|
|
8934
|
+
requestBody:
|
|
8935
|
+
required: true
|
|
8936
|
+
content:
|
|
8937
|
+
application/json:
|
|
8938
|
+
schema:
|
|
8939
|
+
$ref: "#/components/schemas/CreateOpaPolicyRequest"
|
|
8940
|
+
responses:
|
|
8941
|
+
"201":
|
|
8942
|
+
description: OPA policy created
|
|
8943
|
+
content:
|
|
8944
|
+
application/json:
|
|
8945
|
+
schema:
|
|
8946
|
+
$ref: "#/components/schemas/OpaPolicyResponse"
|
|
8947
|
+
"400":
|
|
8948
|
+
$ref: "#/components/responses/BadRequest"
|
|
8949
|
+
"401":
|
|
8950
|
+
$ref: "#/components/responses/Unauthorized"
|
|
8951
|
+
"403":
|
|
8952
|
+
$ref: "#/components/responses/Forbidden"
|
|
8953
|
+
get:
|
|
8954
|
+
tags: [OPA Policies]
|
|
8955
|
+
summary: List OPA policies
|
|
8956
|
+
description: List all OPA policies for the organization.
|
|
8957
|
+
operationId: listOpaPolicies
|
|
8958
|
+
security:
|
|
8959
|
+
- BearerAuth: []
|
|
8960
|
+
responses:
|
|
8961
|
+
"200":
|
|
8962
|
+
description: OPA policies list
|
|
8963
|
+
content:
|
|
8964
|
+
application/json:
|
|
8965
|
+
schema:
|
|
8966
|
+
$ref: "#/components/schemas/OpaPolicyListResponse"
|
|
8967
|
+
"401":
|
|
8968
|
+
$ref: "#/components/responses/Unauthorized"
|
|
8969
|
+
|
|
8970
|
+
/v1/org/opa-policies/{id}:
|
|
8971
|
+
get:
|
|
8972
|
+
tags: [OPA Policies]
|
|
8973
|
+
summary: Get an OPA policy
|
|
8974
|
+
description: Retrieve a specific OPA policy by ID.
|
|
8975
|
+
operationId: getOpaPolicy
|
|
8976
|
+
security:
|
|
8977
|
+
- BearerAuth: []
|
|
8978
|
+
parameters:
|
|
8979
|
+
- name: id
|
|
8980
|
+
in: path
|
|
8981
|
+
required: true
|
|
8982
|
+
schema:
|
|
8983
|
+
type: string
|
|
8984
|
+
format: uuid
|
|
8985
|
+
responses:
|
|
8986
|
+
"200":
|
|
8987
|
+
description: OPA policy details
|
|
8988
|
+
content:
|
|
8989
|
+
application/json:
|
|
8990
|
+
schema:
|
|
8991
|
+
$ref: "#/components/schemas/OpaPolicyResponse"
|
|
8992
|
+
"401":
|
|
8993
|
+
$ref: "#/components/responses/Unauthorized"
|
|
8994
|
+
"404":
|
|
8995
|
+
$ref: "#/components/responses/NotFound"
|
|
8996
|
+
delete:
|
|
8997
|
+
tags: [OPA Policies]
|
|
8998
|
+
summary: Delete an OPA policy
|
|
8999
|
+
description: Delete an OPA policy by ID.
|
|
9000
|
+
operationId: deleteOpaPolicy
|
|
9001
|
+
security:
|
|
9002
|
+
- BearerAuth: []
|
|
9003
|
+
parameters:
|
|
9004
|
+
- name: id
|
|
9005
|
+
in: path
|
|
9006
|
+
required: true
|
|
9007
|
+
schema:
|
|
9008
|
+
type: string
|
|
9009
|
+
format: uuid
|
|
9010
|
+
responses:
|
|
9011
|
+
"204":
|
|
9012
|
+
description: OPA policy deleted
|
|
9013
|
+
"401":
|
|
9014
|
+
$ref: "#/components/responses/Unauthorized"
|
|
9015
|
+
"404":
|
|
9016
|
+
$ref: "#/components/responses/NotFound"
|
|
9017
|
+
|
|
9018
|
+
/v1/org/opa-policies/test:
|
|
9019
|
+
post:
|
|
9020
|
+
tags: [OPA Policies]
|
|
9021
|
+
summary: Test OPA policy evaluation
|
|
9022
|
+
description: Evaluate the organization's OPA policies against a test input.
|
|
9023
|
+
operationId: testOpaPolicy
|
|
9024
|
+
security:
|
|
9025
|
+
- BearerAuth: []
|
|
9026
|
+
requestBody:
|
|
9027
|
+
required: true
|
|
9028
|
+
content:
|
|
9029
|
+
application/json:
|
|
9030
|
+
schema:
|
|
9031
|
+
$ref: "#/components/schemas/OpaPolicyTestRequest"
|
|
9032
|
+
responses:
|
|
9033
|
+
"200":
|
|
9034
|
+
description: Policy evaluation result
|
|
9035
|
+
content:
|
|
9036
|
+
application/json:
|
|
9037
|
+
schema:
|
|
9038
|
+
$ref: "#/components/schemas/OpaPolicyTestResponse"
|
|
9039
|
+
"400":
|
|
9040
|
+
$ref: "#/components/responses/BadRequest"
|
|
9041
|
+
"401":
|
|
9042
|
+
$ref: "#/components/responses/Unauthorized"
|
|
9043
|
+
|
|
9044
|
+
# ---------------------------------------------------------------------------
|
|
9045
|
+
# Sub-Organizations
|
|
9046
|
+
# ---------------------------------------------------------------------------
|
|
9047
|
+
|
|
9048
|
+
/v1/org/sub-orgs:
|
|
9049
|
+
post:
|
|
9050
|
+
tags: [Sub-Organizations]
|
|
9051
|
+
summary: Create a sub-organization
|
|
9052
|
+
description: Create a new sub-organization under the current org.
|
|
9053
|
+
operationId: createSubOrg
|
|
9054
|
+
security:
|
|
9055
|
+
- BearerAuth: []
|
|
9056
|
+
requestBody:
|
|
9057
|
+
required: true
|
|
9058
|
+
content:
|
|
9059
|
+
application/json:
|
|
9060
|
+
schema:
|
|
9061
|
+
$ref: "#/components/schemas/CreateSubOrgRequest"
|
|
9062
|
+
responses:
|
|
9063
|
+
"201":
|
|
9064
|
+
description: Sub-organization created
|
|
9065
|
+
content:
|
|
9066
|
+
application/json:
|
|
9067
|
+
schema:
|
|
9068
|
+
$ref: "#/components/schemas/SubOrgResponse"
|
|
9069
|
+
"400":
|
|
9070
|
+
$ref: "#/components/responses/BadRequest"
|
|
9071
|
+
"401":
|
|
9072
|
+
$ref: "#/components/responses/Unauthorized"
|
|
9073
|
+
"403":
|
|
9074
|
+
$ref: "#/components/responses/Forbidden"
|
|
9075
|
+
get:
|
|
9076
|
+
tags: [Sub-Organizations]
|
|
9077
|
+
summary: List sub-organizations
|
|
9078
|
+
description: List all sub-organizations under the current org.
|
|
9079
|
+
operationId: listSubOrgs
|
|
9080
|
+
security:
|
|
9081
|
+
- BearerAuth: []
|
|
9082
|
+
responses:
|
|
9083
|
+
"200":
|
|
9084
|
+
description: Sub-organizations list
|
|
9085
|
+
content:
|
|
9086
|
+
application/json:
|
|
9087
|
+
schema:
|
|
9088
|
+
$ref: "#/components/schemas/SubOrgListResponse"
|
|
9089
|
+
"401":
|
|
9090
|
+
$ref: "#/components/responses/Unauthorized"
|
|
9091
|
+
|
|
9092
|
+
/v1/org/sub-orgs/{sub_org_id}:
|
|
9093
|
+
get:
|
|
9094
|
+
tags: [Sub-Organizations]
|
|
9095
|
+
summary: Get a sub-organization
|
|
9096
|
+
description: Retrieve a specific sub-organization by ID.
|
|
9097
|
+
operationId: getSubOrg
|
|
9098
|
+
security:
|
|
9099
|
+
- BearerAuth: []
|
|
9100
|
+
parameters:
|
|
9101
|
+
- name: sub_org_id
|
|
9102
|
+
in: path
|
|
9103
|
+
required: true
|
|
9104
|
+
schema:
|
|
9105
|
+
type: string
|
|
9106
|
+
format: uuid
|
|
9107
|
+
responses:
|
|
9108
|
+
"200":
|
|
9109
|
+
description: Sub-organization details
|
|
9110
|
+
content:
|
|
9111
|
+
application/json:
|
|
9112
|
+
schema:
|
|
9113
|
+
$ref: "#/components/schemas/SubOrgResponse"
|
|
9114
|
+
"401":
|
|
9115
|
+
$ref: "#/components/responses/Unauthorized"
|
|
9116
|
+
"404":
|
|
9117
|
+
$ref: "#/components/responses/NotFound"
|
|
9118
|
+
patch:
|
|
9119
|
+
tags: [Sub-Organizations]
|
|
9120
|
+
summary: Update a sub-organization
|
|
9121
|
+
description: Update sub-organization name, description, or billing model.
|
|
9122
|
+
operationId: updateSubOrg
|
|
9123
|
+
security:
|
|
9124
|
+
- BearerAuth: []
|
|
9125
|
+
parameters:
|
|
9126
|
+
- name: sub_org_id
|
|
9127
|
+
in: path
|
|
9128
|
+
required: true
|
|
9129
|
+
schema:
|
|
9130
|
+
type: string
|
|
9131
|
+
format: uuid
|
|
9132
|
+
requestBody:
|
|
9133
|
+
required: true
|
|
9134
|
+
content:
|
|
9135
|
+
application/json:
|
|
9136
|
+
schema:
|
|
9137
|
+
$ref: "#/components/schemas/CreateSubOrgRequest"
|
|
9138
|
+
responses:
|
|
9139
|
+
"200":
|
|
9140
|
+
description: Sub-organization updated
|
|
9141
|
+
content:
|
|
9142
|
+
application/json:
|
|
9143
|
+
schema:
|
|
9144
|
+
$ref: "#/components/schemas/SubOrgResponse"
|
|
9145
|
+
"401":
|
|
9146
|
+
$ref: "#/components/responses/Unauthorized"
|
|
9147
|
+
"404":
|
|
9148
|
+
$ref: "#/components/responses/NotFound"
|
|
9149
|
+
delete:
|
|
9150
|
+
tags: [Sub-Organizations]
|
|
9151
|
+
summary: Archive a sub-organization
|
|
9152
|
+
description: Archive (soft-delete) a sub-organization.
|
|
9153
|
+
operationId: deleteSubOrg
|
|
9154
|
+
security:
|
|
9155
|
+
- BearerAuth: []
|
|
9156
|
+
parameters:
|
|
9157
|
+
- name: sub_org_id
|
|
9158
|
+
in: path
|
|
9159
|
+
required: true
|
|
9160
|
+
schema:
|
|
9161
|
+
type: string
|
|
9162
|
+
format: uuid
|
|
9163
|
+
responses:
|
|
9164
|
+
"204":
|
|
9165
|
+
description: Sub-organization archived
|
|
9166
|
+
"401":
|
|
9167
|
+
$ref: "#/components/responses/Unauthorized"
|
|
9168
|
+
"404":
|
|
9169
|
+
$ref: "#/components/responses/NotFound"
|
|
9170
|
+
|
|
9171
|
+
/v1/org/sub-orgs/{sub_org_id}/users:
|
|
9172
|
+
post:
|
|
9173
|
+
tags: [Sub-Organizations]
|
|
9174
|
+
summary: Add a user to a sub-organization
|
|
9175
|
+
description: Add a user to a sub-organization with a specified role.
|
|
9176
|
+
operationId: addSubOrgUser
|
|
9177
|
+
security:
|
|
9178
|
+
- BearerAuth: []
|
|
9179
|
+
parameters:
|
|
9180
|
+
- name: sub_org_id
|
|
9181
|
+
in: path
|
|
9182
|
+
required: true
|
|
9183
|
+
schema:
|
|
9184
|
+
type: string
|
|
9185
|
+
format: uuid
|
|
9186
|
+
requestBody:
|
|
9187
|
+
required: true
|
|
9188
|
+
content:
|
|
9189
|
+
application/json:
|
|
9190
|
+
schema:
|
|
9191
|
+
$ref: "#/components/schemas/SubOrgAddUserRequest"
|
|
9192
|
+
responses:
|
|
9193
|
+
"201":
|
|
9194
|
+
description: User added to sub-organization
|
|
9195
|
+
"400":
|
|
9196
|
+
$ref: "#/components/responses/BadRequest"
|
|
9197
|
+
"401":
|
|
9198
|
+
$ref: "#/components/responses/Unauthorized"
|
|
9199
|
+
"404":
|
|
9200
|
+
$ref: "#/components/responses/NotFound"
|
|
9201
|
+
|
|
9202
|
+
/v1/org/sub-orgs/{sub_org_id}/permissions:
|
|
9203
|
+
post:
|
|
9204
|
+
tags: [Sub-Organizations]
|
|
9205
|
+
summary: Grant permissions to a sub-organization
|
|
9206
|
+
description: Grant a permission scope to the sub-organization.
|
|
9207
|
+
operationId: grantSubOrgPermission
|
|
9208
|
+
security:
|
|
9209
|
+
- BearerAuth: []
|
|
9210
|
+
parameters:
|
|
9211
|
+
- name: sub_org_id
|
|
9212
|
+
in: path
|
|
9213
|
+
required: true
|
|
9214
|
+
schema:
|
|
9215
|
+
type: string
|
|
9216
|
+
format: uuid
|
|
9217
|
+
requestBody:
|
|
9218
|
+
required: true
|
|
9219
|
+
content:
|
|
9220
|
+
application/json:
|
|
9221
|
+
schema:
|
|
9222
|
+
$ref: "#/components/schemas/SubOrgPermissionRequest"
|
|
9223
|
+
responses:
|
|
9224
|
+
"201":
|
|
9225
|
+
description: Permission granted
|
|
9226
|
+
"400":
|
|
9227
|
+
$ref: "#/components/responses/BadRequest"
|
|
9228
|
+
"401":
|
|
9229
|
+
$ref: "#/components/responses/Unauthorized"
|
|
9230
|
+
"404":
|
|
9231
|
+
$ref: "#/components/responses/NotFound"
|
|
9232
|
+
|
|
9233
|
+
/v1/org/sub-orgs/{sub_org_id}/wallets/generate:
|
|
9234
|
+
post:
|
|
9235
|
+
tags: [Sub-Organizations]
|
|
9236
|
+
summary: Generate wallets for a sub-organization
|
|
9237
|
+
description: Generate treasury wallets for specified chains within the sub-org.
|
|
9238
|
+
operationId: generateSubOrgWallets
|
|
9239
|
+
security:
|
|
9240
|
+
- BearerAuth: []
|
|
9241
|
+
parameters:
|
|
9242
|
+
- name: sub_org_id
|
|
9243
|
+
in: path
|
|
9244
|
+
required: true
|
|
9245
|
+
schema:
|
|
9246
|
+
type: string
|
|
9247
|
+
format: uuid
|
|
9248
|
+
requestBody:
|
|
9249
|
+
required: false
|
|
9250
|
+
content:
|
|
9251
|
+
application/json:
|
|
9252
|
+
schema:
|
|
9253
|
+
$ref: "#/components/schemas/SubOrgGenerateWalletsRequest"
|
|
9254
|
+
responses:
|
|
9255
|
+
"201":
|
|
9256
|
+
description: Wallets generated
|
|
9257
|
+
"401":
|
|
9258
|
+
$ref: "#/components/responses/Unauthorized"
|
|
9259
|
+
"403":
|
|
9260
|
+
$ref: "#/components/responses/Forbidden"
|
|
9261
|
+
"404":
|
|
9262
|
+
$ref: "#/components/responses/NotFound"
|
|
9263
|
+
|
|
9264
|
+
# ---------------------------------------------------------------------------
|
|
9265
|
+
# Portfolio
|
|
9266
|
+
# ---------------------------------------------------------------------------
|
|
9267
|
+
|
|
9268
|
+
/v1/portfolio:
|
|
9269
|
+
get:
|
|
9270
|
+
tags: [Portfolio]
|
|
9271
|
+
summary: Get unified portfolio
|
|
9272
|
+
description: |
|
|
9273
|
+
Returns an aggregated view of all wallet balances (treasury wallets,
|
|
9274
|
+
signing keys, smart accounts) with USD estimates.
|
|
9275
|
+
operationId: getPortfolio
|
|
9276
|
+
security:
|
|
9277
|
+
- BearerAuth: []
|
|
9278
|
+
responses:
|
|
9279
|
+
"200":
|
|
9280
|
+
description: Portfolio summary
|
|
9281
|
+
content:
|
|
9282
|
+
application/json:
|
|
9283
|
+
schema:
|
|
9284
|
+
$ref: "#/components/schemas/PortfolioResponse"
|
|
9285
|
+
"401":
|
|
9286
|
+
$ref: "#/components/responses/Unauthorized"
|
|
9287
|
+
|
|
9288
|
+
# ---------------------------------------------------------------------------
|
|
9289
|
+
# Smart Account Import
|
|
9290
|
+
# ---------------------------------------------------------------------------
|
|
9291
|
+
|
|
9292
|
+
/v1/agents/{agent_id}/smart-accounts/import:
|
|
9293
|
+
post:
|
|
9294
|
+
tags: [Agents]
|
|
9295
|
+
summary: Import an existing Safe smart account
|
|
9296
|
+
description: |
|
|
9297
|
+
Import an existing Safe smart account for an agent. Optionally verifies
|
|
9298
|
+
on-chain that the agent's EOA is a signer on the Safe.
|
|
9299
|
+
operationId: importSmartAccount
|
|
9300
|
+
security:
|
|
9301
|
+
- BearerAuth: []
|
|
9302
|
+
parameters:
|
|
9303
|
+
- $ref: "#/components/parameters/AgentId"
|
|
9304
|
+
requestBody:
|
|
9305
|
+
required: true
|
|
9306
|
+
content:
|
|
9307
|
+
application/json:
|
|
9308
|
+
schema:
|
|
9309
|
+
$ref: "#/components/schemas/ImportSmartAccountRequest"
|
|
9310
|
+
responses:
|
|
9311
|
+
"201":
|
|
9312
|
+
description: Smart account imported
|
|
9313
|
+
"400":
|
|
9314
|
+
$ref: "#/components/responses/BadRequest"
|
|
9315
|
+
"401":
|
|
9316
|
+
$ref: "#/components/responses/Unauthorized"
|
|
9317
|
+
"403":
|
|
9318
|
+
$ref: "#/components/responses/Forbidden"
|
|
9319
|
+
|
|
9320
|
+
# =============================================================================
|
|
9321
|
+
# COMPONENTS
|
|
9322
|
+
# =============================================================================
|
|
9323
|
+
|
|
9324
|
+
components:
|
|
9325
|
+
securitySchemes:
|
|
9326
|
+
BearerAuth:
|
|
9327
|
+
type: http
|
|
9328
|
+
scheme: bearer
|
|
9329
|
+
bearerFormat: JWT
|
|
9330
|
+
ApiKeyAuth:
|
|
9331
|
+
type: http
|
|
9332
|
+
scheme: bearer
|
|
9333
|
+
description: 1ck_ prefixed API key used as Bearer token
|
|
9334
|
+
|
|
9335
|
+
parameters:
|
|
9336
|
+
VaultId:
|
|
9337
|
+
name: vault_id
|
|
9338
|
+
in: path
|
|
9339
|
+
required: true
|
|
9340
|
+
schema:
|
|
9341
|
+
type: string
|
|
9342
|
+
format: uuid
|
|
9343
|
+
SecretPath:
|
|
9344
|
+
name: path
|
|
9345
|
+
in: path
|
|
9346
|
+
required: true
|
|
9347
|
+
schema:
|
|
9348
|
+
type: string
|
|
9349
|
+
description: Secret path (e.g. "db/credentials")
|
|
9350
|
+
AgentId:
|
|
9351
|
+
name: agent_id
|
|
9352
|
+
in: path
|
|
9353
|
+
required: true
|
|
9354
|
+
schema:
|
|
9355
|
+
type: string
|
|
9356
|
+
format: uuid
|
|
9357
|
+
PolicyId:
|
|
9358
|
+
name: policy_id
|
|
9359
|
+
in: path
|
|
9360
|
+
required: true
|
|
9361
|
+
schema:
|
|
9362
|
+
type: string
|
|
9363
|
+
format: uuid
|
|
9364
|
+
CardId:
|
|
9365
|
+
name: card_id
|
|
9366
|
+
in: path
|
|
9367
|
+
required: true
|
|
9368
|
+
schema:
|
|
9369
|
+
type: string
|
|
9370
|
+
format: uuid
|
|
9371
|
+
IncludeSignedTx:
|
|
9372
|
+
name: include_signed_tx
|
|
9373
|
+
in: query
|
|
9374
|
+
required: false
|
|
9375
|
+
description: >
|
|
9376
|
+
Set to `true` or `1` to include the raw signed transaction hex in the response.
|
|
9377
|
+
Omitted by default to reduce key exfiltration risk. Only the literal values "true" or "1" enable inclusion; any other value or omission returns responses without signed_tx.
|
|
9378
|
+
Applies to GET /v1/agents/{agent_id}/transactions and GET /v1/agents/{agent_id}/transactions/{tx_id}.
|
|
9379
|
+
schema:
|
|
9380
|
+
type: boolean
|
|
9381
|
+
default: false
|
|
9382
|
+
example: false
|
|
9383
|
+
|
|
9384
|
+
responses:
|
|
9385
|
+
BadRequest:
|
|
9386
|
+
description: Invalid request
|
|
9387
|
+
content:
|
|
9388
|
+
application/json:
|
|
9389
|
+
schema:
|
|
9390
|
+
$ref: "#/components/schemas/ProblemDetails"
|
|
9391
|
+
Unauthorized:
|
|
9392
|
+
description: Authentication required or invalid
|
|
9393
|
+
content:
|
|
9394
|
+
application/json:
|
|
9395
|
+
schema:
|
|
9396
|
+
$ref: "#/components/schemas/ProblemDetails"
|
|
9397
|
+
Forbidden:
|
|
9398
|
+
description: Insufficient permissions
|
|
9399
|
+
content:
|
|
9400
|
+
application/json:
|
|
9401
|
+
schema:
|
|
9402
|
+
$ref: "#/components/schemas/ProblemDetails"
|
|
9403
|
+
NotFound:
|
|
9404
|
+
description: Resource not found
|
|
9405
|
+
content:
|
|
9406
|
+
application/json:
|
|
9407
|
+
schema:
|
|
9408
|
+
$ref: "#/components/schemas/ProblemDetails"
|
|
9409
|
+
PaymentRequired:
|
|
9410
|
+
description: x402 payment required
|
|
9411
|
+
content:
|
|
9412
|
+
application/json:
|
|
9413
|
+
schema:
|
|
9414
|
+
$ref: "#/components/schemas/PaymentRequirement"
|
|
9415
|
+
Conflict:
|
|
9416
|
+
description: Resource already exists or conflict
|
|
9417
|
+
content:
|
|
9418
|
+
application/json:
|
|
9419
|
+
schema:
|
|
9420
|
+
$ref: "#/components/schemas/ProblemDetails"
|
|
9421
|
+
|
|
9422
|
+
schemas:
|
|
9423
|
+
OrderCardRequest:
|
|
9424
|
+
type: object
|
|
9425
|
+
required: [kind, amount_usd]
|
|
9426
|
+
properties:
|
|
9427
|
+
kind:
|
|
9428
|
+
type: string
|
|
9429
|
+
enum: [prepaid, gift_card]
|
|
9430
|
+
amount_usd:
|
|
9431
|
+
type: string
|
|
9432
|
+
description: USD amount to load onto the card.
|
|
8819
9433
|
example: "25.00"
|
|
8820
9434
|
laso_server_id:
|
|
8821
9435
|
type: string
|
|
@@ -9672,9 +10286,20 @@ components:
|
|
|
9672
10286
|
conditions:
|
|
9673
10287
|
type: object
|
|
9674
10288
|
additionalProperties: true
|
|
9675
|
-
expires_at:
|
|
9676
|
-
type: string
|
|
9677
|
-
format: date-time
|
|
10289
|
+
expires_at:
|
|
10290
|
+
type: string
|
|
10291
|
+
format: date-time
|
|
10292
|
+
effect:
|
|
10293
|
+
type: string
|
|
10294
|
+
enum: [allow, deny]
|
|
10295
|
+
default: allow
|
|
10296
|
+
priority:
|
|
10297
|
+
type: integer
|
|
10298
|
+
minimum: 0
|
|
10299
|
+
default: 0
|
|
10300
|
+
attribute_conditions:
|
|
10301
|
+
type: object
|
|
10302
|
+
additionalProperties: true
|
|
9678
10303
|
|
|
9679
10304
|
UpdatePolicyRequest:
|
|
9680
10305
|
type: object
|
|
@@ -9689,6 +10314,17 @@ components:
|
|
|
9689
10314
|
expires_at:
|
|
9690
10315
|
type: string
|
|
9691
10316
|
format: date-time
|
|
10317
|
+
effect:
|
|
10318
|
+
type: string
|
|
10319
|
+
enum: [allow, deny]
|
|
10320
|
+
default: allow
|
|
10321
|
+
priority:
|
|
10322
|
+
type: integer
|
|
10323
|
+
minimum: 0
|
|
10324
|
+
default: 0
|
|
10325
|
+
attribute_conditions:
|
|
10326
|
+
type: object
|
|
10327
|
+
additionalProperties: true
|
|
9692
10328
|
|
|
9693
10329
|
PolicyResponse:
|
|
9694
10330
|
type: object
|
|
@@ -9732,6 +10368,17 @@ components:
|
|
|
9732
10368
|
created_at:
|
|
9733
10369
|
type: string
|
|
9734
10370
|
format: date-time
|
|
10371
|
+
effect:
|
|
10372
|
+
type: string
|
|
10373
|
+
enum: [allow, deny]
|
|
10374
|
+
default: allow
|
|
10375
|
+
priority:
|
|
10376
|
+
type: integer
|
|
10377
|
+
minimum: 0
|
|
10378
|
+
default: 0
|
|
10379
|
+
attribute_conditions:
|
|
10380
|
+
type: object
|
|
10381
|
+
additionalProperties: true
|
|
9735
10382
|
|
|
9736
10383
|
PolicyListResponse:
|
|
9737
10384
|
type: object
|
|
@@ -12013,6 +12660,14 @@ components:
|
|
|
12013
12660
|
$ref: "#/components/schemas/LlmCreditBalance"
|
|
12014
12661
|
billing_cycle_usage:
|
|
12015
12662
|
$ref: "#/components/schemas/LlmBillingCycleUsage"
|
|
12663
|
+
active_subscription_count:
|
|
12664
|
+
type: integer
|
|
12665
|
+
subscription_ids:
|
|
12666
|
+
type: array
|
|
12667
|
+
items:
|
|
12668
|
+
type: string
|
|
12669
|
+
warning:
|
|
12670
|
+
type: string
|
|
12016
12671
|
|
|
12017
12672
|
LlmCheckoutResponse:
|
|
12018
12673
|
type: object
|
|
@@ -12020,6 +12675,25 @@ components:
|
|
|
12020
12675
|
checkout_url:
|
|
12021
12676
|
type: string
|
|
12022
12677
|
format: uri
|
|
12678
|
+
already_subscribed:
|
|
12679
|
+
type: boolean
|
|
12680
|
+
subscription_id:
|
|
12681
|
+
type: string
|
|
12682
|
+
|
|
12683
|
+
LlmCancelDuplicatesResponse:
|
|
12684
|
+
type: object
|
|
12685
|
+
required: [cancelled_count, cancelled_subscription_ids, remaining_subscription_ids]
|
|
12686
|
+
properties:
|
|
12687
|
+
cancelled_count:
|
|
12688
|
+
type: integer
|
|
12689
|
+
cancelled_subscription_ids:
|
|
12690
|
+
type: array
|
|
12691
|
+
items:
|
|
12692
|
+
type: string
|
|
12693
|
+
remaining_subscription_ids:
|
|
12694
|
+
type: array
|
|
12695
|
+
items:
|
|
12696
|
+
type: string
|
|
12023
12697
|
|
|
12024
12698
|
LlmDisableResponse:
|
|
12025
12699
|
type: object
|
|
@@ -12630,7 +13304,7 @@ components:
|
|
|
12630
13304
|
description: Destination address (0x-prefixed)
|
|
12631
13305
|
value_wei:
|
|
12632
13306
|
type: string
|
|
12633
|
-
description: Value in wei
|
|
13307
|
+
description: Value in wei (or major-unit decimal string for non-EVM)
|
|
12634
13308
|
data:
|
|
12635
13309
|
type: string
|
|
12636
13310
|
description: Hex-encoded calldata (optional)
|
|
@@ -12641,6 +13315,30 @@ components:
|
|
|
12641
13315
|
type: boolean
|
|
12642
13316
|
description: When true, submits as a gasless (ERC-4337) transaction via Pimlico paymaster. The paymaster sponsors the gas cost.
|
|
12643
13317
|
default: false
|
|
13318
|
+
token_mint:
|
|
13319
|
+
type: string
|
|
13320
|
+
description: Token contract address / mint (ERC-20, SPL, TRC-20, Cardano policy_id.asset_name)
|
|
13321
|
+
memo:
|
|
13322
|
+
type: string
|
|
13323
|
+
description: Transaction memo (Solana Memo Program, XRP Memos, Tron extra_data)
|
|
13324
|
+
destination_tag:
|
|
13325
|
+
type: integer
|
|
13326
|
+
description: XRP destination tag
|
|
13327
|
+
fee_rate_sat_per_vbyte:
|
|
13328
|
+
type: integer
|
|
13329
|
+
description: Bitcoin fee rate in sat/vbyte
|
|
13330
|
+
xrpl_tx_json:
|
|
13331
|
+
type: object
|
|
13332
|
+
description: Raw XRPL transaction JSON for advanced XRP transaction types
|
|
13333
|
+
fee_limit_sun:
|
|
13334
|
+
type: integer
|
|
13335
|
+
description: Tron fee limit in sun
|
|
13336
|
+
token_decimals:
|
|
13337
|
+
type: integer
|
|
13338
|
+
description: Token decimals (required for non-EVM token transfers when not in known_tokens)
|
|
13339
|
+
ttl:
|
|
13340
|
+
type: integer
|
|
13341
|
+
description: Cardano transaction TTL (slot number)
|
|
12644
13342
|
|
|
12645
13343
|
TreasuryWalletSendResponse:
|
|
12646
13344
|
type: object
|
|
@@ -15546,3 +16244,296 @@ components:
|
|
|
15546
16244
|
type: array
|
|
15547
16245
|
items:
|
|
15548
16246
|
$ref: "#/components/schemas/OAuthAppCredentialResponse"
|
|
16247
|
+
|
|
16248
|
+
# -------------------------------------------------------------------
|
|
16249
|
+
# Key Import
|
|
16250
|
+
# -------------------------------------------------------------------
|
|
16251
|
+
|
|
16252
|
+
ImportKeyRequest:
|
|
16253
|
+
type: object
|
|
16254
|
+
required: [private_key]
|
|
16255
|
+
properties:
|
|
16256
|
+
private_key:
|
|
16257
|
+
type: string
|
|
16258
|
+
description: The private key to import
|
|
16259
|
+
format:
|
|
16260
|
+
type: string
|
|
16261
|
+
enum: [hex, base64, wif]
|
|
16262
|
+
description: Key format (default hex)
|
|
16263
|
+
|
|
16264
|
+
# -------------------------------------------------------------------
|
|
16265
|
+
# Cedar Policies
|
|
16266
|
+
# -------------------------------------------------------------------
|
|
16267
|
+
|
|
16268
|
+
CreateCedarPolicyRequest:
|
|
16269
|
+
type: object
|
|
16270
|
+
required: [policy_text]
|
|
16271
|
+
properties:
|
|
16272
|
+
policy_text:
|
|
16273
|
+
type: string
|
|
16274
|
+
description: Cedar policy text
|
|
16275
|
+
description:
|
|
16276
|
+
type: string
|
|
16277
|
+
|
|
16278
|
+
CedarPolicyResponse:
|
|
16279
|
+
type: object
|
|
16280
|
+
properties:
|
|
16281
|
+
id:
|
|
16282
|
+
type: string
|
|
16283
|
+
format: uuid
|
|
16284
|
+
policy_text:
|
|
16285
|
+
type: string
|
|
16286
|
+
description:
|
|
16287
|
+
type: string
|
|
16288
|
+
created_at:
|
|
16289
|
+
type: string
|
|
16290
|
+
format: date-time
|
|
16291
|
+
created_by:
|
|
16292
|
+
type: string
|
|
16293
|
+
format: uuid
|
|
16294
|
+
|
|
16295
|
+
CedarPolicyListResponse:
|
|
16296
|
+
type: object
|
|
16297
|
+
properties:
|
|
16298
|
+
policies:
|
|
16299
|
+
type: array
|
|
16300
|
+
items:
|
|
16301
|
+
$ref: "#/components/schemas/CedarPolicyResponse"
|
|
16302
|
+
|
|
16303
|
+
CedarPolicyTestRequest:
|
|
16304
|
+
type: object
|
|
16305
|
+
required: [principal, action, resource]
|
|
16306
|
+
properties:
|
|
16307
|
+
principal:
|
|
16308
|
+
type: string
|
|
16309
|
+
action:
|
|
16310
|
+
type: string
|
|
16311
|
+
resource:
|
|
16312
|
+
type: string
|
|
16313
|
+
context:
|
|
16314
|
+
type: object
|
|
16315
|
+
|
|
16316
|
+
CedarPolicyTestResponse:
|
|
16317
|
+
type: object
|
|
16318
|
+
properties:
|
|
16319
|
+
decision:
|
|
16320
|
+
type: string
|
|
16321
|
+
enum: [allow, deny]
|
|
16322
|
+
reasons:
|
|
16323
|
+
type: array
|
|
16324
|
+
items:
|
|
16325
|
+
type: string
|
|
16326
|
+
|
|
16327
|
+
# -------------------------------------------------------------------
|
|
16328
|
+
# OPA Policies
|
|
16329
|
+
# -------------------------------------------------------------------
|
|
16330
|
+
|
|
16331
|
+
CreateOpaPolicyRequest:
|
|
16332
|
+
type: object
|
|
16333
|
+
required: [rego_module]
|
|
16334
|
+
properties:
|
|
16335
|
+
rego_module:
|
|
16336
|
+
type: string
|
|
16337
|
+
description: OPA Rego module source
|
|
16338
|
+
description:
|
|
16339
|
+
type: string
|
|
16340
|
+
data:
|
|
16341
|
+
type: object
|
|
16342
|
+
description: Static data document for the policy
|
|
16343
|
+
|
|
16344
|
+
OpaPolicyResponse:
|
|
16345
|
+
type: object
|
|
16346
|
+
properties:
|
|
16347
|
+
id:
|
|
16348
|
+
type: string
|
|
16349
|
+
format: uuid
|
|
16350
|
+
rego_module:
|
|
16351
|
+
type: string
|
|
16352
|
+
description:
|
|
16353
|
+
type: string
|
|
16354
|
+
data:
|
|
16355
|
+
type: object
|
|
16356
|
+
created_at:
|
|
16357
|
+
type: string
|
|
16358
|
+
format: date-time
|
|
16359
|
+
created_by:
|
|
16360
|
+
type: string
|
|
16361
|
+
format: uuid
|
|
16362
|
+
|
|
16363
|
+
OpaPolicyListResponse:
|
|
16364
|
+
type: object
|
|
16365
|
+
properties:
|
|
16366
|
+
policies:
|
|
16367
|
+
type: array
|
|
16368
|
+
items:
|
|
16369
|
+
$ref: "#/components/schemas/OpaPolicyResponse"
|
|
16370
|
+
|
|
16371
|
+
OpaPolicyTestRequest:
|
|
16372
|
+
type: object
|
|
16373
|
+
required: [input]
|
|
16374
|
+
properties:
|
|
16375
|
+
input:
|
|
16376
|
+
type: object
|
|
16377
|
+
description: Input document for policy evaluation
|
|
16378
|
+
data:
|
|
16379
|
+
type: object
|
|
16380
|
+
description: Optional data override
|
|
16381
|
+
|
|
16382
|
+
OpaPolicyTestResponse:
|
|
16383
|
+
type: object
|
|
16384
|
+
properties:
|
|
16385
|
+
result:
|
|
16386
|
+
type: object
|
|
16387
|
+
decision:
|
|
16388
|
+
type: string
|
|
16389
|
+
enum: [allow, deny]
|
|
16390
|
+
|
|
16391
|
+
# -------------------------------------------------------------------
|
|
16392
|
+
# Sub-Organizations
|
|
16393
|
+
# -------------------------------------------------------------------
|
|
16394
|
+
|
|
16395
|
+
CreateSubOrgRequest:
|
|
16396
|
+
type: object
|
|
16397
|
+
required: [name]
|
|
16398
|
+
properties:
|
|
16399
|
+
name:
|
|
16400
|
+
type: string
|
|
16401
|
+
minLength: 1
|
|
16402
|
+
maxLength: 128
|
|
16403
|
+
description:
|
|
16404
|
+
type: string
|
|
16405
|
+
billing_model:
|
|
16406
|
+
type: string
|
|
16407
|
+
enum: [inherit, independent]
|
|
16408
|
+
default: inherit
|
|
16409
|
+
|
|
16410
|
+
SubOrgResponse:
|
|
16411
|
+
type: object
|
|
16412
|
+
properties:
|
|
16413
|
+
id:
|
|
16414
|
+
type: string
|
|
16415
|
+
format: uuid
|
|
16416
|
+
parent_org_id:
|
|
16417
|
+
type: string
|
|
16418
|
+
format: uuid
|
|
16419
|
+
name:
|
|
16420
|
+
type: string
|
|
16421
|
+
description:
|
|
16422
|
+
type: string
|
|
16423
|
+
billing_model:
|
|
16424
|
+
type: string
|
|
16425
|
+
status:
|
|
16426
|
+
type: string
|
|
16427
|
+
enum: [active, archived]
|
|
16428
|
+
created_at:
|
|
16429
|
+
type: string
|
|
16430
|
+
format: date-time
|
|
16431
|
+
|
|
16432
|
+
SubOrgListResponse:
|
|
16433
|
+
type: object
|
|
16434
|
+
properties:
|
|
16435
|
+
sub_orgs:
|
|
16436
|
+
type: array
|
|
16437
|
+
items:
|
|
16438
|
+
$ref: "#/components/schemas/SubOrgResponse"
|
|
16439
|
+
|
|
16440
|
+
SubOrgPermissionRequest:
|
|
16441
|
+
type: object
|
|
16442
|
+
required: [permission]
|
|
16443
|
+
properties:
|
|
16444
|
+
permission:
|
|
16445
|
+
type: string
|
|
16446
|
+
description: "Permission to grant (e.g. vaults:read, agents:write)"
|
|
16447
|
+
resource_ids:
|
|
16448
|
+
type: array
|
|
16449
|
+
items:
|
|
16450
|
+
type: string
|
|
16451
|
+
format: uuid
|
|
16452
|
+
|
|
16453
|
+
SubOrgAddUserRequest:
|
|
16454
|
+
type: object
|
|
16455
|
+
required: [user_id]
|
|
16456
|
+
properties:
|
|
16457
|
+
user_id:
|
|
16458
|
+
type: string
|
|
16459
|
+
format: uuid
|
|
16460
|
+
role:
|
|
16461
|
+
type: string
|
|
16462
|
+
enum: [admin, member, viewer]
|
|
16463
|
+
default: member
|
|
16464
|
+
|
|
16465
|
+
SubOrgGenerateWalletsRequest:
|
|
16466
|
+
type: object
|
|
16467
|
+
properties:
|
|
16468
|
+
chains:
|
|
16469
|
+
type: array
|
|
16470
|
+
items:
|
|
16471
|
+
type: string
|
|
16472
|
+
|
|
16473
|
+
# -------------------------------------------------------------------
|
|
16474
|
+
# Portfolio
|
|
16475
|
+
# -------------------------------------------------------------------
|
|
16476
|
+
|
|
16477
|
+
PortfolioResponse:
|
|
16478
|
+
type: object
|
|
16479
|
+
properties:
|
|
16480
|
+
wallets:
|
|
16481
|
+
type: array
|
|
16482
|
+
items:
|
|
16483
|
+
$ref: "#/components/schemas/PortfolioWalletEntry"
|
|
16484
|
+
total_usd_estimate:
|
|
16485
|
+
type: string
|
|
16486
|
+
|
|
16487
|
+
PortfolioWalletEntry:
|
|
16488
|
+
type: object
|
|
16489
|
+
properties:
|
|
16490
|
+
wallet_type:
|
|
16491
|
+
type: string
|
|
16492
|
+
enum: [treasury, signing_key, smart_account]
|
|
16493
|
+
chain:
|
|
16494
|
+
type: string
|
|
16495
|
+
address:
|
|
16496
|
+
type: string
|
|
16497
|
+
native_balance:
|
|
16498
|
+
type: string
|
|
16499
|
+
native_balance_usd:
|
|
16500
|
+
type: string
|
|
16501
|
+
tokens:
|
|
16502
|
+
type: array
|
|
16503
|
+
items:
|
|
16504
|
+
$ref: "#/components/schemas/PortfolioTokenBalance"
|
|
16505
|
+
|
|
16506
|
+
PortfolioTokenBalance:
|
|
16507
|
+
type: object
|
|
16508
|
+
properties:
|
|
16509
|
+
contract_address:
|
|
16510
|
+
type: string
|
|
16511
|
+
symbol:
|
|
16512
|
+
type: string
|
|
16513
|
+
name:
|
|
16514
|
+
type: string
|
|
16515
|
+
balance:
|
|
16516
|
+
type: string
|
|
16517
|
+
balance_usd:
|
|
16518
|
+
type: string
|
|
16519
|
+
decimals:
|
|
16520
|
+
type: integer
|
|
16521
|
+
|
|
16522
|
+
# -------------------------------------------------------------------
|
|
16523
|
+
# Smart Account Import
|
|
16524
|
+
# -------------------------------------------------------------------
|
|
16525
|
+
|
|
16526
|
+
ImportSmartAccountRequest:
|
|
16527
|
+
type: object
|
|
16528
|
+
required: [chain, chain_id, safe_address]
|
|
16529
|
+
properties:
|
|
16530
|
+
chain:
|
|
16531
|
+
type: string
|
|
16532
|
+
chain_id:
|
|
16533
|
+
type: integer
|
|
16534
|
+
safe_address:
|
|
16535
|
+
type: string
|
|
16536
|
+
verify:
|
|
16537
|
+
type: boolean
|
|
16538
|
+
default: true
|
|
16539
|
+
description: Verify on-chain Safe ownership
|