@1claw/openapi-spec 0.61.13 → 0.61.14

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 CHANGED
@@ -2,7 +2,7 @@
2
2
  "openapi": "3.1.0",
3
3
  "info": {
4
4
  "title": "1Claw API",
5
- "version": "0.61.13",
5
+ "version": "0.61.14",
6
6
  "description": "Secure secret management for AI agents. Provides vaults, secrets,\npolicy-based access control, agent identity, Intents API,\nsharing, billing, and audit logging. Automations (workflow_spec,\nwebhook tokens, event triggers, Assist), cloud runtimes with\ninteractive shell sessions, agent memory, and discovery.\n\n## Domains\n\n`api.1claw.co` is canonical: it is the OIDC issuer, the `aud` the API\nmints, and the first entry in `servers` — a generated client takes its\nbase URL from there, and the previous ordering pointed every SDK at the\ndomain the issuer had already left. `api.1claw.xyz` still answers and is\nstill accepted on token validation, because tokens minted before the\nmove carry it; it is never minted now.\n\nOne deliberate exception: the Shroud attestation identity token is\nrequested from GCP with `audience: https://api.1claw.xyz`, so\n`/v1/shroud/attestation` reports that as its `expected_audience`. That\nis accurate rather than stale — the audience is a verification contract\nwith anyone already checking the token, and moving it is a breaking\nchange for them, not a rename.\n\nAll endpoints require JWT Bearer authentication unless marked with\n`security: []`.\n",
7
7
  "contact": {
8
8
  "email": "ops@1claw.co"
@@ -1318,6 +1318,76 @@
1318
1318
  }
1319
1319
  }
1320
1320
  },
1321
+ "/v1/auth/feature-quota/consume": {
1322
+ "post": {
1323
+ "tags": [
1324
+ "Authentication"
1325
+ ],
1326
+ "summary": "Count one call against a per-user feature quota",
1327
+ "description": "Atomic fixed-window counter for metered dashboard features (currently\n`voice_brief`, 30 calls per hour). The limit and window are defined\nserver-side; the caller only names the feature. Users only.\n",
1328
+ "operationId": "consumeFeatureQuota",
1329
+ "requestBody": {
1330
+ "required": true,
1331
+ "content": {
1332
+ "application/json": {
1333
+ "schema": {
1334
+ "type": "object",
1335
+ "required": [
1336
+ "feature"
1337
+ ],
1338
+ "properties": {
1339
+ "feature": {
1340
+ "type": "string",
1341
+ "enum": [
1342
+ "voice_brief"
1343
+ ]
1344
+ }
1345
+ }
1346
+ }
1347
+ }
1348
+ }
1349
+ },
1350
+ "responses": {
1351
+ "200": {
1352
+ "description": "Whether this call is within the window's limit",
1353
+ "content": {
1354
+ "application/json": {
1355
+ "schema": {
1356
+ "type": "object",
1357
+ "required": [
1358
+ "allowed",
1359
+ "limit",
1360
+ "remaining",
1361
+ "reset_at"
1362
+ ],
1363
+ "properties": {
1364
+ "allowed": {
1365
+ "type": "boolean"
1366
+ },
1367
+ "limit": {
1368
+ "type": "integer"
1369
+ },
1370
+ "remaining": {
1371
+ "type": "integer"
1372
+ },
1373
+ "reset_at": {
1374
+ "type": "string",
1375
+ "format": "date-time"
1376
+ }
1377
+ }
1378
+ }
1379
+ }
1380
+ }
1381
+ },
1382
+ "400": {
1383
+ "$ref": "#/components/responses/BadRequest"
1384
+ },
1385
+ "403": {
1386
+ "$ref": "#/components/responses/Forbidden"
1387
+ }
1388
+ }
1389
+ }
1390
+ },
1321
1391
  "/v1/auth/me": {
1322
1392
  "get": {
1323
1393
  "tags": [
package/openapi.yaml CHANGED
@@ -2,7 +2,7 @@ openapi: 3.1.0
2
2
 
3
3
  info:
4
4
  title: 1Claw API
5
- version: "0.61.13"
5
+ version: "0.61.14"
6
6
  description: |
7
7
  Secure secret management for AI agents. Provides vaults, secrets,
8
8
  policy-based access control, agent identity, Intents API,
@@ -914,6 +914,43 @@ paths:
914
914
  "403":
915
915
  $ref: "#/components/responses/Forbidden"
916
916
 
917
+ /v1/auth/feature-quota/consume:
918
+ post:
919
+ tags: [Authentication]
920
+ summary: Count one call against a per-user feature quota
921
+ description: |
922
+ Atomic fixed-window counter for metered dashboard features (currently
923
+ `voice_brief`, 30 calls per hour). The limit and window are defined
924
+ server-side; the caller only names the feature. Users only.
925
+ operationId: consumeFeatureQuota
926
+ requestBody:
927
+ required: true
928
+ content:
929
+ application/json:
930
+ schema:
931
+ type: object
932
+ required: [feature]
933
+ properties:
934
+ feature:
935
+ type: string
936
+ enum: [voice_brief]
937
+ responses:
938
+ "200":
939
+ description: Whether this call is within the window's limit
940
+ content:
941
+ application/json:
942
+ schema:
943
+ type: object
944
+ required: [allowed, limit, remaining, reset_at]
945
+ properties:
946
+ allowed: { type: boolean }
947
+ limit: { type: integer }
948
+ remaining: { type: integer }
949
+ reset_at: { type: string, format: date-time }
950
+ "400":
951
+ $ref: "#/components/responses/BadRequest"
952
+ "403":
953
+ $ref: "#/components/responses/Forbidden"
917
954
  /v1/auth/me:
918
955
  get:
919
956
  tags: [Authentication]
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@1claw/openapi-spec",
3
- "version": "0.61.13",
3
+ "version": "0.61.14",
4
4
  "description": "OpenAPI 3.1.0 specification for the 1Claw Vault API \u2014 generate clients in any language",
5
5
  "license": "MIT",
6
6
  "repository": {