@1claw/openapi-spec 0.44.3 → 0.45.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 CHANGED
@@ -40,7 +40,14 @@ openapi-generator generate \
40
40
  import spec from "@1claw/openapi-spec/openapi.json";
41
41
  ```
42
42
 
43
- ## What's in the spec (v0.44.0 — API `info.version` 2.33.0)
43
+ ## What's in the spec (v0.44.4 — API `info.version` 2.33.0)
44
+
45
+ ### OAuth & Platform enhancements (0.44.4)
46
+ - **OAuth token revocation** — `POST /v1/oauth/revoke` (RFC 7009 token revocation)
47
+ - **Consent revocation** — `DELETE /v1/oauth/consents/{app_id}` (user revokes consent for a specific app)
48
+ - **Platform marketplace** — `GET /v1/platform/marketplace` (public listing of approved platform apps)
49
+ - **App statistics** — `GET /v1/platform/apps/{id}/stats` (usage and connection statistics for a platform app)
50
+ - **Webhook secret rotation** — `POST /v1/platform/apps/{id}/rotate-webhook-secret` (rotate a platform app's webhook signing secret)
44
51
 
45
52
  ### Automations v2 & Channels (2.33)
46
53
  - **Automations v2** — Workflow engine with multi-step pipelines, 14 step types, `{{...}}` template variables, conditional logic (`skip_if`/`run_if`), 10 marketing presets, webhook/event/cron/manual triggers. Enriched list API with `last_run_status`, `total_runs`, `success_rate`, `agent_name`. Run detail with `context` JSONB. Assist NL→workflow drafting.
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.33.0",
5
+ "version": "2.34.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. Automations (workflow_spec,\nwebhook tokens, event triggers, Assist), cloud runtimes with\ninteractive shell sessions, agent memory, and discovery.\n\nAll endpoints require JWT Bearer authentication unless marked with\n`security: []`.\n",
7
7
  "contact": {
8
8
  "email": "ops@1claw.xyz"
@@ -7712,6 +7712,106 @@
7712
7712
  }
7713
7713
  }
7714
7714
  },
7715
+ "/v1/platform/apps/{appId}/stats": {
7716
+ "get": {
7717
+ "tags": [
7718
+ "Platform"
7719
+ ],
7720
+ "summary": "Get platform app statistics",
7721
+ "description": "Returns aggregate statistics about a platform app's connected users, bootstraps, and grants.",
7722
+ "operationId": "getPlatformAppStats",
7723
+ "security": [
7724
+ {
7725
+ "BearerAuth": []
7726
+ }
7727
+ ],
7728
+ "parameters": [
7729
+ {
7730
+ "name": "appId",
7731
+ "in": "path",
7732
+ "required": true,
7733
+ "schema": {
7734
+ "type": "string",
7735
+ "format": "uuid"
7736
+ }
7737
+ }
7738
+ ],
7739
+ "responses": {
7740
+ "200": {
7741
+ "description": "App statistics",
7742
+ "content": {
7743
+ "application/json": {
7744
+ "schema": {
7745
+ "$ref": "#/components/schemas/PlatformAppStatsResponse"
7746
+ }
7747
+ }
7748
+ }
7749
+ },
7750
+ "401": {
7751
+ "$ref": "#/components/responses/Unauthorized"
7752
+ },
7753
+ "404": {
7754
+ "$ref": "#/components/responses/NotFound"
7755
+ }
7756
+ }
7757
+ }
7758
+ },
7759
+ "/v1/platform/apps/{appId}/rotate-webhook-secret": {
7760
+ "post": {
7761
+ "tags": [
7762
+ "Platform"
7763
+ ],
7764
+ "summary": "Rotate webhook secret",
7765
+ "description": "Generate a new webhook signing secret for the platform app. The old secret is immediately invalidated. Returns the new secret (one-time).",
7766
+ "operationId": "rotatePlatformWebhookSecret",
7767
+ "security": [
7768
+ {
7769
+ "BearerAuth": []
7770
+ }
7771
+ ],
7772
+ "parameters": [
7773
+ {
7774
+ "name": "appId",
7775
+ "in": "path",
7776
+ "required": true,
7777
+ "schema": {
7778
+ "type": "string",
7779
+ "format": "uuid"
7780
+ }
7781
+ }
7782
+ ],
7783
+ "responses": {
7784
+ "200": {
7785
+ "description": "New webhook secret generated",
7786
+ "content": {
7787
+ "application/json": {
7788
+ "schema": {
7789
+ "type": "object",
7790
+ "required": [
7791
+ "webhook_secret"
7792
+ ],
7793
+ "properties": {
7794
+ "webhook_secret": {
7795
+ "type": "string",
7796
+ "description": "The new webhook signing secret (shown once)"
7797
+ }
7798
+ }
7799
+ }
7800
+ }
7801
+ }
7802
+ },
7803
+ "401": {
7804
+ "$ref": "#/components/responses/Unauthorized"
7805
+ },
7806
+ "403": {
7807
+ "description": "Only human users can rotate webhook secrets"
7808
+ },
7809
+ "404": {
7810
+ "$ref": "#/components/responses/NotFound"
7811
+ }
7812
+ }
7813
+ }
7814
+ },
7715
7815
  "/v1/platform/apps/{appId}/templates": {
7716
7816
  "post": {
7717
7817
  "tags": [
@@ -9911,6 +10011,117 @@
9911
10011
  }
9912
10012
  }
9913
10013
  },
10014
+ "/v1/oauth/revoke": {
10015
+ "post": {
10016
+ "tags": [
10017
+ "OAuth"
10018
+ ],
10019
+ "summary": "Revoke an OAuth token (RFC 7009)",
10020
+ "description": "Revokes an access token or refresh token. The authorization server\ninvalidates the token so it can no longer be used. Follows RFC 7009.\n",
10021
+ "operationId": "revokeOAuthToken",
10022
+ "security": [],
10023
+ "requestBody": {
10024
+ "required": true,
10025
+ "content": {
10026
+ "application/json": {
10027
+ "schema": {
10028
+ "type": "object",
10029
+ "required": [
10030
+ "token"
10031
+ ],
10032
+ "properties": {
10033
+ "token": {
10034
+ "type": "string",
10035
+ "description": "The token to revoke (access_token or refresh_token)"
10036
+ },
10037
+ "token_type_hint": {
10038
+ "type": "string",
10039
+ "enum": [
10040
+ "access_token",
10041
+ "refresh_token"
10042
+ ],
10043
+ "description": "Hint about the type of token being revoked"
10044
+ }
10045
+ }
10046
+ }
10047
+ }
10048
+ }
10049
+ },
10050
+ "responses": {
10051
+ "200": {
10052
+ "description": "Token revoked successfully (or was already invalid)",
10053
+ "content": {
10054
+ "application/json": {
10055
+ "schema": {
10056
+ "type": "object",
10057
+ "properties": {
10058
+ "revoked": {
10059
+ "type": "boolean",
10060
+ "example": true
10061
+ }
10062
+ }
10063
+ }
10064
+ }
10065
+ }
10066
+ }
10067
+ }
10068
+ }
10069
+ },
10070
+ "/v1/oauth/consents/{app_id}": {
10071
+ "delete": {
10072
+ "tags": [
10073
+ "OAuth"
10074
+ ],
10075
+ "summary": "Revoke consent for a platform app",
10076
+ "description": "Revokes the user's previously granted OAuth consent for a specific platform app.\nAll active tokens issued to the app are invalidated and the consent record is deleted.\n",
10077
+ "operationId": "revokeOAuthConsent",
10078
+ "security": [
10079
+ {
10080
+ "BearerAuth": []
10081
+ }
10082
+ ],
10083
+ "parameters": [
10084
+ {
10085
+ "name": "app_id",
10086
+ "in": "path",
10087
+ "required": true,
10088
+ "schema": {
10089
+ "type": "string",
10090
+ "format": "uuid"
10091
+ },
10092
+ "description": "The platform app ID whose consent to revoke"
10093
+ }
10094
+ ],
10095
+ "responses": {
10096
+ "200": {
10097
+ "description": "Consent revoked",
10098
+ "content": {
10099
+ "application/json": {
10100
+ "schema": {
10101
+ "type": "object",
10102
+ "properties": {
10103
+ "revoked": {
10104
+ "type": "boolean",
10105
+ "example": true
10106
+ },
10107
+ "app_id": {
10108
+ "type": "string",
10109
+ "format": "uuid"
10110
+ }
10111
+ }
10112
+ }
10113
+ }
10114
+ }
10115
+ },
10116
+ "401": {
10117
+ "$ref": "#/components/responses/Unauthorized"
10118
+ },
10119
+ "404": {
10120
+ "$ref": "#/components/responses/NotFound"
10121
+ }
10122
+ }
10123
+ }
10124
+ },
9914
10125
  "/v1/risk/events": {
9915
10126
  "get": {
9916
10127
  "tags": [
@@ -12192,10 +12403,11 @@
12192
12403
  "/v1/platform/marketplace": {
12193
12404
  "get": {
12194
12405
  "tags": [
12406
+ "Platform",
12195
12407
  "Discovery"
12196
12408
  ],
12197
12409
  "summary": "Public marketplace",
12198
- "description": "Browse the public platform marketplace of agents and apps.",
12410
+ "description": "Browse the public platform marketplace of listed apps and agents. Returns approved platform apps with category, tags, pricing summaries, and screenshots.",
12199
12411
  "operationId": "listMarketplace",
12200
12412
  "security": [],
12201
12413
  "parameters": [
@@ -12222,6 +12434,14 @@
12222
12434
  "type": "string"
12223
12435
  },
12224
12436
  "description": "Search query"
12437
+ },
12438
+ {
12439
+ "name": "category",
12440
+ "in": "query",
12441
+ "schema": {
12442
+ "type": "string"
12443
+ },
12444
+ "description": "Filter by app category"
12225
12445
  }
12226
12446
  ],
12227
12447
  "responses": {
@@ -12230,7 +12450,7 @@
12230
12450
  "content": {
12231
12451
  "application/json": {
12232
12452
  "schema": {
12233
- "$ref": "#/components/schemas/DirectoryResponse"
12453
+ "$ref": "#/components/schemas/MarketplaceResponse"
12234
12454
  }
12235
12455
  }
12236
12456
  }
@@ -19656,6 +19876,14 @@
19656
19876
  "format": "uuid",
19657
19877
  "nullable": true
19658
19878
  },
19879
+ "agent_ids": {
19880
+ "type": "array",
19881
+ "items": {
19882
+ "type": "string",
19883
+ "format": "uuid"
19884
+ },
19885
+ "description": "All agent IDs provisioned by the template (when multiple agents are defined)"
19886
+ },
19659
19887
  "policy_ids": {
19660
19888
  "type": "array",
19661
19889
  "items": {
@@ -19721,6 +19949,88 @@
19721
19949
  }
19722
19950
  }
19723
19951
  },
19952
+ "PlatformAppStatsResponse": {
19953
+ "type": "object",
19954
+ "required": [
19955
+ "total_connections",
19956
+ "active_connections",
19957
+ "claimed_connections",
19958
+ "total_bootstraps",
19959
+ "total_grants"
19960
+ ],
19961
+ "properties": {
19962
+ "total_connections": {
19963
+ "type": "integer",
19964
+ "description": "Total number of user connections (all statuses)"
19965
+ },
19966
+ "active_connections": {
19967
+ "type": "integer",
19968
+ "description": "Number of active connections"
19969
+ },
19970
+ "claimed_connections": {
19971
+ "type": "integer",
19972
+ "description": "Number of claimed connections"
19973
+ },
19974
+ "total_bootstraps": {
19975
+ "type": "integer",
19976
+ "description": "Total bootstrap operations performed"
19977
+ },
19978
+ "total_grants": {
19979
+ "type": "integer",
19980
+ "description": "Total resource grants issued"
19981
+ }
19982
+ }
19983
+ },
19984
+ "MarketplaceResponse": {
19985
+ "type": "object",
19986
+ "properties": {
19987
+ "apps": {
19988
+ "type": "array",
19989
+ "items": {
19990
+ "type": "object",
19991
+ "properties": {
19992
+ "id": {
19993
+ "type": "string",
19994
+ "format": "uuid"
19995
+ },
19996
+ "name": {
19997
+ "type": "string"
19998
+ },
19999
+ "slug": {
20000
+ "type": "string"
20001
+ },
20002
+ "description": {
20003
+ "type": "string"
20004
+ },
20005
+ "logo_url": {
20006
+ "type": "string",
20007
+ "nullable": true
20008
+ },
20009
+ "category": {
20010
+ "type": "string",
20011
+ "nullable": true
20012
+ },
20013
+ "listing_tags": {
20014
+ "type": "array",
20015
+ "items": {
20016
+ "type": "string"
20017
+ }
20018
+ },
20019
+ "listing_screenshots": {
20020
+ "type": "array",
20021
+ "items": {
20022
+ "type": "string"
20023
+ }
20024
+ },
20025
+ "pricing_summary": {
20026
+ "type": "string",
20027
+ "nullable": true
20028
+ }
20029
+ }
20030
+ }
20031
+ }
20032
+ }
20033
+ },
19724
20034
  "ConnectedAppResponse": {
19725
20035
  "type": "object",
19726
20036
  "properties": {
@@ -20344,6 +20654,11 @@
20344
20654
  "type": "integer",
20345
20655
  "description": "Token lifetime in seconds"
20346
20656
  },
20657
+ "refresh_token": {
20658
+ "type": "string",
20659
+ "nullable": true,
20660
+ "description": "Refresh token for obtaining new access tokens (when offline_access scope was granted)"
20661
+ },
20347
20662
  "id_token": {
20348
20663
  "type": "string",
20349
20664
  "nullable": true,
@@ -22359,6 +22674,25 @@
22359
22674
  "type": "string"
22360
22675
  },
22361
22676
  "description": "Platform-specific config.\nTelegram: { bot_token }.\nWhatsApp: { phone_number_id, access_token, verify_token }.\nDiscord: { bot_token, application_id }.\n"
22677
+ },
22678
+ "slash_commands_enabled": {
22679
+ "type": "boolean",
22680
+ "description": "Enable slash commands on this channel"
22681
+ },
22682
+ "voice_transcription_enabled": {
22683
+ "type": "boolean",
22684
+ "description": "Enable voice message transcription"
22685
+ },
22686
+ "sender_allowlist": {
22687
+ "type": "array",
22688
+ "items": {
22689
+ "type": "string"
22690
+ },
22691
+ "description": "List of allowed sender IDs"
22692
+ },
22693
+ "auto_respond_enabled": {
22694
+ "type": "boolean",
22695
+ "description": "Enable auto-respond"
22362
22696
  }
22363
22697
  }
22364
22698
  },
@@ -22376,6 +22710,21 @@
22376
22710
  "additionalProperties": {
22377
22711
  "type": "string"
22378
22712
  }
22713
+ },
22714
+ "slash_commands_enabled": {
22715
+ "type": "boolean"
22716
+ },
22717
+ "voice_transcription_enabled": {
22718
+ "type": "boolean"
22719
+ },
22720
+ "sender_allowlist": {
22721
+ "type": "array",
22722
+ "items": {
22723
+ "type": "string"
22724
+ }
22725
+ },
22726
+ "auto_respond_enabled": {
22727
+ "type": "boolean"
22379
22728
  }
22380
22729
  }
22381
22730
  },
@@ -22420,6 +22769,36 @@
22420
22769
  "nullable": true,
22421
22770
  "description": "Channel-specific configuration JSON. May include:\n- sender_allowlist (array of strings): restrict which external senders can trigger the agent\n- auto_respond_enabled (boolean): whether the agent auto-responds to inbound messages\n"
22422
22771
  },
22772
+ "slash_commands_enabled": {
22773
+ "type": "boolean",
22774
+ "description": "Whether slash commands are enabled for this channel"
22775
+ },
22776
+ "voice_transcription_enabled": {
22777
+ "type": "boolean",
22778
+ "description": "Whether voice message transcription is enabled"
22779
+ },
22780
+ "unified_conversation_id": {
22781
+ "type": "string",
22782
+ "format": "uuid",
22783
+ "nullable": true,
22784
+ "description": "ID linking this channel to a unified cross-platform conversation"
22785
+ },
22786
+ "is_home_platform": {
22787
+ "type": "boolean",
22788
+ "description": "Whether this is the agent's home platform channel"
22789
+ },
22790
+ "sender_allowlist": {
22791
+ "type": "array",
22792
+ "items": {
22793
+ "type": "string"
22794
+ },
22795
+ "nullable": true,
22796
+ "description": "List of allowed sender IDs for auto-respond"
22797
+ },
22798
+ "auto_respond_enabled": {
22799
+ "type": "boolean",
22800
+ "description": "Whether auto-respond is enabled for this channel"
22801
+ },
22423
22802
  "created_at": {
22424
22803
  "type": "string",
22425
22804
  "format": "date-time"
@@ -22494,6 +22873,30 @@
22494
22873
  "media_url": {
22495
22874
  "type": "string"
22496
22875
  },
22876
+ "is_voice_message": {
22877
+ "type": "boolean",
22878
+ "description": "Whether this message was a voice message"
22879
+ },
22880
+ "voice_file_id": {
22881
+ "type": "string",
22882
+ "nullable": true,
22883
+ "description": "Telegram voice file ID"
22884
+ },
22885
+ "voice_duration_secs": {
22886
+ "type": "integer",
22887
+ "nullable": true,
22888
+ "description": "Duration of voice message in seconds"
22889
+ },
22890
+ "transcription_status": {
22891
+ "type": "string",
22892
+ "nullable": true,
22893
+ "enum": [
22894
+ "pending",
22895
+ "completed",
22896
+ "failed"
22897
+ ],
22898
+ "description": "Status of voice transcription"
22899
+ },
22497
22900
  "created_at": {
22498
22901
  "type": "string",
22499
22902
  "format": "date-time"
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.33.0
5
+ version: 2.34.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,
@@ -4981,6 +4981,67 @@ paths:
4981
4981
  "403":
4982
4982
  description: Only human users can rotate platform keys
4983
4983
 
4984
+ /v1/platform/apps/{appId}/stats:
4985
+ get:
4986
+ tags: [Platform]
4987
+ summary: Get platform app statistics
4988
+ description: Returns aggregate statistics about a platform app's connected users, bootstraps, and grants.
4989
+ operationId: getPlatformAppStats
4990
+ security:
4991
+ - BearerAuth: []
4992
+ parameters:
4993
+ - name: appId
4994
+ in: path
4995
+ required: true
4996
+ schema:
4997
+ type: string
4998
+ format: uuid
4999
+ responses:
5000
+ "200":
5001
+ description: App statistics
5002
+ content:
5003
+ application/json:
5004
+ schema:
5005
+ $ref: "#/components/schemas/PlatformAppStatsResponse"
5006
+ "401":
5007
+ $ref: "#/components/responses/Unauthorized"
5008
+ "404":
5009
+ $ref: "#/components/responses/NotFound"
5010
+
5011
+ /v1/platform/apps/{appId}/rotate-webhook-secret:
5012
+ post:
5013
+ tags: [Platform]
5014
+ summary: Rotate webhook secret
5015
+ description: Generate a new webhook signing secret for the platform app. The old secret is immediately invalidated. Returns the new secret (one-time).
5016
+ operationId: rotatePlatformWebhookSecret
5017
+ security:
5018
+ - BearerAuth: []
5019
+ parameters:
5020
+ - name: appId
5021
+ in: path
5022
+ required: true
5023
+ schema:
5024
+ type: string
5025
+ format: uuid
5026
+ responses:
5027
+ "200":
5028
+ description: New webhook secret generated
5029
+ content:
5030
+ application/json:
5031
+ schema:
5032
+ type: object
5033
+ required: [webhook_secret]
5034
+ properties:
5035
+ webhook_secret:
5036
+ type: string
5037
+ description: The new webhook signing secret (shown once)
5038
+ "401":
5039
+ $ref: "#/components/responses/Unauthorized"
5040
+ "403":
5041
+ description: Only human users can rotate webhook secrets
5042
+ "404":
5043
+ $ref: "#/components/responses/NotFound"
5044
+
4984
5045
  /v1/platform/apps/{appId}/templates:
4985
5046
  post:
4986
5047
  tags: [Platform]
@@ -6310,6 +6371,79 @@ paths:
6310
6371
  "401":
6311
6372
  $ref: "#/components/responses/Unauthorized"
6312
6373
 
6374
+ /v1/oauth/revoke:
6375
+ post:
6376
+ tags: [OAuth]
6377
+ summary: Revoke an OAuth token (RFC 7009)
6378
+ description: |
6379
+ Revokes an access token or refresh token. The authorization server
6380
+ invalidates the token so it can no longer be used. Follows RFC 7009.
6381
+ operationId: revokeOAuthToken
6382
+ security: []
6383
+ requestBody:
6384
+ required: true
6385
+ content:
6386
+ application/json:
6387
+ schema:
6388
+ type: object
6389
+ required: [token]
6390
+ properties:
6391
+ token:
6392
+ type: string
6393
+ description: The token to revoke (access_token or refresh_token)
6394
+ token_type_hint:
6395
+ type: string
6396
+ enum: [access_token, refresh_token]
6397
+ description: Hint about the type of token being revoked
6398
+ responses:
6399
+ "200":
6400
+ description: Token revoked successfully (or was already invalid)
6401
+ content:
6402
+ application/json:
6403
+ schema:
6404
+ type: object
6405
+ properties:
6406
+ revoked:
6407
+ type: boolean
6408
+ example: true
6409
+
6410
+ /v1/oauth/consents/{app_id}:
6411
+ delete:
6412
+ tags: [OAuth]
6413
+ summary: Revoke consent for a platform app
6414
+ description: |
6415
+ Revokes the user's previously granted OAuth consent for a specific platform app.
6416
+ All active tokens issued to the app are invalidated and the consent record is deleted.
6417
+ operationId: revokeOAuthConsent
6418
+ security:
6419
+ - BearerAuth: []
6420
+ parameters:
6421
+ - name: app_id
6422
+ in: path
6423
+ required: true
6424
+ schema:
6425
+ type: string
6426
+ format: uuid
6427
+ description: The platform app ID whose consent to revoke
6428
+ responses:
6429
+ "200":
6430
+ description: Consent revoked
6431
+ content:
6432
+ application/json:
6433
+ schema:
6434
+ type: object
6435
+ properties:
6436
+ revoked:
6437
+ type: boolean
6438
+ example: true
6439
+ app_id:
6440
+ type: string
6441
+ format: uuid
6442
+ "401":
6443
+ $ref: "#/components/responses/Unauthorized"
6444
+ "404":
6445
+ $ref: "#/components/responses/NotFound"
6446
+
6313
6447
  # ---------------------------------------------------------------------------
6314
6448
  # Risk Engine
6315
6449
  # ---------------------------------------------------------------------------
@@ -7772,9 +7906,9 @@ paths:
7772
7906
 
7773
7907
  /v1/platform/marketplace:
7774
7908
  get:
7775
- tags: [Discovery]
7909
+ tags: [Platform, Discovery]
7776
7910
  summary: Public marketplace
7777
- description: Browse the public platform marketplace of agents and apps.
7911
+ description: Browse the public platform marketplace of listed apps and agents. Returns approved platform apps with category, tags, pricing summaries, and screenshots.
7778
7912
  operationId: listMarketplace
7779
7913
  security: []
7780
7914
  parameters:
@@ -7793,13 +7927,18 @@ paths:
7793
7927
  schema:
7794
7928
  type: string
7795
7929
  description: Search query
7930
+ - name: category
7931
+ in: query
7932
+ schema:
7933
+ type: string
7934
+ description: Filter by app category
7796
7935
  responses:
7797
7936
  "200":
7798
7937
  description: Marketplace listing
7799
7938
  content:
7800
7939
  application/json:
7801
7940
  schema:
7802
- $ref: "#/components/schemas/DirectoryResponse"
7941
+ $ref: "#/components/schemas/MarketplaceResponse"
7803
7942
 
7804
7943
  # ---------------------------------------------------------------------------
7805
7944
  # Agent Chat
@@ -12955,6 +13094,12 @@ components:
12955
13094
  type: string
12956
13095
  format: uuid
12957
13096
  nullable: true
13097
+ agent_ids:
13098
+ type: array
13099
+ items:
13100
+ type: string
13101
+ format: uuid
13102
+ description: All agent IDs provisioned by the template (when multiple agents are defined)
12958
13103
  policy_ids:
12959
13104
  type: array
12960
13105
  items:
@@ -13000,6 +13145,61 @@ components:
13000
13145
  format: uuid
13001
13146
  description: IDs of automations provisioned by the template
13002
13147
 
13148
+ PlatformAppStatsResponse:
13149
+ type: object
13150
+ required: [total_connections, active_connections, claimed_connections, total_bootstraps, total_grants]
13151
+ properties:
13152
+ total_connections:
13153
+ type: integer
13154
+ description: Total number of user connections (all statuses)
13155
+ active_connections:
13156
+ type: integer
13157
+ description: Number of active connections
13158
+ claimed_connections:
13159
+ type: integer
13160
+ description: Number of claimed connections
13161
+ total_bootstraps:
13162
+ type: integer
13163
+ description: Total bootstrap operations performed
13164
+ total_grants:
13165
+ type: integer
13166
+ description: Total resource grants issued
13167
+
13168
+ MarketplaceResponse:
13169
+ type: object
13170
+ properties:
13171
+ apps:
13172
+ type: array
13173
+ items:
13174
+ type: object
13175
+ properties:
13176
+ id:
13177
+ type: string
13178
+ format: uuid
13179
+ name:
13180
+ type: string
13181
+ slug:
13182
+ type: string
13183
+ description:
13184
+ type: string
13185
+ logo_url:
13186
+ type: string
13187
+ nullable: true
13188
+ category:
13189
+ type: string
13190
+ nullable: true
13191
+ listing_tags:
13192
+ type: array
13193
+ items:
13194
+ type: string
13195
+ listing_screenshots:
13196
+ type: array
13197
+ items:
13198
+ type: string
13199
+ pricing_summary:
13200
+ type: string
13201
+ nullable: true
13202
+
13003
13203
  ConnectedAppResponse:
13004
13204
  type: object
13005
13205
  properties:
@@ -13412,6 +13612,10 @@ components:
13412
13612
  expires_in:
13413
13613
  type: integer
13414
13614
  description: Token lifetime in seconds
13615
+ refresh_token:
13616
+ type: string
13617
+ nullable: true
13618
+ description: Refresh token for obtaining new access tokens (when offline_access scope was granted)
13415
13619
  id_token:
13416
13620
  type: string
13417
13621
  nullable: true
@@ -14726,6 +14930,20 @@ components:
14726
14930
  Telegram: { bot_token }.
14727
14931
  WhatsApp: { phone_number_id, access_token, verify_token }.
14728
14932
  Discord: { bot_token, application_id }.
14933
+ slash_commands_enabled:
14934
+ type: boolean
14935
+ description: Enable slash commands on this channel
14936
+ voice_transcription_enabled:
14937
+ type: boolean
14938
+ description: Enable voice message transcription
14939
+ sender_allowlist:
14940
+ type: array
14941
+ items:
14942
+ type: string
14943
+ description: List of allowed sender IDs
14944
+ auto_respond_enabled:
14945
+ type: boolean
14946
+ description: Enable auto-respond
14729
14947
 
14730
14948
  UpdateChannelRequest:
14731
14949
  type: object
@@ -14738,6 +14956,16 @@ components:
14738
14956
  type: object
14739
14957
  additionalProperties:
14740
14958
  type: string
14959
+ slash_commands_enabled:
14960
+ type: boolean
14961
+ voice_transcription_enabled:
14962
+ type: boolean
14963
+ sender_allowlist:
14964
+ type: array
14965
+ items:
14966
+ type: string
14967
+ auto_respond_enabled:
14968
+ type: boolean
14741
14969
 
14742
14970
  ChannelResponse:
14743
14971
  type: object
@@ -14770,6 +14998,29 @@ components:
14770
14998
  Channel-specific configuration JSON. May include:
14771
14999
  - sender_allowlist (array of strings): restrict which external senders can trigger the agent
14772
15000
  - auto_respond_enabled (boolean): whether the agent auto-responds to inbound messages
15001
+ slash_commands_enabled:
15002
+ type: boolean
15003
+ description: Whether slash commands are enabled for this channel
15004
+ voice_transcription_enabled:
15005
+ type: boolean
15006
+ description: Whether voice message transcription is enabled
15007
+ unified_conversation_id:
15008
+ type: string
15009
+ format: uuid
15010
+ nullable: true
15011
+ description: ID linking this channel to a unified cross-platform conversation
15012
+ is_home_platform:
15013
+ type: boolean
15014
+ description: Whether this is the agent's home platform channel
15015
+ sender_allowlist:
15016
+ type: array
15017
+ items:
15018
+ type: string
15019
+ nullable: true
15020
+ description: List of allowed sender IDs for auto-respond
15021
+ auto_respond_enabled:
15022
+ type: boolean
15023
+ description: Whether auto-respond is enabled for this channel
14773
15024
  created_at:
14774
15025
  type: string
14775
15026
  format: date-time
@@ -14820,6 +15071,22 @@ components:
14820
15071
  type: string
14821
15072
  media_url:
14822
15073
  type: string
15074
+ is_voice_message:
15075
+ type: boolean
15076
+ description: Whether this message was a voice message
15077
+ voice_file_id:
15078
+ type: string
15079
+ nullable: true
15080
+ description: Telegram voice file ID
15081
+ voice_duration_secs:
15082
+ type: integer
15083
+ nullable: true
15084
+ description: Duration of voice message in seconds
15085
+ transcription_status:
15086
+ type: string
15087
+ nullable: true
15088
+ enum: [pending, completed, failed]
15089
+ description: Status of voice transcription
14823
15090
  created_at:
14824
15091
  type: string
14825
15092
  format: date-time
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@1claw/openapi-spec",
3
- "version": "0.44.3",
3
+ "version": "0.45.0",
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": {