@1claw/openapi-spec 0.61.50 → 0.61.52

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.50",
5
+ "version": "0.61.52",
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"
@@ -7034,6 +7034,28 @@
7034
7034
  "summary": "Your own referral link and signups",
7035
7035
  "description": "The caller's referral code, the link to share, how many signups it has\nproduced, and a recent list.\n\nUsers only — a referral link belongs to a person, so an agent principal\ngets 403.\n\nThe link's host comes from the brand the request arrived on, the same\nway the SIWE domain and the WebAuthn rpId do: someone on 1claw.co must\nnot be handed a 1claw.xyz link to post.\n\n`recent[].referred_hint` is masked (`a**@example.com`) — enough to\nrecognise someone you did invite, not enough to contact someone you did\nnot. Neither the referred address nor its user id is returned.\n",
7036
7036
  "operationId": "getMyReferrals",
7037
+ "parameters": [
7038
+ {
7039
+ "in": "query",
7040
+ "name": "from",
7041
+ "required": false,
7042
+ "schema": {
7043
+ "type": "string",
7044
+ "format": "date-time"
7045
+ },
7046
+ "description": "Start of a half-open window `[from, to)` on when the referral was made.\nSame boundary rule as the admin leaderboard, so the two cannot disagree\nabout a referral landing on the edge. Omit for no lower bound.\n"
7047
+ },
7048
+ {
7049
+ "in": "query",
7050
+ "name": "to",
7051
+ "required": false,
7052
+ "schema": {
7053
+ "type": "string",
7054
+ "format": "date-time"
7055
+ },
7056
+ "description": "End of the window, exclusive. A contest run \"through the 31st\" passes the\n1st of the next month. Omit for no upper bound.\n"
7057
+ }
7058
+ ],
7037
7059
  "responses": {
7038
7060
  "200": {
7039
7061
  "description": "The caller's referral code, link and signup count",
@@ -18366,7 +18388,7 @@
18366
18388
  "OAuth"
18367
18389
  ],
18368
18390
  "summary": "Get authenticated user info (OIDC UserInfo)",
18369
- "description": "Standard OIDC UserInfo endpoint. Returns claims about the authenticated user\nbased on the granted scopes.\n",
18391
+ "description": "Standard OIDC UserInfo endpoint. Returns claims about the authenticated user\nbased on the granted scopes.\n\nScopes: `profile` for `name`, `email` for `email`, `wallet` for\n`wallet_address`, and `referral` for `referral_code` and `referral_link`.\nA non-OAuth user token sees every field, since it is the user's own data.\n\n`referral` is separate from `profile` deliberately: a referral code is\nsomething the holder is asked to spread, so an app has to request it by name\nand the consent screen names it.\n",
18370
18392
  "operationId": "getOAuthUserInfo",
18371
18393
  "security": [
18372
18394
  {
@@ -32962,6 +32984,7 @@
32962
32984
  "code",
32963
32985
  "link",
32964
32986
  "total",
32987
+ "qualified",
32965
32988
  "recent"
32966
32989
  ],
32967
32990
  "properties": {
@@ -32979,7 +33002,21 @@
32979
33002
  "total": {
32980
33003
  "type": "integer",
32981
33004
  "format": "int64",
32982
- "description": "Countable signups attributed to this code."
33005
+ "description": "Countable signups attributed to this code, one per person."
33006
+ },
33007
+ "qualified": {
33008
+ "type": "integer",
33009
+ "format": "int64",
33010
+ "description": "Of those, the ones on a live paid subscription — what a contest settles\non. Always <= `total`.\n"
33011
+ },
33012
+ "from": {
33013
+ "type": "string",
33014
+ "format": "date-time",
33015
+ "description": "Echoed back when a window was requested, so a caller can confirm which window produced these numbers."
33016
+ },
33017
+ "to": {
33018
+ "type": "string",
33019
+ "format": "date-time"
32983
33020
  },
32984
33021
  "recent": {
32985
33022
  "type": "array",
@@ -43986,6 +44023,22 @@
43986
44023
  "string",
43987
44024
  "null"
43988
44025
  ]
44026
+ },
44027
+ "referral_code": {
44028
+ "type": [
44029
+ "string",
44030
+ "null"
44031
+ ],
44032
+ "description": "The user's referral code, returned only under the `referral` scope.\nMinted on first read, so a user signing in to a partner site for the\nfirst time still gets one.\n",
44033
+ "example": "7f3a9c2b"
44034
+ },
44035
+ "referral_link": {
44036
+ "type": [
44037
+ "string",
44038
+ "null"
44039
+ ],
44040
+ "description": "The same code as a shareable URL, built for the brand the request\narrived on — returned so a host app never has to assemble it and pick\nthe wrong domain.\n",
44041
+ "example": "https://1claw.co/?ref=7f3a9c2b"
43989
44042
  }
43990
44043
  }
43991
44044
  },
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.50"
5
+ version: "0.61.52"
6
6
  description: |
7
7
  Secure secret management for AI agents. Provides vaults, secrets,
8
8
  policy-based access control, agent identity, Intents API,
@@ -4549,6 +4549,22 @@ paths:
4549
4549
  recognise someone you did invite, not enough to contact someone you did
4550
4550
  not. Neither the referred address nor its user id is returned.
4551
4551
  operationId: getMyReferrals
4552
+ parameters:
4553
+ - in: query
4554
+ name: from
4555
+ required: false
4556
+ schema: { type: string, format: date-time }
4557
+ description: |
4558
+ Start of a half-open window `[from, to)` on when the referral was made.
4559
+ Same boundary rule as the admin leaderboard, so the two cannot disagree
4560
+ about a referral landing on the edge. Omit for no lower bound.
4561
+ - in: query
4562
+ name: to
4563
+ required: false
4564
+ schema: { type: string, format: date-time }
4565
+ description: |
4566
+ End of the window, exclusive. A contest run "through the 31st" passes the
4567
+ 1st of the next month. Omit for no upper bound.
4552
4568
  responses:
4553
4569
  "200":
4554
4570
  description: The caller's referral code, link and signup count
@@ -11732,6 +11748,14 @@ paths:
11732
11748
  description: |
11733
11749
  Standard OIDC UserInfo endpoint. Returns claims about the authenticated user
11734
11750
  based on the granted scopes.
11751
+
11752
+ Scopes: `profile` for `name`, `email` for `email`, `wallet` for
11753
+ `wallet_address`, and `referral` for `referral_code` and `referral_link`.
11754
+ A non-OAuth user token sees every field, since it is the user's own data.
11755
+
11756
+ `referral` is separate from `profile` deliberately: a referral code is
11757
+ something the holder is asked to spread, so an app has to request it by name
11758
+ and the consent screen names it.
11735
11759
  operationId: getOAuthUserInfo
11736
11760
  security:
11737
11761
  - BearerAuth: []
@@ -21148,7 +21172,7 @@ components:
21148
21172
  schemas:
21149
21173
  MyReferralsResponse:
21150
21174
  type: object
21151
- required: [code, link, total, recent]
21175
+ required: [code, link, total, qualified, recent]
21152
21176
  properties:
21153
21177
  code:
21154
21178
  type: string
@@ -21162,7 +21186,20 @@ components:
21162
21186
  total:
21163
21187
  type: integer
21164
21188
  format: int64
21165
- description: Countable signups attributed to this code.
21189
+ description: Countable signups attributed to this code, one per person.
21190
+ qualified:
21191
+ type: integer
21192
+ format: int64
21193
+ description: |
21194
+ Of those, the ones on a live paid subscription — what a contest settles
21195
+ on. Always <= `total`.
21196
+ from:
21197
+ type: string
21198
+ format: date-time
21199
+ description: Echoed back when a window was requested, so a caller can confirm which window produced these numbers.
21200
+ to:
21201
+ type: string
21202
+ format: date-time
21166
21203
  recent:
21167
21204
  type: array
21168
21205
  items:
@@ -28217,6 +28254,20 @@ components:
28217
28254
  type: [string, "null"]
28218
28255
  wallet_address:
28219
28256
  type: [string, "null"]
28257
+ referral_code:
28258
+ type: [string, "null"]
28259
+ description: |
28260
+ The user's referral code, returned only under the `referral` scope.
28261
+ Minted on first read, so a user signing in to a partner site for the
28262
+ first time still gets one.
28263
+ example: 7f3a9c2b
28264
+ referral_link:
28265
+ type: [string, "null"]
28266
+ description: |
28267
+ The same code as a shareable URL, built for the brand the request
28268
+ arrived on — returned so a host app never has to assemble it and pick
28269
+ the wrong domain.
28270
+ example: https://1claw.co/?ref=7f3a9c2b
28220
28271
 
28221
28272
  # --- Spend Policies ---
28222
28273
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@1claw/openapi-spec",
3
- "version": "0.61.50",
3
+ "version": "0.61.52",
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": {