@1claw/openapi-spec 0.19.0 → 0.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/openapi.json +204 -1
- package/openapi.yaml +145 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -40,7 +40,7 @@ openapi-generator generate \
|
|
|
40
40
|
import spec from "@1claw/openapi-spec/openapi.json";
|
|
41
41
|
```
|
|
42
42
|
|
|
43
|
-
## What's in the spec (v0.19.
|
|
43
|
+
## What's in the spec (v0.19.x)
|
|
44
44
|
|
|
45
45
|
- **Auth — agent JWT** — `POST /v1/auth/agent-token` documents optional JWT claim **`shroud_config`** when the agent has Shroud enabled (mirrors DB; consumed by Shroud PolicyEngine on LLM requests). Re-exchange after changing agent Shroud settings.
|
|
46
46
|
- **Auth — password reset** — `POST /v1/auth/forgot-password`, `POST /v1/auth/reset-password` (public; anti-enumeration on forgot)
|
|
@@ -48,7 +48,7 @@ import spec from "@1claw/openapi-spec/openapi.json";
|
|
|
48
48
|
- **Treasury** — Safe multisig treasuries: `POST/GET /v1/treasury`, `GET/PATCH/DELETE /v1/treasury/{id}`, signers, agent access requests (`requests[]` on list)
|
|
49
49
|
- **Vaults** — CRUD, CMEK enable/disable, key rotation with job tracking, MPC enable/disable (`POST /v1/vaults/{id}/mpc`, `DELETE /v1/vaults/{id}/mpc`)
|
|
50
50
|
- **Secrets** — CRUD, versioning, CMEK-encrypted flag, `client_share` in responses (MPC vaults)
|
|
51
|
-
- **Agents** — CRUD with `auth_method` (api_key, mtls, oidc_client_credentials), auto-generated SSH keypairs, `token_ttl_seconds`, `vault_ids`, Intents API, transaction guardrails
|
|
51
|
+
- **Agents** — CRUD with `auth_method` (api_key, mtls, oidc_client_credentials), auto-generated SSH keypairs, `token_ttl_seconds`, `vault_ids`, Intents API, transaction guardrails (`tx_to_allowlist`, `tx_max_value_eth`, `tx_daily_limit_eth`, `tx_allowed_chains`); **`GET /v1/agents/{id}`** includes **`tx_spent_today_eth`** (rolling UTC-day spend from recorded txs) for clients such as **Shroud** that enforce the daily cap alongside per-tx limits
|
|
52
52
|
- **Policies** — Glob-based access control
|
|
53
53
|
- **Sharing** — Links, user/agent shares, accept/decline
|
|
54
54
|
- **Billing** — Subscriptions, credits, x402, LLM token billing (see above)
|
package/openapi.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"openapi": "3.1.0",
|
|
3
3
|
"info": {
|
|
4
4
|
"title": "1Claw API",
|
|
5
|
-
"version": "2.
|
|
5
|
+
"version": "2.10.0",
|
|
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.\n\nAll endpoints require JWT Bearer authentication unless marked with\n`security: []`.\n",
|
|
7
7
|
"contact": {
|
|
8
8
|
"email": "ops@1claw.xyz"
|
|
@@ -952,6 +952,205 @@
|
|
|
952
952
|
}
|
|
953
953
|
}
|
|
954
954
|
},
|
|
955
|
+
"/v1/auth/export-data": {
|
|
956
|
+
"post": {
|
|
957
|
+
"tags": [
|
|
958
|
+
"Authentication"
|
|
959
|
+
],
|
|
960
|
+
"summary": "Export user data (GDPR)",
|
|
961
|
+
"description": "Returns a full export of the authenticated user's data including\nprofile, vaults, agents, secrets metadata, and policies. Intended\nfor GDPR data-portability requests. Only available to human users\n(not agents).\n",
|
|
962
|
+
"operationId": "exportUserData",
|
|
963
|
+
"responses": {
|
|
964
|
+
"200": {
|
|
965
|
+
"description": "User data export",
|
|
966
|
+
"content": {
|
|
967
|
+
"application/json": {
|
|
968
|
+
"schema": {
|
|
969
|
+
"type": "object",
|
|
970
|
+
"required": [
|
|
971
|
+
"export_version",
|
|
972
|
+
"exported_at",
|
|
973
|
+
"user",
|
|
974
|
+
"vaults",
|
|
975
|
+
"agents",
|
|
976
|
+
"secrets_metadata",
|
|
977
|
+
"policies"
|
|
978
|
+
],
|
|
979
|
+
"properties": {
|
|
980
|
+
"export_version": {
|
|
981
|
+
"type": "string",
|
|
982
|
+
"example": "1.0"
|
|
983
|
+
},
|
|
984
|
+
"exported_at": {
|
|
985
|
+
"type": "string",
|
|
986
|
+
"format": "date-time"
|
|
987
|
+
},
|
|
988
|
+
"user": {
|
|
989
|
+
"type": "object",
|
|
990
|
+
"required": [
|
|
991
|
+
"id",
|
|
992
|
+
"email",
|
|
993
|
+
"display_name",
|
|
994
|
+
"auth_method",
|
|
995
|
+
"created_at"
|
|
996
|
+
],
|
|
997
|
+
"properties": {
|
|
998
|
+
"id": {
|
|
999
|
+
"type": "string",
|
|
1000
|
+
"format": "uuid"
|
|
1001
|
+
},
|
|
1002
|
+
"email": {
|
|
1003
|
+
"type": "string",
|
|
1004
|
+
"format": "email"
|
|
1005
|
+
},
|
|
1006
|
+
"display_name": {
|
|
1007
|
+
"type": "string"
|
|
1008
|
+
},
|
|
1009
|
+
"auth_method": {
|
|
1010
|
+
"type": "string"
|
|
1011
|
+
},
|
|
1012
|
+
"created_at": {
|
|
1013
|
+
"type": "string",
|
|
1014
|
+
"format": "date-time"
|
|
1015
|
+
}
|
|
1016
|
+
}
|
|
1017
|
+
},
|
|
1018
|
+
"vaults": {
|
|
1019
|
+
"type": "array",
|
|
1020
|
+
"items": {
|
|
1021
|
+
"type": "object",
|
|
1022
|
+
"required": [
|
|
1023
|
+
"id",
|
|
1024
|
+
"name",
|
|
1025
|
+
"created_at"
|
|
1026
|
+
],
|
|
1027
|
+
"properties": {
|
|
1028
|
+
"id": {
|
|
1029
|
+
"type": "string",
|
|
1030
|
+
"format": "uuid"
|
|
1031
|
+
},
|
|
1032
|
+
"name": {
|
|
1033
|
+
"type": "string"
|
|
1034
|
+
},
|
|
1035
|
+
"created_at": {
|
|
1036
|
+
"type": "string",
|
|
1037
|
+
"format": "date-time"
|
|
1038
|
+
}
|
|
1039
|
+
}
|
|
1040
|
+
}
|
|
1041
|
+
},
|
|
1042
|
+
"agents": {
|
|
1043
|
+
"type": "array",
|
|
1044
|
+
"items": {
|
|
1045
|
+
"type": "object",
|
|
1046
|
+
"required": [
|
|
1047
|
+
"id",
|
|
1048
|
+
"name",
|
|
1049
|
+
"created_at"
|
|
1050
|
+
],
|
|
1051
|
+
"properties": {
|
|
1052
|
+
"id": {
|
|
1053
|
+
"type": "string",
|
|
1054
|
+
"format": "uuid"
|
|
1055
|
+
},
|
|
1056
|
+
"name": {
|
|
1057
|
+
"type": "string"
|
|
1058
|
+
},
|
|
1059
|
+
"created_at": {
|
|
1060
|
+
"type": "string",
|
|
1061
|
+
"format": "date-time"
|
|
1062
|
+
}
|
|
1063
|
+
}
|
|
1064
|
+
}
|
|
1065
|
+
},
|
|
1066
|
+
"secrets_metadata": {
|
|
1067
|
+
"type": "array",
|
|
1068
|
+
"items": {
|
|
1069
|
+
"type": "object",
|
|
1070
|
+
"required": [
|
|
1071
|
+
"vault_id",
|
|
1072
|
+
"path",
|
|
1073
|
+
"type",
|
|
1074
|
+
"version",
|
|
1075
|
+
"created_at"
|
|
1076
|
+
],
|
|
1077
|
+
"properties": {
|
|
1078
|
+
"vault_id": {
|
|
1079
|
+
"type": "string",
|
|
1080
|
+
"format": "uuid"
|
|
1081
|
+
},
|
|
1082
|
+
"path": {
|
|
1083
|
+
"type": "string"
|
|
1084
|
+
},
|
|
1085
|
+
"type": {
|
|
1086
|
+
"type": "string"
|
|
1087
|
+
},
|
|
1088
|
+
"version": {
|
|
1089
|
+
"type": "integer"
|
|
1090
|
+
},
|
|
1091
|
+
"created_at": {
|
|
1092
|
+
"type": "string",
|
|
1093
|
+
"format": "date-time"
|
|
1094
|
+
}
|
|
1095
|
+
}
|
|
1096
|
+
}
|
|
1097
|
+
},
|
|
1098
|
+
"policies": {
|
|
1099
|
+
"type": "array",
|
|
1100
|
+
"items": {
|
|
1101
|
+
"type": "object",
|
|
1102
|
+
"required": [
|
|
1103
|
+
"id",
|
|
1104
|
+
"vault_id",
|
|
1105
|
+
"principal_type",
|
|
1106
|
+
"principal_id",
|
|
1107
|
+
"secret_path_pattern",
|
|
1108
|
+
"permissions",
|
|
1109
|
+
"created_at"
|
|
1110
|
+
],
|
|
1111
|
+
"properties": {
|
|
1112
|
+
"id": {
|
|
1113
|
+
"type": "string",
|
|
1114
|
+
"format": "uuid"
|
|
1115
|
+
},
|
|
1116
|
+
"vault_id": {
|
|
1117
|
+
"type": "string",
|
|
1118
|
+
"format": "uuid"
|
|
1119
|
+
},
|
|
1120
|
+
"principal_type": {
|
|
1121
|
+
"type": "string"
|
|
1122
|
+
},
|
|
1123
|
+
"principal_id": {
|
|
1124
|
+
"type": "string",
|
|
1125
|
+
"format": "uuid"
|
|
1126
|
+
},
|
|
1127
|
+
"secret_path_pattern": {
|
|
1128
|
+
"type": "string"
|
|
1129
|
+
},
|
|
1130
|
+
"permissions": {
|
|
1131
|
+
"type": "array",
|
|
1132
|
+
"items": {
|
|
1133
|
+
"type": "string"
|
|
1134
|
+
}
|
|
1135
|
+
},
|
|
1136
|
+
"created_at": {
|
|
1137
|
+
"type": "string",
|
|
1138
|
+
"format": "date-time"
|
|
1139
|
+
}
|
|
1140
|
+
}
|
|
1141
|
+
}
|
|
1142
|
+
}
|
|
1143
|
+
}
|
|
1144
|
+
}
|
|
1145
|
+
}
|
|
1146
|
+
}
|
|
1147
|
+
},
|
|
1148
|
+
"403": {
|
|
1149
|
+
"$ref": "#/components/responses/Forbidden"
|
|
1150
|
+
}
|
|
1151
|
+
}
|
|
1152
|
+
}
|
|
1153
|
+
},
|
|
955
1154
|
"/v1/vaults": {
|
|
956
1155
|
"post": {
|
|
957
1156
|
"tags": [
|
|
@@ -5803,6 +6002,10 @@
|
|
|
5803
6002
|
"tx_daily_limit_eth": {
|
|
5804
6003
|
"type": "string"
|
|
5805
6004
|
},
|
|
6005
|
+
"tx_spent_today_eth": {
|
|
6006
|
+
"type": "string",
|
|
6007
|
+
"description": "ETH value already spent today (UTC) from recorded transactions; used with daily limit guardrails"
|
|
6008
|
+
},
|
|
5806
6009
|
"tx_allowed_chains": {
|
|
5807
6010
|
"type": "array",
|
|
5808
6011
|
"items": {
|
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.10.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,
|
|
@@ -626,6 +626,147 @@ paths:
|
|
|
626
626
|
"404":
|
|
627
627
|
$ref: "#/components/responses/NotFound"
|
|
628
628
|
|
|
629
|
+
/v1/auth/export-data:
|
|
630
|
+
post:
|
|
631
|
+
tags: [Authentication]
|
|
632
|
+
summary: Export user data (GDPR)
|
|
633
|
+
description: |
|
|
634
|
+
Returns a full export of the authenticated user's data including
|
|
635
|
+
profile, vaults, agents, secrets metadata, and policies. Intended
|
|
636
|
+
for GDPR data-portability requests. Only available to human users
|
|
637
|
+
(not agents).
|
|
638
|
+
operationId: exportUserData
|
|
639
|
+
responses:
|
|
640
|
+
"200":
|
|
641
|
+
description: User data export
|
|
642
|
+
content:
|
|
643
|
+
application/json:
|
|
644
|
+
schema:
|
|
645
|
+
type: object
|
|
646
|
+
required:
|
|
647
|
+
- export_version
|
|
648
|
+
- exported_at
|
|
649
|
+
- user
|
|
650
|
+
- vaults
|
|
651
|
+
- agents
|
|
652
|
+
- secrets_metadata
|
|
653
|
+
- policies
|
|
654
|
+
properties:
|
|
655
|
+
export_version:
|
|
656
|
+
type: string
|
|
657
|
+
example: "1.0"
|
|
658
|
+
exported_at:
|
|
659
|
+
type: string
|
|
660
|
+
format: date-time
|
|
661
|
+
user:
|
|
662
|
+
type: object
|
|
663
|
+
required:
|
|
664
|
+
- id
|
|
665
|
+
- email
|
|
666
|
+
- display_name
|
|
667
|
+
- auth_method
|
|
668
|
+
- created_at
|
|
669
|
+
properties:
|
|
670
|
+
id:
|
|
671
|
+
type: string
|
|
672
|
+
format: uuid
|
|
673
|
+
email:
|
|
674
|
+
type: string
|
|
675
|
+
format: email
|
|
676
|
+
display_name:
|
|
677
|
+
type: string
|
|
678
|
+
auth_method:
|
|
679
|
+
type: string
|
|
680
|
+
created_at:
|
|
681
|
+
type: string
|
|
682
|
+
format: date-time
|
|
683
|
+
vaults:
|
|
684
|
+
type: array
|
|
685
|
+
items:
|
|
686
|
+
type: object
|
|
687
|
+
required: [id, name, created_at]
|
|
688
|
+
properties:
|
|
689
|
+
id:
|
|
690
|
+
type: string
|
|
691
|
+
format: uuid
|
|
692
|
+
name:
|
|
693
|
+
type: string
|
|
694
|
+
created_at:
|
|
695
|
+
type: string
|
|
696
|
+
format: date-time
|
|
697
|
+
agents:
|
|
698
|
+
type: array
|
|
699
|
+
items:
|
|
700
|
+
type: object
|
|
701
|
+
required: [id, name, created_at]
|
|
702
|
+
properties:
|
|
703
|
+
id:
|
|
704
|
+
type: string
|
|
705
|
+
format: uuid
|
|
706
|
+
name:
|
|
707
|
+
type: string
|
|
708
|
+
created_at:
|
|
709
|
+
type: string
|
|
710
|
+
format: date-time
|
|
711
|
+
secrets_metadata:
|
|
712
|
+
type: array
|
|
713
|
+
items:
|
|
714
|
+
type: object
|
|
715
|
+
required:
|
|
716
|
+
- vault_id
|
|
717
|
+
- path
|
|
718
|
+
- type
|
|
719
|
+
- version
|
|
720
|
+
- created_at
|
|
721
|
+
properties:
|
|
722
|
+
vault_id:
|
|
723
|
+
type: string
|
|
724
|
+
format: uuid
|
|
725
|
+
path:
|
|
726
|
+
type: string
|
|
727
|
+
type:
|
|
728
|
+
type: string
|
|
729
|
+
version:
|
|
730
|
+
type: integer
|
|
731
|
+
created_at:
|
|
732
|
+
type: string
|
|
733
|
+
format: date-time
|
|
734
|
+
policies:
|
|
735
|
+
type: array
|
|
736
|
+
items:
|
|
737
|
+
type: object
|
|
738
|
+
required:
|
|
739
|
+
- id
|
|
740
|
+
- vault_id
|
|
741
|
+
- principal_type
|
|
742
|
+
- principal_id
|
|
743
|
+
- secret_path_pattern
|
|
744
|
+
- permissions
|
|
745
|
+
- created_at
|
|
746
|
+
properties:
|
|
747
|
+
id:
|
|
748
|
+
type: string
|
|
749
|
+
format: uuid
|
|
750
|
+
vault_id:
|
|
751
|
+
type: string
|
|
752
|
+
format: uuid
|
|
753
|
+
principal_type:
|
|
754
|
+
type: string
|
|
755
|
+
principal_id:
|
|
756
|
+
type: string
|
|
757
|
+
format: uuid
|
|
758
|
+
secret_path_pattern:
|
|
759
|
+
type: string
|
|
760
|
+
permissions:
|
|
761
|
+
type: array
|
|
762
|
+
items:
|
|
763
|
+
type: string
|
|
764
|
+
created_at:
|
|
765
|
+
type: string
|
|
766
|
+
format: date-time
|
|
767
|
+
"403":
|
|
768
|
+
$ref: "#/components/responses/Forbidden"
|
|
769
|
+
|
|
629
770
|
# ---------------------------------------------------------------------------
|
|
630
771
|
# Vaults
|
|
631
772
|
# ---------------------------------------------------------------------------
|
|
@@ -3819,6 +3960,9 @@ components:
|
|
|
3819
3960
|
type: string
|
|
3820
3961
|
tx_daily_limit_eth:
|
|
3821
3962
|
type: string
|
|
3963
|
+
tx_spent_today_eth:
|
|
3964
|
+
type: string
|
|
3965
|
+
description: ETH value already spent today (UTC) from recorded transactions; used with daily limit guardrails
|
|
3822
3966
|
tx_allowed_chains:
|
|
3823
3967
|
type: array
|
|
3824
3968
|
items:
|