@1claw/openapi-spec 0.44.0 → 0.44.3
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 +10 -2
- package/openapi.json +767 -117
- package/openapi.yaml +448 -0
- package/package.json +1 -1
package/openapi.yaml
CHANGED
|
@@ -94,6 +94,8 @@ tags:
|
|
|
94
94
|
description: Chat with agents via Shroud LLM proxy
|
|
95
95
|
- name: Agent Channels
|
|
96
96
|
description: External messaging channels (Telegram, WhatsApp, Discord)
|
|
97
|
+
- name: OAuth Connect
|
|
98
|
+
description: OAuth connected accounts for agents (provider registry, connect flows, app credentials)
|
|
97
99
|
|
|
98
100
|
# =============================================================================
|
|
99
101
|
# PATHS
|
|
@@ -7701,6 +7703,46 @@ paths:
|
|
|
7701
7703
|
schema:
|
|
7702
7704
|
$ref: "#/components/schemas/DirectoryResponse"
|
|
7703
7705
|
|
|
7706
|
+
/v1/agents/org-directory:
|
|
7707
|
+
get:
|
|
7708
|
+
tags: [agents, discovery]
|
|
7709
|
+
summary: List org agents
|
|
7710
|
+
description: |
|
|
7711
|
+
List agents within the caller's organization for sub-agent discovery.
|
|
7712
|
+
Returns agents with their capabilities, enabling agent-to-agent
|
|
7713
|
+
coordination and discovery within an org. Requires authentication.
|
|
7714
|
+
operationId: listOrgDirectory
|
|
7715
|
+
parameters:
|
|
7716
|
+
- name: q
|
|
7717
|
+
in: query
|
|
7718
|
+
schema:
|
|
7719
|
+
type: string
|
|
7720
|
+
description: Search query to filter agents by name or description
|
|
7721
|
+
- name: tags
|
|
7722
|
+
in: query
|
|
7723
|
+
schema:
|
|
7724
|
+
type: string
|
|
7725
|
+
description: Comma-separated tag filter
|
|
7726
|
+
- name: page
|
|
7727
|
+
in: query
|
|
7728
|
+
schema:
|
|
7729
|
+
type: integer
|
|
7730
|
+
default: 1
|
|
7731
|
+
- name: page_size
|
|
7732
|
+
in: query
|
|
7733
|
+
schema:
|
|
7734
|
+
type: integer
|
|
7735
|
+
default: 20
|
|
7736
|
+
responses:
|
|
7737
|
+
"200":
|
|
7738
|
+
description: Org agent directory listing
|
|
7739
|
+
content:
|
|
7740
|
+
application/json:
|
|
7741
|
+
schema:
|
|
7742
|
+
$ref: "#/components/schemas/OrgDirectoryResponse"
|
|
7743
|
+
"401":
|
|
7744
|
+
$ref: "#/components/responses/Unauthorized"
|
|
7745
|
+
|
|
7704
7746
|
/v1/agents/{agent_id}/discovery:
|
|
7705
7747
|
patch:
|
|
7706
7748
|
tags: [Discovery]
|
|
@@ -7770,6 +7812,11 @@ paths:
|
|
|
7770
7812
|
description: |
|
|
7771
7813
|
Send a message to an agent and receive a response via Shroud LLM.
|
|
7772
7814
|
Supports SSE streaming when Accept: text/event-stream is set.
|
|
7815
|
+
|
|
7816
|
+
Agents can call this endpoint on other agents within the same
|
|
7817
|
+
organization for inter-agent communication (agent-to-agent chat).
|
|
7818
|
+
The caller must be authenticated and belong to the same org as
|
|
7819
|
+
the target agent.
|
|
7773
7820
|
operationId: sendChatMessage
|
|
7774
7821
|
parameters:
|
|
7775
7822
|
- $ref: "#/components/parameters/AgentId"
|
|
@@ -8173,6 +8220,200 @@ paths:
|
|
|
8173
8220
|
"200":
|
|
8174
8221
|
description: Webhook processed
|
|
8175
8222
|
|
|
8223
|
+
# ---------------------------------------------------------------------------
|
|
8224
|
+
# OAuth Connect
|
|
8225
|
+
# ---------------------------------------------------------------------------
|
|
8226
|
+
|
|
8227
|
+
/v1/oauth/providers:
|
|
8228
|
+
get:
|
|
8229
|
+
tags: [OAuth Connect]
|
|
8230
|
+
summary: List OAuth providers
|
|
8231
|
+
description: |
|
|
8232
|
+
Returns the list of supported OAuth providers with their metadata,
|
|
8233
|
+
available scopes, and authorization URLs. No authentication required.
|
|
8234
|
+
operationId: listOAuthProviders
|
|
8235
|
+
security: []
|
|
8236
|
+
responses:
|
|
8237
|
+
"200":
|
|
8238
|
+
description: Provider list
|
|
8239
|
+
content:
|
|
8240
|
+
application/json:
|
|
8241
|
+
schema:
|
|
8242
|
+
$ref: "#/components/schemas/OAuthProviderListResponse"
|
|
8243
|
+
|
|
8244
|
+
/v1/agents/{agent_id}/oauth/connect:
|
|
8245
|
+
post:
|
|
8246
|
+
tags: [OAuth Connect]
|
|
8247
|
+
summary: Initiate OAuth connection
|
|
8248
|
+
description: |
|
|
8249
|
+
Start an OAuth authorization flow for the specified agent and provider.
|
|
8250
|
+
Returns the authorization URL to redirect the user to. Human-only.
|
|
8251
|
+
operationId: connectOAuth
|
|
8252
|
+
parameters:
|
|
8253
|
+
- $ref: "#/components/parameters/AgentId"
|
|
8254
|
+
requestBody:
|
|
8255
|
+
required: true
|
|
8256
|
+
content:
|
|
8257
|
+
application/json:
|
|
8258
|
+
schema:
|
|
8259
|
+
$ref: "#/components/schemas/ConnectOAuthRequest"
|
|
8260
|
+
responses:
|
|
8261
|
+
"200":
|
|
8262
|
+
description: Authorization URL generated
|
|
8263
|
+
content:
|
|
8264
|
+
application/json:
|
|
8265
|
+
schema:
|
|
8266
|
+
$ref: "#/components/schemas/ConnectOAuthResponse"
|
|
8267
|
+
"400":
|
|
8268
|
+
$ref: "#/components/responses/BadRequest"
|
|
8269
|
+
"403":
|
|
8270
|
+
$ref: "#/components/responses/Forbidden"
|
|
8271
|
+
"404":
|
|
8272
|
+
$ref: "#/components/responses/NotFound"
|
|
8273
|
+
|
|
8274
|
+
/v1/agents/{agent_id}/oauth/connections:
|
|
8275
|
+
get:
|
|
8276
|
+
tags: [OAuth Connect]
|
|
8277
|
+
summary: List OAuth connections
|
|
8278
|
+
description: List all active OAuth connections for the specified agent.
|
|
8279
|
+
operationId: listOAuthConnections
|
|
8280
|
+
parameters:
|
|
8281
|
+
- $ref: "#/components/parameters/AgentId"
|
|
8282
|
+
responses:
|
|
8283
|
+
"200":
|
|
8284
|
+
description: Connection list
|
|
8285
|
+
content:
|
|
8286
|
+
application/json:
|
|
8287
|
+
schema:
|
|
8288
|
+
$ref: "#/components/schemas/OAuthConnectionListResponse"
|
|
8289
|
+
"404":
|
|
8290
|
+
$ref: "#/components/responses/NotFound"
|
|
8291
|
+
|
|
8292
|
+
/v1/agents/{agent_id}/oauth/disconnect/{binding_id}:
|
|
8293
|
+
post:
|
|
8294
|
+
tags: [OAuth Connect]
|
|
8295
|
+
summary: Disconnect OAuth connection
|
|
8296
|
+
description: |
|
|
8297
|
+
Disconnect an OAuth connection by revoking tokens and removing the binding.
|
|
8298
|
+
Human-only.
|
|
8299
|
+
operationId: disconnectOAuth
|
|
8300
|
+
parameters:
|
|
8301
|
+
- $ref: "#/components/parameters/AgentId"
|
|
8302
|
+
- name: binding_id
|
|
8303
|
+
in: path
|
|
8304
|
+
required: true
|
|
8305
|
+
schema:
|
|
8306
|
+
type: string
|
|
8307
|
+
format: uuid
|
|
8308
|
+
responses:
|
|
8309
|
+
"204":
|
|
8310
|
+
description: Connection disconnected
|
|
8311
|
+
"403":
|
|
8312
|
+
$ref: "#/components/responses/Forbidden"
|
|
8313
|
+
"404":
|
|
8314
|
+
$ref: "#/components/responses/NotFound"
|
|
8315
|
+
|
|
8316
|
+
/v1/agents/{agent_id}/oauth/app-credentials:
|
|
8317
|
+
post:
|
|
8318
|
+
tags: [OAuth Connect]
|
|
8319
|
+
summary: Save OAuth app credentials
|
|
8320
|
+
description: |
|
|
8321
|
+
Store custom OAuth app credentials (client ID/secret) for a provider.
|
|
8322
|
+
Allows the agent to use a BYOA (Bring Your Own App) OAuth application
|
|
8323
|
+
instead of 1Claw's shared credentials. Human-only.
|
|
8324
|
+
operationId: saveOAuthAppCredentials
|
|
8325
|
+
parameters:
|
|
8326
|
+
- $ref: "#/components/parameters/AgentId"
|
|
8327
|
+
requestBody:
|
|
8328
|
+
required: true
|
|
8329
|
+
content:
|
|
8330
|
+
application/json:
|
|
8331
|
+
schema:
|
|
8332
|
+
$ref: "#/components/schemas/SaveOAuthAppCredentialsRequest"
|
|
8333
|
+
responses:
|
|
8334
|
+
"201":
|
|
8335
|
+
description: Credentials saved
|
|
8336
|
+
content:
|
|
8337
|
+
application/json:
|
|
8338
|
+
schema:
|
|
8339
|
+
$ref: "#/components/schemas/OAuthAppCredentialResponse"
|
|
8340
|
+
"400":
|
|
8341
|
+
$ref: "#/components/responses/BadRequest"
|
|
8342
|
+
"403":
|
|
8343
|
+
$ref: "#/components/responses/Forbidden"
|
|
8344
|
+
"404":
|
|
8345
|
+
$ref: "#/components/responses/NotFound"
|
|
8346
|
+
get:
|
|
8347
|
+
tags: [OAuth Connect]
|
|
8348
|
+
summary: List OAuth app credentials
|
|
8349
|
+
description: |
|
|
8350
|
+
List stored OAuth app credentials for the agent. Client secrets
|
|
8351
|
+
are never returned in the response.
|
|
8352
|
+
operationId: listOAuthAppCredentials
|
|
8353
|
+
parameters:
|
|
8354
|
+
- $ref: "#/components/parameters/AgentId"
|
|
8355
|
+
responses:
|
|
8356
|
+
"200":
|
|
8357
|
+
description: Credential list
|
|
8358
|
+
content:
|
|
8359
|
+
application/json:
|
|
8360
|
+
schema:
|
|
8361
|
+
$ref: "#/components/schemas/OAuthAppCredentialListResponse"
|
|
8362
|
+
"404":
|
|
8363
|
+
$ref: "#/components/responses/NotFound"
|
|
8364
|
+
|
|
8365
|
+
/v1/agents/{agent_id}/oauth/app-credentials/{provider_slug}:
|
|
8366
|
+
delete:
|
|
8367
|
+
tags: [OAuth Connect]
|
|
8368
|
+
summary: Delete OAuth app credentials
|
|
8369
|
+
description: |
|
|
8370
|
+
Remove stored OAuth app credentials for a specific provider. Human-only.
|
|
8371
|
+
operationId: deleteOAuthAppCredentials
|
|
8372
|
+
parameters:
|
|
8373
|
+
- $ref: "#/components/parameters/AgentId"
|
|
8374
|
+
- name: provider_slug
|
|
8375
|
+
in: path
|
|
8376
|
+
required: true
|
|
8377
|
+
schema:
|
|
8378
|
+
type: string
|
|
8379
|
+
description: Provider identifier (e.g. "github", "google", "slack")
|
|
8380
|
+
responses:
|
|
8381
|
+
"204":
|
|
8382
|
+
description: Credentials deleted
|
|
8383
|
+
"403":
|
|
8384
|
+
$ref: "#/components/responses/Forbidden"
|
|
8385
|
+
"404":
|
|
8386
|
+
$ref: "#/components/responses/NotFound"
|
|
8387
|
+
|
|
8388
|
+
/v1/oauth/callback:
|
|
8389
|
+
get:
|
|
8390
|
+
tags: [OAuth Connect]
|
|
8391
|
+
summary: OAuth callback
|
|
8392
|
+
description: |
|
|
8393
|
+
Public callback URL that OAuth providers redirect to after user authorization.
|
|
8394
|
+
Exchanges the authorization code for tokens and redirects to the dashboard.
|
|
8395
|
+
operationId: oauthConnectCallback
|
|
8396
|
+
security: []
|
|
8397
|
+
parameters:
|
|
8398
|
+
- name: code
|
|
8399
|
+
in: query
|
|
8400
|
+
schema:
|
|
8401
|
+
type: string
|
|
8402
|
+
description: Authorization code from the OAuth provider
|
|
8403
|
+
- name: state
|
|
8404
|
+
in: query
|
|
8405
|
+
schema:
|
|
8406
|
+
type: string
|
|
8407
|
+
description: Opaque state parameter for CSRF protection and session binding
|
|
8408
|
+
- name: error
|
|
8409
|
+
in: query
|
|
8410
|
+
schema:
|
|
8411
|
+
type: string
|
|
8412
|
+
description: Error code if the authorization was denied or failed
|
|
8413
|
+
responses:
|
|
8414
|
+
"302":
|
|
8415
|
+
description: Redirect to dashboard with success or error status
|
|
8416
|
+
|
|
8176
8417
|
# =============================================================================
|
|
8177
8418
|
# COMPONENTS
|
|
8178
8419
|
# =============================================================================
|
|
@@ -14311,6 +14552,52 @@ components:
|
|
|
14311
14552
|
per_page:
|
|
14312
14553
|
type: integer
|
|
14313
14554
|
|
|
14555
|
+
OrgDirectoryAgent:
|
|
14556
|
+
type: object
|
|
14557
|
+
required: [id, name, intents_api_enabled, execution_intents_enabled, memory_enabled, shroud_enabled]
|
|
14558
|
+
properties:
|
|
14559
|
+
id:
|
|
14560
|
+
type: string
|
|
14561
|
+
format: uuid
|
|
14562
|
+
name:
|
|
14563
|
+
type: string
|
|
14564
|
+
public_description:
|
|
14565
|
+
type: string
|
|
14566
|
+
nullable: true
|
|
14567
|
+
public_tags:
|
|
14568
|
+
type: array
|
|
14569
|
+
items:
|
|
14570
|
+
type: string
|
|
14571
|
+
a2a_url:
|
|
14572
|
+
type: string
|
|
14573
|
+
nullable: true
|
|
14574
|
+
mcp_url:
|
|
14575
|
+
type: string
|
|
14576
|
+
nullable: true
|
|
14577
|
+
intents_api_enabled:
|
|
14578
|
+
type: boolean
|
|
14579
|
+
execution_intents_enabled:
|
|
14580
|
+
type: boolean
|
|
14581
|
+
memory_enabled:
|
|
14582
|
+
type: boolean
|
|
14583
|
+
shroud_enabled:
|
|
14584
|
+
type: boolean
|
|
14585
|
+
|
|
14586
|
+
OrgDirectoryResponse:
|
|
14587
|
+
type: object
|
|
14588
|
+
required: [agents, total, page, page_size]
|
|
14589
|
+
properties:
|
|
14590
|
+
agents:
|
|
14591
|
+
type: array
|
|
14592
|
+
items:
|
|
14593
|
+
$ref: "#/components/schemas/OrgDirectoryAgent"
|
|
14594
|
+
total:
|
|
14595
|
+
type: integer
|
|
14596
|
+
page:
|
|
14597
|
+
type: integer
|
|
14598
|
+
page_size:
|
|
14599
|
+
type: integer
|
|
14600
|
+
|
|
14314
14601
|
UpdateDiscoveryRequest:
|
|
14315
14602
|
type: object
|
|
14316
14603
|
properties:
|
|
@@ -14544,3 +14831,164 @@ components:
|
|
|
14544
14831
|
type: array
|
|
14545
14832
|
items:
|
|
14546
14833
|
$ref: "#/components/schemas/ChannelMessageResponse"
|
|
14834
|
+
|
|
14835
|
+
# ── OAuth Connect ──────────────────────────────────────────────
|
|
14836
|
+
|
|
14837
|
+
OAuthProviderScope:
|
|
14838
|
+
type: object
|
|
14839
|
+
properties:
|
|
14840
|
+
scope:
|
|
14841
|
+
type: string
|
|
14842
|
+
label:
|
|
14843
|
+
type: string
|
|
14844
|
+
description:
|
|
14845
|
+
type: string
|
|
14846
|
+
default:
|
|
14847
|
+
type: boolean
|
|
14848
|
+
|
|
14849
|
+
OAuthProvider:
|
|
14850
|
+
type: object
|
|
14851
|
+
properties:
|
|
14852
|
+
slug:
|
|
14853
|
+
type: string
|
|
14854
|
+
description: Unique provider identifier (e.g. "github", "google", "slack")
|
|
14855
|
+
display_name:
|
|
14856
|
+
type: string
|
|
14857
|
+
icon_url:
|
|
14858
|
+
type: string
|
|
14859
|
+
format: uri
|
|
14860
|
+
authorization_url:
|
|
14861
|
+
type: string
|
|
14862
|
+
format: uri
|
|
14863
|
+
token_url:
|
|
14864
|
+
type: string
|
|
14865
|
+
format: uri
|
|
14866
|
+
scopes_available:
|
|
14867
|
+
type: array
|
|
14868
|
+
items:
|
|
14869
|
+
$ref: "#/components/schemas/OAuthProviderScope"
|
|
14870
|
+
default_scopes:
|
|
14871
|
+
type: array
|
|
14872
|
+
items:
|
|
14873
|
+
type: string
|
|
14874
|
+
extra_auth_params:
|
|
14875
|
+
type: object
|
|
14876
|
+
additionalProperties:
|
|
14877
|
+
type: string
|
|
14878
|
+
nullable: true
|
|
14879
|
+
requires_app_credentials:
|
|
14880
|
+
type: boolean
|
|
14881
|
+
description: Whether custom app credentials are required (vs. shared 1Claw app)
|
|
14882
|
+
documentation_url:
|
|
14883
|
+
type: string
|
|
14884
|
+
format: uri
|
|
14885
|
+
nullable: true
|
|
14886
|
+
|
|
14887
|
+
OAuthProviderListResponse:
|
|
14888
|
+
type: object
|
|
14889
|
+
properties:
|
|
14890
|
+
providers:
|
|
14891
|
+
type: array
|
|
14892
|
+
items:
|
|
14893
|
+
$ref: "#/components/schemas/OAuthProvider"
|
|
14894
|
+
|
|
14895
|
+
ConnectOAuthRequest:
|
|
14896
|
+
type: object
|
|
14897
|
+
required: [provider_slug]
|
|
14898
|
+
properties:
|
|
14899
|
+
provider_slug:
|
|
14900
|
+
type: string
|
|
14901
|
+
description: Provider to connect (e.g. "github", "google", "slack")
|
|
14902
|
+
scopes:
|
|
14903
|
+
type: array
|
|
14904
|
+
items:
|
|
14905
|
+
type: string
|
|
14906
|
+
description: Override default scopes for this connection
|
|
14907
|
+
redirect_after:
|
|
14908
|
+
type: string
|
|
14909
|
+
description: URL to redirect to after the OAuth flow completes
|
|
14910
|
+
|
|
14911
|
+
ConnectOAuthResponse:
|
|
14912
|
+
type: object
|
|
14913
|
+
properties:
|
|
14914
|
+
authorization_url:
|
|
14915
|
+
type: string
|
|
14916
|
+
format: uri
|
|
14917
|
+
description: Redirect the user to this URL to authorize the connection
|
|
14918
|
+
|
|
14919
|
+
OAuthConnectionResponse:
|
|
14920
|
+
type: object
|
|
14921
|
+
properties:
|
|
14922
|
+
binding_id:
|
|
14923
|
+
type: string
|
|
14924
|
+
format: uuid
|
|
14925
|
+
provider_slug:
|
|
14926
|
+
type: string
|
|
14927
|
+
provider_name:
|
|
14928
|
+
type: string
|
|
14929
|
+
scopes:
|
|
14930
|
+
type: array
|
|
14931
|
+
items:
|
|
14932
|
+
type: string
|
|
14933
|
+
status:
|
|
14934
|
+
type: string
|
|
14935
|
+
enum: [active, expired, revoked]
|
|
14936
|
+
needs_reauth:
|
|
14937
|
+
type: boolean
|
|
14938
|
+
created_at:
|
|
14939
|
+
type: string
|
|
14940
|
+
format: date-time
|
|
14941
|
+
|
|
14942
|
+
OAuthConnectionListResponse:
|
|
14943
|
+
type: object
|
|
14944
|
+
properties:
|
|
14945
|
+
connections:
|
|
14946
|
+
type: array
|
|
14947
|
+
items:
|
|
14948
|
+
$ref: "#/components/schemas/OAuthConnectionResponse"
|
|
14949
|
+
|
|
14950
|
+
SaveOAuthAppCredentialsRequest:
|
|
14951
|
+
type: object
|
|
14952
|
+
required: [provider_slug, client_id, client_secret]
|
|
14953
|
+
properties:
|
|
14954
|
+
provider_slug:
|
|
14955
|
+
type: string
|
|
14956
|
+
description: Provider this credential is for
|
|
14957
|
+
client_id:
|
|
14958
|
+
type: string
|
|
14959
|
+
client_secret:
|
|
14960
|
+
type: string
|
|
14961
|
+
description: Write-only; never returned in responses
|
|
14962
|
+
redirect_uri:
|
|
14963
|
+
type: string
|
|
14964
|
+
format: uri
|
|
14965
|
+
description: Custom redirect URI override
|
|
14966
|
+
|
|
14967
|
+
OAuthAppCredentialResponse:
|
|
14968
|
+
type: object
|
|
14969
|
+
properties:
|
|
14970
|
+
id:
|
|
14971
|
+
type: string
|
|
14972
|
+
format: uuid
|
|
14973
|
+
provider_slug:
|
|
14974
|
+
type: string
|
|
14975
|
+
client_id:
|
|
14976
|
+
type: string
|
|
14977
|
+
redirect_uri:
|
|
14978
|
+
type: string
|
|
14979
|
+
format: uri
|
|
14980
|
+
nullable: true
|
|
14981
|
+
created_at:
|
|
14982
|
+
type: string
|
|
14983
|
+
format: date-time
|
|
14984
|
+
updated_at:
|
|
14985
|
+
type: string
|
|
14986
|
+
format: date-time
|
|
14987
|
+
|
|
14988
|
+
OAuthAppCredentialListResponse:
|
|
14989
|
+
type: object
|
|
14990
|
+
properties:
|
|
14991
|
+
credentials:
|
|
14992
|
+
type: array
|
|
14993
|
+
items:
|
|
14994
|
+
$ref: "#/components/schemas/OAuthAppCredentialResponse"
|