@turnkey/http 0.1.2 → 0.2.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.
Files changed (30) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/README.md +25 -4
  3. package/dist/__generated__/barrel.d.ts +1 -1
  4. package/dist/__generated__/barrel.d.ts.map +1 -1
  5. package/dist/__generated__/barrel.js +2 -2
  6. package/dist/__generated__/barrel.js.map +1 -1
  7. package/dist/__generated__/{coordinator/tkhq → services/coordinator}/public/v1/public_api.fetcher.d.ts +1387 -1818
  8. package/dist/__generated__/services/coordinator/public/v1/public_api.fetcher.d.ts.map +1 -0
  9. package/dist/__generated__/{coordinator/tkhq → services/coordinator}/public/v1/public_api.fetcher.js +42 -35
  10. package/dist/__generated__/services/coordinator/public/v1/public_api.fetcher.js.map +1 -0
  11. package/dist/__generated__/{coordinator/tkhq → services/coordinator}/public/v1/public_api.types.d.ts +637 -633
  12. package/dist/__generated__/services/coordinator/public/v1/public_api.types.d.ts.map +1 -0
  13. package/dist/__generated__/{coordinator/tkhq → services/coordinator}/public/v1/public_api.types.js +0 -0
  14. package/dist/__generated__/services/coordinator/public/v1/public_api.types.js.map +1 -0
  15. package/dist/base.d.ts.map +1 -1
  16. package/dist/base.js +5 -11
  17. package/dist/base.js.map +1 -1
  18. package/dist/config.d.ts +9 -0
  19. package/dist/config.d.ts.map +1 -0
  20. package/dist/config.js +29 -0
  21. package/dist/config.js.map +1 -0
  22. package/dist/index.d.ts +1 -0
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/index.js +3 -0
  25. package/dist/index.js.map +1 -1
  26. package/package.json +1 -1
  27. package/dist/__generated__/coordinator/tkhq/public/v1/public_api.fetcher.d.ts.map +0 -1
  28. package/dist/__generated__/coordinator/tkhq/public/v1/public_api.fetcher.js.map +0 -1
  29. package/dist/__generated__/coordinator/tkhq/public/v1/public_api.types.d.ts.map +0 -1
  30. package/dist/__generated__/coordinator/tkhq/public/v1/public_api.types.js.map +0 -1
@@ -7,21 +7,29 @@ export type paths = {
7
7
  /** Get details about an Activity */
8
8
  post: operations["PublicApiService_GetActivity"];
9
9
  };
10
- "/public/v1/query/get_key": {
11
- /** Get details about a Private Key */
12
- post: operations["PublicApiService_GetKey"];
13
- };
14
10
  "/public/v1/query/get_organization": {
15
11
  /** Get details about an Organization */
16
12
  post: operations["PublicApiService_GetOrganization"];
17
13
  };
14
+ "/public/v1/query/get_policy": {
15
+ /** Get details about a Policy */
16
+ post: operations["PublicApiService_GetPolicy"];
17
+ };
18
18
  "/public/v1/query/get_user": {
19
19
  /** Get details about a User */
20
20
  post: operations["PublicApiService_GetUser"];
21
21
  };
22
- "/public/v1/query/list_keys": {
22
+ "/public/v1/query/list_activities": {
23
+ /** List all Activities within an Organization */
24
+ post: operations["PublicApiService_GetActivities"];
25
+ };
26
+ "/public/v1/query/list_policies": {
27
+ /** List all Policies within an Organization */
28
+ post: operations["PublicApiService_GetPolicies"];
29
+ };
30
+ "/public/v1/query/list_private_keys": {
23
31
  /** List all Private Keys within an Organization */
24
- post: operations["PublicApiService_GetKeys"];
32
+ post: operations["PublicApiService_GetPrivateKeys"];
25
33
  };
26
34
  "/public/v1/query/list_users": {
27
35
  /** List all Users within an Organization */
@@ -39,17 +47,13 @@ export type paths = {
39
47
  /** Create Invitations to join an existing Organization */
40
48
  post: operations["PublicApiService_CreateInvitations"];
41
49
  };
42
- "/public/v1/submit/create_keys": {
43
- /** Create new Private Keys */
44
- post: operations["PublicApiService_CreateKeys"];
45
- };
46
50
  "/public/v1/submit/create_policy": {
47
51
  /** Create a new Policy */
48
52
  post: operations["PublicApiService_CreatePolicy"];
49
53
  };
50
- "/public/v1/submit/create_users": {
51
- /** Create new API Users */
52
- post: operations["PublicApiService_CreateUsers"];
54
+ "/public/v1/submit/create_private_keys": {
55
+ /** Create new Private Keys */
56
+ post: operations["PublicApiService_CreatePrivateKeys"];
53
57
  };
54
58
  "/public/v1/submit/delete_api_keys": {
55
59
  /** Remove api keys from a User */
@@ -63,682 +67,448 @@ export type paths = {
63
67
  /** Delete an existing Policy */
64
68
  post: operations["PublicApiService_DeletePolicy"];
65
69
  };
66
- "/public/v1/submit/delete_users": {
67
- /** Deactivate an existing User */
68
- post: operations["PublicApiService_DeleteUsers"];
69
- };
70
- "/public/v1/submit/sign": {
71
- /** Sign a message with a Private Key */
72
- post: operations["PublicApiService_SignMessage"];
70
+ "/public/v1/submit/sign_raw_payload": {
71
+ /** Sign a raw payload with a Private Key */
72
+ post: operations["PublicApiService_SignRawPayload"];
73
73
  };
74
74
  "/public/v1/submit/sign_transaction": {
75
75
  /** Sign a transaction with a Private Key */
76
76
  post: operations["PublicApiService_SignTransaction"];
77
77
  };
78
+ "/tkhq/public/v1/query/get_private_key": {
79
+ /** Get details about a Private Key */
80
+ post: operations["PublicApiService_GetPrivateKey"];
81
+ };
78
82
  };
79
83
  export type definitions = {
80
- activityActivity: {
81
- id: string;
82
- organizationId: string;
83
- status: definitions["activityActivityStatus"];
84
- type: definitions["activityActivityType"];
85
- intent: definitions["enforcementIntent"];
86
- result: definitions["enforcementResult"];
87
- votes: definitions["activityVote"][];
88
- fingerprint: string;
89
- canApprove: boolean;
90
- canReject: boolean;
84
+ datav1Tag: {
85
+ tagId: string;
86
+ label: string;
87
+ tagType: definitions["v1TagType"];
88
+ createdAt: definitions["v1Timestamp"];
89
+ updatedAt: definitions["v1Timestamp"];
91
90
  };
92
91
  /** @enum {string} */
93
- activityActivityStatus: "ACTIVITY_STATUS_CREATED" | "ACTIVITY_STATUS_PENDING" | "ACTIVITY_STATUS_COMPLETED" | "ACTIVITY_STATUS_FAILED" | "ACTIVITY_STATUS_CONSENSUS_NEEDED" | "ACTIVITY_STATUS_REJECTED";
92
+ externaldatav1AccessType: "ACCESS_TYPE_WEB" | "ACCESS_TYPE_API" | "ACCESS_TYPE_ALL";
93
+ externaldatav1Address: {
94
+ format?: definitions["externaldatav1AddressFormat"];
95
+ address?: string;
96
+ };
94
97
  /**
95
- * These are all of the types of user-facing activities on Turnkey
96
- * We use this to guide the polymorphic parsing of activity requests/approvals/rejections
97
- * One activity type maps to one internal Intent, but not all internal intents have a user-facing activity (e.g. Hearbeats)
98
+ * - ADDRESS_FORMAT_UNCOMPRESSED: 04<X_COORDINATE><Y_COORDINATE>
99
+ * - ADDRESS_FORMAT_COMPRESSED: 02 or 03, followed by the X coordinate
100
+ * - ADDRESS_FORMAT_ETHEREUM: Your standard Ethereum address (0x...). We apply EIP55 casing.
101
+ * - ADDRESS_FORMAT_BITCOIN_P2PKH: Bitoin formats. See https://en.bitcoin.it/wiki/List_of_address_prefixes
98
102
  * @enum {string}
99
103
  */
100
- activityActivityType: "ACTIVITY_TYPE_ADD_API_KEYS" | "ACTIVITY_TYPE_ADD_USERS" | "ACTIVITY_TYPE_ADD_KEYS" | "ACTIVITY_TYPE_SIGN_MESSAGE" | "ACTIVITY_TYPE_CREATE_INVITATIONS" | "ACTIVITY_TYPE_ACCEPT_INVITATION" | "ACTIVITY_TYPE_ADD_POLICY" | "ACTIVITY_TYPE_REMOVE_KEY" | "ACTIVITY_TYPE_REMOVE_USERS" | "ACTIVITY_TYPE_REMOVE_API_KEYS" | "ACTIVITY_TYPE_REMOVE_INVITATION" | "ACTIVITY_TYPE_REMOVE_ORGANIZATION" | "ACTIVITY_TYPE_REMOVE_POLICY" | "ACTIVITY_TYPE_ADD_TAG" | "ACTIVITY_TYPE_REMOVE_TAGS" | "ACTIVITY_TYPE_CREATE_ORGANIZATION" | "ACTIVITY_TYPE_SIGN_TRANSACTION" | "ACTIVITY_TYPE_APPROVE_ACTIVITY" | "ACTIVITY_TYPE_REJECT_ACTIVITY" | "ACTIVITY_TYPE_REMOVE_AUTHENTICATORS" | "ACTIVITY_TYPE_ADD_AUTHENTICATORS";
101
- activityCreateApiKeysRequest: {
102
- /** @enum {string} */
103
- type: "ACTIVITY_TYPE_ADD_API_KEYS";
104
- requestId?: string;
105
- organizationId: string;
106
- intent: definitions["enforcementAddApiKeysIntent"];
107
- };
108
- activityCreateInvitationsRequest: {
109
- /** @enum {string} */
110
- type: "ACTIVITY_TYPE_CREATE_INVITATIONS";
111
- requestId: string;
112
- organizationId: string;
113
- intent: definitions["enforcementCreateInvitationsIntent"];
104
+ externaldatav1AddressFormat: "ADDRESS_FORMAT_UNCOMPRESSED" | "ADDRESS_FORMAT_COMPRESSED" | "ADDRESS_FORMAT_ETHEREUM" | "ADDRESS_FORMAT_BITCOIN_P2PKH" | "ADDRESS_FORMAT_BITCOIN_P2PKH_TESTNET";
105
+ /** @enum {string} */
106
+ externaldatav1AuthenticatorTransport: "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID";
107
+ /**
108
+ * - CURVE_SECP256K1: The only curve we're planning to support short-term
109
+ * @enum {string}
110
+ */
111
+ externaldatav1Curve: "CURVE_SECP256K1";
112
+ /** @enum {string} */
113
+ externaldatav1Effect: "EFFECT_ALLOW" | "EFFECT_DENY";
114
+ /** @enum {string} */
115
+ externaldatav1Operator: "OPERATOR_EQUAL" | "OPERATOR_MORE_THAN" | "OPERATOR_MORE_THAN_OR_EQUAL" | "OPERATOR_LESS_THAN" | "OPERATOR_LESS_THAN_OR_EQUAL" | "OPERATOR_CONTAINS" | "OPERATOR_NOT_EQUAL";
116
+ externaldatav1Selector: {
117
+ subject: string;
118
+ operator: definitions["externaldatav1Operator"];
119
+ target: string;
114
120
  };
115
- activityCreateKeysRequest: {
116
- /** @enum {string} */
117
- type: "ACTIVITY_TYPE_ADD_KEYS";
118
- requestId: string;
119
- organizationId: string;
120
- intent: definitions["enforcementAddKeysIntent"];
121
+ /** @enum {string} */
122
+ immutableactivityv1AccessType: "ACCESS_TYPE_WEB" | "ACCESS_TYPE_API" | "ACCESS_TYPE_ALL";
123
+ /**
124
+ * - ADDRESS_FORMAT_UNCOMPRESSED: 04<X_COORDINATE><Y_COORDINATE>
125
+ * - ADDRESS_FORMAT_COMPRESSED: 02 or 03, followed by the X coordinate
126
+ * - ADDRESS_FORMAT_ETHEREUM: Your standard Ethereum address (0x...). We apply EIP55 casing.
127
+ * - ADDRESS_FORMAT_BITCOIN_P2PKH: Bitoin formats. See https://en.bitcoin.it/wiki/List_of_address_prefixes
128
+ * @enum {string}
129
+ */
130
+ immutableactivityv1AddressFormat: "ADDRESS_FORMAT_UNCOMPRESSED" | "ADDRESS_FORMAT_COMPRESSED" | "ADDRESS_FORMAT_ETHEREUM" | "ADDRESS_FORMAT_BITCOIN_P2PKH" | "ADDRESS_FORMAT_BITCOIN_P2PKH_TESTNET";
131
+ /**
132
+ * - CURVE_SECP256K1: The only curve we're planning to support short-term
133
+ * @enum {string}
134
+ */
135
+ immutableactivityv1Curve: "CURVE_SECP256K1";
136
+ /** @enum {string} */
137
+ immutableactivityv1Effect: "EFFECT_ALLOW" | "EFFECT_DENY";
138
+ /** @enum {string} */
139
+ immutableactivityv1Operator: "OPERATOR_EQUAL" | "OPERATOR_MORE_THAN" | "OPERATOR_MORE_THAN_OR_EQUAL" | "OPERATOR_LESS_THAN" | "OPERATOR_LESS_THAN_OR_EQUAL" | "OPERATOR_CONTAINS" | "OPERATOR_NOT_EQUAL";
140
+ immutableactivityv1Selector: {
141
+ subject?: string;
142
+ operator?: definitions["immutableactivityv1Operator"];
143
+ target?: string;
121
144
  };
122
- /** TODO(tim) - add timestamp to all these requests to prevent replay attack in the event the DB has been tampered with */
123
- activityCreatePolicyRequest: {
124
- /** @enum {string} */
125
- type: "ACTIVITY_TYPE_ADD_POLICY";
126
- requestId: string;
127
- organizationId: string;
128
- intent: definitions["enforcementAddPolicyIntent"];
145
+ /**
146
+ * - TRANSACTION_TYPE_ETHEREUM: Unsigned Ethereum transaction, RLP-encoded and hex-encoded
147
+ * @enum {string}
148
+ */
149
+ immutableactivityv1TransactionType: "TRANSACTION_TYPE_ETHEREUM";
150
+ /** @enum {string} */
151
+ immutablewebauthnv1AuthenticatorTransport: "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID";
152
+ protobufAny: {
153
+ "@type"?: string;
154
+ } & {
155
+ [key: string]: unknown;
129
156
  };
130
- activityCreateUsersRequest: {
131
- /** @enum {string} */
132
- type: "ACTIVITY_TYPE_ADD_USERS";
133
- requestId: string;
134
- organizationId: string;
135
- intent: definitions["enforcementAddUsersIntent"];
157
+ rpcStatus: {
158
+ /** Format: int32 */
159
+ code?: number;
160
+ message?: string;
161
+ details?: definitions["protobufAny"][];
136
162
  };
137
- activityDeleteApiKeysRequest: {
138
- /** @enum {string} */
139
- type: "ACTIVITY_TYPE_REMOVE_API_KEYS";
140
- requestId: string;
141
- organizationId: string;
142
- intent: definitions["enforcementRemoveApiKeysIntent"];
163
+ v1AcceptInvitationIntent: {
164
+ /** @inject_tag: validate:"required,uuid" */
165
+ invitationId: string;
166
+ /** @inject_tag: validate:"required,uuid" */
167
+ userId: string;
168
+ authenticator: definitions["v1AuthenticatorParams"];
143
169
  };
144
- activityDeleteInvitationRequest: {
145
- /** @enum {string} */
146
- type: "ACTIVITY_TYPE_REMOVE_INVITATION";
147
- requestId: string;
148
- organizationId: string;
149
- intent: definitions["enforcementRemoveInvitationIntent"];
170
+ v1AcceptInvitationResult: {
171
+ invitationId: string;
172
+ userId: string;
150
173
  };
151
- activityDeletePolicyRequest: {
152
- /** @enum {string} */
153
- type: "ACTIVITY_TYPE_REMOVE_POLICY";
154
- requestId: string;
174
+ v1Activity: {
175
+ id: string;
155
176
  organizationId: string;
156
- intent: definitions["enforcementRemovePolicyIntent"];
177
+ status: definitions["v1ActivityStatus"];
178
+ type: definitions["v1ActivityType"];
179
+ intent: definitions["v1Intent"];
180
+ result: definitions["v1Result"];
181
+ votes: definitions["v1Vote"][];
182
+ fingerprint: string;
183
+ canApprove: boolean;
184
+ canReject: boolean;
185
+ createdAt: definitions["v1Timestamp"];
186
+ updatedAt: definitions["v1Timestamp"];
157
187
  };
158
- activityDeleteUsersRequest: {
159
- /** @enum {string} */
160
- type: "ACTIVITY_TYPE_REMOVE_USERS";
161
- requestId: string;
162
- organizationId: string;
163
- intent: definitions["enforcementRemoveUsersIntent"];
188
+ v1ActivityResponse: {
189
+ activity: definitions["v1Activity"];
164
190
  };
165
- activitySignMessageRequest: {
166
- /** @enum {string} */
167
- type: "ACTIVITY_TYPE_SIGN_MESSAGE";
168
- requestId: string;
169
- organizationId: string;
170
- intent: definitions["enforcementSignMessageIntent"];
191
+ /** @enum {string} */
192
+ v1ActivityStatus: "ACTIVITY_STATUS_CREATED" | "ACTIVITY_STATUS_PENDING" | "ACTIVITY_STATUS_COMPLETED" | "ACTIVITY_STATUS_FAILED" | "ACTIVITY_STATUS_CONSENSUS_NEEDED" | "ACTIVITY_STATUS_REJECTED";
193
+ /**
194
+ * These are all of the types of user-facing activities on Turnkey
195
+ * We use this to guide the polymorphic parsing of activity requests/approvals/rejections
196
+ * One activity type maps to one internal Intent, but not all internal intents have a user-facing activity (e.g. Hearbeats)
197
+ * @enum {string}
198
+ */
199
+ v1ActivityType: "ACTIVITY_TYPE_CREATE_API_KEYS" | "ACTIVITY_TYPE_CREATE_USERS" | "ACTIVITY_TYPE_CREATE_PRIVATE_KEYS" | "ACTIVITY_TYPE_SIGN_RAW_PAYLOAD" | "ACTIVITY_TYPE_CREATE_INVITATIONS" | "ACTIVITY_TYPE_ACCEPT_INVITATION" | "ACTIVITY_TYPE_CREATE_POLICY" | "ACTIVITY_TYPE_DISABLE_PRIVATE_KEY" | "ACTIVITY_TYPE_DELETE_USERS" | "ACTIVITY_TYPE_DELETE_API_KEYS" | "ACTIVITY_TYPE_DELETE_INVITATION" | "ACTIVITY_TYPE_DELETE_ORGANIZATION" | "ACTIVITY_TYPE_DELETE_POLICY" | "ACTIVITY_TYPE_CREATE_USER_TAG" | "ACTIVITY_TYPE_DELETE_USER_TAGS" | "ACTIVITY_TYPE_CREATE_ORGANIZATION" | "ACTIVITY_TYPE_SIGN_TRANSACTION" | "ACTIVITY_TYPE_APPROVE_ACTIVITY" | "ACTIVITY_TYPE_REJECT_ACTIVITY" | "ACTIVITY_TYPE_DELETE_AUTHENTICATORS" | "ACTIVITY_TYPE_CREATE_AUTHENTICATORS" | "ACTIVITY_TYPE_CREATE_PRIVATE_KEY_TAG" | "ACTIVITY_TYPE_DELETE_PRIVATE_KEY_TAGS";
200
+ v1ApiKey: {
201
+ credential: definitions["v1Credential"];
202
+ apiKeyId: string;
203
+ apiKeyName: string;
204
+ createdAt: definitions["v1Timestamp"];
205
+ updatedAt: definitions["v1Timestamp"];
206
+ };
207
+ v1ApiKeyParams: {
208
+ /** @inject_tag: validate:"required,max=40" */
209
+ apiKeyName: string;
210
+ /** @inject_tag: validate:"hexadecimal,len=66" */
211
+ publicKey: string;
171
212
  };
172
- activitySignTransactionRequest: {
173
- /** @enum {string} */
174
- type: "ACTIVITY_TYPE_SIGN_TRANSACTION";
175
- requestId: string;
176
- organizationId: string;
177
- intent: definitions["enforcementSignTransactionIntent"];
213
+ v1ApproveActivityIntent: {
214
+ /** @inject_tag: validate:"required" */
215
+ fingerprint: string;
178
216
  };
179
- activityVote: {
180
- id: string;
217
+ v1Authenticator: {
218
+ transports: definitions["externaldatav1AuthenticatorTransport"][];
219
+ attestationType: string;
220
+ aaguid: string;
181
221
  userId: string;
182
- user: definitions["resourcesUser"];
183
- activityId: string;
222
+ credentialId: string;
223
+ model: string;
224
+ credential: definitions["v1Credential"];
225
+ authenticatorId: string;
226
+ label: string;
227
+ createdAt: definitions["v1Timestamp"];
228
+ updatedAt: definitions["v1Timestamp"];
229
+ };
230
+ v1AuthenticatorAttestationResponse: {
231
+ /** ENCODING: base64url */
232
+ clientDataJson: string;
233
+ /** ENCODING: base64url */
234
+ attestationObject: string;
235
+ transports?: definitions["immutablewebauthnv1AuthenticatorTransport"][];
184
236
  /** @enum {string} */
185
- selection: "VOTE_SELECTION_APPROVED" | "VOTE_SELECTION_REJECTED";
186
- message: string;
187
- publicKey: string;
188
- signature: string;
189
- scheme: string;
190
- createdAt: definitions["resourcesTimestamp"];
237
+ authenticatorAttachment?: "cross-platform" | "platform" | null;
191
238
  };
192
- /**
193
- * - CURVE_SECP256K1: The only curve we're planning to support short-term
194
- * - CURVE_ED25519: Demonstrates an error case, we aren't going to support this curve at first
195
- * @enum {string}
196
- */
197
- curveCurve: "CURVE_SECP256K1" | "CURVE_ED25519";
198
- enforcementAcceptInvitationIntent: {
199
- /** @inject_tag: validate:"required,uuid" */
200
- invitationId: string;
239
+ v1AuthenticatorParams: {
240
+ /** @inject_tag: validate:"required,max=40" */
241
+ authenticatorName: string;
201
242
  /** @inject_tag: validate:"required,uuid" */
202
243
  userId: string;
203
- authenticator: definitions["enforcementAuthenticatorParams"];
204
- };
205
- enforcementAcceptInvitationResult: {
206
- invitationId: string;
207
- newUserId: string;
244
+ attestation: definitions["v1PublicKeyCredentialWithAttestation"];
245
+ /** @inject_tag: validate:"required,max=256" */
246
+ challenge: string;
208
247
  };
209
- enforcementAddApiKeysIntent: {
248
+ v1CreateApiKeysIntent: {
210
249
  /** @inject_tag: validate:"dive,required" */
211
- apiKeys: definitions["enforcementApiKeyParams"][];
250
+ apiKeys: definitions["v1ApiKeyParams"][];
212
251
  /** @inject_tag: validate:"required,uuid" */
213
252
  userId: string;
214
253
  };
215
- enforcementAddApiKeysResult: {
254
+ v1CreateApiKeysRequest: {
255
+ /** @enum {string} */
256
+ type: "ACTIVITY_TYPE_CREATE_API_KEYS";
257
+ timestamp?: string;
258
+ organizationId: string;
259
+ parameters: definitions["v1CreateApiKeysIntent"];
260
+ };
261
+ v1CreateApiKeysResult: {
216
262
  apiKeyIds: string[];
217
263
  };
218
- enforcementAddAuthenticatorsIntent: {
264
+ v1CreateAuthenticatorsIntent: {
219
265
  /** @inject_tag: validate:"dive,required" */
220
- authenticators: definitions["enforcementAuthenticatorParams"][];
266
+ authenticators: definitions["v1AuthenticatorParams"][];
221
267
  /** @inject_tag: validate:"required,uuid" */
222
268
  userId: string;
223
269
  };
224
- enforcementAddAuthenticatorsResult: {
270
+ v1CreateAuthenticatorsResult: {
225
271
  authenticatorIds: string[];
226
272
  };
227
- enforcementAddKeysIntent: {
228
- /** @inject_tag: validate:"dive,required" */
229
- keys: definitions["enforcementKeyParams"][];
230
- };
231
- enforcementAddKeysResult: {
232
- keys: definitions["resourcesExternalKey"][];
233
- };
234
- enforcementAddPolicyIntent: {
235
- /** @inject_tag: validate:"required,max=40" */
236
- label: string;
273
+ v1CreateInvitationsIntent: {
237
274
  /** @inject_tag: validate:"required,dive,required" */
238
- selectors: definitions["resourcesSelector"][];
239
- effect: definitions["policyEffect"];
240
- /** @inject_tag: validate:"required,max=256" */
241
- notes: string;
275
+ invitations: definitions["v1InvitationParams"][];
242
276
  };
243
- enforcementAddPolicyResult: {
244
- newPolicyId: string;
277
+ v1CreateInvitationsRequest: {
278
+ /** @enum {string} */
279
+ type: "ACTIVITY_TYPE_CREATE_INVITATIONS";
280
+ timestamp: string;
281
+ organizationId: string;
282
+ parameters: definitions["v1CreateInvitationsIntent"];
245
283
  };
246
- enforcementAddTagIntent: {
247
- /** @inject_tag: validate:"required,max=20" */
248
- label: string;
249
- tagType: definitions["resourcesTagType"];
250
- /** @inject_tag: validate:"dive,uuid" */
251
- resourceIds: string[];
284
+ v1CreateInvitationsResult: {
285
+ invitationIds: string[];
252
286
  };
253
- enforcementAddTagResult: {
254
- tagId: string;
255
- tagType: definitions["resourcesTagType"];
256
- resourceIds: string[];
287
+ v1CreateOrganizationIntent: {
288
+ /** @inject_tag: validate:"required,max=40" */
289
+ organizationName: string;
290
+ /** @inject_tag: validate:"required,email" */
291
+ rootEmail: string;
292
+ rootAuthenticator: definitions["v1AuthenticatorParams"];
293
+ /** @inject_tag: validate:"uuid" */
294
+ rootUserId?: string;
295
+ };
296
+ v1CreateOrganizationResult: {
297
+ organizationId: string;
257
298
  };
258
- enforcementAddUsersIntent: {
299
+ v1CreatePolicyIntent: {
300
+ /** @inject_tag: validate:"required,max=40" */
301
+ policyName: string;
259
302
  /** @inject_tag: validate:"required,dive,required" */
260
- users: definitions["enforcementUserParams"][];
303
+ selectors: definitions["immutableactivityv1Selector"][];
304
+ effect: definitions["immutableactivityv1Effect"];
305
+ notes?: string;
261
306
  };
262
- enforcementAddUsersResult: {
263
- userIds: string[];
307
+ v1CreatePolicyRequest: {
308
+ /** @enum {string} */
309
+ type: "ACTIVITY_TYPE_CREATE_POLICY";
310
+ timestamp: string;
311
+ organizationId: string;
312
+ parameters: definitions["v1CreatePolicyIntent"];
264
313
  };
265
- enforcementApiKeyParams: {
266
- /** @inject_tag: validate:"required,max=40" */
267
- label: string;
268
- /** @inject_tag: validate:"hexadecimal,len=66" */
269
- publicKey: string;
270
- /** @inject_tag: "required,dive,uuid" */
271
- tags: string[];
314
+ v1CreatePolicyResult: {
315
+ policyId: string;
272
316
  };
273
- enforcementApproveActivityIntent: {
274
- /** @inject_tag: validate:"required" */
275
- fingerprint: string;
317
+ v1CreatePrivateKeyTagIntent: {
318
+ /** @inject_tag: validate:"required,max=20" */
319
+ privateKeyTagName: string;
320
+ /** @inject_tag: validate:"dive,uuid" */
321
+ privateKeyIds: string[];
276
322
  };
277
- enforcementAuthenticatorParams: {
278
- /** @inject_tag: validate:"required,max=40" */
279
- label: string;
280
- /** @inject_tag: validate:"required,uuid" */
281
- userId: string;
282
- attestation: definitions["webauthnPublicKeyCredentialWithAttestation"];
283
- /** @inject_tag: validate:"required,max=256" */
284
- challenge: string;
285
- /** @inject_tag: "required,dive,uuid" */
286
- tags: string[];
323
+ v1CreatePrivateKeyTagResult: {
324
+ privateKeyTagId: string;
325
+ privateKeyIds: string[];
287
326
  };
288
- enforcementCreateInvitationsIntent: {
289
- /** @inject_tag: validate:"required,dive,required" */
290
- invitations: definitions["enforcementInvitationParams"][];
327
+ v1CreatePrivateKeysIntent: {
328
+ /** @inject_tag: validate:"dive,required" */
329
+ privateKeys: definitions["v1PrivateKeyParams"][];
291
330
  };
292
- enforcementCreateInvitationsResult: {
293
- invitationIds: string[];
331
+ v1CreatePrivateKeysRequest: {
332
+ /** @enum {string} */
333
+ type: "ACTIVITY_TYPE_CREATE_PRIVATE_KEYS";
334
+ timestamp: string;
335
+ organizationId: string;
336
+ parameters: definitions["v1CreatePrivateKeysIntent"];
294
337
  };
295
- enforcementCreateOrganizationIntent: {
296
- /** @inject_tag: validate:"required,max=40" */
297
- name: string;
298
- /** @inject_tag: validate:"required,email" */
299
- rootEmail: string;
300
- rootAuthenticator: definitions["enforcementAuthenticatorParams"];
301
- /** @inject_tag: validate:"uuid" */
302
- rootUserUuid?: string;
338
+ v1CreatePrivateKeysResult: {
339
+ privateKeyIds: string[];
303
340
  };
304
- enforcementCreateOrganizationResult: {
305
- newOrgId: string;
341
+ v1CreateUserTagIntent: {
342
+ /** @inject_tag: validate:"required,max=20" */
343
+ userTagName: string;
344
+ /** @inject_tag: validate:"dive,uuid" */
345
+ userIds: string[];
306
346
  };
307
- /** TODO(tim) - is this still needed? */
308
- enforcementHeartbeatIntent: {
309
- [key: string]: unknown;
347
+ v1CreateUserTagResult: {
348
+ userTagId: string;
349
+ userIds: string[];
310
350
  };
311
- enforcementHeartbeatResult: {
312
- [key: string]: unknown;
351
+ v1CreateUsersIntent: {
352
+ /** @inject_tag: validate:"required,dive,required" */
353
+ users: definitions["v1UserParams"][];
313
354
  };
314
- enforcementIntent: {
315
- createOrganizationIntent: definitions["enforcementCreateOrganizationIntent"];
316
- heartbeatIntent?: definitions["enforcementHeartbeatIntent"];
317
- addAuthenticatorsIntent?: definitions["enforcementAddAuthenticatorsIntent"];
318
- addUsersIntent?: definitions["enforcementAddUsersIntent"];
319
- addKeysIntent?: definitions["enforcementAddKeysIntent"];
320
- signMessageIntent?: definitions["enforcementSignMessageIntent"];
321
- createInvitationsIntent?: definitions["enforcementCreateInvitationsIntent"];
322
- acceptInvitationIntent?: definitions["enforcementAcceptInvitationIntent"];
323
- addPolicyIntent?: definitions["enforcementAddPolicyIntent"];
324
- removeKeyIntent?: definitions["enforcementRemoveKeyIntent"];
325
- removeUsersIntent?: definitions["enforcementRemoveUsersIntent"];
326
- removeAuthenticatorsIntent?: definitions["enforcementRemoveAuthenticatorsIntent"];
327
- removeInvitationIntent?: definitions["enforcementRemoveInvitationIntent"];
328
- removeOrganizationIntent?: definitions["enforcementRemoveOrganizationIntent"];
329
- removePolicyIntent?: definitions["enforcementRemovePolicyIntent"];
330
- addTagIntent?: definitions["enforcementAddTagIntent"];
331
- removeTagsIntent?: definitions["enforcementRemoveTagsIntent"];
332
- signTransactionIntent?: definitions["enforcementSignTransactionIntent"];
333
- addApiKeysIntent?: definitions["enforcementAddApiKeysIntent"];
334
- removeApiKeysIntent?: definitions["enforcementRemoveApiKeysIntent"];
335
- approveActivityIntent?: definitions["enforcementApproveActivityIntent"];
336
- rejectActivityIntent?: definitions["enforcementRejectActivityIntent"];
337
- };
338
- enforcementInvitationParams: {
339
- /** @inject_tag: validate:"required,max=40" */
340
- receiverAlias: string;
341
- /** @inject_tag: validate:"required,email" */
342
- receiverEmail: string;
343
- /** @inject_tag: validate:"dive,uuid" */
344
- receiverTags: string[];
345
- accessType: definitions["resourcesAccessType"];
346
- /** @inject_tag: validate:"required,uuid" */
347
- senderUserId: string;
355
+ v1CreateUsersResult: {
356
+ userIds: string[];
348
357
  };
349
- enforcementKeyParams: {
350
- /** @inject_tag: validate:"required,max=40" */
351
- label: string;
352
- curve: definitions["curveCurve"];
353
- /** @inject_tag: validate:"dive,uuid" */
354
- tags: string[];
355
- /** @inject_tag: validate:"required" */
356
- addressFormats: definitions["resourcesAddressFormat"][];
358
+ v1CredPropsAuthenticationExtensionsClientOutputs: {
359
+ rk: boolean;
357
360
  };
358
- enforcementRejectActivityIntent: {
359
- /** @inject_tag: validate:"required" */
360
- fingerprint: string;
361
+ v1Credential: {
362
+ publicKey: string;
363
+ type: definitions["v1CredentialType"];
361
364
  };
362
- enforcementRemoveApiKeysIntent: {
365
+ /** @enum {string} */
366
+ v1CredentialType: "CREDENTIAL_TYPE_WEBAUTHN_AUTHENTICATOR" | "CREDENTIAL_TYPE_API_KEY_P256";
367
+ v1DeleteApiKeysIntent: {
363
368
  /** @inject_tag: validate:"required,uuid" */
364
369
  userId: string;
365
370
  /** @inject_tag: validate:"required,dive,required,uuid" */
366
371
  apiKeyIds: string[];
367
372
  };
368
- enforcementRemoveApiKeysResult: {
373
+ v1DeleteApiKeysRequest: {
374
+ /** @enum {string} */
375
+ type: "ACTIVITY_TYPE_DELETE_API_KEYS";
376
+ timestamp: string;
377
+ organizationId: string;
378
+ parameters: definitions["v1DeleteApiKeysIntent"];
379
+ };
380
+ v1DeleteApiKeysResult: {
369
381
  apiKeyIds: string[];
370
382
  };
371
- enforcementRemoveAuthenticatorsIntent: {
383
+ v1DeleteAuthenticatorsIntent: {
372
384
  /** @inject_tag: validate:"required,uuid" */
373
385
  userId: string;
374
386
  /** @inject_tag: validate:"required,div,required,uuid" */
375
387
  authenticatorIds: string[];
376
388
  };
377
- enforcementRemoveAuthenticatorsResult: {
389
+ v1DeleteAuthenticatorsResult: {
378
390
  authenticatorIds: string[];
379
391
  };
380
- enforcementRemoveInvitationIntent: {
392
+ v1DeleteInvitationIntent: {
381
393
  /** @inject_tag: validate:"required,uuid" */
382
394
  invitationId: string;
383
395
  };
384
- enforcementRemoveInvitationResult: {
385
- invitationId: string;
386
- };
387
- enforcementRemoveKeyIntent: {
388
- /** @inject_tag: validate:"required,uuid" */
389
- keyId: string;
390
- };
391
- enforcementRemoveKeyResult: {
392
- keyId: string;
393
- };
394
- enforcementRemoveOrganizationIntent: {
395
- /** @inject_tag: validate:"required,uuid" */
396
- organizationId: string;
397
- };
398
- enforcementRemoveOrganizationResult: {
396
+ v1DeleteInvitationRequest: {
397
+ /** @enum {string} */
398
+ type: "ACTIVITY_TYPE_DELETE_INVITATION";
399
+ timestamp: string;
399
400
  organizationId: string;
401
+ parameters: definitions["v1DeleteInvitationIntent"];
400
402
  };
401
- enforcementRemovePolicyIntent: {
402
- /** @inject_tag: validate:"required,uuid" */
403
- policyId: string;
404
- };
405
- enforcementRemovePolicyResult: {
406
- policyId: string;
407
- };
408
- enforcementRemoveTagsIntent: {
409
- /** @inject_tag: validate:"required,dive,required,uuid" */
410
- tagIds: string[];
411
- tagType: definitions["resourcesTagType"];
412
- };
413
- enforcementRemoveTagsResult: {
414
- tagIds: string[];
415
- tagType: definitions["resourcesTagType"];
416
- resourceIds: string[];
417
- };
418
- enforcementRemoveUsersIntent: {
419
- /** @inject_tag: validate:"required,dive,required,uuid" */
420
- userIds: string[];
421
- };
422
- enforcementRemoveUsersResult: {
423
- userIds: string[];
424
- };
425
- enforcementResult: {
426
- createOrganizationResult?: definitions["enforcementCreateOrganizationResult"];
427
- heartbeatResult?: definitions["enforcementHeartbeatResult"];
428
- addAuthenticatorsResult?: definitions["enforcementAddAuthenticatorsResult"];
429
- addUsersResult?: definitions["enforcementAddUsersResult"];
430
- addKeysResult?: definitions["enforcementAddKeysResult"];
431
- createInvitationsResult?: definitions["enforcementCreateInvitationsResult"];
432
- acceptInvitationResult?: definitions["enforcementAcceptInvitationResult"];
433
- signMessageResult?: definitions["enforcementSignMessageResult"];
434
- addPolicyResult?: definitions["enforcementAddPolicyResult"];
435
- removeKeyResult?: definitions["enforcementRemoveKeyResult"];
436
- removeUsersResult?: definitions["enforcementRemoveUsersResult"];
437
- removeAuthenticatorsResult?: definitions["enforcementRemoveAuthenticatorsResult"];
438
- removeInvitationResult?: definitions["enforcementRemoveInvitationResult"];
439
- removeOrganizationResult?: definitions["enforcementRemoveOrganizationResult"];
440
- removePolicyResult?: definitions["enforcementRemovePolicyResult"];
441
- addTagResult?: definitions["enforcementAddTagResult"];
442
- removeTagsResult?: definitions["enforcementRemoveTagsResult"];
443
- signTransactionResult?: definitions["enforcementSignTransactionResult"];
444
- removeApiKeysResult?: definitions["enforcementRemoveApiKeysResult"];
445
- addApiKeysResult?: definitions["enforcementAddApiKeysResult"];
446
- };
447
- enforcementSignMessageIntent: {
448
- /** @inject_tag: validate:"required,uuid" */
449
- organizationId: string;
450
- /** @inject_tag: validate:"required,uuid" */
451
- keyId: string;
452
- /** @inject_tag: validate:"required" */
453
- payload: string;
454
- encoding: definitions["signaturePayloadEncoding"];
455
- hashFunction: definitions["signatureHashFunction"];
456
- };
457
- enforcementSignMessageResult: {
458
- r: string;
459
- s: string;
460
- v: string;
403
+ v1DeleteInvitationResult: {
404
+ invitationId: string;
461
405
  };
462
- enforcementSignTransactionIntent: {
406
+ v1DeleteOrganizationIntent: {
463
407
  /** @inject_tag: validate:"required,uuid" */
464
408
  organizationId: string;
465
- /** @inject_tag: validate:"required,uuid" */
466
- keyId: string;
467
- /** @inject_tag: validate:"required" */
468
- unsignedTransaction: string;
469
- type: definitions["resourcesTransactionType"];
470
- };
471
- enforcementSignTransactionResult: {
472
- signedTransaction: string;
473
- };
474
- enforcementUserParams: {
475
- /** @inject_tag: validate:"required,max=40" */
476
- alias: string;
477
- /** @inject_tag: validate:"email" */
478
- email?: string;
479
- accessType: definitions["resourcesAccessType"];
480
- /** @inject_tag: validate:"dive,uuid" */
481
- apiKeys: definitions["enforcementApiKeyParams"][];
482
- /** @inject_tag: validate:"dive" */
483
- authenticators: definitions["enforcementAuthenticatorParams"][];
484
- /** @inject_tag: validate:"dive,uuid" */
485
- tags: string[];
486
- };
487
- /**
488
- * @description This proto definition dictates the encoding of organization data blobs in our database
489
- * It does so indirectly: we use this message to derive Rust types. These Rust types are
490
- * then used to serialize to, and deserialize from, JSON.
491
- */
492
- organization_dataOrganizationData: {
493
- version?: string;
494
- uuid?: string;
495
- name?: string;
496
- users?: definitions["resourcesUser"][];
497
- policies?: definitions["resourcesPolicy"][];
498
- keys?: definitions["resourcesKey"][];
499
- invitations?: definitions["resourcesInvitation"][];
500
- tags?: definitions["resourcesTag"][];
501
- deletedUsers?: definitions["resourcesUser"][];
502
- deletedPolicies?: definitions["resourcesPolicy"][];
503
- deletedKeys?: definitions["resourcesKey"][];
504
- deletedInvitations?: definitions["resourcesInvitation"][];
505
- deletedApiKeys?: definitions["resourcesApiKey"][];
506
- deletedAuthenticators?: definitions["resourcesAuthenticator"][];
507
- deletedTags?: definitions["resourcesTag"][];
508
- };
509
- /** @enum {string} */
510
- policyEffect: "EFFECT_ALLOW" | "EFFECT_DENY";
511
- protobufAny: {
512
- "@type"?: string;
513
- } & {
514
- [key: string]: unknown;
515
- };
516
- publicv1CreateApiKeysRequest: {
517
- request: definitions["activityCreateApiKeysRequest"];
518
- };
519
- publicv1CreateInvitationsRequest: {
520
- request: definitions["activityCreateInvitationsRequest"];
521
- };
522
- publicv1CreateKeysRequest: {
523
- request: definitions["activityCreateKeysRequest"];
524
- };
525
- publicv1CreatePolicyRequest: {
526
- request: definitions["activityCreatePolicyRequest"];
527
- };
528
- publicv1CreateUsersRequest: {
529
- request: definitions["activityCreateUsersRequest"];
530
- };
531
- publicv1DeleteApiKeysRequest: {
532
- request: definitions["activityDeleteApiKeysRequest"];
533
- };
534
- publicv1DeleteInvitationRequest: {
535
- request: definitions["activityDeleteInvitationRequest"];
536
- };
537
- publicv1DeletePolicyRequest: {
538
- request: definitions["activityDeletePolicyRequest"];
539
- };
540
- publicv1DeleteUsersRequest: {
541
- request: definitions["activityDeleteUsersRequest"];
542
- };
543
- publicv1SignMessageRequest: {
544
- request: definitions["activitySignMessageRequest"];
545
- };
546
- publicv1SignTransactionRequest: {
547
- request: definitions["activitySignTransactionRequest"];
548
- };
549
- /** @enum {string} */
550
- resourcesAccessType: "ACCESS_TYPE_WEB" | "ACCESS_TYPE_API" | "ACCESS_TYPE_ALL";
551
- resourcesAddress: {
552
- format?: definitions["resourcesAddressFormat"];
553
- address?: string;
554
- };
555
- /**
556
- * - ADDRESS_FORMAT_UNCOMPRESSED: 04<X_COORDINATE><Y_COORDINATE>
557
- * - ADDRESS_FORMAT_COMPRESSED: 02 or 03, followed by the X coordinate
558
- * - ADDRESS_FORMAT_ETHEREUM: Your standard Ethereum address (0x...). We apply EIP55 casing.
559
- * - ADDRESS_FORMAT_BITCOIN_P2PKH: Bitoin formats. See https://en.bitcoin.it/wiki/List_of_address_prefixes
560
- * @enum {string}
561
- */
562
- resourcesAddressFormat: "ADDRESS_FORMAT_UNCOMPRESSED" | "ADDRESS_FORMAT_COMPRESSED" | "ADDRESS_FORMAT_ETHEREUM" | "ADDRESS_FORMAT_BITCOIN_P2PKH" | "ADDRESS_FORMAT_BITCOIN_P2PKH_TESTNET";
563
- resourcesApiKey: {
564
- credential: definitions["resourcesCredential"];
565
- tags: string[];
566
- uuid: string;
567
- label: string;
568
- createdAt: definitions["resourcesTimestamp"];
569
- updatedAt: definitions["resourcesTimestamp"];
570
409
  };
571
- resourcesAuthenticator: {
572
- transports: definitions["webauthnAuthenticatorTransport"][];
573
- attestationType: string;
574
- aaguid: string;
575
- userId: string;
576
- credentialId: string;
577
- model: string;
578
- credential: definitions["resourcesCredential"];
579
- uuid: string;
580
- label: string;
581
- createdAt: definitions["resourcesTimestamp"];
582
- updatedAt: definitions["resourcesTimestamp"];
583
- tags: string[];
410
+ v1DeleteOrganizationResult: {
411
+ organizationId: string;
584
412
  };
585
- resourcesCredential: {
586
- publicKey: string;
587
- scheme: definitions["signatureSignatureScheme"];
413
+ v1DeletePolicyIntent: {
414
+ /** @inject_tag: validate:"required,uuid" */
415
+ policyId: string;
588
416
  };
589
- /** Key with data that is safe to share publicly */
590
- resourcesExternalKey: {
591
- uuid: string;
592
- publicKey: string;
593
- label: string;
594
- curve: definitions["curveCurve"];
595
- addresses: definitions["resourcesAddress"][];
596
- tags: string[];
417
+ v1DeletePolicyRequest: {
418
+ /** @enum {string} */
419
+ type: "ACTIVITY_TYPE_DELETE_POLICY";
420
+ timestamp: string;
421
+ organizationId: string;
422
+ parameters: definitions["v1DeletePolicyIntent"];
597
423
  };
598
- resourcesInvitation: {
599
- uuid: string;
600
- receiverAlias: string;
601
- receiverEmail: string;
602
- receiverTags: string[];
603
- accessType: definitions["resourcesAccessType"];
604
- status: definitions["resourcesInvitationStatus"];
605
- createdAt: definitions["resourcesTimestamp"];
606
- updatedAt: definitions["resourcesTimestamp"];
607
- senderUserId: string;
424
+ v1DeletePolicyResult: {
425
+ policyId: string;
608
426
  };
609
- /** @enum {string} */
610
- resourcesInvitationStatus: "INVITATION_STATUS_CREATED" | "INVITATION_STATUS_ACCEPTED" | "INVITATION_STATUS_REVOKED";
611
- resourcesKey: {
612
- uuid: string;
613
- /** public key (!= address) */
614
- publicKey: string;
615
- /** encrypted private key */
616
- encryptedPrivateKey: string;
617
- label: string;
618
- curve: definitions["curveCurve"];
619
- addresses: definitions["resourcesAddress"][];
620
- tags: string[];
621
- createdAt: definitions["resourcesTimestamp"];
622
- updatedAt: definitions["resourcesTimestamp"];
427
+ v1DeletePrivateKeyTagsIntent: {
428
+ /** @inject_tag: validate:"required,dive,required,uuid" */
429
+ privateKeyTagIds: string[];
623
430
  };
624
- /** @enum {string} */
625
- resourcesOperator: "OPERATOR_EQUAL" | "OPERATOR_MORE_THAN" | "OPERATOR_MORE_THAN_OR_EQUAL" | "OPERATOR_LESS_THAN" | "OPERATOR_LESS_THAN_OR_EQUAL" | "OPERATOR_CONTAINS" | "OPERATOR_NOT_EQUAL";
626
- resourcesPolicy: {
627
- uuid: string;
628
- label: string;
629
- effect: definitions["policyEffect"];
630
- selectors: definitions["resourcesSelector"][];
631
- createdAt: definitions["resourcesTimestamp"];
632
- updatedAt: definitions["resourcesTimestamp"];
633
- notes: string;
431
+ v1DeletePrivateKeyTagsResult: {
432
+ privateKeyTagIds: string[];
433
+ privateKeyIds: string[];
634
434
  };
635
- resourcesSelector: {
636
- subject: string;
637
- operator: definitions["resourcesOperator"];
638
- target: string;
435
+ v1DeleteUserTagsIntent: {
436
+ /** @inject_tag: validate:"required,dive,required,uuid" */
437
+ userTagIds: string[];
639
438
  };
640
- resourcesTag: {
641
- uuid: string;
642
- label: string;
643
- tagType: definitions["resourcesTagType"];
644
- createdAt: definitions["resourcesTimestamp"];
645
- updatedAt: definitions["resourcesTimestamp"];
439
+ v1DeleteUserTagsResult: {
440
+ userTagIds: string[];
441
+ userIds: string[];
646
442
  };
647
- /** @enum {string} */
648
- resourcesTagType: "TAG_TYPE_USER" | "TAG_TYPE_API_KEY" | "TAG_TYPE_KEY" | "TAG_TYPE_AUTHENTICATOR";
649
- /** Need borsch serialization, so can't use the internal timestamp */
650
- resourcesTimestamp: {
651
- seconds: string;
652
- nanos: string;
443
+ v1DeleteUsersIntent: {
444
+ /** @inject_tag: validate:"required,dive,required,uuid" */
445
+ userIds: string[];
653
446
  };
654
- /**
655
- * - TRANSACTION_TYPE_ETHEREUM: Unsigned Ethereum transaction, RLP-encoded and hex-encoded
656
- * @enum {string}
657
- */
658
- resourcesTransactionType: "TRANSACTION_TYPE_ETHEREUM";
659
- resourcesUser: {
660
- uuid: string;
661
- alias: string;
662
- /** some users do not have emails (programmatic users) */
663
- email?: string;
664
- accessType: definitions["resourcesAccessType"];
665
- authenticators: definitions["resourcesAuthenticator"][];
666
- apiKeys: definitions["resourcesApiKey"][];
667
- tags: string[];
668
- createdAt: definitions["resourcesTimestamp"];
669
- updatedAt: definitions["resourcesTimestamp"];
447
+ v1DeleteUsersResult: {
448
+ userIds: string[];
670
449
  };
671
- rpcStatus: {
672
- /** Format: int32 */
673
- code?: number;
674
- message?: string;
675
- details?: definitions["protobufAny"][];
450
+ v1DisablePrivateKeyIntent: {
451
+ /** @inject_tag: validate:"required,uuid" */
452
+ privateKeyId: string;
676
453
  };
677
- /**
678
- * @description - HASH_FUNCTION_UNSPECIFIED: Default value if hash function is not set explicitly
679
- * - HASH_FUNCTION_NO_OP: No-op function. Useful if you want to pass raw bytes to sign
680
- * - HASH_FUNCTION_SHA256: Standard SHA-256
681
- * - HASH_FUNCTION_KECCAK256: Keccak-256 (not the same as NIST SHA-3!).
682
- * This is the hash function used in the Ethereum ecosystem.
683
- * @enum {string}
684
- */
685
- signatureHashFunction: "HASH_FUNCTION_NO_OP" | "HASH_FUNCTION_SHA256" | "HASH_FUNCTION_KECCAK256";
686
- /**
687
- * - PAYLOAD_ENCODING_UNSPECIFIED: Default value if payload encoding is not set explicitly
688
- * - PAYLOAD_ENCODING_HEXADECIMAL: Payload is encoded in hexadecimal
689
- * We accept 0x-prefixed or non-0x prefixed payloads.
690
- * We accept any casing (uppercase, lowercase, or mixed)
691
- * - PAYLOAD_ENCODING_TEXT_UTF8: Payload is encoded as utf-8 text
692
- * Will be converted to bytes for signature with Rust's standard String.as_bytes()
693
- * @enum {string}
694
- */
695
- signaturePayloadEncoding: "PAYLOAD_ENCODING_HEXADECIMAL" | "PAYLOAD_ENCODING_TEXT_UTF8";
696
- /**
697
- * - SIGNATURE_SCHEME_TK_API_P256: Scheme used for Turnkey's public API
698
- * - SIGNATURE_SCHEME_TK_WEBAUTHN: Scheme used on our UI when users sign with Webauthn
699
- * Public keys are encoded using COSE (https://www.w3.org/TR/webauthn-2/#sctn-encoded-credPubKey-examples)
700
- * - SIGNATURE_SCHEME_TK_QUORUM_P256: Scheme used by our enclave applications
701
- * @enum {string}
702
- */
703
- signatureSignatureScheme: "SIGNATURE_SCHEME_TK_API_P256" | "SIGNATURE_SCHEME_TK_WEBAUTHN" | "SIGNATURE_SCHEME_TK_QUORUM_P256";
704
- v1ActivityResponse: {
705
- activity: definitions["activityActivity"];
454
+ v1DisablePrivateKeyResult: {
455
+ privateKeyId: string;
456
+ };
457
+ v1GetActivitiesRequest: {
458
+ organizationId: string;
459
+ filterByStatus?: definitions["v1ActivityStatus"][];
460
+ };
461
+ v1GetActivitiesResponse: {
462
+ activities: definitions["v1Activity"][];
706
463
  };
707
464
  v1GetActivityRequest: {
708
465
  organizationId: string;
709
466
  activityId: string;
710
467
  };
711
- v1GetKeyRequest: {
468
+ v1GetOrganizationRequest: {
712
469
  organizationId: string;
713
- keyId: string;
714
470
  };
715
- v1GetKeyResponse: {
716
- key: definitions["resourcesExternalKey"];
471
+ v1GetOrganizationResponse: {
472
+ organizationData: definitions["v1OrganizationData"];
717
473
  };
718
- v1GetKeysRequest: {
474
+ v1GetPoliciesRequest: {
719
475
  organizationId: string;
720
476
  };
721
- v1GetKeysResponse: {
722
- keys: definitions["resourcesExternalKey"][];
477
+ v1GetPoliciesResponse: {
478
+ policies: definitions["v1Policy"][];
723
479
  };
724
- v1GetOrganizationRequest: {
480
+ v1GetPolicyRequest: {
725
481
  organizationId: string;
482
+ policyId: string;
726
483
  };
727
- v1GetOrganizationResponse: {
728
- organizationData: definitions["organization_dataOrganizationData"];
484
+ v1GetPolicyResponse: {
485
+ policy: definitions["v1Policy"];
486
+ };
487
+ v1GetPrivateKeyRequest: {
488
+ organizationId: string;
489
+ privateKeyId: string;
490
+ };
491
+ v1GetPrivateKeyResponse: {
492
+ privateKey: definitions["v1PrivateKey"];
493
+ };
494
+ v1GetPrivateKeysRequest: {
495
+ organizationId: string;
496
+ };
497
+ v1GetPrivateKeysResponse: {
498
+ privateKeys: definitions["v1PrivateKey"][];
729
499
  };
730
500
  v1GetUserRequest: {
731
501
  organizationId: string;
732
502
  userId: string;
733
503
  };
734
504
  v1GetUserResponse: {
735
- user: definitions["resourcesUser"];
505
+ user: definitions["v1User"];
736
506
  };
737
507
  v1GetUsersRequest: {
738
508
  organizationId: string;
739
509
  };
740
510
  v1GetUsersResponse: {
741
- users: definitions["resourcesUser"][];
511
+ users: definitions["v1User"][];
742
512
  };
743
513
  v1GetWhoamiRequest: {
744
514
  organizationId: string;
@@ -749,21 +519,121 @@ export type definitions = {
749
519
  userId: string;
750
520
  username: string;
751
521
  };
752
- webauthnAuthenticatorAttestationResponse: {
753
- /** ENCODING: base64url */
754
- clientDataJson: string;
755
- /** ENCODING: base64url */
756
- attestationObject: string;
757
- transports?: definitions["webauthnAuthenticatorTransport"][];
758
- /** @enum {string} */
759
- authenticatorAttachment?: "cross-platform" | "platform" | null;
522
+ /**
523
+ * @description - HASH_FUNCTION_UNSPECIFIED: Default value if hash function is not set explicitly
524
+ * - HASH_FUNCTION_NO_OP: No-op function. Useful if you want to pass raw bytes to sign
525
+ * - HASH_FUNCTION_SHA256: Standard SHA-256
526
+ * - HASH_FUNCTION_KECCAK256: Keccak-256 (not the same as NIST SHA-3!).
527
+ * This is the hash function used in the Ethereum ecosystem.
528
+ * @enum {string}
529
+ */
530
+ v1HashFunction: "HASH_FUNCTION_NO_OP" | "HASH_FUNCTION_SHA256" | "HASH_FUNCTION_KECCAK256";
531
+ v1Intent: {
532
+ createOrganizationIntent: definitions["v1CreateOrganizationIntent"];
533
+ createAuthenticatorsIntent?: definitions["v1CreateAuthenticatorsIntent"];
534
+ createUsersIntent?: definitions["v1CreateUsersIntent"];
535
+ createPrivateKeysIntent?: definitions["v1CreatePrivateKeysIntent"];
536
+ signRawPayloadIntent?: definitions["v1SignRawPayloadIntent"];
537
+ createInvitationsIntent?: definitions["v1CreateInvitationsIntent"];
538
+ acceptInvitationIntent?: definitions["v1AcceptInvitationIntent"];
539
+ createPolicyIntent?: definitions["v1CreatePolicyIntent"];
540
+ disablePrivateKeyIntent?: definitions["v1DisablePrivateKeyIntent"];
541
+ deleteUsersIntent?: definitions["v1DeleteUsersIntent"];
542
+ deleteAuthenticatorsIntent?: definitions["v1DeleteAuthenticatorsIntent"];
543
+ deleteInvitationIntent?: definitions["v1DeleteInvitationIntent"];
544
+ deleteOrganizationIntent?: definitions["v1DeleteOrganizationIntent"];
545
+ deletePolicyIntent?: definitions["v1DeletePolicyIntent"];
546
+ createUserTagIntent?: definitions["v1CreateUserTagIntent"];
547
+ deleteUserTagsIntent?: definitions["v1DeleteUserTagsIntent"];
548
+ signTransactionIntent?: definitions["v1SignTransactionIntent"];
549
+ createApiKeysIntent?: definitions["v1CreateApiKeysIntent"];
550
+ deleteApiKeysIntent?: definitions["v1DeleteApiKeysIntent"];
551
+ approveActivityIntent?: definitions["v1ApproveActivityIntent"];
552
+ rejectActivityIntent?: definitions["v1RejectActivityIntent"];
553
+ createPrivateKeyTagIntent?: definitions["v1CreatePrivateKeyTagIntent"];
554
+ deletePrivateKeyTagsIntent?: definitions["v1DeletePrivateKeyTagsIntent"];
555
+ };
556
+ v1Invitation: {
557
+ invitationId: string;
558
+ receiverAlias: string;
559
+ receiverEmail: string;
560
+ receiverTags: string[];
561
+ accessType: definitions["externaldatav1AccessType"];
562
+ status: definitions["v1InvitationStatus"];
563
+ createdAt: definitions["v1Timestamp"];
564
+ updatedAt: definitions["v1Timestamp"];
565
+ senderUserId: string;
566
+ };
567
+ v1InvitationParams: {
568
+ /** @inject_tag: validate:"required,max=40" */
569
+ receiverUserName: string;
570
+ /** @inject_tag: validate:"required,email" */
571
+ receiverUserEmail: string;
572
+ /** @inject_tag: validate:"dive,uuid" */
573
+ receiverUserTags: string[];
574
+ accessType: definitions["immutableactivityv1AccessType"];
575
+ /** @inject_tag: validate:"required,uuid" */
576
+ senderUserId: string;
760
577
  };
761
578
  /** @enum {string} */
762
- webauthnAuthenticatorTransport: "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID";
763
- webauthnCredPropsAuthenticationExtensionsClientOutputs: {
764
- rk: boolean;
579
+ v1InvitationStatus: "INVITATION_STATUS_CREATED" | "INVITATION_STATUS_ACCEPTED" | "INVITATION_STATUS_REVOKED";
580
+ /**
581
+ * @description This proto definition is used in our external-facing APIs.
582
+ * It's important to leverage annotations because they're used in our external interfaces.
583
+ */
584
+ v1OrganizationData: {
585
+ organizationId?: string;
586
+ name?: string;
587
+ users?: definitions["v1User"][];
588
+ policies?: definitions["v1Policy"][];
589
+ privateKeys?: definitions["v1PrivateKey"][];
590
+ invitations?: definitions["v1Invitation"][];
591
+ tags?: definitions["datav1Tag"][];
592
+ deletedUsers?: definitions["v1User"][];
593
+ deletedPolicies?: definitions["v1Policy"][];
594
+ disabledPrivateKeys?: definitions["v1PrivateKey"][];
595
+ deletedInvitations?: definitions["v1Invitation"][];
596
+ deletedApiKeys?: definitions["v1ApiKey"][];
597
+ deletedAuthenticators?: definitions["v1Authenticator"][];
598
+ deletedTags?: definitions["datav1Tag"][];
599
+ };
600
+ /**
601
+ * - PAYLOAD_ENCODING_UNSPECIFIED: Default value if payload encoding is not set explicitly
602
+ * - PAYLOAD_ENCODING_HEXADECIMAL: Payload is encoded in hexadecimal
603
+ * We accept 0x-prefixed or non-0x prefixed payloads.
604
+ * We accept any casing (uppercase, lowercase, or mixed)
605
+ * - PAYLOAD_ENCODING_TEXT_UTF8: Payload is encoded as utf-8 text
606
+ * Will be converted to bytes for signature with Rust's standard String.as_bytes()
607
+ * @enum {string}
608
+ */
609
+ v1PayloadEncoding: "PAYLOAD_ENCODING_HEXADECIMAL" | "PAYLOAD_ENCODING_TEXT_UTF8";
610
+ v1Policy: {
611
+ policyId: string;
612
+ policyName: string;
613
+ effect: definitions["externaldatav1Effect"];
614
+ selectors: definitions["externaldatav1Selector"][];
615
+ createdAt: definitions["v1Timestamp"];
616
+ updatedAt: definitions["v1Timestamp"];
617
+ notes: string;
618
+ };
619
+ v1PrivateKey: {
620
+ privateKeyId: string;
621
+ publicKey: string;
622
+ privateKeyName: string;
623
+ curve: definitions["externaldatav1Curve"];
624
+ addresses: definitions["externaldatav1Address"][];
625
+ tags: string[];
626
+ };
627
+ v1PrivateKeyParams: {
628
+ /** @inject_tag: validate:"required,max=40" */
629
+ privateKeyName: string;
630
+ curve: definitions["immutableactivityv1Curve"];
631
+ /** @inject_tag: validate:"dive,uuid" */
632
+ privateKeyTags: string[];
633
+ /** @inject_tag: validate:"required" */
634
+ addressFormats: definitions["immutableactivityv1AddressFormat"][];
765
635
  };
766
- webauthnPublicKeyCredentialWithAttestation: {
636
+ v1PublicKeyCredentialWithAttestation: {
767
637
  id: string;
768
638
  /**
769
639
  * Must be literal string "public-key"
@@ -774,13 +644,121 @@ export type definitions = {
774
644
  rawId: string;
775
645
  /** @enum {string} */
776
646
  authenticatorAttachment?: "cross-platform" | "platform" | null;
777
- response: definitions["webauthnAuthenticatorAttestationResponse"];
778
- clientExtensionResults: definitions["webauthnSimpleClientExtensionResults"];
647
+ response: definitions["v1AuthenticatorAttestationResponse"];
648
+ clientExtensionResults: definitions["v1SimpleClientExtensionResults"];
649
+ };
650
+ v1RejectActivityIntent: {
651
+ /** @inject_tag: validate:"required" */
652
+ fingerprint: string;
653
+ };
654
+ v1Result: {
655
+ createOrganizationResult?: definitions["v1CreateOrganizationResult"];
656
+ createAuthenticatorsResult?: definitions["v1CreateAuthenticatorsResult"];
657
+ createUsersResult?: definitions["v1CreateUsersResult"];
658
+ createPrivateKeysResult?: definitions["v1CreatePrivateKeysResult"];
659
+ createInvitationsResult?: definitions["v1CreateInvitationsResult"];
660
+ acceptInvitationResult?: definitions["v1AcceptInvitationResult"];
661
+ signRawPayloadResult?: definitions["v1SignRawPayloadResult"];
662
+ createPolicyResult?: definitions["v1CreatePolicyResult"];
663
+ disablePrivateKeyResult?: definitions["v1DisablePrivateKeyResult"];
664
+ deleteUsersResult?: definitions["v1DeleteUsersResult"];
665
+ deleteAuthenticatorsResult?: definitions["v1DeleteAuthenticatorsResult"];
666
+ deleteInvitationResult?: definitions["v1DeleteInvitationResult"];
667
+ deleteOrganizationResult?: definitions["v1DeleteOrganizationResult"];
668
+ deletePolicyResult?: definitions["v1DeletePolicyResult"];
669
+ createUserTagResult?: definitions["v1CreateUserTagResult"];
670
+ deleteUserTagsResult?: definitions["v1DeleteUserTagsResult"];
671
+ signTransactionResult?: definitions["v1SignTransactionResult"];
672
+ deleteApiKeysResult?: definitions["v1DeleteApiKeysResult"];
673
+ createApiKeysResult?: definitions["v1CreateApiKeysResult"];
674
+ createPrivateKeyTagResult?: definitions["v1CreatePrivateKeyTagResult"];
675
+ deletePrivateKeyTagsResult?: definitions["v1DeletePrivateKeyTagsResult"];
676
+ };
677
+ v1SignRawPayloadIntent: {
678
+ /** @inject_tag: validate:"required,uuid" */
679
+ keyId: string;
680
+ /** @inject_tag: validate:"required" */
681
+ payload: string;
682
+ encoding: definitions["v1PayloadEncoding"];
683
+ hashFunction: definitions["v1HashFunction"];
684
+ };
685
+ v1SignRawPayloadRequest: {
686
+ /** @enum {string} */
687
+ type: "ACTIVITY_TYPE_SIGN_RAW_PAYLOAD";
688
+ timestamp: string;
689
+ organizationId: string;
690
+ parameters: definitions["v1SignRawPayloadIntent"];
691
+ };
692
+ v1SignRawPayloadResult: {
693
+ r: string;
694
+ s: string;
695
+ v: string;
696
+ };
697
+ v1SignTransactionIntent: {
698
+ /** @inject_tag: validate:"required,uuid" */
699
+ keyId: string;
700
+ /** @inject_tag: validate:"required" */
701
+ unsignedTransaction: string;
702
+ type: definitions["immutableactivityv1TransactionType"];
703
+ };
704
+ v1SignTransactionRequest: {
705
+ /** @enum {string} */
706
+ type: "ACTIVITY_TYPE_SIGN_TRANSACTION";
707
+ timestamp: string;
708
+ organizationId: string;
709
+ parameters: definitions["v1SignTransactionIntent"];
710
+ };
711
+ v1SignTransactionResult: {
712
+ signedTransaction: string;
779
713
  };
780
- webauthnSimpleClientExtensionResults: {
714
+ v1SimpleClientExtensionResults: {
781
715
  appid?: boolean;
782
716
  appidExclude?: boolean;
783
- credProps?: definitions["webauthnCredPropsAuthenticationExtensionsClientOutputs"];
717
+ credProps?: definitions["v1CredPropsAuthenticationExtensionsClientOutputs"];
718
+ };
719
+ /** @enum {string} */
720
+ v1TagType: "TAG_TYPE_USER" | "TAG_TYPE_PRIVATE_KEY";
721
+ v1Timestamp: {
722
+ seconds: string;
723
+ nanos: string;
724
+ };
725
+ v1User: {
726
+ userId: string;
727
+ alias: string;
728
+ /** some users do not have emails (programmatic users) */
729
+ email?: string;
730
+ accessType: definitions["externaldatav1AccessType"];
731
+ authenticators: definitions["v1Authenticator"][];
732
+ apiKeys: definitions["v1ApiKey"][];
733
+ tags: string[];
734
+ createdAt: definitions["v1Timestamp"];
735
+ updatedAt: definitions["v1Timestamp"];
736
+ };
737
+ v1UserParams: {
738
+ /** @inject_tag: validate:"required,max=40" */
739
+ userName: string;
740
+ /** @inject_tag: validate:"email" */
741
+ userEmail?: string;
742
+ accessType: definitions["immutableactivityv1AccessType"];
743
+ /** @inject_tag: validate:"dive,uuid" */
744
+ apiKeys: definitions["v1ApiKeyParams"][];
745
+ /** @inject_tag: validate:"dive" */
746
+ authenticators: definitions["v1AuthenticatorParams"][];
747
+ /** @inject_tag: validate:"dive,uuid" */
748
+ userTags: string[];
749
+ };
750
+ v1Vote: {
751
+ id: string;
752
+ userId: string;
753
+ user: definitions["v1User"];
754
+ activityId: string;
755
+ /** @enum {string} */
756
+ selection: "VOTE_SELECTION_APPROVED" | "VOTE_SELECTION_REJECTED";
757
+ message: string;
758
+ publicKey: string;
759
+ signature: string;
760
+ scheme: string;
761
+ createdAt: definitions["v1Timestamp"];
784
762
  };
785
763
  };
786
764
  export type operations = {
@@ -810,17 +788,17 @@ export type operations = {
810
788
  };
811
789
  };
812
790
  };
813
- /** Get details about a Private Key */
814
- PublicApiService_GetKey: {
791
+ /** Get details about an Organization */
792
+ PublicApiService_GetOrganization: {
815
793
  parameters: {
816
794
  body: {
817
- body: definitions["v1GetKeyRequest"];
795
+ body: definitions["v1GetOrganizationRequest"];
818
796
  };
819
797
  };
820
798
  responses: {
821
799
  /** A successful response. */
822
800
  200: {
823
- schema: definitions["v1GetKeyResponse"];
801
+ schema: definitions["v1GetOrganizationResponse"];
824
802
  };
825
803
  /** Returned when the user does not have permission to access the resource. */
826
804
  403: {
@@ -836,17 +814,17 @@ export type operations = {
836
814
  };
837
815
  };
838
816
  };
839
- /** Get details about an Organization */
840
- PublicApiService_GetOrganization: {
817
+ /** Get details about a Policy */
818
+ PublicApiService_GetPolicy: {
841
819
  parameters: {
842
820
  body: {
843
- body: definitions["v1GetOrganizationRequest"];
821
+ body: definitions["v1GetPolicyRequest"];
844
822
  };
845
823
  };
846
824
  responses: {
847
825
  /** A successful response. */
848
826
  200: {
849
- schema: definitions["v1GetOrganizationResponse"];
827
+ schema: definitions["v1GetPolicyResponse"];
850
828
  };
851
829
  /** Returned when the user does not have permission to access the resource. */
852
830
  403: {
@@ -888,17 +866,17 @@ export type operations = {
888
866
  };
889
867
  };
890
868
  };
891
- /** List all Private Keys within an Organization */
892
- PublicApiService_GetKeys: {
869
+ /** List all Activities within an Organization */
870
+ PublicApiService_GetActivities: {
893
871
  parameters: {
894
872
  body: {
895
- body: definitions["v1GetKeysRequest"];
873
+ body: definitions["v1GetActivitiesRequest"];
896
874
  };
897
875
  };
898
876
  responses: {
899
877
  /** A successful response. */
900
878
  200: {
901
- schema: definitions["v1GetKeysResponse"];
879
+ schema: definitions["v1GetActivitiesResponse"];
902
880
  };
903
881
  /** Returned when the user does not have permission to access the resource. */
904
882
  403: {
@@ -914,17 +892,17 @@ export type operations = {
914
892
  };
915
893
  };
916
894
  };
917
- /** List all Users within an Organization */
918
- PublicApiService_GetUsers: {
895
+ /** List all Policies within an Organization */
896
+ PublicApiService_GetPolicies: {
919
897
  parameters: {
920
898
  body: {
921
- body: definitions["v1GetUsersRequest"];
899
+ body: definitions["v1GetPoliciesRequest"];
922
900
  };
923
901
  };
924
902
  responses: {
925
903
  /** A successful response. */
926
904
  200: {
927
- schema: definitions["v1GetUsersResponse"];
905
+ schema: definitions["v1GetPoliciesResponse"];
928
906
  };
929
907
  /** Returned when the user does not have permission to access the resource. */
930
908
  403: {
@@ -940,17 +918,17 @@ export type operations = {
940
918
  };
941
919
  };
942
920
  };
943
- /** Get basic information about your current API user and your organization */
944
- PublicApiService_GetWhoami: {
921
+ /** List all Private Keys within an Organization */
922
+ PublicApiService_GetPrivateKeys: {
945
923
  parameters: {
946
924
  body: {
947
- body: definitions["v1GetWhoamiRequest"];
925
+ body: definitions["v1GetPrivateKeysRequest"];
948
926
  };
949
927
  };
950
928
  responses: {
951
929
  /** A successful response. */
952
930
  200: {
953
- schema: definitions["v1GetWhoamiResponse"];
931
+ schema: definitions["v1GetPrivateKeysResponse"];
954
932
  };
955
933
  /** Returned when the user does not have permission to access the resource. */
956
934
  403: {
@@ -966,17 +944,17 @@ export type operations = {
966
944
  };
967
945
  };
968
946
  };
969
- /** Add api keys to an existing User */
970
- PublicApiService_CreateApiKeys: {
947
+ /** List all Users within an Organization */
948
+ PublicApiService_GetUsers: {
971
949
  parameters: {
972
950
  body: {
973
- body: definitions["publicv1CreateApiKeysRequest"];
951
+ body: definitions["v1GetUsersRequest"];
974
952
  };
975
953
  };
976
954
  responses: {
977
955
  /** A successful response. */
978
956
  200: {
979
- schema: definitions["v1ActivityResponse"];
957
+ schema: definitions["v1GetUsersResponse"];
980
958
  };
981
959
  /** Returned when the user does not have permission to access the resource. */
982
960
  403: {
@@ -992,11 +970,37 @@ export type operations = {
992
970
  };
993
971
  };
994
972
  };
995
- /** Create Invitations to join an existing Organization */
996
- PublicApiService_CreateInvitations: {
973
+ /** Get basic information about your current API user and your organization */
974
+ PublicApiService_GetWhoami: {
975
+ parameters: {
976
+ body: {
977
+ body: definitions["v1GetWhoamiRequest"];
978
+ };
979
+ };
980
+ responses: {
981
+ /** A successful response. */
982
+ 200: {
983
+ schema: definitions["v1GetWhoamiResponse"];
984
+ };
985
+ /** Returned when the user does not have permission to access the resource. */
986
+ 403: {
987
+ schema: unknown;
988
+ };
989
+ /** Returned when the resource does not exist. */
990
+ 404: {
991
+ schema: string;
992
+ };
993
+ /** An unexpected error response. */
994
+ default: {
995
+ schema: definitions["rpcStatus"];
996
+ };
997
+ };
998
+ };
999
+ /** Add api keys to an existing User */
1000
+ PublicApiService_CreateApiKeys: {
997
1001
  parameters: {
998
1002
  body: {
999
- body: definitions["publicv1CreateInvitationsRequest"];
1003
+ body: definitions["v1CreateApiKeysRequest"];
1000
1004
  };
1001
1005
  };
1002
1006
  responses: {
@@ -1018,11 +1022,11 @@ export type operations = {
1018
1022
  };
1019
1023
  };
1020
1024
  };
1021
- /** Create new Private Keys */
1022
- PublicApiService_CreateKeys: {
1025
+ /** Create Invitations to join an existing Organization */
1026
+ PublicApiService_CreateInvitations: {
1023
1027
  parameters: {
1024
1028
  body: {
1025
- body: definitions["publicv1CreateKeysRequest"];
1029
+ body: definitions["v1CreateInvitationsRequest"];
1026
1030
  };
1027
1031
  };
1028
1032
  responses: {
@@ -1048,7 +1052,7 @@ export type operations = {
1048
1052
  PublicApiService_CreatePolicy: {
1049
1053
  parameters: {
1050
1054
  body: {
1051
- body: definitions["publicv1CreatePolicyRequest"];
1055
+ body: definitions["v1CreatePolicyRequest"];
1052
1056
  };
1053
1057
  };
1054
1058
  responses: {
@@ -1070,11 +1074,11 @@ export type operations = {
1070
1074
  };
1071
1075
  };
1072
1076
  };
1073
- /** Create new API Users */
1074
- PublicApiService_CreateUsers: {
1077
+ /** Create new Private Keys */
1078
+ PublicApiService_CreatePrivateKeys: {
1075
1079
  parameters: {
1076
1080
  body: {
1077
- body: definitions["publicv1CreateUsersRequest"];
1081
+ body: definitions["v1CreatePrivateKeysRequest"];
1078
1082
  };
1079
1083
  };
1080
1084
  responses: {
@@ -1100,7 +1104,7 @@ export type operations = {
1100
1104
  PublicApiService_DeleteApiKeys: {
1101
1105
  parameters: {
1102
1106
  body: {
1103
- body: definitions["publicv1DeleteApiKeysRequest"];
1107
+ body: definitions["v1DeleteApiKeysRequest"];
1104
1108
  };
1105
1109
  };
1106
1110
  responses: {
@@ -1126,7 +1130,7 @@ export type operations = {
1126
1130
  PublicApiService_DeleteInvitation: {
1127
1131
  parameters: {
1128
1132
  body: {
1129
- body: definitions["publicv1DeleteInvitationRequest"];
1133
+ body: definitions["v1DeleteInvitationRequest"];
1130
1134
  };
1131
1135
  };
1132
1136
  responses: {
@@ -1152,7 +1156,7 @@ export type operations = {
1152
1156
  PublicApiService_DeletePolicy: {
1153
1157
  parameters: {
1154
1158
  body: {
1155
- body: definitions["publicv1DeletePolicyRequest"];
1159
+ body: definitions["v1DeletePolicyRequest"];
1156
1160
  };
1157
1161
  };
1158
1162
  responses: {
@@ -1174,11 +1178,11 @@ export type operations = {
1174
1178
  };
1175
1179
  };
1176
1180
  };
1177
- /** Deactivate an existing User */
1178
- PublicApiService_DeleteUsers: {
1181
+ /** Sign a raw payload with a Private Key */
1182
+ PublicApiService_SignRawPayload: {
1179
1183
  parameters: {
1180
1184
  body: {
1181
- body: definitions["publicv1DeleteUsersRequest"];
1185
+ body: definitions["v1SignRawPayloadRequest"];
1182
1186
  };
1183
1187
  };
1184
1188
  responses: {
@@ -1200,11 +1204,11 @@ export type operations = {
1200
1204
  };
1201
1205
  };
1202
1206
  };
1203
- /** Sign a message with a Private Key */
1204
- PublicApiService_SignMessage: {
1207
+ /** Sign a transaction with a Private Key */
1208
+ PublicApiService_SignTransaction: {
1205
1209
  parameters: {
1206
1210
  body: {
1207
- body: definitions["publicv1SignMessageRequest"];
1211
+ body: definitions["v1SignTransactionRequest"];
1208
1212
  };
1209
1213
  };
1210
1214
  responses: {
@@ -1226,17 +1230,17 @@ export type operations = {
1226
1230
  };
1227
1231
  };
1228
1232
  };
1229
- /** Sign a transaction with a Private Key */
1230
- PublicApiService_SignTransaction: {
1233
+ /** Get details about a Private Key */
1234
+ PublicApiService_GetPrivateKey: {
1231
1235
  parameters: {
1232
1236
  body: {
1233
- body: definitions["publicv1SignTransactionRequest"];
1237
+ body: definitions["v1GetPrivateKeyRequest"];
1234
1238
  };
1235
1239
  };
1236
1240
  responses: {
1237
1241
  /** A successful response. */
1238
1242
  200: {
1239
- schema: definitions["v1ActivityResponse"];
1243
+ schema: definitions["v1GetPrivateKeyResponse"];
1240
1244
  };
1241
1245
  /** Returned when the user does not have permission to access the resource. */
1242
1246
  403: {