mirror of
https://github.com/Significant-Gravitas/AutoGPT.git
synced 2026-02-04 03:45:12 -05:00
Implements persistent User Workspace storage for CoPilot, enabling
blocks to save and retrieve files across sessions. Files are stored in
session-scoped virtual paths (`/sessions/{session_id}/`).
Fixes SECRT-1833
### Changes 🏗️
**Database & Storage:**
- Add `UserWorkspace` and `UserWorkspaceFile` Prisma models
- Implement `WorkspaceStorageBackend` abstraction (GCS for cloud, local
filesystem for self-hosted)
- Add `workspace_id` and `session_id` fields to `ExecutionContext`
**Backend API:**
- Add REST endpoints: `GET/POST /api/workspace/files`, `GET/DELETE
/api/workspace/files/{id}`, `GET /api/workspace/files/{id}/download`
- Add CoPilot tools: `list_workspace_files`, `read_workspace_file`,
`write_workspace_file`
- Integrate workspace storage into `store_media_file()` - returns
`workspace://file-id` references
**Block Updates:**
- Refactor all file-handling blocks to use unified `ExecutionContext`
parameter
- Update media-generating blocks to persist outputs to workspace
(AIImageGenerator, AIImageCustomizer, FluxKontext, TalkingHead, FAL
video, Bannerbear, etc.)
**Frontend:**
- Render `workspace://` image references in chat via proxy endpoint
- Add "AI cannot see this image" overlay indicator
**CoPilot Context Mapping:**
- Session = Agent (graph_id) = Run (graph_exec_id)
- Files scoped to `/sessions/{session_id}/`
### Checklist 📋
#### For code changes:
- [x] I have clearly listed my changes in the PR description
- [x] I have made a test plan
- [ ] I have tested my changes according to the test plan:
- [ ] Create CoPilot session, generate image with AIImageGeneratorBlock
- [ ] Verify image returns `workspace://file-id` (not base64)
- [ ] Verify image renders in chat with visibility indicator
- [ ] Verify workspace files persist across sessions
- [ ] Test list/read/write workspace files via CoPilot tools
- [ ] Test local storage backend for self-hosted deployments
#### For configuration changes:
- [x] `.env.default` is updated or already compatible with my changes
- [x] `docker-compose.yml` is updated or already compatible with my
changes
- [x] I have included a list of my configuration changes in the PR
description (under **Changes**)
🤖 Generated with [Claude Code](https://claude.ai/code)
<!-- CURSOR_SUMMARY -->
---
> [!NOTE]
> **Medium Risk**
> Introduces a new persistent file-storage surface area (DB tables,
storage backends, download API, and chat tools) and rewires
`store_media_file()`/block execution context across many blocks, so
regressions could impact file handling, access control, or storage
costs.
>
> **Overview**
> Adds a **persistent per-user Workspace** (new
`UserWorkspace`/`UserWorkspaceFile` models plus `WorkspaceManager` +
`WorkspaceStorageBackend` with GCS/local implementations) and wires it
into the API via a new `/api/workspace/files/{file_id}/download` route
(including header-sanitized `Content-Disposition`) and shutdown
lifecycle hooks.
>
> Extends `ExecutionContext` to carry execution identity +
`workspace_id`/`session_id`, updates executor tooling to clone
node-specific contexts, and updates `run_block` (CoPilot) to create a
session-scoped workspace and synthetic graph/run/node IDs.
>
> Refactors `store_media_file()` to require `execution_context` +
`return_format` and to support `workspace://` references; migrates many
media/file-handling blocks and related tests to the new API and to
persist generated media as `workspace://...` (or fall back to data URIs
outside CoPilot), and adds CoPilot chat tools for
listing/reading/writing/deleting workspace files with safeguards against
context bloat.
>
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
6abc70f793. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->
---------
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
12109 lines
395 KiB
JSON
12109 lines
395 KiB
JSON
{
|
|
"openapi": "3.1.0",
|
|
"info": {
|
|
"title": "AutoGPT Agent Server",
|
|
"summary": "AutoGPT Agent Server",
|
|
"description": "This server is used to execute agents that are created by the AutoGPT system.",
|
|
"version": "0.1"
|
|
},
|
|
"paths": {
|
|
"/api/analytics/log_raw_analytics": {
|
|
"post": {
|
|
"tags": ["analytics"],
|
|
"summary": "Log Raw Analytics",
|
|
"operationId": "postAnalyticsLogRawAnalytics",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Body_postAnalyticsLogRawAnalytics"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": { "application/json": { "schema": {} } }
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/analytics/log_raw_metric": {
|
|
"post": {
|
|
"tags": ["analytics"],
|
|
"summary": "Log Raw Metric",
|
|
"operationId": "postAnalyticsLogRawMetric",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/LogRawMetricRequest" }
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": { "application/json": { "schema": {} } }
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/api-keys": {
|
|
"get": {
|
|
"tags": ["v1", "api-keys"],
|
|
"summary": "List user API keys",
|
|
"description": "List all API keys for the user",
|
|
"operationId": "getV1List user api keys",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": { "$ref": "#/components/schemas/APIKeyInfo" },
|
|
"type": "array",
|
|
"title": "Response Getv1List User Api Keys"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
},
|
|
"post": {
|
|
"tags": ["v1", "api-keys"],
|
|
"summary": "Create new API key",
|
|
"description": "Create a new API key",
|
|
"operationId": "postV1Create new api key",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/CreateAPIKeyRequest" }
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/CreateAPIKeyResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/api-keys/{key_id}": {
|
|
"delete": {
|
|
"tags": ["v1", "api-keys"],
|
|
"summary": "Revoke API key",
|
|
"description": "Revoke an API key",
|
|
"operationId": "deleteV1Revoke api key",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "key_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Key Id" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/APIKeyInfo" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"get": {
|
|
"tags": ["v1", "api-keys"],
|
|
"summary": "Get specific API key",
|
|
"description": "Get a specific API key",
|
|
"operationId": "getV1Get specific api key",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "key_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Key Id" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/APIKeyInfo" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/api-keys/{key_id}/permissions": {
|
|
"put": {
|
|
"tags": ["v1", "api-keys"],
|
|
"summary": "Update key permissions",
|
|
"description": "Update API key permissions",
|
|
"operationId": "putV1Update key permissions",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "key_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Key Id" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UpdatePermissionsRequest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/APIKeyInfo" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/api-keys/{key_id}/suspend": {
|
|
"post": {
|
|
"tags": ["v1", "api-keys"],
|
|
"summary": "Suspend API key",
|
|
"description": "Suspend an API key",
|
|
"operationId": "postV1Suspend api key",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "key_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Key Id" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/APIKeyInfo" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/auth/user": {
|
|
"post": {
|
|
"tags": ["v1", "auth"],
|
|
"summary": "Get or create user",
|
|
"operationId": "postV1Get or create user",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": { "application/json": { "schema": {} } }
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/auth/user/email": {
|
|
"post": {
|
|
"tags": ["v1", "auth"],
|
|
"summary": "Update user email",
|
|
"operationId": "postV1Update user email",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "type": "string", "title": "Email" }
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"additionalProperties": { "type": "string" },
|
|
"type": "object",
|
|
"title": "Response Postv1Update User Email"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/auth/user/preferences": {
|
|
"get": {
|
|
"tags": ["v1", "auth"],
|
|
"summary": "Get notification preferences",
|
|
"operationId": "getV1Get notification preferences",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/NotificationPreference"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
},
|
|
"post": {
|
|
"tags": ["v1", "auth"],
|
|
"summary": "Update notification preferences",
|
|
"operationId": "postV1Update notification preferences",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/NotificationPreferenceDTO"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/NotificationPreference"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/auth/user/timezone": {
|
|
"get": {
|
|
"tags": ["v1", "auth"],
|
|
"summary": "Get user timezone",
|
|
"description": "Get user timezone setting.",
|
|
"operationId": "getV1Get user timezone",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/TimezoneResponse" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
},
|
|
"post": {
|
|
"tags": ["v1", "auth"],
|
|
"summary": "Update user timezone",
|
|
"description": "Update user timezone. The timezone should be a valid IANA timezone identifier.",
|
|
"operationId": "postV1Update user timezone",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/UpdateTimezoneRequest" }
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/TimezoneResponse" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/blocks": {
|
|
"get": {
|
|
"tags": ["v1", "blocks"],
|
|
"summary": "List available blocks",
|
|
"operationId": "getV1List available blocks",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": { "additionalProperties": true, "type": "object" },
|
|
"type": "array",
|
|
"title": "Response Getv1List Available Blocks"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/blocks/{block_id}/execute": {
|
|
"post": {
|
|
"tags": ["v1", "blocks"],
|
|
"summary": "Execute graph block",
|
|
"operationId": "postV1Execute graph block",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "block_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Block Id" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"title": "Data"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"additionalProperties": { "type": "array", "items": {} },
|
|
"title": "Response Postv1Execute Graph Block"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/builder/blocks": {
|
|
"get": {
|
|
"tags": ["v2"],
|
|
"summary": "Get Builder blocks",
|
|
"description": "Get blocks based on either category, type, or provider.",
|
|
"operationId": "getV2Get builder blocks",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "category",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Category"
|
|
}
|
|
},
|
|
{
|
|
"name": "type",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"enum": ["all", "input", "action", "output"],
|
|
"type": "string"
|
|
},
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Type"
|
|
}
|
|
},
|
|
{
|
|
"name": "provider",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string",
|
|
"description": "Provider name for integrations. Can be any string value, including custom provider names."
|
|
},
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Provider"
|
|
}
|
|
},
|
|
{
|
|
"name": "page",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": { "type": "integer", "default": 1, "title": "Page" }
|
|
},
|
|
{
|
|
"name": "page_size",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": { "type": "integer", "default": 50, "title": "Page Size" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/BlockResponse" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/builder/blocks/batch": {
|
|
"get": {
|
|
"tags": ["v2"],
|
|
"summary": "Get specific blocks",
|
|
"description": "Get specific blocks by their IDs.",
|
|
"operationId": "getV2Get specific blocks",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "block_ids",
|
|
"in": "query",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "array",
|
|
"items": { "type": "string" },
|
|
"title": "Block Ids"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": { "$ref": "#/components/schemas/BlockInfo" },
|
|
"title": "Response Getv2Get Specific Blocks"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/builder/categories": {
|
|
"get": {
|
|
"tags": ["v2"],
|
|
"summary": "Get Builder block categories",
|
|
"description": "Get all block categories with a specified number of blocks per category.",
|
|
"operationId": "getV2Get builder block categories",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "blocks_per_category",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "integer",
|
|
"default": 3,
|
|
"title": "Blocks Per Category"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/BlockCategoryResponse"
|
|
},
|
|
"title": "Response Getv2Get Builder Block Categories"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/builder/counts": {
|
|
"get": {
|
|
"tags": ["v2"],
|
|
"summary": "Get Builder item counts",
|
|
"description": "Get item counts for the menu categories in the Blocks Menu.",
|
|
"operationId": "getV2Get builder item counts",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/CountResponse" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/builder/providers": {
|
|
"get": {
|
|
"tags": ["v2"],
|
|
"summary": "Get Builder integration providers",
|
|
"description": "Get all integration providers with their block counts.",
|
|
"operationId": "getV2Get builder integration providers",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "page",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": { "type": "integer", "default": 1, "title": "Page" }
|
|
},
|
|
{
|
|
"name": "page_size",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": { "type": "integer", "default": 50, "title": "Page Size" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/ProviderResponse" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/builder/search": {
|
|
"get": {
|
|
"tags": ["v2", "store", "private"],
|
|
"summary": "Builder search",
|
|
"description": "Search for blocks (including integrations), marketplace agents, and user library agents.",
|
|
"operationId": "getV2Builder search",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "search_query",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Search Query"
|
|
}
|
|
},
|
|
{
|
|
"name": "filter",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "array",
|
|
"items": {
|
|
"enum": [
|
|
"blocks",
|
|
"integrations",
|
|
"marketplace_agents",
|
|
"my_agents"
|
|
],
|
|
"type": "string"
|
|
}
|
|
},
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Filter"
|
|
}
|
|
},
|
|
{
|
|
"name": "search_id",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Search Id"
|
|
}
|
|
},
|
|
{
|
|
"name": "by_creator",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{ "type": "array", "items": { "type": "string" } },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "By Creator"
|
|
}
|
|
},
|
|
{
|
|
"name": "page",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": { "type": "integer", "default": 1, "title": "Page" }
|
|
},
|
|
{
|
|
"name": "page_size",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": { "type": "integer", "default": 50, "title": "Page Size" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/SearchResponse" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/builder/suggestions": {
|
|
"get": {
|
|
"tags": ["v2"],
|
|
"summary": "Get Builder suggestions",
|
|
"description": "Get all suggestions for the Blocks Menu.",
|
|
"operationId": "getV2Get builder suggestions",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/SuggestionsResponse" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/chat/health": {
|
|
"get": {
|
|
"tags": ["v2", "chat", "chat"],
|
|
"summary": "Health Check",
|
|
"description": "Health check endpoint for the chat service.\n\nPerforms a full cycle test of session creation and retrieval. Should always return healthy\nif the service and data layer are operational.\n\nReturns:\n dict: A status dictionary indicating health, service name, and API version.",
|
|
"operationId": "getV2HealthCheck",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Response Getv2Healthcheck"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/chat/sessions": {
|
|
"get": {
|
|
"tags": ["v2", "chat", "chat"],
|
|
"summary": "List Sessions",
|
|
"description": "List chat sessions for the authenticated user.\n\nReturns a paginated list of chat sessions belonging to the current user,\nordered by most recently updated.\n\nArgs:\n user_id: The authenticated user's ID.\n limit: Maximum number of sessions to return (1-100).\n offset: Number of sessions to skip for pagination.\n\nReturns:\n ListSessionsResponse: List of session summaries and total count.",
|
|
"operationId": "getV2ListSessions",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "limit",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "integer",
|
|
"maximum": 100,
|
|
"minimum": 1,
|
|
"default": 50,
|
|
"title": "Limit"
|
|
}
|
|
},
|
|
{
|
|
"name": "offset",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "integer",
|
|
"minimum": 0,
|
|
"default": 0,
|
|
"title": "Offset"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ListSessionsResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": ["v2", "chat", "chat"],
|
|
"summary": "Create Session",
|
|
"description": "Create a new chat session.\n\nInitiates a new chat session for the authenticated user.\n\nArgs:\n user_id: The authenticated user ID parsed from the JWT (required).\n\nReturns:\n CreateSessionResponse: Details of the created session.",
|
|
"operationId": "postV2CreateSession",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/CreateSessionResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/chat/sessions/{session_id}": {
|
|
"get": {
|
|
"tags": ["v2", "chat", "chat"],
|
|
"summary": "Get Session",
|
|
"description": "Retrieve the details of a specific chat session.\n\nLooks up a chat session by ID for the given user (if authenticated) and returns all session data including messages.\n\nArgs:\n session_id: The unique identifier for the desired chat session.\n user_id: The optional authenticated user ID, or None for anonymous access.\n\nReturns:\n SessionDetailResponse: Details for the requested session, or None if not found.",
|
|
"operationId": "getV2GetSession",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "session_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Session Id" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SessionDetailResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/chat/sessions/{session_id}/assign-user": {
|
|
"patch": {
|
|
"tags": ["v2", "chat", "chat"],
|
|
"summary": "Session Assign User",
|
|
"description": "Assign an authenticated user to a chat session.\n\nUsed (typically post-login) to claim an existing anonymous session as the current authenticated user.\n\nArgs:\n session_id: The identifier for the (previously anonymous) session.\n user_id: The authenticated user's ID to associate with the session.\n\nReturns:\n dict: Status of the assignment.",
|
|
"operationId": "patchV2SessionAssignUser",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "session_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Session Id" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"title": "Response Patchv2Sessionassignuser"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/chat/sessions/{session_id}/stream": {
|
|
"get": {
|
|
"tags": ["v2", "chat", "chat"],
|
|
"summary": "Stream Chat Get",
|
|
"description": "Stream chat responses for a session (GET - legacy endpoint).\n\nStreams the AI/completion responses in real time over Server-Sent Events (SSE), including:\n - Text fragments as they are generated\n - Tool call UI elements (if invoked)\n - Tool execution results\n\nArgs:\n session_id: The chat session identifier to associate with the streamed messages.\n message: The user's new message to process.\n user_id: Optional authenticated user ID.\n is_user_message: Whether the message is a user message.\nReturns:\n StreamingResponse: SSE-formatted response chunks.",
|
|
"operationId": "getV2StreamChatGet",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "session_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Session Id" }
|
|
},
|
|
{
|
|
"name": "message",
|
|
"in": "query",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string",
|
|
"minLength": 1,
|
|
"maxLength": 10000,
|
|
"title": "Message"
|
|
}
|
|
},
|
|
{
|
|
"name": "is_user_message",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "boolean",
|
|
"default": true,
|
|
"title": "Is User Message"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": { "application/json": { "schema": {} } }
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": ["v2", "chat", "chat"],
|
|
"summary": "Stream Chat Post",
|
|
"description": "Stream chat responses for a session (POST with context support).\n\nStreams the AI/completion responses in real time over Server-Sent Events (SSE), including:\n - Text fragments as they are generated\n - Tool call UI elements (if invoked)\n - Tool execution results\n\nArgs:\n session_id: The chat session identifier to associate with the streamed messages.\n request: Request body containing message, is_user_message, and optional context.\n user_id: Optional authenticated user ID.\nReturns:\n StreamingResponse: SSE-formatted response chunks.",
|
|
"operationId": "postV2StreamChatPost",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "session_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Session Id" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/StreamChatRequest" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": { "application/json": { "schema": {} } }
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/credits": {
|
|
"get": {
|
|
"tags": ["v1", "credits"],
|
|
"summary": "Get user credits",
|
|
"operationId": "getV1Get user credits",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"additionalProperties": { "type": "integer" },
|
|
"type": "object",
|
|
"title": "Response Getv1Get User Credits"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
},
|
|
"patch": {
|
|
"tags": ["v1", "credits"],
|
|
"summary": "Fulfill checkout session",
|
|
"operationId": "patchV1Fulfill checkout session",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": { "application/json": { "schema": {} } }
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
},
|
|
"post": {
|
|
"tags": ["v1", "credits"],
|
|
"summary": "Request credit top up",
|
|
"operationId": "postV1Request credit top up",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/RequestTopUp" }
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": { "application/json": { "schema": {} } }
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/credits/admin/add_credits": {
|
|
"post": {
|
|
"tags": ["v2", "admin", "credits", "admin"],
|
|
"summary": "Add Credits to User",
|
|
"operationId": "postV2Add credits to user",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Body_postV2Add_credits_to_user"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AddUserCreditsResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/credits/admin/users_history": {
|
|
"get": {
|
|
"tags": ["v2", "admin", "credits", "admin"],
|
|
"summary": "Get All Users History",
|
|
"operationId": "getV2Get all users history",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "search",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Search"
|
|
}
|
|
},
|
|
{
|
|
"name": "page",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": { "type": "integer", "default": 1, "title": "Page" }
|
|
},
|
|
{
|
|
"name": "page_size",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": { "type": "integer", "default": 20, "title": "Page Size" }
|
|
},
|
|
{
|
|
"name": "transaction_filter",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{ "$ref": "#/components/schemas/CreditTransactionType" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Transaction Filter"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/UserHistoryResponse" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/credits/auto-top-up": {
|
|
"get": {
|
|
"tags": ["v1", "credits"],
|
|
"summary": "Get auto top up",
|
|
"operationId": "getV1Get auto top up",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/AutoTopUpConfig" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
},
|
|
"post": {
|
|
"tags": ["v1", "credits"],
|
|
"summary": "Configure auto top up",
|
|
"operationId": "postV1Configure auto top up",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/AutoTopUpConfig" }
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "string",
|
|
"title": "Response Postv1Configure Auto Top Up"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/credits/manage": {
|
|
"get": {
|
|
"tags": ["v1", "credits"],
|
|
"summary": "Manage payment methods",
|
|
"operationId": "getV1Manage payment methods",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"additionalProperties": { "type": "string" },
|
|
"type": "object",
|
|
"title": "Response Getv1Manage Payment Methods"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/credits/refunds": {
|
|
"get": {
|
|
"tags": ["v1", "credits"],
|
|
"summary": "Get refund requests",
|
|
"operationId": "getV1Get refund requests",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": { "$ref": "#/components/schemas/RefundRequest" },
|
|
"type": "array",
|
|
"title": "Response Getv1Get Refund Requests"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/credits/stripe_webhook": {
|
|
"post": {
|
|
"tags": ["v1", "credits"],
|
|
"summary": "Handle Stripe webhooks",
|
|
"operationId": "postV1Handle stripe webhooks",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": { "application/json": { "schema": {} } }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/credits/transactions": {
|
|
"get": {
|
|
"tags": ["v1", "credits"],
|
|
"summary": "Get credit history",
|
|
"operationId": "getV1Get credit history",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "transaction_time",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{ "type": "string", "format": "date-time" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Transaction Time"
|
|
}
|
|
},
|
|
{
|
|
"name": "transaction_type",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Transaction Type"
|
|
}
|
|
},
|
|
{
|
|
"name": "transaction_count_limit",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "integer",
|
|
"default": 100,
|
|
"title": "Transaction Count Limit"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/TransactionHistory" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/credits/{transaction_key}/refund": {
|
|
"post": {
|
|
"tags": ["v1", "credits"],
|
|
"summary": "Refund credit transaction",
|
|
"operationId": "postV1Refund credit transaction",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "transaction_key",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Transaction Key" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"additionalProperties": { "type": "string" },
|
|
"title": "Metadata"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "integer",
|
|
"title": "Response Postv1Refund Credit Transaction"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/email/": {
|
|
"post": {
|
|
"tags": ["v1", "email"],
|
|
"summary": "Handle Postmark Email Webhooks",
|
|
"operationId": "postV1Handle postmark email webhooks",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"oneOf": [
|
|
{ "$ref": "#/components/schemas/PostmarkDeliveryWebhook" },
|
|
{ "$ref": "#/components/schemas/PostmarkBounceWebhook" },
|
|
{
|
|
"$ref": "#/components/schemas/PostmarkSpamComplaintWebhook"
|
|
},
|
|
{ "$ref": "#/components/schemas/PostmarkOpenWebhook" },
|
|
{ "$ref": "#/components/schemas/PostmarkClickWebhook" },
|
|
{
|
|
"$ref": "#/components/schemas/PostmarkSubscriptionChangeWebhook"
|
|
}
|
|
],
|
|
"title": "Webhook",
|
|
"discriminator": {
|
|
"propertyName": "RecordType",
|
|
"mapping": {
|
|
"Delivery": "#/components/schemas/PostmarkDeliveryWebhook",
|
|
"Bounce": "#/components/schemas/PostmarkBounceWebhook",
|
|
"SpamComplaint": "#/components/schemas/PostmarkSpamComplaintWebhook",
|
|
"Open": "#/components/schemas/PostmarkOpenWebhook",
|
|
"Click": "#/components/schemas/PostmarkClickWebhook",
|
|
"SubscriptionChange": "#/components/schemas/PostmarkSubscriptionChangeWebhook"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": { "application/json": { "schema": {} } }
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [{ "APIKeyAuthenticator-X-Postmark-Webhook-Token": [] }]
|
|
}
|
|
},
|
|
"/api/email/unsubscribe": {
|
|
"post": {
|
|
"tags": ["v1", "email"],
|
|
"summary": "One Click Email Unsubscribe",
|
|
"operationId": "postV1One click email unsubscribe",
|
|
"parameters": [
|
|
{
|
|
"name": "token",
|
|
"in": "query",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Token" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": { "application/json": { "schema": {} } }
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/executions": {
|
|
"get": {
|
|
"tags": ["v1", "graphs"],
|
|
"summary": "List all executions",
|
|
"operationId": "getV1List all executions",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/GraphExecutionMeta"
|
|
},
|
|
"type": "array",
|
|
"title": "Response Getv1List All Executions"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/executions/admin/execution_accuracy_trends": {
|
|
"get": {
|
|
"tags": ["v2", "admin", "admin", "execution_analytics"],
|
|
"summary": "Get Execution Accuracy Trends and Alerts",
|
|
"description": "Get execution accuracy trends with moving averages and alert detection.\nSimple single-query approach.",
|
|
"operationId": "getV2Get execution accuracy trends and alerts",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "graph_id",
|
|
"in": "query",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Graph Id" }
|
|
},
|
|
{
|
|
"name": "user_id",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "User Id"
|
|
}
|
|
},
|
|
{
|
|
"name": "days_back",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": { "type": "integer", "default": 30, "title": "Days Back" }
|
|
},
|
|
{
|
|
"name": "drop_threshold",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "number",
|
|
"default": 10.0,
|
|
"title": "Drop Threshold"
|
|
}
|
|
},
|
|
{
|
|
"name": "include_historical",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "boolean",
|
|
"default": false,
|
|
"title": "Include Historical"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AccuracyTrendsResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/executions/admin/execution_analytics": {
|
|
"post": {
|
|
"tags": ["v2", "admin", "admin", "execution_analytics"],
|
|
"summary": "Generate Execution Analytics",
|
|
"description": "Generate activity summaries and correctness scores for graph executions.\n\nThis endpoint:\n1. Fetches all completed executions matching the criteria\n2. Identifies executions missing activity_status or correctness_score\n3. Generates missing data using AI in batches\n4. Updates the database with new stats\n5. Returns a detailed report of the analytics operation",
|
|
"operationId": "postV2Generate execution analytics",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ExecutionAnalyticsRequest"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ExecutionAnalyticsResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/executions/admin/execution_analytics/config": {
|
|
"get": {
|
|
"tags": ["v2", "admin", "admin", "execution_analytics"],
|
|
"summary": "Get Execution Analytics Configuration",
|
|
"description": "Get the configuration for execution analytics including:\n- Available AI models with metadata\n- Default system and user prompts\n- Recommended model selection",
|
|
"operationId": "getV2Get execution analytics configuration",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ExecutionAnalyticsConfig"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/executions/{graph_exec_id}": {
|
|
"delete": {
|
|
"tags": ["v1", "graphs"],
|
|
"summary": "Delete graph execution",
|
|
"operationId": "deleteV1Delete graph execution",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "graph_exec_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Graph Exec Id" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": { "description": "Successful Response" },
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/files/upload": {
|
|
"post": {
|
|
"tags": ["v1", "files"],
|
|
"summary": "Upload file to cloud storage",
|
|
"description": "Upload a file to cloud storage and return a storage key that can be used\nwith FileStoreBlock and AgentFileInputBlock.\n\nArgs:\n file: The file to upload\n user_id: The user ID\n provider: Cloud storage provider (\"gcs\", \"s3\", \"azure\")\n expiration_hours: Hours until file expires (1-48)\n\nReturns:\n Dict containing the cloud storage path and signed URL",
|
|
"operationId": "postV1Upload file to cloud storage",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "provider",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "string",
|
|
"default": "gcs",
|
|
"title": "Provider"
|
|
}
|
|
},
|
|
{
|
|
"name": "expiration_hours",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "integer",
|
|
"default": 24,
|
|
"title": "Expiration Hours"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Body_postV1Upload_file_to_cloud_storage"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/UploadFileResponse" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/graphs": {
|
|
"get": {
|
|
"tags": ["v1", "graphs"],
|
|
"summary": "List user graphs",
|
|
"operationId": "getV1List user graphs",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": { "$ref": "#/components/schemas/GraphMeta" },
|
|
"type": "array",
|
|
"title": "Response Getv1List User Graphs"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
},
|
|
"post": {
|
|
"tags": ["v1", "graphs"],
|
|
"summary": "Create new graph",
|
|
"operationId": "postV1Create new graph",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/CreateGraph" }
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/GraphModel" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/graphs/{graph_id}": {
|
|
"delete": {
|
|
"tags": ["v1", "graphs"],
|
|
"summary": "Delete graph permanently",
|
|
"operationId": "deleteV1Delete graph permanently",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "graph_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Graph Id" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/DeleteGraphResponse" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"get": {
|
|
"tags": ["v1", "graphs"],
|
|
"summary": "Get specific graph",
|
|
"operationId": "getV1Get specific graph",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "graph_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Graph Id" }
|
|
},
|
|
{
|
|
"name": "version",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [{ "type": "integer" }, { "type": "null" }],
|
|
"title": "Version"
|
|
}
|
|
},
|
|
{
|
|
"name": "for_export",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "boolean",
|
|
"default": false,
|
|
"title": "For Export"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/GraphModel" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"tags": ["v1", "graphs"],
|
|
"summary": "Update graph version",
|
|
"operationId": "putV1Update graph version",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "graph_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Graph Id" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/Graph" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/GraphModel" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/graphs/{graph_id}/execute/{graph_version}": {
|
|
"post": {
|
|
"tags": ["v1", "graphs"],
|
|
"summary": "Execute graph agent",
|
|
"operationId": "postV1Execute graph agent",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "graph_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Graph Id" }
|
|
},
|
|
{
|
|
"name": "graph_version",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"anyOf": [{ "type": "integer" }, { "type": "null" }],
|
|
"title": "Graph Version"
|
|
}
|
|
},
|
|
{
|
|
"name": "preset_id",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Preset Id"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Body_postV1Execute_graph_agent"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/GraphExecutionMeta" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/graphs/{graph_id}/executions": {
|
|
"get": {
|
|
"tags": ["v1", "graphs"],
|
|
"summary": "List graph executions",
|
|
"operationId": "getV1List graph executions",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "graph_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Graph Id" }
|
|
},
|
|
{
|
|
"name": "page",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "integer",
|
|
"minimum": 1,
|
|
"description": "Page number (1-indexed)",
|
|
"default": 1,
|
|
"title": "Page"
|
|
},
|
|
"description": "Page number (1-indexed)"
|
|
},
|
|
{
|
|
"name": "page_size",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "integer",
|
|
"maximum": 100,
|
|
"minimum": 1,
|
|
"description": "Number of executions per page",
|
|
"default": 25,
|
|
"title": "Page Size"
|
|
},
|
|
"description": "Number of executions per page"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/GraphExecutionsPaginated"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/graphs/{graph_id}/executions/{graph_exec_id}": {
|
|
"get": {
|
|
"tags": ["v1", "graphs"],
|
|
"summary": "Get execution details",
|
|
"operationId": "getV1Get execution details",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "graph_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Graph Id" }
|
|
},
|
|
{
|
|
"name": "graph_exec_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Graph Exec Id" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"anyOf": [
|
|
{ "$ref": "#/components/schemas/GraphExecution" },
|
|
{ "$ref": "#/components/schemas/GraphExecutionWithNodes" }
|
|
],
|
|
"title": "Response Getv1Get Execution Details"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/graphs/{graph_id}/executions/{graph_exec_id}/share": {
|
|
"delete": {
|
|
"tags": ["v1"],
|
|
"summary": "Disable Execution Sharing",
|
|
"description": "Disable sharing for a graph execution.",
|
|
"operationId": "deleteV1DisableExecutionSharing",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "graph_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Graph Id" }
|
|
},
|
|
{
|
|
"name": "graph_exec_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Graph Exec Id" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": { "description": "Successful Response" },
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": ["v1"],
|
|
"summary": "Enable Execution Sharing",
|
|
"description": "Enable sharing for a graph execution.",
|
|
"operationId": "postV1EnableExecutionSharing",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "graph_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Graph Id" }
|
|
},
|
|
{
|
|
"name": "graph_exec_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Graph Exec Id" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ShareRequest",
|
|
"default": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/ShareResponse" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/graphs/{graph_id}/executions/{graph_exec_id}/stop": {
|
|
"post": {
|
|
"tags": ["v1", "graphs"],
|
|
"summary": "Stop graph execution",
|
|
"operationId": "postV1Stop graph execution",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "graph_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Graph Id" }
|
|
},
|
|
{
|
|
"name": "graph_exec_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Graph Exec Id" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"anyOf": [
|
|
{ "$ref": "#/components/schemas/GraphExecutionMeta" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Response Postv1Stop Graph Execution"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/graphs/{graph_id}/schedules": {
|
|
"get": {
|
|
"tags": ["v1", "schedules"],
|
|
"summary": "List execution schedules for a graph",
|
|
"operationId": "getV1List execution schedules for a graph",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "graph_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Graph Id" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/GraphExecutionJobInfo"
|
|
},
|
|
"title": "Response Getv1List Execution Schedules For A Graph"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": ["v1", "schedules"],
|
|
"summary": "Create execution schedule",
|
|
"operationId": "postV1Create execution schedule",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "graph_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string",
|
|
"description": "ID of the graph to schedule",
|
|
"title": "Graph Id"
|
|
},
|
|
"description": "ID of the graph to schedule"
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ScheduleCreationRequest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/GraphExecutionJobInfo"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/graphs/{graph_id}/settings": {
|
|
"patch": {
|
|
"tags": ["v1", "graphs"],
|
|
"summary": "Update graph settings",
|
|
"description": "Update graph settings for the user's library agent.",
|
|
"operationId": "patchV1Update graph settings",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "graph_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Graph Id" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/GraphSettings" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/GraphSettings" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/graphs/{graph_id}/versions": {
|
|
"get": {
|
|
"tags": ["v1", "graphs"],
|
|
"summary": "Get all graph versions",
|
|
"operationId": "getV1Get all graph versions",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "graph_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Graph Id" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": { "$ref": "#/components/schemas/GraphModel" },
|
|
"title": "Response Getv1Get All Graph Versions"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/graphs/{graph_id}/versions/active": {
|
|
"put": {
|
|
"tags": ["v1", "graphs"],
|
|
"summary": "Set active graph version",
|
|
"operationId": "putV1Set active graph version",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "graph_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Graph Id" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/SetGraphActiveVersion" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": { "application/json": { "schema": {} } }
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/graphs/{graph_id}/versions/{version}": {
|
|
"get": {
|
|
"tags": ["v1", "graphs"],
|
|
"summary": "Get graph version",
|
|
"operationId": "getV1Get graph version",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "graph_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Graph Id" }
|
|
},
|
|
{
|
|
"name": "version",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"anyOf": [{ "type": "integer" }, { "type": "null" }],
|
|
"title": "Version"
|
|
}
|
|
},
|
|
{
|
|
"name": "for_export",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "boolean",
|
|
"default": false,
|
|
"title": "For Export"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/GraphModel" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/integrations/ayrshare/sso_url": {
|
|
"get": {
|
|
"tags": ["v1", "integrations"],
|
|
"summary": "Get Ayrshare Sso Url",
|
|
"description": "Generate an SSO URL for Ayrshare social media integration.\n\nReturns:\n dict: Contains the SSO URL for Ayrshare integration",
|
|
"operationId": "getV1GetAyrshareSsoUrl",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/AyrshareSSOResponse" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/integrations/credentials": {
|
|
"get": {
|
|
"tags": ["v1", "integrations"],
|
|
"summary": "List Credentials",
|
|
"operationId": "getV1List credentials",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/CredentialsMetaResponse"
|
|
},
|
|
"type": "array",
|
|
"title": "Response Getv1List Credentials"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/integrations/providers": {
|
|
"get": {
|
|
"tags": ["v1", "integrations"],
|
|
"summary": "List Providers",
|
|
"description": "Get a list of all available provider names.\n\nReturns both statically defined providers (from ProviderName enum)\nand dynamically registered providers (from SDK decorators).\n\nNote: The complete list of provider names is also available as a constant\nin the generated TypeScript client via PROVIDER_NAMES.",
|
|
"operationId": "getV1ListProviders",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": { "type": "string" },
|
|
"type": "array",
|
|
"title": "Response Getv1Listproviders"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/integrations/providers/constants": {
|
|
"get": {
|
|
"tags": ["v1", "integrations"],
|
|
"summary": "Get Provider Constants",
|
|
"description": "Get provider names as constants.\n\nThis endpoint returns a model with provider names as constants,\nspecifically designed for OpenAPI code generation tools to create\nTypeScript constants.",
|
|
"operationId": "getV1GetProviderConstants",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/ProviderConstants" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/integrations/providers/enum-example": {
|
|
"get": {
|
|
"tags": ["v1", "integrations"],
|
|
"summary": "Get Provider Enum Example",
|
|
"description": "Example endpoint that uses the CompleteProviderNames enum.\n\nThis endpoint exists to ensure that the CompleteProviderNames enum is included\nin the OpenAPI schema, which will cause Orval to generate it as a\nTypeScript enum/constant.",
|
|
"operationId": "getV1GetProviderEnumExample",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ProviderEnumResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/integrations/providers/names": {
|
|
"get": {
|
|
"tags": ["v1", "integrations"],
|
|
"summary": "Get Provider Names",
|
|
"description": "Get all provider names in a structured format.\n\nThis endpoint is specifically designed to expose the provider names\nin the OpenAPI schema so that code generators like Orval can create\nappropriate TypeScript constants.",
|
|
"operationId": "getV1GetProviderNames",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ProviderNamesResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/integrations/providers/system": {
|
|
"get": {
|
|
"tags": ["v1", "integrations"],
|
|
"summary": "List System Providers",
|
|
"description": "Get a list of providers that have platform credits (system credentials) available.\n\nThese providers can be used without the user providing their own API keys.",
|
|
"operationId": "getV1ListSystemProviders",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": { "type": "string" },
|
|
"type": "array",
|
|
"title": "Response Getv1Listsystemproviders"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/integrations/webhooks/{webhook_id}/ping": {
|
|
"post": {
|
|
"tags": ["v1", "integrations"],
|
|
"summary": "Webhook Ping",
|
|
"operationId": "postV1WebhookPing",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "webhook_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Our ID for the webhook" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": { "application/json": { "schema": {} } }
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/integrations/{provider}/callback": {
|
|
"post": {
|
|
"tags": ["v1", "integrations"],
|
|
"summary": "Exchange OAuth code for tokens",
|
|
"operationId": "postV1Exchange oauth code for tokens",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "provider",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string",
|
|
"title": "The target provider for this OAuth exchange",
|
|
"description": "Provider name for integrations. Can be any string value, including custom provider names."
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Body_postV1Exchange_oauth_code_for_tokens"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/CredentialsMetaResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/integrations/{provider}/credentials": {
|
|
"get": {
|
|
"tags": ["v1", "integrations"],
|
|
"summary": "List Credentials By Provider",
|
|
"operationId": "getV1ListCredentialsByProvider",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "provider",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string",
|
|
"title": "The provider to list credentials for",
|
|
"description": "Provider name for integrations. Can be any string value, including custom provider names."
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/CredentialsMetaResponse"
|
|
},
|
|
"title": "Response Getv1Listcredentialsbyprovider"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": ["v1", "integrations"],
|
|
"summary": "Create Credentials",
|
|
"operationId": "postV1Create credentials",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "provider",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string",
|
|
"title": "The provider to create credentials for",
|
|
"description": "Provider name for integrations. Can be any string value, including custom provider names."
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"oneOf": [
|
|
{ "$ref": "#/components/schemas/OAuth2Credentials" },
|
|
{ "$ref": "#/components/schemas/APIKeyCredentials" },
|
|
{ "$ref": "#/components/schemas/UserPasswordCredentials" },
|
|
{ "$ref": "#/components/schemas/HostScopedCredentials-Input" }
|
|
],
|
|
"discriminator": {
|
|
"propertyName": "type",
|
|
"mapping": {
|
|
"oauth2": "#/components/schemas/OAuth2Credentials",
|
|
"api_key": "#/components/schemas/APIKeyCredentials",
|
|
"user_password": "#/components/schemas/UserPasswordCredentials",
|
|
"host_scoped": "#/components/schemas/HostScopedCredentials-Input"
|
|
}
|
|
},
|
|
"title": "Credentials"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"oneOf": [
|
|
{ "$ref": "#/components/schemas/OAuth2Credentials" },
|
|
{ "$ref": "#/components/schemas/APIKeyCredentials" },
|
|
{ "$ref": "#/components/schemas/UserPasswordCredentials" },
|
|
{
|
|
"$ref": "#/components/schemas/HostScopedCredentials-Output"
|
|
}
|
|
],
|
|
"discriminator": {
|
|
"propertyName": "type",
|
|
"mapping": {
|
|
"oauth2": "#/components/schemas/OAuth2Credentials",
|
|
"api_key": "#/components/schemas/APIKeyCredentials",
|
|
"user_password": "#/components/schemas/UserPasswordCredentials",
|
|
"host_scoped": "#/components/schemas/HostScopedCredentials-Output"
|
|
}
|
|
},
|
|
"title": "Response Postv1Create Credentials"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/integrations/{provider}/credentials/{cred_id}": {
|
|
"delete": {
|
|
"tags": ["v1", "integrations"],
|
|
"summary": "Delete Credentials",
|
|
"operationId": "deleteV1DeleteCredentials",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "provider",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string",
|
|
"title": "The provider to delete credentials for",
|
|
"description": "Provider name for integrations. Can be any string value, including custom provider names."
|
|
}
|
|
},
|
|
{
|
|
"name": "cred_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string",
|
|
"title": "The ID of the credentials to delete"
|
|
}
|
|
},
|
|
{
|
|
"name": "force",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "boolean",
|
|
"title": "Whether to proceed if any linked webhooks are still in use",
|
|
"default": false
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/CredentialsDeletionResponse"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/CredentialsDeletionNeedsConfirmationResponse"
|
|
}
|
|
],
|
|
"title": "Response Deletev1Deletecredentials"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"get": {
|
|
"tags": ["v1", "integrations"],
|
|
"summary": "Get Specific Credential By ID",
|
|
"operationId": "getV1Get specific credential by id",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "provider",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string",
|
|
"title": "The provider to retrieve credentials for",
|
|
"description": "Provider name for integrations. Can be any string value, including custom provider names."
|
|
}
|
|
},
|
|
{
|
|
"name": "cred_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string",
|
|
"title": "The ID of the credentials to retrieve"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"oneOf": [
|
|
{ "$ref": "#/components/schemas/OAuth2Credentials" },
|
|
{ "$ref": "#/components/schemas/APIKeyCredentials" },
|
|
{ "$ref": "#/components/schemas/UserPasswordCredentials" },
|
|
{
|
|
"$ref": "#/components/schemas/HostScopedCredentials-Output"
|
|
}
|
|
],
|
|
"discriminator": {
|
|
"propertyName": "type",
|
|
"mapping": {
|
|
"oauth2": "#/components/schemas/OAuth2Credentials",
|
|
"api_key": "#/components/schemas/APIKeyCredentials",
|
|
"user_password": "#/components/schemas/UserPasswordCredentials",
|
|
"host_scoped": "#/components/schemas/HostScopedCredentials-Output"
|
|
}
|
|
},
|
|
"title": "Response Getv1Get Specific Credential By Id"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/integrations/{provider}/login": {
|
|
"get": {
|
|
"tags": ["v1", "integrations"],
|
|
"summary": "Initiate OAuth flow",
|
|
"operationId": "getV1Initiate oauth flow",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "provider",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string",
|
|
"title": "The provider to initiate an OAuth flow for",
|
|
"description": "Provider name for integrations. Can be any string value, including custom provider names."
|
|
}
|
|
},
|
|
{
|
|
"name": "scopes",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "string",
|
|
"title": "Comma-separated list of authorization scopes",
|
|
"default": ""
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/LoginResponse" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/integrations/{provider}/webhooks/{webhook_id}/ingress": {
|
|
"post": {
|
|
"tags": ["v1", "integrations"],
|
|
"summary": "Webhook Ingress Generic",
|
|
"operationId": "postV1WebhookIngressGeneric",
|
|
"parameters": [
|
|
{
|
|
"name": "provider",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string",
|
|
"title": "Provider where the webhook was registered",
|
|
"description": "Provider name for integrations. Can be any string value, including custom provider names."
|
|
}
|
|
},
|
|
{
|
|
"name": "webhook_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Our ID for the webhook" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": { "application/json": { "schema": {} } }
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/library/agents": {
|
|
"get": {
|
|
"tags": ["v2", "library", "private"],
|
|
"summary": "List Library Agents",
|
|
"description": "Get all agents in the user's library (both created and saved).",
|
|
"operationId": "getV2List library agents",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "search_term",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"description": "Search term to filter agents",
|
|
"title": "Search Term"
|
|
},
|
|
"description": "Search term to filter agents"
|
|
},
|
|
{
|
|
"name": "sort_by",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"$ref": "#/components/schemas/LibraryAgentSort",
|
|
"description": "Criteria to sort results by",
|
|
"default": "updatedAt"
|
|
},
|
|
"description": "Criteria to sort results by"
|
|
},
|
|
{
|
|
"name": "page",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "integer",
|
|
"minimum": 1,
|
|
"description": "Page number to retrieve (must be >= 1)",
|
|
"default": 1,
|
|
"title": "Page"
|
|
},
|
|
"description": "Page number to retrieve (must be >= 1)"
|
|
},
|
|
{
|
|
"name": "page_size",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "integer",
|
|
"minimum": 1,
|
|
"description": "Number of agents per page (must be >= 1)",
|
|
"default": 15,
|
|
"title": "Page Size"
|
|
},
|
|
"description": "Number of agents per page (must be >= 1)"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/LibraryAgentResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": ["v2", "library", "private"],
|
|
"summary": "Add Marketplace Agent",
|
|
"description": "Add an agent from the marketplace to the user's library.",
|
|
"operationId": "postV2Add marketplace agent",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Body_postV2Add_marketplace_agent"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/LibraryAgent" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/library/agents/by-graph/{graph_id}": {
|
|
"get": {
|
|
"tags": ["v2", "library", "private"],
|
|
"summary": "Get Library Agent By Graph Id",
|
|
"operationId": "getV2GetLibraryAgentByGraphId",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "graph_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Graph Id" }
|
|
},
|
|
{
|
|
"name": "version",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [{ "type": "integer" }, { "type": "null" }],
|
|
"title": "Version"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/LibraryAgent" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/library/agents/favorites": {
|
|
"get": {
|
|
"tags": ["v2", "library", "private"],
|
|
"summary": "List Favorite Library Agents",
|
|
"description": "Get all favorite agents in the user's library.",
|
|
"operationId": "getV2List favorite library agents",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "page",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "integer",
|
|
"minimum": 1,
|
|
"description": "Page number to retrieve (must be >= 1)",
|
|
"default": 1,
|
|
"title": "Page"
|
|
},
|
|
"description": "Page number to retrieve (must be >= 1)"
|
|
},
|
|
{
|
|
"name": "page_size",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "integer",
|
|
"minimum": 1,
|
|
"description": "Number of agents per page (must be >= 1)",
|
|
"default": 15,
|
|
"title": "Page Size"
|
|
},
|
|
"description": "Number of agents per page (must be >= 1)"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/LibraryAgentResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/library/agents/marketplace/{store_listing_version_id}": {
|
|
"get": {
|
|
"tags": ["v2", "library", "private", "store", "library"],
|
|
"summary": "Get Agent By Store ID",
|
|
"description": "Get Library Agent from Store Listing Version ID.",
|
|
"operationId": "getV2Get agent by store id",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "store_listing_version_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Store Listing Version Id" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"anyOf": [
|
|
{ "$ref": "#/components/schemas/LibraryAgent" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Response Getv2Get Agent By Store Id"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/library/agents/{library_agent_id}": {
|
|
"delete": {
|
|
"tags": ["v2", "library", "private"],
|
|
"summary": "Delete Library Agent",
|
|
"description": "Soft-delete the specified library agent.",
|
|
"operationId": "deleteV2Delete library agent",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "library_agent_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Library Agent Id" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": { "application/json": { "schema": {} } }
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"get": {
|
|
"tags": ["v2", "library", "private"],
|
|
"summary": "Get Library Agent",
|
|
"operationId": "getV2Get library agent",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "library_agent_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Library Agent Id" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/LibraryAgent" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"patch": {
|
|
"tags": ["v2", "library", "private"],
|
|
"summary": "Update Library Agent",
|
|
"description": "Update the library agent with the given fields.",
|
|
"operationId": "patchV2Update library agent",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "library_agent_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Library Agent Id" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/LibraryAgentUpdateRequest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/LibraryAgent" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/library/agents/{library_agent_id}/fork": {
|
|
"post": {
|
|
"tags": ["v2", "library", "private"],
|
|
"summary": "Fork Library Agent",
|
|
"operationId": "postV2Fork library agent",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "library_agent_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Library Agent Id" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/LibraryAgent" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/library/presets": {
|
|
"get": {
|
|
"tags": ["v2", "presets"],
|
|
"summary": "List presets",
|
|
"description": "Retrieve a paginated list of presets for the current user.",
|
|
"operationId": "getV2List presets",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "page",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "integer",
|
|
"minimum": 1,
|
|
"default": 1,
|
|
"title": "Page"
|
|
}
|
|
},
|
|
{
|
|
"name": "page_size",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "integer",
|
|
"minimum": 1,
|
|
"default": 10,
|
|
"title": "Page Size"
|
|
}
|
|
},
|
|
{
|
|
"name": "graph_id",
|
|
"in": "query",
|
|
"required": true,
|
|
"schema": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"description": "Allows to filter presets by a specific agent graph",
|
|
"title": "Graph Id"
|
|
},
|
|
"description": "Allows to filter presets by a specific agent graph"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/LibraryAgentPresetResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": ["v2", "presets"],
|
|
"summary": "Create a new preset",
|
|
"description": "Create a new preset for the current user.",
|
|
"operationId": "postV2Create a new preset",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/LibraryAgentPresetCreatable"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/LibraryAgentPresetCreatableFromGraphExecution"
|
|
}
|
|
],
|
|
"title": "Preset"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/LibraryAgentPreset" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/library/presets/setup-trigger": {
|
|
"post": {
|
|
"tags": ["v2", "presets"],
|
|
"summary": "Setup Trigger",
|
|
"description": "Sets up a webhook-triggered `LibraryAgentPreset` for a `LibraryAgent`.\nReturns the correspondingly created `LibraryAgentPreset` with `webhook_id` set.",
|
|
"operationId": "postV2SetupTrigger",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TriggeredPresetSetupRequest"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/LibraryAgentPreset" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/library/presets/{preset_id}": {
|
|
"delete": {
|
|
"tags": ["v2", "presets"],
|
|
"summary": "Delete a preset",
|
|
"description": "Delete an existing preset by its ID.",
|
|
"operationId": "deleteV2Delete a preset",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "preset_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Preset Id" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": { "description": "Successful Response" },
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"get": {
|
|
"tags": ["v2", "presets"],
|
|
"summary": "Get a specific preset",
|
|
"description": "Retrieve details for a specific preset by its ID.",
|
|
"operationId": "getV2Get a specific preset",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "preset_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Preset Id" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/LibraryAgentPreset" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"patch": {
|
|
"tags": ["v2", "presets"],
|
|
"summary": "Update an existing preset",
|
|
"description": "Update an existing preset by its ID.",
|
|
"operationId": "patchV2Update an existing preset",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "preset_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Preset Id" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/LibraryAgentPresetUpdatable"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/LibraryAgentPreset" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/library/presets/{preset_id}/execute": {
|
|
"post": {
|
|
"tags": ["v2", "presets", "presets"],
|
|
"summary": "Execute a preset",
|
|
"description": "Execute a preset with the given graph and node input for the current user.",
|
|
"operationId": "postV2Execute a preset",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "preset_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Preset Id" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Body_postV2Execute_a_preset"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/GraphExecutionMeta" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/oauth/app/{client_id}": {
|
|
"get": {
|
|
"tags": ["oauth"],
|
|
"summary": "Get Oauth App Info",
|
|
"description": "Get public information about an OAuth application.\n\nThis endpoint is used by the consent screen to display application details\nto the user before they authorize access.\n\nReturns:\n- name: Application name\n- description: Application description (if provided)\n- scopes: List of scopes the application is allowed to request",
|
|
"operationId": "getOauthGetOauthAppInfo",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "client_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Client Id" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/OAuthApplicationPublicInfo"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"404": { "description": "Application not found or disabled" },
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/oauth/apps/mine": {
|
|
"get": {
|
|
"tags": ["oauth"],
|
|
"summary": "List My Oauth Apps",
|
|
"description": "List all OAuth applications owned by the current user.\n\nReturns a list of OAuth applications with their details including:\n- id, name, description, logo_url\n- client_id (public identifier)\n- redirect_uris, grant_types, scopes\n- is_active status\n- created_at, updated_at timestamps\n\nNote: client_secret is never returned for security reasons.",
|
|
"operationId": "getOauthListMyOauthApps",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/OAuthApplicationInfo"
|
|
},
|
|
"type": "array",
|
|
"title": "Response Getoauthlistmyoauthapps"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/oauth/apps/{app_id}/logo": {
|
|
"patch": {
|
|
"tags": ["oauth"],
|
|
"summary": "Update App Logo",
|
|
"description": "Update the logo URL for an OAuth application.\n\nOnly the application owner can update the logo.\nThe logo should be uploaded first using the media upload endpoint,\nthen this endpoint is called with the resulting URL.\n\nLogo requirements:\n- Must be square (1:1 aspect ratio)\n- Minimum 512x512 pixels\n- Maximum 2048x2048 pixels\n\nReturns the updated application info.",
|
|
"operationId": "patchOauthUpdateAppLogo",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "app_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "App Id" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/UpdateAppLogoRequest" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/OAuthApplicationInfo"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/oauth/apps/{app_id}/logo/upload": {
|
|
"post": {
|
|
"tags": ["oauth"],
|
|
"summary": "Upload App Logo",
|
|
"description": "Upload a logo image for an OAuth application.\n\nRequirements:\n- Image must be square (1:1 aspect ratio)\n- Minimum 512x512 pixels\n- Maximum 2048x2048 pixels\n- Allowed formats: JPEG, PNG, WebP\n- Maximum file size: 3MB\n\nThe image is uploaded to cloud storage and the app's logoUrl is updated.\nReturns the updated application info.",
|
|
"operationId": "postOauthUploadAppLogo",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "app_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "App Id" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Body_postOauthUploadAppLogo"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/OAuthApplicationInfo"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/oauth/apps/{app_id}/status": {
|
|
"patch": {
|
|
"tags": ["oauth"],
|
|
"summary": "Update App Status",
|
|
"description": "Enable or disable an OAuth application.\n\nOnly the application owner can update the status.\nWhen disabled, the application cannot be used for new authorizations\nand existing access tokens will fail validation.\n\nReturns the updated application info.",
|
|
"operationId": "patchOauthUpdateAppStatus",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "app_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "App Id" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Body_patchOauthUpdateAppStatus"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/OAuthApplicationInfo"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/oauth/authorize": {
|
|
"post": {
|
|
"tags": ["oauth"],
|
|
"summary": "Authorize",
|
|
"description": "OAuth 2.0 Authorization Endpoint\n\nUser must be logged in (authenticated with Supabase JWT).\nThis endpoint creates an authorization code and returns a redirect URL.\n\nPKCE (Proof Key for Code Exchange) is REQUIRED for all authorization requests.\n\nThe frontend consent screen should call this endpoint after the user approves,\nthen redirect the user to the returned `redirect_url`.\n\nRequest Body:\n- client_id: The OAuth application's client ID\n- redirect_uri: Where to redirect after authorization (must match registered URI)\n- scopes: List of permissions (e.g., \"EXECUTE_GRAPH READ_GRAPH\")\n- state: Anti-CSRF token provided by client (will be returned in redirect)\n- response_type: Must be \"code\" (for authorization code flow)\n- code_challenge: PKCE code challenge (required)\n- code_challenge_method: \"S256\" (recommended) or \"plain\"\n\nReturns:\n- redirect_url: The URL to redirect the user to (includes authorization code)\n\nError cases return a redirect_url with error parameters, or raise HTTPException\nfor critical errors (like invalid redirect_uri).",
|
|
"operationId": "postOauthAuthorize",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/AuthorizeRequest" }
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/AuthorizeResponse" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/oauth/introspect": {
|
|
"post": {
|
|
"tags": ["oauth"],
|
|
"summary": "Introspect",
|
|
"description": "OAuth 2.0 Token Introspection Endpoint (RFC 7662)\n\nAllows clients to check if a token is valid and get its metadata.\n\nReturns:\n- active: Whether the token is currently active\n- scopes: List of authorized scopes (if active)\n- client_id: The client the token was issued to (if active)\n- user_id: The user the token represents (if active)\n- exp: Expiration timestamp (if active)\n- token_type: \"access_token\" or \"refresh_token\" (if active)",
|
|
"operationId": "postOauthIntrospect",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Body_postOauthIntrospect"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TokenIntrospectionResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/oauth/revoke": {
|
|
"post": {
|
|
"tags": ["oauth"],
|
|
"summary": "Revoke",
|
|
"description": "OAuth 2.0 Token Revocation Endpoint (RFC 7009)\n\nAllows clients to revoke an access or refresh token.\n\nNote: Revoking a refresh token does NOT revoke associated access tokens.\nRevoking an access token does NOT revoke the associated refresh token.",
|
|
"operationId": "postOauthRevoke",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/Body_postOauthRevoke" }
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": { "application/json": { "schema": {} } }
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/oauth/token": {
|
|
"post": {
|
|
"tags": ["oauth"],
|
|
"summary": "Token",
|
|
"description": "OAuth 2.0 Token Endpoint\n\nExchanges authorization code or refresh token for access token.\n\nGrant Types:\n1. authorization_code: Exchange authorization code for tokens\n - Required: grant_type, code, redirect_uri, client_id, client_secret\n - Optional: code_verifier (required if PKCE was used)\n\n2. refresh_token: Exchange refresh token for new access token\n - Required: grant_type, refresh_token, client_id, client_secret\n\nReturns:\n- access_token: Bearer token for API access (1 hour TTL)\n- token_type: \"Bearer\"\n- expires_in: Seconds until access token expires\n- refresh_token: Token for refreshing access (30 days TTL)\n- scopes: List of scopes",
|
|
"operationId": "postOauthToken",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"anyOf": [
|
|
{ "$ref": "#/components/schemas/TokenRequestByCode" },
|
|
{ "$ref": "#/components/schemas/TokenRequestByRefreshToken" }
|
|
],
|
|
"title": "Request"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/TokenResponse" }
|
|
}
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/onboarding": {
|
|
"get": {
|
|
"tags": ["v1", "onboarding"],
|
|
"summary": "Onboarding state",
|
|
"operationId": "getV1Onboarding state",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/UserOnboarding" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
},
|
|
"patch": {
|
|
"tags": ["v1", "onboarding"],
|
|
"summary": "Update onboarding state",
|
|
"operationId": "patchV1Update onboarding state",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/UserOnboardingUpdate" }
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/UserOnboarding" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/onboarding/agents": {
|
|
"get": {
|
|
"tags": ["v1", "onboarding"],
|
|
"summary": "Recommended onboarding agents",
|
|
"operationId": "getV1Recommended onboarding agents",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": { "$ref": "#/components/schemas/StoreAgentDetails" },
|
|
"type": "array",
|
|
"title": "Response Getv1Recommended Onboarding Agents"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/onboarding/enabled": {
|
|
"get": {
|
|
"tags": ["v1", "onboarding", "public"],
|
|
"summary": "Is onboarding enabled",
|
|
"operationId": "getV1Is onboarding enabled",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/OnboardingStatusResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/onboarding/reset": {
|
|
"post": {
|
|
"tags": ["v1", "onboarding"],
|
|
"summary": "Reset onboarding progress",
|
|
"operationId": "postV1Reset onboarding progress",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/UserOnboarding" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/onboarding/step": {
|
|
"post": {
|
|
"tags": ["v1", "onboarding"],
|
|
"summary": "Complete onboarding step",
|
|
"operationId": "postV1Complete onboarding step",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "step",
|
|
"in": "query",
|
|
"required": true,
|
|
"schema": {
|
|
"enum": [
|
|
"WELCOME",
|
|
"USAGE_REASON",
|
|
"INTEGRATIONS",
|
|
"AGENT_CHOICE",
|
|
"AGENT_NEW_RUN",
|
|
"AGENT_INPUT",
|
|
"CONGRATS",
|
|
"VISIT_COPILOT",
|
|
"MARKETPLACE_VISIT",
|
|
"BUILDER_OPEN"
|
|
],
|
|
"type": "string",
|
|
"title": "Step"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": { "application/json": { "schema": {} } }
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/otto/ask": {
|
|
"post": {
|
|
"tags": ["v2", "otto"],
|
|
"summary": "Proxy Otto Chat Request",
|
|
"description": "Proxy requests to Otto API while adding necessary security headers and logging.\nRequires an authenticated user.",
|
|
"operationId": "postV2Proxy otto chat request",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/ChatRequest" }
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/ApiResponse" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/public/shared/{share_token}": {
|
|
"get": {
|
|
"tags": ["v1"],
|
|
"summary": "Get Shared Execution",
|
|
"description": "Get a shared graph execution by share token (no auth required).",
|
|
"operationId": "getV1GetSharedExecution",
|
|
"parameters": [
|
|
{
|
|
"name": "share_token",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string",
|
|
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
|
|
"title": "Share Token"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SharedExecutionResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/review/action": {
|
|
"post": {
|
|
"tags": ["v2", "executions", "review", "v2", "executions", "review"],
|
|
"summary": "Process Review Action",
|
|
"description": "Process reviews with approve or reject actions.",
|
|
"operationId": "postV2ProcessReviewAction",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/ReviewRequest" }
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/ReviewResponse" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/review/execution/{graph_exec_id}": {
|
|
"get": {
|
|
"tags": ["v2", "executions", "review", "v2", "executions", "review"],
|
|
"summary": "Get Pending Reviews for Execution",
|
|
"description": "Get all pending reviews for a specific graph execution.\n\nRetrieves all reviews with status \"WAITING\" for the specified graph execution\nthat belong to the authenticated user. Results are ordered by creation time\n(oldest first) to preserve review order within the execution.\n\nArgs:\n graph_exec_id: ID of the graph execution to get reviews for\n user_id: Authenticated user ID from security dependency\n\nReturns:\n List of pending review objects for the specified execution\n\nRaises:\n HTTPException:\n - 404: If the graph execution doesn't exist or isn't owned by this user\n - 500: If authentication fails or database error occurs\n\nNote:\n Only returns reviews owned by the authenticated user for security.\n Reviews with invalid status are excluded with warning logs.",
|
|
"operationId": "getV2Get pending reviews for execution",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "graph_exec_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Graph Exec Id" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "List of pending reviews for the execution",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/PendingHumanReviewModel"
|
|
},
|
|
"title": "Response Getv2Get Pending Reviews For Execution"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"404": { "description": "Graph execution not found" },
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Server error",
|
|
"content": { "application/json": {} }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/review/pending": {
|
|
"get": {
|
|
"tags": ["v2", "executions", "review", "v2", "executions", "review"],
|
|
"summary": "Get Pending Reviews",
|
|
"description": "Get all pending reviews for the current user.\n\nRetrieves all reviews with status \"WAITING\" that belong to the authenticated user.\nResults are ordered by creation time (newest first).\n\nArgs:\n user_id: Authenticated user ID from security dependency\n\nReturns:\n List of pending review objects with status converted to typed literals\n\nRaises:\n HTTPException: If authentication fails or database error occurs\n\nNote:\n Reviews with invalid status values are logged as warnings but excluded\n from results rather than failing the entire request.",
|
|
"operationId": "getV2Get pending reviews",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "page",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "integer",
|
|
"minimum": 1,
|
|
"description": "Page number (1-indexed)",
|
|
"default": 1,
|
|
"title": "Page"
|
|
},
|
|
"description": "Page number (1-indexed)"
|
|
},
|
|
{
|
|
"name": "page_size",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "integer",
|
|
"maximum": 100,
|
|
"minimum": 1,
|
|
"description": "Number of reviews per page",
|
|
"default": 25,
|
|
"title": "Page Size"
|
|
},
|
|
"description": "Number of reviews per page"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "List of pending reviews",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/PendingHumanReviewModel"
|
|
},
|
|
"title": "Response Getv2Get Pending Reviews"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Server error",
|
|
"content": { "application/json": {} }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/schedules": {
|
|
"get": {
|
|
"tags": ["v1", "schedules"],
|
|
"summary": "List execution schedules for a user",
|
|
"operationId": "getV1List execution schedules for a user",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/GraphExecutionJobInfo"
|
|
},
|
|
"type": "array",
|
|
"title": "Response Getv1List Execution Schedules For A User"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/schedules/{schedule_id}": {
|
|
"delete": {
|
|
"tags": ["v1", "schedules"],
|
|
"summary": "Delete execution schedule",
|
|
"operationId": "deleteV1Delete execution schedule",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "schedule_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string",
|
|
"description": "ID of the schedule to delete",
|
|
"title": "Schedule Id"
|
|
},
|
|
"description": "ID of the schedule to delete"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"title": "Response Deletev1Delete Execution Schedule"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/store/admin/listings": {
|
|
"get": {
|
|
"tags": ["v2", "admin", "store", "admin"],
|
|
"summary": "Get Admin Listings History",
|
|
"description": "Get store listings with their version history for admins.\n\nThis provides a consolidated view of listings with their versions,\nallowing for an expandable UI in the admin dashboard.\n\nArgs:\n status: Filter by submission status (PENDING, APPROVED, REJECTED)\n search: Search by name, description, or user email\n page: Page number for pagination\n page_size: Number of items per page\n\nReturns:\n StoreListingsWithVersionsResponse with listings and their versions",
|
|
"operationId": "getV2Get admin listings history",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "status",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{ "$ref": "#/components/schemas/SubmissionStatus" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Status"
|
|
}
|
|
},
|
|
{
|
|
"name": "search",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Search"
|
|
}
|
|
},
|
|
{
|
|
"name": "page",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": { "type": "integer", "default": 1, "title": "Page" }
|
|
},
|
|
{
|
|
"name": "page_size",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": { "type": "integer", "default": 20, "title": "Page Size" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/StoreListingsWithVersionsResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/store/admin/submissions/download/{store_listing_version_id}": {
|
|
"get": {
|
|
"tags": ["v2", "admin", "store", "admin", "store", "admin"],
|
|
"summary": "Admin Download Agent File",
|
|
"description": "Download the agent file by streaming its content.\n\nArgs:\n store_listing_version_id (str): The ID of the agent to download\n\nReturns:\n StreamingResponse: A streaming response containing the agent's graph data.\n\nRaises:\n HTTPException: If the agent is not found or an unexpected error occurs.",
|
|
"operationId": "getV2Admin download agent file",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "store_listing_version_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string",
|
|
"description": "The ID of the agent to download",
|
|
"title": "Store Listing Version Id"
|
|
},
|
|
"description": "The ID of the agent to download"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": { "application/json": { "schema": {} } }
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/store/admin/submissions/{store_listing_version_id}/review": {
|
|
"post": {
|
|
"tags": ["v2", "admin", "store", "admin"],
|
|
"summary": "Review Store Submission",
|
|
"description": "Review a store listing submission.\n\nArgs:\n store_listing_version_id: ID of the submission to review\n request: Review details including approval status and comments\n user_id: Authenticated admin user performing the review\n\nReturns:\n StoreSubmission with updated review information",
|
|
"operationId": "postV2Review store submission",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "store_listing_version_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Store Listing Version Id" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ReviewSubmissionRequest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/StoreSubmission" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/store/agents": {
|
|
"get": {
|
|
"tags": ["v2", "store", "public"],
|
|
"summary": "List store agents",
|
|
"description": "Get a paginated list of agents from the store with optional filtering and sorting.\n\nArgs:\n featured (bool, optional): Filter to only show featured agents. Defaults to False.\n creator (str | None, optional): Filter agents by creator username. Defaults to None.\n sorted_by (str | None, optional): Sort agents by \"runs\" or \"rating\". Defaults to None.\n search_query (str | None, optional): Search agents by name, subheading and description. Defaults to None.\n category (str | None, optional): Filter agents by category. Defaults to None.\n page (int, optional): Page number for pagination. Defaults to 1.\n page_size (int, optional): Number of agents per page. Defaults to 20.\n\nReturns:\n StoreAgentsResponse: Paginated list of agents matching the filters\n\nRaises:\n HTTPException: If page or page_size are less than 1\n\nUsed for:\n- Home Page Featured Agents\n- Home Page Top Agents\n- Search Results\n- Agent Details - Other Agents By Creator\n- Agent Details - Similar Agents\n- Creator Details - Agents By Creator",
|
|
"operationId": "getV2List store agents",
|
|
"parameters": [
|
|
{
|
|
"name": "featured",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "boolean",
|
|
"default": false,
|
|
"title": "Featured"
|
|
}
|
|
},
|
|
{
|
|
"name": "creator",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Creator"
|
|
}
|
|
},
|
|
{
|
|
"name": "sorted_by",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"enum": ["rating", "runs", "name", "updated_at"],
|
|
"type": "string"
|
|
},
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Sorted By"
|
|
}
|
|
},
|
|
{
|
|
"name": "search_query",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Search Query"
|
|
}
|
|
},
|
|
{
|
|
"name": "category",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Category"
|
|
}
|
|
},
|
|
{
|
|
"name": "page",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": { "type": "integer", "default": 1, "title": "Page" }
|
|
},
|
|
{
|
|
"name": "page_size",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": { "type": "integer", "default": 20, "title": "Page Size" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/StoreAgentsResponse" }
|
|
}
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/store/agents/{store_listing_version_id}": {
|
|
"get": {
|
|
"tags": ["v2", "store"],
|
|
"summary": "Get agent by version",
|
|
"description": "Get Store Agent Details from Store Listing Version ID.",
|
|
"operationId": "getV2Get agent by version",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "store_listing_version_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Store Listing Version Id" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/StoreAgentDetails" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/store/agents/{username}/{agent_name}": {
|
|
"get": {
|
|
"tags": ["v2", "store", "public"],
|
|
"summary": "Get specific agent",
|
|
"description": "This is only used on the AgentDetails Page.\n\nIt returns the store listing agents details.",
|
|
"operationId": "getV2Get specific agent",
|
|
"parameters": [
|
|
{
|
|
"name": "username",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Username" }
|
|
},
|
|
{
|
|
"name": "agent_name",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Agent Name" }
|
|
},
|
|
{
|
|
"name": "include_changelog",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "boolean",
|
|
"default": false,
|
|
"title": "Include Changelog"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/StoreAgentDetails" }
|
|
}
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/store/agents/{username}/{agent_name}/review": {
|
|
"post": {
|
|
"tags": ["v2", "store"],
|
|
"summary": "Create agent review",
|
|
"description": "Create a review for a store agent.\n\nArgs:\n username: Creator's username\n agent_name: Name/slug of the agent\n review: Review details including score and optional comments\n user_id: ID of authenticated user creating the review\n\nReturns:\n The created review",
|
|
"operationId": "postV2Create agent review",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "username",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Username" }
|
|
},
|
|
{
|
|
"name": "agent_name",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Agent Name" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/StoreReviewCreate" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/StoreReview" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/store/creator/{username}": {
|
|
"get": {
|
|
"tags": ["v2", "store", "public"],
|
|
"summary": "Get creator details",
|
|
"description": "Get the details of a creator.\n- Creator Details Page",
|
|
"operationId": "getV2Get creator details",
|
|
"parameters": [
|
|
{
|
|
"name": "username",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Username" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/CreatorDetails" }
|
|
}
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/store/creators": {
|
|
"get": {
|
|
"tags": ["v2", "store", "public"],
|
|
"summary": "List store creators",
|
|
"description": "This is needed for:\n- Home Page Featured Creators\n- Search Results Page\n\n---\n\nTo support this functionality we need:\n- featured: bool - to limit the list to just featured agents\n- search_query: str - vector search based on the creators profile description.\n- sorted_by: [agent_rating, agent_runs] -",
|
|
"operationId": "getV2List store creators",
|
|
"parameters": [
|
|
{
|
|
"name": "featured",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "boolean",
|
|
"default": false,
|
|
"title": "Featured"
|
|
}
|
|
},
|
|
{
|
|
"name": "search_query",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Search Query"
|
|
}
|
|
},
|
|
{
|
|
"name": "sorted_by",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"enum": ["agent_rating", "agent_runs", "num_agents"],
|
|
"type": "string"
|
|
},
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Sorted By"
|
|
}
|
|
},
|
|
{
|
|
"name": "page",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": { "type": "integer", "default": 1, "title": "Page" }
|
|
},
|
|
{
|
|
"name": "page_size",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": { "type": "integer", "default": 20, "title": "Page Size" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/CreatorsResponse" }
|
|
}
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/store/download/agents/{store_listing_version_id}": {
|
|
"get": {
|
|
"tags": ["v2", "store", "public"],
|
|
"summary": "Download agent file",
|
|
"description": "Download the agent file by streaming its content.\n\nArgs:\n store_listing_version_id (str): The ID of the agent to download\n\nReturns:\n StreamingResponse: A streaming response containing the agent's graph data.\n\nRaises:\n HTTPException: If the agent is not found or an unexpected error occurs.",
|
|
"operationId": "getV2Download agent file",
|
|
"parameters": [
|
|
{
|
|
"name": "store_listing_version_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string",
|
|
"description": "The ID of the agent to download",
|
|
"title": "Store Listing Version Id"
|
|
},
|
|
"description": "The ID of the agent to download"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": { "application/json": { "schema": {} } }
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/store/graph/{store_listing_version_id}": {
|
|
"get": {
|
|
"tags": ["v2", "store"],
|
|
"summary": "Get agent graph",
|
|
"description": "Get Agent Graph from Store Listing Version ID.",
|
|
"operationId": "getV2Get agent graph",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "store_listing_version_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Store Listing Version Id" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/GraphMeta" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/store/metrics/cache": {
|
|
"get": {
|
|
"tags": ["v2", "store", "metrics"],
|
|
"summary": "Get cache metrics in Prometheus format",
|
|
"description": "Get cache metrics in Prometheus text format.\n\nReturns Prometheus-compatible metrics for monitoring cache performance.\nMetrics include size, maxsize, TTL, and hit rate for each cache.\n\nReturns:\n str: Prometheus-formatted metrics text",
|
|
"operationId": "getV2Get cache metrics in prometheus format",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": { "text/plain": { "schema": { "type": "string" } } }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/store/myagents": {
|
|
"get": {
|
|
"tags": ["v2", "store", "private"],
|
|
"summary": "Get my agents",
|
|
"description": "Get user's own agents.",
|
|
"operationId": "getV2Get my agents",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "page",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "integer",
|
|
"minimum": 1,
|
|
"default": 1,
|
|
"title": "Page"
|
|
}
|
|
},
|
|
{
|
|
"name": "page_size",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "integer",
|
|
"minimum": 1,
|
|
"default": 20,
|
|
"title": "Page Size"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/MyAgentsResponse" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/store/profile": {
|
|
"get": {
|
|
"tags": ["v2", "store", "private"],
|
|
"summary": "Get user profile",
|
|
"description": "Get the profile details for the authenticated user.\nCached for 1 hour per user.",
|
|
"operationId": "getV2Get user profile",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/ProfileDetails" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
},
|
|
"post": {
|
|
"tags": ["v2", "store", "private"],
|
|
"summary": "Update user profile",
|
|
"description": "Update the store profile for the authenticated user.\n\nArgs:\n profile (Profile): The updated profile details\n user_id (str): ID of the authenticated user\n\nReturns:\n CreatorDetails: The updated profile\n\nRaises:\n HTTPException: If there is an error updating the profile",
|
|
"operationId": "postV2Update user profile",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/Profile" }
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/CreatorDetails" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/store/search": {
|
|
"get": {
|
|
"tags": ["v2", "store", "public"],
|
|
"summary": "Unified search across all content types",
|
|
"description": "Search across all content types (store agents, blocks, documentation) using hybrid search.\n\nCombines semantic (embedding-based) and lexical (text-based) search for best results.\n\nArgs:\n query: The search query string\n content_types: Optional list of content types to filter by (STORE_AGENT, BLOCK, DOCUMENTATION)\n page: Page number for pagination (default 1)\n page_size: Number of results per page (default 20)\n user_id: Optional authenticated user ID (for user-scoped content in future)\n\nReturns:\n UnifiedSearchResponse: Paginated list of search results with relevance scores",
|
|
"operationId": "getV2Unified search across all content types",
|
|
"security": [{ "HTTPBearer": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "query",
|
|
"in": "query",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Query" }
|
|
},
|
|
{
|
|
"name": "content_types",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{ "type": "array", "items": { "type": "string" } },
|
|
{ "type": "null" }
|
|
],
|
|
"description": "Content types to search: STORE_AGENT, BLOCK, DOCUMENTATION. If not specified, searches all.",
|
|
"title": "Content Types"
|
|
},
|
|
"description": "Content types to search: STORE_AGENT, BLOCK, DOCUMENTATION. If not specified, searches all."
|
|
},
|
|
{
|
|
"name": "page",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": { "type": "integer", "default": 1, "title": "Page" }
|
|
},
|
|
{
|
|
"name": "page_size",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": { "type": "integer", "default": 20, "title": "Page Size" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UnifiedSearchResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/store/submissions": {
|
|
"get": {
|
|
"tags": ["v2", "store", "private"],
|
|
"summary": "List my submissions",
|
|
"description": "Get a paginated list of store submissions for the authenticated user.\n\nArgs:\n user_id (str): ID of the authenticated user\n page (int, optional): Page number for pagination. Defaults to 1.\n page_size (int, optional): Number of submissions per page. Defaults to 20.\n\nReturns:\n StoreListingsResponse: Paginated list of store submissions\n\nRaises:\n HTTPException: If page or page_size are less than 1",
|
|
"operationId": "getV2List my submissions",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "page",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": { "type": "integer", "default": 1, "title": "Page" }
|
|
},
|
|
{
|
|
"name": "page_size",
|
|
"in": "query",
|
|
"required": false,
|
|
"schema": { "type": "integer", "default": 20, "title": "Page Size" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/StoreSubmissionsResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": ["v2", "store", "private"],
|
|
"summary": "Create store submission",
|
|
"description": "Create a new store listing submission.\n\nArgs:\n submission_request (StoreSubmissionRequest): The submission details\n user_id (str): ID of the authenticated user submitting the listing\n\nReturns:\n StoreSubmission: The created store submission\n\nRaises:\n HTTPException: If there is an error creating the submission",
|
|
"operationId": "postV2Create store submission",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/StoreSubmissionRequest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/StoreSubmission" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/store/submissions/generate_image": {
|
|
"post": {
|
|
"tags": ["v2", "store", "private"],
|
|
"summary": "Generate submission image",
|
|
"description": "Generate an image for a store listing submission.\n\nArgs:\n agent_id (str): ID of the agent to generate an image for\n user_id (str): ID of the authenticated user\n\nReturns:\n JSONResponse: JSON containing the URL of the generated image",
|
|
"operationId": "postV2Generate submission image",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "agent_id",
|
|
"in": "query",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Agent Id" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": { "application/json": { "schema": {} } }
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/store/submissions/media": {
|
|
"post": {
|
|
"tags": ["v2", "store", "private"],
|
|
"summary": "Upload submission media",
|
|
"description": "Upload media (images/videos) for a store listing submission.\n\nArgs:\n file (UploadFile): The media file to upload\n user_id (str): ID of the authenticated user uploading the media\n\nReturns:\n str: URL of the uploaded media file\n\nRaises:\n HTTPException: If there is an error uploading the media",
|
|
"operationId": "postV2Upload submission media",
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Body_postV2Upload_submission_media"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": { "application/json": { "schema": {} } }
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [{ "HTTPBearerJWT": [] }]
|
|
}
|
|
},
|
|
"/api/store/submissions/{store_listing_version_id}": {
|
|
"put": {
|
|
"tags": ["v2", "store", "private"],
|
|
"summary": "Edit store submission",
|
|
"description": "Edit an existing store listing submission.\n\nArgs:\n store_listing_version_id (str): ID of the store listing version to edit\n submission_request (StoreSubmissionRequest): The updated submission details\n user_id (str): ID of the authenticated user editing the listing\n\nReturns:\n StoreSubmission: The updated store submission\n\nRaises:\n HTTPException: If there is an error editing the submission",
|
|
"operationId": "putV2Edit store submission",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "store_listing_version_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Store Listing Version Id" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/StoreSubmissionEditRequest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/StoreSubmission" }
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/store/submissions/{submission_id}": {
|
|
"delete": {
|
|
"tags": ["v2", "store", "private"],
|
|
"summary": "Delete store submission",
|
|
"description": "Delete a store listing submission.\n\nArgs:\n user_id (str): ID of the authenticated user\n submission_id (str): ID of the submission to be deleted\n\nReturns:\n bool: True if the submission was successfully deleted, False otherwise",
|
|
"operationId": "deleteV2Delete store submission",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "submission_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "Submission Id" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "boolean",
|
|
"title": "Response Deletev2Delete Store Submission"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/workspace/files/{file_id}/download": {
|
|
"get": {
|
|
"tags": ["workspace"],
|
|
"summary": "Download file by ID",
|
|
"description": "Download a file by its ID.\n\nReturns the file content directly or redirects to a signed URL for GCS.",
|
|
"operationId": "getWorkspaceDownload file by id",
|
|
"security": [{ "HTTPBearerJWT": [] }],
|
|
"parameters": [
|
|
{
|
|
"name": "file_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": { "type": "string", "title": "File Id" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": { "application/json": { "schema": {} } }
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/HTTP401NotAuthenticatedError"
|
|
},
|
|
"422": {
|
|
"description": "Validation Error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/HTTPValidationError" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/health": {
|
|
"get": {
|
|
"tags": ["health"],
|
|
"summary": "Health",
|
|
"operationId": "getHealthHealth",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful Response",
|
|
"content": { "application/json": { "schema": {} } }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"components": {
|
|
"schemas": {
|
|
"APIKeyCredentials": {
|
|
"properties": {
|
|
"id": { "type": "string", "title": "Id" },
|
|
"provider": { "type": "string", "title": "Provider" },
|
|
"title": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Title"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"const": "api_key",
|
|
"title": "Type",
|
|
"default": "api_key"
|
|
},
|
|
"api_key": {
|
|
"type": "string",
|
|
"format": "password",
|
|
"title": "Api Key",
|
|
"writeOnly": true
|
|
},
|
|
"expires_at": {
|
|
"anyOf": [{ "type": "integer" }, { "type": "null" }],
|
|
"title": "Expires At",
|
|
"description": "Unix timestamp (seconds) indicating when the API key expires (if at all)"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["provider", "api_key"],
|
|
"title": "APIKeyCredentials"
|
|
},
|
|
"APIKeyInfo": {
|
|
"properties": {
|
|
"user_id": { "type": "string", "title": "User Id" },
|
|
"scopes": {
|
|
"items": { "$ref": "#/components/schemas/APIKeyPermission" },
|
|
"type": "array",
|
|
"title": "Scopes"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"const": "api_key",
|
|
"title": "Type",
|
|
"default": "api_key"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "Created At"
|
|
},
|
|
"expires_at": {
|
|
"anyOf": [
|
|
{ "type": "string", "format": "date-time" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Expires At"
|
|
},
|
|
"last_used_at": {
|
|
"anyOf": [
|
|
{ "type": "string", "format": "date-time" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Last Used At"
|
|
},
|
|
"revoked_at": {
|
|
"anyOf": [
|
|
{ "type": "string", "format": "date-time" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Revoked At"
|
|
},
|
|
"id": { "type": "string", "title": "Id" },
|
|
"name": { "type": "string", "title": "Name" },
|
|
"head": {
|
|
"type": "string",
|
|
"title": "Head",
|
|
"description": "The first 8 characters of the key"
|
|
},
|
|
"tail": {
|
|
"type": "string",
|
|
"title": "Tail",
|
|
"description": "The last 8 characters of the key"
|
|
},
|
|
"status": { "$ref": "#/components/schemas/APIKeyStatus" },
|
|
"description": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Description"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"user_id",
|
|
"scopes",
|
|
"created_at",
|
|
"id",
|
|
"name",
|
|
"head",
|
|
"tail",
|
|
"status"
|
|
],
|
|
"title": "APIKeyInfo"
|
|
},
|
|
"APIKeyPermission": {
|
|
"type": "string",
|
|
"enum": [
|
|
"IDENTITY",
|
|
"EXECUTE_GRAPH",
|
|
"READ_GRAPH",
|
|
"EXECUTE_BLOCK",
|
|
"READ_BLOCK",
|
|
"READ_STORE",
|
|
"USE_TOOLS",
|
|
"MANAGE_INTEGRATIONS",
|
|
"READ_INTEGRATIONS",
|
|
"DELETE_INTEGRATIONS"
|
|
],
|
|
"title": "APIKeyPermission"
|
|
},
|
|
"APIKeyStatus": {
|
|
"type": "string",
|
|
"enum": ["ACTIVE", "REVOKED", "SUSPENDED"],
|
|
"title": "APIKeyStatus"
|
|
},
|
|
"AccuracyAlertData": {
|
|
"properties": {
|
|
"graph_id": { "type": "string", "title": "Graph Id" },
|
|
"user_id": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "User Id"
|
|
},
|
|
"drop_percent": { "type": "number", "title": "Drop Percent" },
|
|
"three_day_avg": { "type": "number", "title": "Three Day Avg" },
|
|
"seven_day_avg": { "type": "number", "title": "Seven Day Avg" },
|
|
"detected_at": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "Detected At"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"graph_id",
|
|
"user_id",
|
|
"drop_percent",
|
|
"three_day_avg",
|
|
"seven_day_avg",
|
|
"detected_at"
|
|
],
|
|
"title": "AccuracyAlertData",
|
|
"description": "Alert data when accuracy drops significantly."
|
|
},
|
|
"AccuracyLatestData": {
|
|
"properties": {
|
|
"date": { "type": "string", "format": "date-time", "title": "Date" },
|
|
"daily_score": {
|
|
"anyOf": [{ "type": "number" }, { "type": "null" }],
|
|
"title": "Daily Score"
|
|
},
|
|
"three_day_avg": {
|
|
"anyOf": [{ "type": "number" }, { "type": "null" }],
|
|
"title": "Three Day Avg"
|
|
},
|
|
"seven_day_avg": {
|
|
"anyOf": [{ "type": "number" }, { "type": "null" }],
|
|
"title": "Seven Day Avg"
|
|
},
|
|
"fourteen_day_avg": {
|
|
"anyOf": [{ "type": "number" }, { "type": "null" }],
|
|
"title": "Fourteen Day Avg"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"date",
|
|
"daily_score",
|
|
"three_day_avg",
|
|
"seven_day_avg",
|
|
"fourteen_day_avg"
|
|
],
|
|
"title": "AccuracyLatestData",
|
|
"description": "Latest execution accuracy data point."
|
|
},
|
|
"AccuracyTrendsResponse": {
|
|
"properties": {
|
|
"latest_data": { "$ref": "#/components/schemas/AccuracyLatestData" },
|
|
"alert": {
|
|
"anyOf": [
|
|
{ "$ref": "#/components/schemas/AccuracyAlertData" },
|
|
{ "type": "null" }
|
|
]
|
|
},
|
|
"historical_data": {
|
|
"anyOf": [
|
|
{
|
|
"items": { "$ref": "#/components/schemas/AccuracyLatestData" },
|
|
"type": "array"
|
|
},
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Historical Data"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["latest_data", "alert"],
|
|
"title": "AccuracyTrendsResponse",
|
|
"description": "Response model for accuracy trends and alerts."
|
|
},
|
|
"AddUserCreditsResponse": {
|
|
"properties": {
|
|
"new_balance": { "type": "integer", "title": "New Balance" },
|
|
"transaction_key": { "type": "string", "title": "Transaction Key" }
|
|
},
|
|
"type": "object",
|
|
"required": ["new_balance", "transaction_key"],
|
|
"title": "AddUserCreditsResponse"
|
|
},
|
|
"AgentExecutionStatus": {
|
|
"type": "string",
|
|
"enum": [
|
|
"INCOMPLETE",
|
|
"QUEUED",
|
|
"RUNNING",
|
|
"COMPLETED",
|
|
"TERMINATED",
|
|
"FAILED",
|
|
"REVIEW"
|
|
],
|
|
"title": "AgentExecutionStatus"
|
|
},
|
|
"ApiResponse": {
|
|
"properties": {
|
|
"answer": { "type": "string", "title": "Answer" },
|
|
"documents": {
|
|
"items": { "$ref": "#/components/schemas/Document" },
|
|
"type": "array",
|
|
"title": "Documents"
|
|
},
|
|
"success": { "type": "boolean", "title": "Success" }
|
|
},
|
|
"type": "object",
|
|
"required": ["answer", "documents", "success"],
|
|
"title": "ApiResponse"
|
|
},
|
|
"AuthorizeRequest": {
|
|
"properties": {
|
|
"client_id": {
|
|
"type": "string",
|
|
"title": "Client Id",
|
|
"description": "Client identifier"
|
|
},
|
|
"redirect_uri": {
|
|
"type": "string",
|
|
"title": "Redirect Uri",
|
|
"description": "Redirect URI"
|
|
},
|
|
"scopes": {
|
|
"items": { "type": "string" },
|
|
"type": "array",
|
|
"title": "Scopes",
|
|
"description": "List of scopes"
|
|
},
|
|
"state": {
|
|
"type": "string",
|
|
"title": "State",
|
|
"description": "Anti-CSRF token from client"
|
|
},
|
|
"response_type": {
|
|
"type": "string",
|
|
"title": "Response Type",
|
|
"description": "Must be 'code' for authorization code flow",
|
|
"default": "code"
|
|
},
|
|
"code_challenge": {
|
|
"type": "string",
|
|
"title": "Code Challenge",
|
|
"description": "PKCE code challenge (required)"
|
|
},
|
|
"code_challenge_method": {
|
|
"type": "string",
|
|
"enum": ["S256", "plain"],
|
|
"title": "Code Challenge Method",
|
|
"description": "PKCE code challenge method (S256 recommended)",
|
|
"default": "S256"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"client_id",
|
|
"redirect_uri",
|
|
"scopes",
|
|
"state",
|
|
"code_challenge"
|
|
],
|
|
"title": "AuthorizeRequest",
|
|
"description": "OAuth 2.0 authorization request"
|
|
},
|
|
"AuthorizeResponse": {
|
|
"properties": {
|
|
"redirect_url": {
|
|
"type": "string",
|
|
"title": "Redirect Url",
|
|
"description": "URL to redirect the user to"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["redirect_url"],
|
|
"title": "AuthorizeResponse",
|
|
"description": "OAuth 2.0 authorization response with redirect URL"
|
|
},
|
|
"AutoTopUpConfig": {
|
|
"properties": {
|
|
"amount": { "type": "integer", "title": "Amount" },
|
|
"threshold": { "type": "integer", "title": "Threshold" }
|
|
},
|
|
"type": "object",
|
|
"required": ["amount", "threshold"],
|
|
"title": "AutoTopUpConfig"
|
|
},
|
|
"AyrshareSSOResponse": {
|
|
"properties": {
|
|
"sso_url": {
|
|
"type": "string",
|
|
"title": "Sso Url",
|
|
"description": "The SSO URL for Ayrshare integration"
|
|
},
|
|
"expires_at": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "Expires At",
|
|
"description": "ISO timestamp when the URL expires"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["sso_url", "expires_at"],
|
|
"title": "AyrshareSSOResponse"
|
|
},
|
|
"BaseGraph-Input": {
|
|
"properties": {
|
|
"id": { "type": "string", "title": "Id" },
|
|
"version": { "type": "integer", "title": "Version", "default": 1 },
|
|
"is_active": {
|
|
"type": "boolean",
|
|
"title": "Is Active",
|
|
"default": true
|
|
},
|
|
"name": { "type": "string", "title": "Name" },
|
|
"description": { "type": "string", "title": "Description" },
|
|
"instructions": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Instructions"
|
|
},
|
|
"recommended_schedule_cron": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Recommended Schedule Cron"
|
|
},
|
|
"nodes": {
|
|
"items": { "$ref": "#/components/schemas/Node" },
|
|
"type": "array",
|
|
"title": "Nodes",
|
|
"default": []
|
|
},
|
|
"links": {
|
|
"items": { "$ref": "#/components/schemas/Link" },
|
|
"type": "array",
|
|
"title": "Links",
|
|
"default": []
|
|
},
|
|
"forked_from_id": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Forked From Id"
|
|
},
|
|
"forked_from_version": {
|
|
"anyOf": [{ "type": "integer" }, { "type": "null" }],
|
|
"title": "Forked From Version"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["name", "description"],
|
|
"title": "BaseGraph"
|
|
},
|
|
"BaseGraph-Output": {
|
|
"properties": {
|
|
"id": { "type": "string", "title": "Id" },
|
|
"version": { "type": "integer", "title": "Version", "default": 1 },
|
|
"is_active": {
|
|
"type": "boolean",
|
|
"title": "Is Active",
|
|
"default": true
|
|
},
|
|
"name": { "type": "string", "title": "Name" },
|
|
"description": { "type": "string", "title": "Description" },
|
|
"instructions": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Instructions"
|
|
},
|
|
"recommended_schedule_cron": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Recommended Schedule Cron"
|
|
},
|
|
"nodes": {
|
|
"items": { "$ref": "#/components/schemas/Node" },
|
|
"type": "array",
|
|
"title": "Nodes",
|
|
"default": []
|
|
},
|
|
"links": {
|
|
"items": { "$ref": "#/components/schemas/Link" },
|
|
"type": "array",
|
|
"title": "Links",
|
|
"default": []
|
|
},
|
|
"forked_from_id": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Forked From Id"
|
|
},
|
|
"forked_from_version": {
|
|
"anyOf": [{ "type": "integer" }, { "type": "null" }],
|
|
"title": "Forked From Version"
|
|
},
|
|
"input_schema": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Input Schema",
|
|
"readOnly": true
|
|
},
|
|
"output_schema": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Output Schema",
|
|
"readOnly": true
|
|
},
|
|
"has_external_trigger": {
|
|
"type": "boolean",
|
|
"title": "Has External Trigger",
|
|
"readOnly": true
|
|
},
|
|
"has_human_in_the_loop": {
|
|
"type": "boolean",
|
|
"title": "Has Human In The Loop",
|
|
"readOnly": true
|
|
},
|
|
"has_sensitive_action": {
|
|
"type": "boolean",
|
|
"title": "Has Sensitive Action",
|
|
"readOnly": true
|
|
},
|
|
"trigger_setup_info": {
|
|
"anyOf": [
|
|
{ "$ref": "#/components/schemas/GraphTriggerInfo" },
|
|
{ "type": "null" }
|
|
],
|
|
"readOnly": true
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"name",
|
|
"description",
|
|
"input_schema",
|
|
"output_schema",
|
|
"has_external_trigger",
|
|
"has_human_in_the_loop",
|
|
"has_sensitive_action",
|
|
"trigger_setup_info"
|
|
],
|
|
"title": "BaseGraph"
|
|
},
|
|
"BlockCategoryResponse": {
|
|
"properties": {
|
|
"name": { "type": "string", "title": "Name" },
|
|
"total_blocks": { "type": "integer", "title": "Total Blocks" },
|
|
"blocks": {
|
|
"items": { "$ref": "#/components/schemas/BlockInfo" },
|
|
"type": "array",
|
|
"title": "Blocks"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["name", "total_blocks", "blocks"],
|
|
"title": "BlockCategoryResponse"
|
|
},
|
|
"BlockCost": {
|
|
"properties": {
|
|
"cost_amount": { "type": "integer", "title": "Cost Amount" },
|
|
"cost_filter": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Cost Filter"
|
|
},
|
|
"cost_type": { "$ref": "#/components/schemas/BlockCostType" }
|
|
},
|
|
"type": "object",
|
|
"required": ["cost_amount", "cost_filter", "cost_type"],
|
|
"title": "BlockCost"
|
|
},
|
|
"BlockCostType": {
|
|
"type": "string",
|
|
"enum": ["run", "byte", "second"],
|
|
"title": "BlockCostType"
|
|
},
|
|
"BlockInfo": {
|
|
"properties": {
|
|
"id": { "type": "string", "title": "Id" },
|
|
"name": { "type": "string", "title": "Name" },
|
|
"inputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Inputschema"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Outputschema"
|
|
},
|
|
"costs": {
|
|
"items": { "$ref": "#/components/schemas/BlockCost" },
|
|
"type": "array",
|
|
"title": "Costs"
|
|
},
|
|
"description": { "type": "string", "title": "Description" },
|
|
"categories": {
|
|
"items": {
|
|
"additionalProperties": { "type": "string" },
|
|
"type": "object"
|
|
},
|
|
"type": "array",
|
|
"title": "Categories"
|
|
},
|
|
"contributors": {
|
|
"items": { "additionalProperties": true, "type": "object" },
|
|
"type": "array",
|
|
"title": "Contributors"
|
|
},
|
|
"staticOutput": { "type": "boolean", "title": "Staticoutput" },
|
|
"uiType": { "type": "string", "title": "Uitype" }
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"id",
|
|
"name",
|
|
"inputSchema",
|
|
"outputSchema",
|
|
"costs",
|
|
"description",
|
|
"categories",
|
|
"contributors",
|
|
"staticOutput",
|
|
"uiType"
|
|
],
|
|
"title": "BlockInfo"
|
|
},
|
|
"BlockResponse": {
|
|
"properties": {
|
|
"blocks": {
|
|
"items": { "$ref": "#/components/schemas/BlockInfo" },
|
|
"type": "array",
|
|
"title": "Blocks"
|
|
},
|
|
"pagination": { "$ref": "#/components/schemas/Pagination" }
|
|
},
|
|
"type": "object",
|
|
"required": ["blocks", "pagination"],
|
|
"title": "BlockResponse"
|
|
},
|
|
"Body_patchOauthUpdateAppStatus": {
|
|
"properties": {
|
|
"is_active": {
|
|
"type": "boolean",
|
|
"title": "Is Active",
|
|
"description": "Whether the app should be active"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["is_active"],
|
|
"title": "Body_patchOauthUpdateAppStatus"
|
|
},
|
|
"Body_postAnalyticsLogRawAnalytics": {
|
|
"properties": {
|
|
"type": { "type": "string", "title": "Type" },
|
|
"data": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Data",
|
|
"description": "The data to log"
|
|
},
|
|
"data_index": {
|
|
"type": "string",
|
|
"title": "Data Index",
|
|
"description": "Indexable field for any count based analytical measures like page order clicking, tutorial step completion, etc."
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["type", "data", "data_index"],
|
|
"title": "Body_postAnalyticsLogRawAnalytics"
|
|
},
|
|
"Body_postOauthIntrospect": {
|
|
"properties": {
|
|
"token": {
|
|
"type": "string",
|
|
"title": "Token",
|
|
"description": "Token to introspect"
|
|
},
|
|
"token_type_hint": {
|
|
"anyOf": [
|
|
{ "type": "string", "enum": ["access_token", "refresh_token"] },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Token Type Hint",
|
|
"description": "Hint about token type ('access_token' or 'refresh_token')"
|
|
},
|
|
"client_id": {
|
|
"type": "string",
|
|
"title": "Client Id",
|
|
"description": "Client identifier"
|
|
},
|
|
"client_secret": {
|
|
"type": "string",
|
|
"title": "Client Secret",
|
|
"description": "Client secret"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["token", "client_id", "client_secret"],
|
|
"title": "Body_postOauthIntrospect"
|
|
},
|
|
"Body_postOauthRevoke": {
|
|
"properties": {
|
|
"token": {
|
|
"type": "string",
|
|
"title": "Token",
|
|
"description": "Token to revoke"
|
|
},
|
|
"token_type_hint": {
|
|
"anyOf": [
|
|
{ "type": "string", "enum": ["access_token", "refresh_token"] },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Token Type Hint",
|
|
"description": "Hint about token type ('access_token' or 'refresh_token')"
|
|
},
|
|
"client_id": {
|
|
"type": "string",
|
|
"title": "Client Id",
|
|
"description": "Client identifier"
|
|
},
|
|
"client_secret": {
|
|
"type": "string",
|
|
"title": "Client Secret",
|
|
"description": "Client secret"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["token", "client_id", "client_secret"],
|
|
"title": "Body_postOauthRevoke"
|
|
},
|
|
"Body_postOauthUploadAppLogo": {
|
|
"properties": {
|
|
"file": { "type": "string", "format": "binary", "title": "File" }
|
|
},
|
|
"type": "object",
|
|
"required": ["file"],
|
|
"title": "Body_postOauthUploadAppLogo"
|
|
},
|
|
"Body_postV1Exchange_oauth_code_for_tokens": {
|
|
"properties": {
|
|
"code": {
|
|
"type": "string",
|
|
"title": "Authorization code acquired by user login"
|
|
},
|
|
"state_token": { "type": "string", "title": "Anti-CSRF nonce" }
|
|
},
|
|
"type": "object",
|
|
"required": ["code", "state_token"],
|
|
"title": "Body_postV1Exchange oauth code for tokens"
|
|
},
|
|
"Body_postV1Execute_graph_agent": {
|
|
"properties": {
|
|
"inputs": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Inputs"
|
|
},
|
|
"credentials_inputs": {
|
|
"additionalProperties": {
|
|
"$ref": "#/components/schemas/CredentialsMetaInput"
|
|
},
|
|
"type": "object",
|
|
"title": "Credentials Inputs"
|
|
},
|
|
"source": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string",
|
|
"enum": ["builder", "library", "onboarding"]
|
|
},
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Source"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"title": "Body_postV1Execute graph agent"
|
|
},
|
|
"Body_postV1Upload_file_to_cloud_storage": {
|
|
"properties": {
|
|
"file": { "type": "string", "format": "binary", "title": "File" }
|
|
},
|
|
"type": "object",
|
|
"required": ["file"],
|
|
"title": "Body_postV1Upload file to cloud storage"
|
|
},
|
|
"Body_postV2Add_credits_to_user": {
|
|
"properties": {
|
|
"user_id": { "type": "string", "title": "User Id" },
|
|
"amount": { "type": "integer", "title": "Amount" },
|
|
"comments": { "type": "string", "title": "Comments" }
|
|
},
|
|
"type": "object",
|
|
"required": ["user_id", "amount", "comments"],
|
|
"title": "Body_postV2Add credits to user"
|
|
},
|
|
"Body_postV2Add_marketplace_agent": {
|
|
"properties": {
|
|
"store_listing_version_id": {
|
|
"type": "string",
|
|
"title": "Store Listing Version Id"
|
|
},
|
|
"source": {
|
|
"type": "string",
|
|
"enum": ["onboarding", "marketplace"],
|
|
"title": "Source",
|
|
"default": "marketplace"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["store_listing_version_id"],
|
|
"title": "Body_postV2Add marketplace agent"
|
|
},
|
|
"Body_postV2Execute_a_preset": {
|
|
"properties": {
|
|
"inputs": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Inputs"
|
|
},
|
|
"credential_inputs": {
|
|
"additionalProperties": {
|
|
"$ref": "#/components/schemas/CredentialsMetaInput"
|
|
},
|
|
"type": "object",
|
|
"title": "Credential Inputs"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"title": "Body_postV2Execute a preset"
|
|
},
|
|
"Body_postV2Upload_submission_media": {
|
|
"properties": {
|
|
"file": { "type": "string", "format": "binary", "title": "File" }
|
|
},
|
|
"type": "object",
|
|
"required": ["file"],
|
|
"title": "Body_postV2Upload submission media"
|
|
},
|
|
"ChangelogEntry": {
|
|
"properties": {
|
|
"version": { "type": "string", "title": "Version" },
|
|
"changes_summary": { "type": "string", "title": "Changes Summary" },
|
|
"date": { "type": "string", "format": "date-time", "title": "Date" }
|
|
},
|
|
"type": "object",
|
|
"required": ["version", "changes_summary", "date"],
|
|
"title": "ChangelogEntry"
|
|
},
|
|
"ChatRequest": {
|
|
"properties": {
|
|
"query": { "type": "string", "title": "Query" },
|
|
"conversation_history": {
|
|
"items": { "$ref": "#/components/schemas/Message" },
|
|
"type": "array",
|
|
"title": "Conversation History"
|
|
},
|
|
"message_id": { "type": "string", "title": "Message Id" },
|
|
"include_graph_data": {
|
|
"type": "boolean",
|
|
"title": "Include Graph Data",
|
|
"default": false
|
|
},
|
|
"graph_id": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Graph Id"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["query", "conversation_history", "message_id"],
|
|
"title": "ChatRequest"
|
|
},
|
|
"CountResponse": {
|
|
"properties": {
|
|
"all_blocks": { "type": "integer", "title": "All Blocks" },
|
|
"input_blocks": { "type": "integer", "title": "Input Blocks" },
|
|
"action_blocks": { "type": "integer", "title": "Action Blocks" },
|
|
"output_blocks": { "type": "integer", "title": "Output Blocks" },
|
|
"integrations": { "type": "integer", "title": "Integrations" },
|
|
"marketplace_agents": {
|
|
"type": "integer",
|
|
"title": "Marketplace Agents"
|
|
},
|
|
"my_agents": { "type": "integer", "title": "My Agents" }
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"all_blocks",
|
|
"input_blocks",
|
|
"action_blocks",
|
|
"output_blocks",
|
|
"integrations",
|
|
"marketplace_agents",
|
|
"my_agents"
|
|
],
|
|
"title": "CountResponse"
|
|
},
|
|
"CreateAPIKeyRequest": {
|
|
"properties": {
|
|
"name": { "type": "string", "title": "Name" },
|
|
"permissions": {
|
|
"items": { "$ref": "#/components/schemas/APIKeyPermission" },
|
|
"type": "array",
|
|
"title": "Permissions"
|
|
},
|
|
"description": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Description"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["name", "permissions"],
|
|
"title": "CreateAPIKeyRequest"
|
|
},
|
|
"CreateAPIKeyResponse": {
|
|
"properties": {
|
|
"api_key": { "$ref": "#/components/schemas/APIKeyInfo" },
|
|
"plain_text_key": { "type": "string", "title": "Plain Text Key" }
|
|
},
|
|
"type": "object",
|
|
"required": ["api_key", "plain_text_key"],
|
|
"title": "CreateAPIKeyResponse"
|
|
},
|
|
"CreateGraph": {
|
|
"properties": {
|
|
"graph": { "$ref": "#/components/schemas/Graph" },
|
|
"source": {
|
|
"anyOf": [
|
|
{ "type": "string", "enum": ["builder", "upload"] },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Source"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["graph"],
|
|
"title": "CreateGraph"
|
|
},
|
|
"CreateSessionResponse": {
|
|
"properties": {
|
|
"id": { "type": "string", "title": "Id" },
|
|
"created_at": { "type": "string", "title": "Created At" },
|
|
"user_id": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "User Id"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["id", "created_at", "user_id"],
|
|
"title": "CreateSessionResponse",
|
|
"description": "Response model containing information on a newly created chat session."
|
|
},
|
|
"Creator": {
|
|
"properties": {
|
|
"name": { "type": "string", "title": "Name" },
|
|
"username": { "type": "string", "title": "Username" },
|
|
"description": { "type": "string", "title": "Description" },
|
|
"avatar_url": { "type": "string", "title": "Avatar Url" },
|
|
"num_agents": { "type": "integer", "title": "Num Agents" },
|
|
"agent_rating": { "type": "number", "title": "Agent Rating" },
|
|
"agent_runs": { "type": "integer", "title": "Agent Runs" },
|
|
"is_featured": { "type": "boolean", "title": "Is Featured" }
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"name",
|
|
"username",
|
|
"description",
|
|
"avatar_url",
|
|
"num_agents",
|
|
"agent_rating",
|
|
"agent_runs",
|
|
"is_featured"
|
|
],
|
|
"title": "Creator"
|
|
},
|
|
"CreatorDetails": {
|
|
"properties": {
|
|
"name": { "type": "string", "title": "Name" },
|
|
"username": { "type": "string", "title": "Username" },
|
|
"description": { "type": "string", "title": "Description" },
|
|
"links": {
|
|
"items": { "type": "string" },
|
|
"type": "array",
|
|
"title": "Links"
|
|
},
|
|
"avatar_url": { "type": "string", "title": "Avatar Url" },
|
|
"agent_rating": { "type": "number", "title": "Agent Rating" },
|
|
"agent_runs": { "type": "integer", "title": "Agent Runs" },
|
|
"top_categories": {
|
|
"items": { "type": "string" },
|
|
"type": "array",
|
|
"title": "Top Categories"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"name",
|
|
"username",
|
|
"description",
|
|
"links",
|
|
"avatar_url",
|
|
"agent_rating",
|
|
"agent_runs",
|
|
"top_categories"
|
|
],
|
|
"title": "CreatorDetails"
|
|
},
|
|
"CreatorsResponse": {
|
|
"properties": {
|
|
"creators": {
|
|
"items": { "$ref": "#/components/schemas/Creator" },
|
|
"type": "array",
|
|
"title": "Creators"
|
|
},
|
|
"pagination": { "$ref": "#/components/schemas/Pagination" }
|
|
},
|
|
"type": "object",
|
|
"required": ["creators", "pagination"],
|
|
"title": "CreatorsResponse"
|
|
},
|
|
"CredentialsDeletionNeedsConfirmationResponse": {
|
|
"properties": {
|
|
"deleted": {
|
|
"type": "boolean",
|
|
"const": false,
|
|
"title": "Deleted",
|
|
"default": false
|
|
},
|
|
"need_confirmation": {
|
|
"type": "boolean",
|
|
"const": true,
|
|
"title": "Need Confirmation",
|
|
"default": true
|
|
},
|
|
"message": { "type": "string", "title": "Message" }
|
|
},
|
|
"type": "object",
|
|
"required": ["message"],
|
|
"title": "CredentialsDeletionNeedsConfirmationResponse"
|
|
},
|
|
"CredentialsDeletionResponse": {
|
|
"properties": {
|
|
"deleted": {
|
|
"type": "boolean",
|
|
"const": true,
|
|
"title": "Deleted",
|
|
"default": true
|
|
},
|
|
"revoked": {
|
|
"anyOf": [{ "type": "boolean" }, { "type": "null" }],
|
|
"title": "Revoked",
|
|
"description": "Indicates whether the credentials were also revoked by their provider. `None`/`null` if not applicable, e.g. when deleting non-revocable credentials such as API keys."
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["revoked"],
|
|
"title": "CredentialsDeletionResponse"
|
|
},
|
|
"CredentialsMetaInput": {
|
|
"properties": {
|
|
"id": { "type": "string", "title": "Id" },
|
|
"title": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Title"
|
|
},
|
|
"provider": {
|
|
"type": "string",
|
|
"title": "Provider",
|
|
"description": "Provider name for integrations. Can be any string value, including custom provider names."
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": ["api_key", "oauth2", "user_password", "host_scoped"],
|
|
"title": "Type"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["id", "provider", "type"],
|
|
"title": "CredentialsMetaInput",
|
|
"credentials_provider": [],
|
|
"credentials_types": []
|
|
},
|
|
"CredentialsMetaResponse": {
|
|
"properties": {
|
|
"id": { "type": "string", "title": "Id" },
|
|
"provider": { "type": "string", "title": "Provider" },
|
|
"type": {
|
|
"type": "string",
|
|
"enum": ["api_key", "oauth2", "user_password", "host_scoped"],
|
|
"title": "Type"
|
|
},
|
|
"title": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Title"
|
|
},
|
|
"scopes": {
|
|
"anyOf": [
|
|
{ "items": { "type": "string" }, "type": "array" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Scopes"
|
|
},
|
|
"username": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Username"
|
|
},
|
|
"host": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Host",
|
|
"description": "Host pattern for host-scoped credentials"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["id", "provider", "type", "title", "scopes", "username"],
|
|
"title": "CredentialsMetaResponse"
|
|
},
|
|
"CreditTransactionType": {
|
|
"type": "string",
|
|
"enum": ["TOP_UP", "USAGE", "GRANT", "REFUND", "CARD_CHECK"],
|
|
"title": "CreditTransactionType"
|
|
},
|
|
"DeleteGraphResponse": {
|
|
"properties": {
|
|
"version_counts": { "type": "integer", "title": "Version Counts" }
|
|
},
|
|
"type": "object",
|
|
"required": ["version_counts"],
|
|
"title": "DeleteGraphResponse"
|
|
},
|
|
"Document": {
|
|
"properties": {
|
|
"url": { "type": "string", "title": "Url" },
|
|
"relevance_score": { "type": "number", "title": "Relevance Score" }
|
|
},
|
|
"type": "object",
|
|
"required": ["url", "relevance_score"],
|
|
"title": "Document"
|
|
},
|
|
"ExecutionAnalyticsConfig": {
|
|
"properties": {
|
|
"available_models": {
|
|
"items": { "$ref": "#/components/schemas/ModelInfo" },
|
|
"type": "array",
|
|
"title": "Available Models"
|
|
},
|
|
"default_system_prompt": {
|
|
"type": "string",
|
|
"title": "Default System Prompt"
|
|
},
|
|
"default_user_prompt": {
|
|
"type": "string",
|
|
"title": "Default User Prompt"
|
|
},
|
|
"recommended_model": {
|
|
"type": "string",
|
|
"title": "Recommended Model"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"available_models",
|
|
"default_system_prompt",
|
|
"default_user_prompt",
|
|
"recommended_model"
|
|
],
|
|
"title": "ExecutionAnalyticsConfig"
|
|
},
|
|
"ExecutionAnalyticsRequest": {
|
|
"properties": {
|
|
"graph_id": {
|
|
"type": "string",
|
|
"title": "Graph Id",
|
|
"description": "Graph ID to analyze"
|
|
},
|
|
"graph_version": {
|
|
"anyOf": [{ "type": "integer" }, { "type": "null" }],
|
|
"title": "Graph Version",
|
|
"description": "Optional graph version"
|
|
},
|
|
"user_id": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "User Id",
|
|
"description": "Optional user ID filter"
|
|
},
|
|
"created_after": {
|
|
"anyOf": [
|
|
{ "type": "string", "format": "date-time" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Created After",
|
|
"description": "Optional created date lower bound"
|
|
},
|
|
"model_name": {
|
|
"type": "string",
|
|
"title": "Model Name",
|
|
"description": "Model to use for generation",
|
|
"default": "gpt-4o-mini"
|
|
},
|
|
"batch_size": {
|
|
"type": "integer",
|
|
"maximum": 25.0,
|
|
"minimum": 1.0,
|
|
"title": "Batch Size",
|
|
"description": "Batch size for concurrent processing",
|
|
"default": 10
|
|
},
|
|
"system_prompt": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "System Prompt",
|
|
"description": "Custom system prompt (default: built-in prompt)"
|
|
},
|
|
"user_prompt": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "User Prompt",
|
|
"description": "Custom user prompt with {{GRAPH_NAME}} and {{EXECUTION_DATA}} placeholders (default: built-in prompt)"
|
|
},
|
|
"skip_existing": {
|
|
"type": "boolean",
|
|
"title": "Skip Existing",
|
|
"description": "Whether to skip executions that already have activity status and correctness score",
|
|
"default": true
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["graph_id"],
|
|
"title": "ExecutionAnalyticsRequest"
|
|
},
|
|
"ExecutionAnalyticsResponse": {
|
|
"properties": {
|
|
"total_executions": {
|
|
"type": "integer",
|
|
"title": "Total Executions"
|
|
},
|
|
"processed_executions": {
|
|
"type": "integer",
|
|
"title": "Processed Executions"
|
|
},
|
|
"successful_analytics": {
|
|
"type": "integer",
|
|
"title": "Successful Analytics"
|
|
},
|
|
"failed_analytics": {
|
|
"type": "integer",
|
|
"title": "Failed Analytics"
|
|
},
|
|
"skipped_executions": {
|
|
"type": "integer",
|
|
"title": "Skipped Executions"
|
|
},
|
|
"results": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/ExecutionAnalyticsResult"
|
|
},
|
|
"type": "array",
|
|
"title": "Results"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"total_executions",
|
|
"processed_executions",
|
|
"successful_analytics",
|
|
"failed_analytics",
|
|
"skipped_executions",
|
|
"results"
|
|
],
|
|
"title": "ExecutionAnalyticsResponse"
|
|
},
|
|
"ExecutionAnalyticsResult": {
|
|
"properties": {
|
|
"agent_id": { "type": "string", "title": "Agent Id" },
|
|
"version_id": { "type": "integer", "title": "Version Id" },
|
|
"user_id": { "type": "string", "title": "User Id" },
|
|
"exec_id": { "type": "string", "title": "Exec Id" },
|
|
"summary_text": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Summary Text"
|
|
},
|
|
"score": {
|
|
"anyOf": [{ "type": "number" }, { "type": "null" }],
|
|
"title": "Score"
|
|
},
|
|
"status": { "type": "string", "title": "Status" },
|
|
"error_message": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Error Message"
|
|
},
|
|
"started_at": {
|
|
"anyOf": [
|
|
{ "type": "string", "format": "date-time" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Started At"
|
|
},
|
|
"ended_at": {
|
|
"anyOf": [
|
|
{ "type": "string", "format": "date-time" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Ended At"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"agent_id",
|
|
"version_id",
|
|
"user_id",
|
|
"exec_id",
|
|
"summary_text",
|
|
"score",
|
|
"status"
|
|
],
|
|
"title": "ExecutionAnalyticsResult"
|
|
},
|
|
"Graph": {
|
|
"properties": {
|
|
"id": { "type": "string", "title": "Id" },
|
|
"version": { "type": "integer", "title": "Version", "default": 1 },
|
|
"is_active": {
|
|
"type": "boolean",
|
|
"title": "Is Active",
|
|
"default": true
|
|
},
|
|
"name": { "type": "string", "title": "Name" },
|
|
"description": { "type": "string", "title": "Description" },
|
|
"instructions": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Instructions"
|
|
},
|
|
"recommended_schedule_cron": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Recommended Schedule Cron"
|
|
},
|
|
"nodes": {
|
|
"items": { "$ref": "#/components/schemas/Node" },
|
|
"type": "array",
|
|
"title": "Nodes",
|
|
"default": []
|
|
},
|
|
"links": {
|
|
"items": { "$ref": "#/components/schemas/Link" },
|
|
"type": "array",
|
|
"title": "Links",
|
|
"default": []
|
|
},
|
|
"forked_from_id": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Forked From Id"
|
|
},
|
|
"forked_from_version": {
|
|
"anyOf": [{ "type": "integer" }, { "type": "null" }],
|
|
"title": "Forked From Version"
|
|
},
|
|
"sub_graphs": {
|
|
"items": { "$ref": "#/components/schemas/BaseGraph-Input" },
|
|
"type": "array",
|
|
"title": "Sub Graphs",
|
|
"default": []
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["name", "description"],
|
|
"title": "Graph"
|
|
},
|
|
"GraphExecution": {
|
|
"properties": {
|
|
"id": { "type": "string", "title": "Id" },
|
|
"user_id": { "type": "string", "title": "User Id" },
|
|
"graph_id": { "type": "string", "title": "Graph Id" },
|
|
"graph_version": { "type": "integer", "title": "Graph Version" },
|
|
"inputs": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Inputs"
|
|
},
|
|
"credential_inputs": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": {
|
|
"$ref": "#/components/schemas/CredentialsMetaInput"
|
|
},
|
|
"type": "object"
|
|
},
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Credential Inputs"
|
|
},
|
|
"nodes_input_masks": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
"type": "object"
|
|
},
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Nodes Input Masks"
|
|
},
|
|
"preset_id": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Preset Id"
|
|
},
|
|
"status": { "$ref": "#/components/schemas/AgentExecutionStatus" },
|
|
"started_at": {
|
|
"anyOf": [
|
|
{ "type": "string", "format": "date-time" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Started At",
|
|
"description": "When execution started running. Null if not yet started (QUEUED)."
|
|
},
|
|
"ended_at": {
|
|
"anyOf": [
|
|
{ "type": "string", "format": "date-time" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Ended At",
|
|
"description": "When execution finished. Null if not yet completed (QUEUED, RUNNING, INCOMPLETE, REVIEW)."
|
|
},
|
|
"is_shared": {
|
|
"type": "boolean",
|
|
"title": "Is Shared",
|
|
"default": false
|
|
},
|
|
"share_token": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Share Token"
|
|
},
|
|
"stats": {
|
|
"anyOf": [
|
|
{ "$ref": "#/components/schemas/Stats" },
|
|
{ "type": "null" }
|
|
]
|
|
},
|
|
"outputs": {
|
|
"additionalProperties": { "items": {}, "type": "array" },
|
|
"type": "object",
|
|
"title": "Outputs"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"id",
|
|
"user_id",
|
|
"graph_id",
|
|
"graph_version",
|
|
"inputs",
|
|
"credential_inputs",
|
|
"nodes_input_masks",
|
|
"preset_id",
|
|
"status",
|
|
"stats",
|
|
"outputs"
|
|
],
|
|
"title": "GraphExecution"
|
|
},
|
|
"GraphExecutionJobInfo": {
|
|
"properties": {
|
|
"schedule_id": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Schedule Id"
|
|
},
|
|
"user_id": { "type": "string", "title": "User Id" },
|
|
"graph_id": { "type": "string", "title": "Graph Id" },
|
|
"graph_version": { "type": "integer", "title": "Graph Version" },
|
|
"agent_name": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Agent Name"
|
|
},
|
|
"cron": { "type": "string", "title": "Cron" },
|
|
"input_data": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Input Data"
|
|
},
|
|
"input_credentials": {
|
|
"additionalProperties": {
|
|
"$ref": "#/components/schemas/CredentialsMetaInput"
|
|
},
|
|
"type": "object",
|
|
"title": "Input Credentials"
|
|
},
|
|
"id": { "type": "string", "title": "Id" },
|
|
"name": { "type": "string", "title": "Name" },
|
|
"next_run_time": { "type": "string", "title": "Next Run Time" },
|
|
"timezone": {
|
|
"type": "string",
|
|
"title": "Timezone",
|
|
"description": "Timezone used for scheduling",
|
|
"default": "UTC"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"user_id",
|
|
"graph_id",
|
|
"graph_version",
|
|
"cron",
|
|
"input_data",
|
|
"id",
|
|
"name",
|
|
"next_run_time"
|
|
],
|
|
"title": "GraphExecutionJobInfo"
|
|
},
|
|
"GraphExecutionMeta": {
|
|
"properties": {
|
|
"id": { "type": "string", "title": "Id" },
|
|
"user_id": { "type": "string", "title": "User Id" },
|
|
"graph_id": { "type": "string", "title": "Graph Id" },
|
|
"graph_version": { "type": "integer", "title": "Graph Version" },
|
|
"inputs": {
|
|
"anyOf": [
|
|
{ "additionalProperties": true, "type": "object" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Inputs"
|
|
},
|
|
"credential_inputs": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": {
|
|
"$ref": "#/components/schemas/CredentialsMetaInput"
|
|
},
|
|
"type": "object"
|
|
},
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Credential Inputs"
|
|
},
|
|
"nodes_input_masks": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
"type": "object"
|
|
},
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Nodes Input Masks"
|
|
},
|
|
"preset_id": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Preset Id"
|
|
},
|
|
"status": { "$ref": "#/components/schemas/AgentExecutionStatus" },
|
|
"started_at": {
|
|
"anyOf": [
|
|
{ "type": "string", "format": "date-time" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Started At",
|
|
"description": "When execution started running. Null if not yet started (QUEUED)."
|
|
},
|
|
"ended_at": {
|
|
"anyOf": [
|
|
{ "type": "string", "format": "date-time" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Ended At",
|
|
"description": "When execution finished. Null if not yet completed (QUEUED, RUNNING, INCOMPLETE, REVIEW)."
|
|
},
|
|
"is_shared": {
|
|
"type": "boolean",
|
|
"title": "Is Shared",
|
|
"default": false
|
|
},
|
|
"share_token": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Share Token"
|
|
},
|
|
"stats": {
|
|
"anyOf": [
|
|
{ "$ref": "#/components/schemas/Stats" },
|
|
{ "type": "null" }
|
|
]
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"id",
|
|
"user_id",
|
|
"graph_id",
|
|
"graph_version",
|
|
"inputs",
|
|
"credential_inputs",
|
|
"nodes_input_masks",
|
|
"preset_id",
|
|
"status",
|
|
"stats"
|
|
],
|
|
"title": "GraphExecutionMeta"
|
|
},
|
|
"GraphExecutionWithNodes": {
|
|
"properties": {
|
|
"id": { "type": "string", "title": "Id" },
|
|
"user_id": { "type": "string", "title": "User Id" },
|
|
"graph_id": { "type": "string", "title": "Graph Id" },
|
|
"graph_version": { "type": "integer", "title": "Graph Version" },
|
|
"inputs": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Inputs"
|
|
},
|
|
"credential_inputs": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": {
|
|
"$ref": "#/components/schemas/CredentialsMetaInput"
|
|
},
|
|
"type": "object"
|
|
},
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Credential Inputs"
|
|
},
|
|
"nodes_input_masks": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
"type": "object"
|
|
},
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Nodes Input Masks"
|
|
},
|
|
"preset_id": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Preset Id"
|
|
},
|
|
"status": { "$ref": "#/components/schemas/AgentExecutionStatus" },
|
|
"started_at": {
|
|
"anyOf": [
|
|
{ "type": "string", "format": "date-time" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Started At",
|
|
"description": "When execution started running. Null if not yet started (QUEUED)."
|
|
},
|
|
"ended_at": {
|
|
"anyOf": [
|
|
{ "type": "string", "format": "date-time" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Ended At",
|
|
"description": "When execution finished. Null if not yet completed (QUEUED, RUNNING, INCOMPLETE, REVIEW)."
|
|
},
|
|
"is_shared": {
|
|
"type": "boolean",
|
|
"title": "Is Shared",
|
|
"default": false
|
|
},
|
|
"share_token": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Share Token"
|
|
},
|
|
"stats": {
|
|
"anyOf": [
|
|
{ "$ref": "#/components/schemas/Stats" },
|
|
{ "type": "null" }
|
|
]
|
|
},
|
|
"outputs": {
|
|
"additionalProperties": { "items": {}, "type": "array" },
|
|
"type": "object",
|
|
"title": "Outputs"
|
|
},
|
|
"node_executions": {
|
|
"items": { "$ref": "#/components/schemas/NodeExecutionResult" },
|
|
"type": "array",
|
|
"title": "Node Executions"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"id",
|
|
"user_id",
|
|
"graph_id",
|
|
"graph_version",
|
|
"inputs",
|
|
"credential_inputs",
|
|
"nodes_input_masks",
|
|
"preset_id",
|
|
"status",
|
|
"stats",
|
|
"outputs",
|
|
"node_executions"
|
|
],
|
|
"title": "GraphExecutionWithNodes"
|
|
},
|
|
"GraphExecutionsPaginated": {
|
|
"properties": {
|
|
"executions": {
|
|
"items": { "$ref": "#/components/schemas/GraphExecutionMeta" },
|
|
"type": "array",
|
|
"title": "Executions"
|
|
},
|
|
"pagination": { "$ref": "#/components/schemas/Pagination" }
|
|
},
|
|
"type": "object",
|
|
"required": ["executions", "pagination"],
|
|
"title": "GraphExecutionsPaginated",
|
|
"description": "Response schema for paginated graph executions."
|
|
},
|
|
"GraphMeta": {
|
|
"properties": {
|
|
"id": { "type": "string", "title": "Id" },
|
|
"version": { "type": "integer", "title": "Version", "default": 1 },
|
|
"is_active": {
|
|
"type": "boolean",
|
|
"title": "Is Active",
|
|
"default": true
|
|
},
|
|
"name": { "type": "string", "title": "Name" },
|
|
"description": { "type": "string", "title": "Description" },
|
|
"instructions": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Instructions"
|
|
},
|
|
"recommended_schedule_cron": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Recommended Schedule Cron"
|
|
},
|
|
"forked_from_id": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Forked From Id"
|
|
},
|
|
"forked_from_version": {
|
|
"anyOf": [{ "type": "integer" }, { "type": "null" }],
|
|
"title": "Forked From Version"
|
|
},
|
|
"sub_graphs": {
|
|
"items": { "$ref": "#/components/schemas/BaseGraph-Output" },
|
|
"type": "array",
|
|
"title": "Sub Graphs",
|
|
"default": []
|
|
},
|
|
"user_id": { "type": "string", "title": "User Id" },
|
|
"input_schema": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Input Schema",
|
|
"readOnly": true
|
|
},
|
|
"output_schema": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Output Schema",
|
|
"readOnly": true
|
|
},
|
|
"has_external_trigger": {
|
|
"type": "boolean",
|
|
"title": "Has External Trigger",
|
|
"readOnly": true
|
|
},
|
|
"has_human_in_the_loop": {
|
|
"type": "boolean",
|
|
"title": "Has Human In The Loop",
|
|
"readOnly": true
|
|
},
|
|
"has_sensitive_action": {
|
|
"type": "boolean",
|
|
"title": "Has Sensitive Action",
|
|
"readOnly": true
|
|
},
|
|
"trigger_setup_info": {
|
|
"anyOf": [
|
|
{ "$ref": "#/components/schemas/GraphTriggerInfo" },
|
|
{ "type": "null" }
|
|
],
|
|
"readOnly": true
|
|
},
|
|
"credentials_input_schema": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Credentials Input Schema",
|
|
"readOnly": true
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"name",
|
|
"description",
|
|
"user_id",
|
|
"input_schema",
|
|
"output_schema",
|
|
"has_external_trigger",
|
|
"has_human_in_the_loop",
|
|
"has_sensitive_action",
|
|
"trigger_setup_info",
|
|
"credentials_input_schema"
|
|
],
|
|
"title": "GraphMeta"
|
|
},
|
|
"GraphModel": {
|
|
"properties": {
|
|
"id": { "type": "string", "title": "Id" },
|
|
"version": { "type": "integer", "title": "Version", "default": 1 },
|
|
"is_active": {
|
|
"type": "boolean",
|
|
"title": "Is Active",
|
|
"default": true
|
|
},
|
|
"name": { "type": "string", "title": "Name" },
|
|
"description": { "type": "string", "title": "Description" },
|
|
"instructions": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Instructions"
|
|
},
|
|
"recommended_schedule_cron": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Recommended Schedule Cron"
|
|
},
|
|
"nodes": {
|
|
"items": { "$ref": "#/components/schemas/NodeModel" },
|
|
"type": "array",
|
|
"title": "Nodes",
|
|
"default": []
|
|
},
|
|
"links": {
|
|
"items": { "$ref": "#/components/schemas/Link" },
|
|
"type": "array",
|
|
"title": "Links",
|
|
"default": []
|
|
},
|
|
"forked_from_id": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Forked From Id"
|
|
},
|
|
"forked_from_version": {
|
|
"anyOf": [{ "type": "integer" }, { "type": "null" }],
|
|
"title": "Forked From Version"
|
|
},
|
|
"sub_graphs": {
|
|
"items": { "$ref": "#/components/schemas/BaseGraph-Output" },
|
|
"type": "array",
|
|
"title": "Sub Graphs",
|
|
"default": []
|
|
},
|
|
"user_id": { "type": "string", "title": "User Id" },
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "Created At"
|
|
},
|
|
"input_schema": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Input Schema",
|
|
"readOnly": true
|
|
},
|
|
"output_schema": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Output Schema",
|
|
"readOnly": true
|
|
},
|
|
"has_external_trigger": {
|
|
"type": "boolean",
|
|
"title": "Has External Trigger",
|
|
"readOnly": true
|
|
},
|
|
"has_human_in_the_loop": {
|
|
"type": "boolean",
|
|
"title": "Has Human In The Loop",
|
|
"readOnly": true
|
|
},
|
|
"has_sensitive_action": {
|
|
"type": "boolean",
|
|
"title": "Has Sensitive Action",
|
|
"readOnly": true
|
|
},
|
|
"trigger_setup_info": {
|
|
"anyOf": [
|
|
{ "$ref": "#/components/schemas/GraphTriggerInfo" },
|
|
{ "type": "null" }
|
|
],
|
|
"readOnly": true
|
|
},
|
|
"credentials_input_schema": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Credentials Input Schema",
|
|
"readOnly": true
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"name",
|
|
"description",
|
|
"user_id",
|
|
"created_at",
|
|
"input_schema",
|
|
"output_schema",
|
|
"has_external_trigger",
|
|
"has_human_in_the_loop",
|
|
"has_sensitive_action",
|
|
"trigger_setup_info",
|
|
"credentials_input_schema"
|
|
],
|
|
"title": "GraphModel"
|
|
},
|
|
"GraphSettings": {
|
|
"properties": {
|
|
"human_in_the_loop_safe_mode": {
|
|
"type": "boolean",
|
|
"title": "Human In The Loop Safe Mode",
|
|
"default": true
|
|
},
|
|
"sensitive_action_safe_mode": {
|
|
"type": "boolean",
|
|
"title": "Sensitive Action Safe Mode",
|
|
"default": false
|
|
}
|
|
},
|
|
"type": "object",
|
|
"title": "GraphSettings"
|
|
},
|
|
"GraphTriggerInfo": {
|
|
"properties": {
|
|
"provider": {
|
|
"type": "string",
|
|
"title": "Provider",
|
|
"description": "Provider name for integrations. Can be any string value, including custom provider names."
|
|
},
|
|
"config_schema": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Config Schema",
|
|
"description": "Input schema for the trigger block"
|
|
},
|
|
"credentials_input_name": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Credentials Input Name"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["provider", "config_schema", "credentials_input_name"],
|
|
"title": "GraphTriggerInfo"
|
|
},
|
|
"HTTPValidationError": {
|
|
"properties": {
|
|
"detail": {
|
|
"items": { "$ref": "#/components/schemas/ValidationError" },
|
|
"type": "array",
|
|
"title": "Detail"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"title": "HTTPValidationError"
|
|
},
|
|
"HostScopedCredentials-Input": {
|
|
"properties": {
|
|
"id": { "type": "string", "title": "Id" },
|
|
"provider": { "type": "string", "title": "Provider" },
|
|
"title": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Title"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"const": "host_scoped",
|
|
"title": "Type",
|
|
"default": "host_scoped"
|
|
},
|
|
"host": {
|
|
"type": "string",
|
|
"title": "Host",
|
|
"description": "The host/URI pattern to match against request URLs"
|
|
},
|
|
"headers": {
|
|
"additionalProperties": {
|
|
"type": "string",
|
|
"format": "password",
|
|
"writeOnly": true
|
|
},
|
|
"type": "object",
|
|
"title": "Headers",
|
|
"description": "Key-value header map to add to matching requests"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["provider", "host"],
|
|
"title": "HostScopedCredentials"
|
|
},
|
|
"HostScopedCredentials-Output": {
|
|
"properties": {
|
|
"id": { "type": "string", "title": "Id" },
|
|
"provider": { "type": "string", "title": "Provider" },
|
|
"title": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Title"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"const": "host_scoped",
|
|
"title": "Type",
|
|
"default": "host_scoped"
|
|
},
|
|
"host": {
|
|
"type": "string",
|
|
"title": "Host",
|
|
"description": "The host/URI pattern to match against request URLs"
|
|
},
|
|
"headers": {
|
|
"additionalProperties": { "type": "string" },
|
|
"type": "object",
|
|
"title": "Headers",
|
|
"description": "Key-value header map to add to matching requests"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["provider", "host"],
|
|
"title": "HostScopedCredentials"
|
|
},
|
|
"LibraryAgent": {
|
|
"properties": {
|
|
"id": { "type": "string", "title": "Id" },
|
|
"graph_id": { "type": "string", "title": "Graph Id" },
|
|
"graph_version": { "type": "integer", "title": "Graph Version" },
|
|
"owner_user_id": { "type": "string", "title": "Owner User Id" },
|
|
"image_url": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Image Url"
|
|
},
|
|
"creator_name": { "type": "string", "title": "Creator Name" },
|
|
"creator_image_url": {
|
|
"type": "string",
|
|
"title": "Creator Image Url"
|
|
},
|
|
"status": { "$ref": "#/components/schemas/LibraryAgentStatus" },
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "Created At"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "Updated At"
|
|
},
|
|
"name": { "type": "string", "title": "Name" },
|
|
"description": { "type": "string", "title": "Description" },
|
|
"instructions": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Instructions"
|
|
},
|
|
"input_schema": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Input Schema"
|
|
},
|
|
"output_schema": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Output Schema"
|
|
},
|
|
"credentials_input_schema": {
|
|
"anyOf": [
|
|
{ "additionalProperties": true, "type": "object" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Credentials Input Schema",
|
|
"description": "Input schema for credentials required by the agent"
|
|
},
|
|
"has_external_trigger": {
|
|
"type": "boolean",
|
|
"title": "Has External Trigger",
|
|
"description": "Whether the agent has an external trigger (e.g. webhook) node"
|
|
},
|
|
"has_human_in_the_loop": {
|
|
"type": "boolean",
|
|
"title": "Has Human In The Loop",
|
|
"description": "Whether the agent has human-in-the-loop blocks"
|
|
},
|
|
"has_sensitive_action": {
|
|
"type": "boolean",
|
|
"title": "Has Sensitive Action",
|
|
"description": "Whether the agent has sensitive action blocks"
|
|
},
|
|
"trigger_setup_info": {
|
|
"anyOf": [
|
|
{ "$ref": "#/components/schemas/GraphTriggerInfo" },
|
|
{ "type": "null" }
|
|
]
|
|
},
|
|
"new_output": { "type": "boolean", "title": "New Output" },
|
|
"can_access_graph": {
|
|
"type": "boolean",
|
|
"title": "Can Access Graph"
|
|
},
|
|
"is_latest_version": {
|
|
"type": "boolean",
|
|
"title": "Is Latest Version"
|
|
},
|
|
"is_favorite": { "type": "boolean", "title": "Is Favorite" },
|
|
"recommended_schedule_cron": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Recommended Schedule Cron"
|
|
},
|
|
"settings": { "$ref": "#/components/schemas/GraphSettings" },
|
|
"marketplace_listing": {
|
|
"anyOf": [
|
|
{ "$ref": "#/components/schemas/MarketplaceListing" },
|
|
{ "type": "null" }
|
|
]
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"id",
|
|
"graph_id",
|
|
"graph_version",
|
|
"owner_user_id",
|
|
"image_url",
|
|
"creator_name",
|
|
"creator_image_url",
|
|
"status",
|
|
"created_at",
|
|
"updated_at",
|
|
"name",
|
|
"description",
|
|
"input_schema",
|
|
"output_schema",
|
|
"credentials_input_schema",
|
|
"has_external_trigger",
|
|
"has_human_in_the_loop",
|
|
"has_sensitive_action",
|
|
"new_output",
|
|
"can_access_graph",
|
|
"is_latest_version",
|
|
"is_favorite"
|
|
],
|
|
"title": "LibraryAgent",
|
|
"description": "Represents an agent in the library, including metadata for display and\nuser interaction within the system."
|
|
},
|
|
"LibraryAgentPreset": {
|
|
"properties": {
|
|
"graph_id": { "type": "string", "title": "Graph Id" },
|
|
"graph_version": { "type": "integer", "title": "Graph Version" },
|
|
"inputs": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Inputs"
|
|
},
|
|
"credentials": {
|
|
"additionalProperties": {
|
|
"$ref": "#/components/schemas/CredentialsMetaInput"
|
|
},
|
|
"type": "object",
|
|
"title": "Credentials"
|
|
},
|
|
"name": { "type": "string", "title": "Name" },
|
|
"description": { "type": "string", "title": "Description" },
|
|
"is_active": {
|
|
"type": "boolean",
|
|
"title": "Is Active",
|
|
"default": true
|
|
},
|
|
"webhook_id": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Webhook Id"
|
|
},
|
|
"id": { "type": "string", "title": "Id" },
|
|
"user_id": { "type": "string", "title": "User Id" },
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "Created At"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "Updated At"
|
|
},
|
|
"webhook": {
|
|
"anyOf": [
|
|
{ "$ref": "#/components/schemas/Webhook" },
|
|
{ "type": "null" }
|
|
]
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"graph_id",
|
|
"graph_version",
|
|
"inputs",
|
|
"credentials",
|
|
"name",
|
|
"description",
|
|
"id",
|
|
"user_id",
|
|
"created_at",
|
|
"updated_at",
|
|
"webhook"
|
|
],
|
|
"title": "LibraryAgentPreset",
|
|
"description": "Represents a preset configuration for a library agent."
|
|
},
|
|
"LibraryAgentPresetCreatable": {
|
|
"properties": {
|
|
"graph_id": { "type": "string", "title": "Graph Id" },
|
|
"graph_version": { "type": "integer", "title": "Graph Version" },
|
|
"inputs": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Inputs"
|
|
},
|
|
"credentials": {
|
|
"additionalProperties": {
|
|
"$ref": "#/components/schemas/CredentialsMetaInput"
|
|
},
|
|
"type": "object",
|
|
"title": "Credentials"
|
|
},
|
|
"name": { "type": "string", "title": "Name" },
|
|
"description": { "type": "string", "title": "Description" },
|
|
"is_active": {
|
|
"type": "boolean",
|
|
"title": "Is Active",
|
|
"default": true
|
|
},
|
|
"webhook_id": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Webhook Id"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"graph_id",
|
|
"graph_version",
|
|
"inputs",
|
|
"credentials",
|
|
"name",
|
|
"description"
|
|
],
|
|
"title": "LibraryAgentPresetCreatable",
|
|
"description": "Request model used when creating a new preset for a library agent."
|
|
},
|
|
"LibraryAgentPresetCreatableFromGraphExecution": {
|
|
"properties": {
|
|
"graph_execution_id": {
|
|
"type": "string",
|
|
"title": "Graph Execution Id"
|
|
},
|
|
"name": { "type": "string", "title": "Name" },
|
|
"description": { "type": "string", "title": "Description" },
|
|
"is_active": {
|
|
"type": "boolean",
|
|
"title": "Is Active",
|
|
"default": true
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["graph_execution_id", "name", "description"],
|
|
"title": "LibraryAgentPresetCreatableFromGraphExecution",
|
|
"description": "Request model used when creating a new preset for a library agent."
|
|
},
|
|
"LibraryAgentPresetResponse": {
|
|
"properties": {
|
|
"presets": {
|
|
"items": { "$ref": "#/components/schemas/LibraryAgentPreset" },
|
|
"type": "array",
|
|
"title": "Presets"
|
|
},
|
|
"pagination": { "$ref": "#/components/schemas/Pagination" }
|
|
},
|
|
"type": "object",
|
|
"required": ["presets", "pagination"],
|
|
"title": "LibraryAgentPresetResponse",
|
|
"description": "Response schema for a list of agent presets and pagination info."
|
|
},
|
|
"LibraryAgentPresetUpdatable": {
|
|
"properties": {
|
|
"inputs": {
|
|
"anyOf": [
|
|
{ "additionalProperties": true, "type": "object" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Inputs"
|
|
},
|
|
"credentials": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": {
|
|
"$ref": "#/components/schemas/CredentialsMetaInput"
|
|
},
|
|
"type": "object"
|
|
},
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Credentials"
|
|
},
|
|
"name": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Name"
|
|
},
|
|
"description": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Description"
|
|
},
|
|
"is_active": {
|
|
"anyOf": [{ "type": "boolean" }, { "type": "null" }],
|
|
"title": "Is Active"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"title": "LibraryAgentPresetUpdatable",
|
|
"description": "Request model used when updating a preset for a library agent."
|
|
},
|
|
"LibraryAgentResponse": {
|
|
"properties": {
|
|
"agents": {
|
|
"items": { "$ref": "#/components/schemas/LibraryAgent" },
|
|
"type": "array",
|
|
"title": "Agents"
|
|
},
|
|
"pagination": { "$ref": "#/components/schemas/Pagination" }
|
|
},
|
|
"type": "object",
|
|
"required": ["agents", "pagination"],
|
|
"title": "LibraryAgentResponse",
|
|
"description": "Response schema for a list of library agents and pagination info."
|
|
},
|
|
"LibraryAgentSort": {
|
|
"type": "string",
|
|
"enum": ["createdAt", "updatedAt"],
|
|
"title": "LibraryAgentSort",
|
|
"description": "Possible sort options for sorting library agents."
|
|
},
|
|
"LibraryAgentStatus": {
|
|
"type": "string",
|
|
"enum": ["COMPLETED", "HEALTHY", "WAITING", "ERROR"],
|
|
"title": "LibraryAgentStatus"
|
|
},
|
|
"LibraryAgentUpdateRequest": {
|
|
"properties": {
|
|
"auto_update_version": {
|
|
"anyOf": [{ "type": "boolean" }, { "type": "null" }],
|
|
"title": "Auto Update Version",
|
|
"description": "Auto-update the agent version"
|
|
},
|
|
"graph_version": {
|
|
"anyOf": [{ "type": "integer" }, { "type": "null" }],
|
|
"title": "Graph Version",
|
|
"description": "Specific graph version to update to"
|
|
},
|
|
"is_favorite": {
|
|
"anyOf": [{ "type": "boolean" }, { "type": "null" }],
|
|
"title": "Is Favorite",
|
|
"description": "Mark the agent as a favorite"
|
|
},
|
|
"is_archived": {
|
|
"anyOf": [{ "type": "boolean" }, { "type": "null" }],
|
|
"title": "Is Archived",
|
|
"description": "Archive the agent"
|
|
},
|
|
"settings": {
|
|
"anyOf": [
|
|
{ "$ref": "#/components/schemas/GraphSettings" },
|
|
{ "type": "null" }
|
|
],
|
|
"description": "User-specific settings for this library agent"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"title": "LibraryAgentUpdateRequest",
|
|
"description": "Schema for updating a library agent via PUT.\n\nIncludes flags for auto-updating version, marking as favorite,\narchiving, or deleting."
|
|
},
|
|
"Link": {
|
|
"properties": {
|
|
"id": { "type": "string", "title": "Id" },
|
|
"source_id": { "type": "string", "title": "Source Id" },
|
|
"sink_id": { "type": "string", "title": "Sink Id" },
|
|
"source_name": { "type": "string", "title": "Source Name" },
|
|
"sink_name": { "type": "string", "title": "Sink Name" },
|
|
"is_static": {
|
|
"type": "boolean",
|
|
"title": "Is Static",
|
|
"default": false
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["source_id", "sink_id", "source_name", "sink_name"],
|
|
"title": "Link"
|
|
},
|
|
"ListSessionsResponse": {
|
|
"properties": {
|
|
"sessions": {
|
|
"items": { "$ref": "#/components/schemas/SessionSummaryResponse" },
|
|
"type": "array",
|
|
"title": "Sessions"
|
|
},
|
|
"total": { "type": "integer", "title": "Total" }
|
|
},
|
|
"type": "object",
|
|
"required": ["sessions", "total"],
|
|
"title": "ListSessionsResponse",
|
|
"description": "Response model for listing chat sessions."
|
|
},
|
|
"LogRawMetricRequest": {
|
|
"properties": {
|
|
"metric_name": {
|
|
"type": "string",
|
|
"minLength": 1,
|
|
"title": "Metric Name"
|
|
},
|
|
"metric_value": { "type": "number", "title": "Metric Value" },
|
|
"data_string": {
|
|
"type": "string",
|
|
"minLength": 1,
|
|
"title": "Data String"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["metric_name", "metric_value", "data_string"],
|
|
"title": "LogRawMetricRequest"
|
|
},
|
|
"LoginResponse": {
|
|
"properties": {
|
|
"login_url": { "type": "string", "title": "Login Url" },
|
|
"state_token": { "type": "string", "title": "State Token" }
|
|
},
|
|
"type": "object",
|
|
"required": ["login_url", "state_token"],
|
|
"title": "LoginResponse"
|
|
},
|
|
"MarketplaceListing": {
|
|
"properties": {
|
|
"id": { "type": "string", "title": "Id" },
|
|
"name": { "type": "string", "title": "Name" },
|
|
"slug": { "type": "string", "title": "Slug" },
|
|
"creator": {
|
|
"$ref": "#/components/schemas/MarketplaceListingCreator"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["id", "name", "slug", "creator"],
|
|
"title": "MarketplaceListing",
|
|
"description": "Marketplace listing information for a library agent."
|
|
},
|
|
"MarketplaceListingCreator": {
|
|
"properties": {
|
|
"name": { "type": "string", "title": "Name" },
|
|
"id": { "type": "string", "title": "Id" },
|
|
"slug": { "type": "string", "title": "Slug" }
|
|
},
|
|
"type": "object",
|
|
"required": ["name", "id", "slug"],
|
|
"title": "MarketplaceListingCreator",
|
|
"description": "Creator information for a marketplace listing."
|
|
},
|
|
"Message": {
|
|
"properties": {
|
|
"query": { "type": "string", "title": "Query" },
|
|
"response": { "type": "string", "title": "Response" }
|
|
},
|
|
"type": "object",
|
|
"required": ["query", "response"],
|
|
"title": "Message"
|
|
},
|
|
"ModelInfo": {
|
|
"properties": {
|
|
"value": { "type": "string", "title": "Value" },
|
|
"label": { "type": "string", "title": "Label" },
|
|
"provider": { "type": "string", "title": "Provider" }
|
|
},
|
|
"type": "object",
|
|
"required": ["value", "label", "provider"],
|
|
"title": "ModelInfo"
|
|
},
|
|
"MyAgent": {
|
|
"properties": {
|
|
"agent_id": { "type": "string", "title": "Agent Id" },
|
|
"agent_version": { "type": "integer", "title": "Agent Version" },
|
|
"agent_name": { "type": "string", "title": "Agent Name" },
|
|
"agent_image": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Agent Image"
|
|
},
|
|
"description": { "type": "string", "title": "Description" },
|
|
"last_edited": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "Last Edited"
|
|
},
|
|
"recommended_schedule_cron": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Recommended Schedule Cron"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"agent_id",
|
|
"agent_version",
|
|
"agent_name",
|
|
"description",
|
|
"last_edited"
|
|
],
|
|
"title": "MyAgent"
|
|
},
|
|
"MyAgentsResponse": {
|
|
"properties": {
|
|
"agents": {
|
|
"items": { "$ref": "#/components/schemas/MyAgent" },
|
|
"type": "array",
|
|
"title": "Agents"
|
|
},
|
|
"pagination": { "$ref": "#/components/schemas/Pagination" }
|
|
},
|
|
"type": "object",
|
|
"required": ["agents", "pagination"],
|
|
"title": "MyAgentsResponse"
|
|
},
|
|
"Node": {
|
|
"properties": {
|
|
"id": { "type": "string", "title": "Id" },
|
|
"block_id": { "type": "string", "title": "Block Id" },
|
|
"input_default": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Input Default",
|
|
"default": {}
|
|
},
|
|
"metadata": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Metadata",
|
|
"default": {}
|
|
},
|
|
"input_links": {
|
|
"items": { "$ref": "#/components/schemas/Link" },
|
|
"type": "array",
|
|
"title": "Input Links",
|
|
"default": []
|
|
},
|
|
"output_links": {
|
|
"items": { "$ref": "#/components/schemas/Link" },
|
|
"type": "array",
|
|
"title": "Output Links",
|
|
"default": []
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["block_id"],
|
|
"title": "Node"
|
|
},
|
|
"NodeExecutionResult": {
|
|
"properties": {
|
|
"user_id": { "type": "string", "title": "User Id" },
|
|
"graph_id": { "type": "string", "title": "Graph Id" },
|
|
"graph_version": { "type": "integer", "title": "Graph Version" },
|
|
"graph_exec_id": { "type": "string", "title": "Graph Exec Id" },
|
|
"node_exec_id": { "type": "string", "title": "Node Exec Id" },
|
|
"node_id": { "type": "string", "title": "Node Id" },
|
|
"block_id": { "type": "string", "title": "Block Id" },
|
|
"status": { "$ref": "#/components/schemas/AgentExecutionStatus" },
|
|
"input_data": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Input Data"
|
|
},
|
|
"output_data": {
|
|
"additionalProperties": { "items": {}, "type": "array" },
|
|
"type": "object",
|
|
"title": "Output Data"
|
|
},
|
|
"add_time": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "Add Time"
|
|
},
|
|
"queue_time": {
|
|
"anyOf": [
|
|
{ "type": "string", "format": "date-time" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Queue Time"
|
|
},
|
|
"start_time": {
|
|
"anyOf": [
|
|
{ "type": "string", "format": "date-time" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Start Time"
|
|
},
|
|
"end_time": {
|
|
"anyOf": [
|
|
{ "type": "string", "format": "date-time" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "End Time"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"user_id",
|
|
"graph_id",
|
|
"graph_version",
|
|
"graph_exec_id",
|
|
"node_exec_id",
|
|
"node_id",
|
|
"block_id",
|
|
"status",
|
|
"input_data",
|
|
"output_data",
|
|
"add_time",
|
|
"queue_time",
|
|
"start_time",
|
|
"end_time"
|
|
],
|
|
"title": "NodeExecutionResult"
|
|
},
|
|
"NodeModel": {
|
|
"properties": {
|
|
"id": { "type": "string", "title": "Id" },
|
|
"block_id": { "type": "string", "title": "Block Id" },
|
|
"input_default": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Input Default",
|
|
"default": {}
|
|
},
|
|
"metadata": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Metadata",
|
|
"default": {}
|
|
},
|
|
"input_links": {
|
|
"items": { "$ref": "#/components/schemas/Link" },
|
|
"type": "array",
|
|
"title": "Input Links",
|
|
"default": []
|
|
},
|
|
"output_links": {
|
|
"items": { "$ref": "#/components/schemas/Link" },
|
|
"type": "array",
|
|
"title": "Output Links",
|
|
"default": []
|
|
},
|
|
"graph_id": { "type": "string", "title": "Graph Id" },
|
|
"graph_version": { "type": "integer", "title": "Graph Version" },
|
|
"webhook_id": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Webhook Id"
|
|
},
|
|
"webhook": {
|
|
"anyOf": [
|
|
{ "$ref": "#/components/schemas/Webhook" },
|
|
{ "type": "null" }
|
|
]
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["block_id", "graph_id", "graph_version"],
|
|
"title": "NodeModel"
|
|
},
|
|
"NotificationPreference": {
|
|
"properties": {
|
|
"user_id": { "type": "string", "title": "User Id" },
|
|
"email": { "type": "string", "format": "email", "title": "Email" },
|
|
"preferences": {
|
|
"additionalProperties": { "type": "boolean" },
|
|
"propertyNames": {
|
|
"$ref": "#/components/schemas/NotificationType"
|
|
},
|
|
"type": "object",
|
|
"title": "Preferences",
|
|
"description": "Which notifications the user wants"
|
|
},
|
|
"daily_limit": {
|
|
"type": "integer",
|
|
"title": "Daily Limit",
|
|
"default": 10
|
|
},
|
|
"emails_sent_today": {
|
|
"type": "integer",
|
|
"title": "Emails Sent Today",
|
|
"default": 0
|
|
},
|
|
"last_reset_date": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "Last Reset Date"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["user_id", "email"],
|
|
"title": "NotificationPreference"
|
|
},
|
|
"NotificationPreferenceDTO": {
|
|
"properties": {
|
|
"email": {
|
|
"type": "string",
|
|
"format": "email",
|
|
"title": "Email",
|
|
"description": "User's email address"
|
|
},
|
|
"preferences": {
|
|
"additionalProperties": { "type": "boolean" },
|
|
"propertyNames": {
|
|
"$ref": "#/components/schemas/NotificationType"
|
|
},
|
|
"type": "object",
|
|
"title": "Preferences",
|
|
"description": "Which notifications the user wants"
|
|
},
|
|
"daily_limit": {
|
|
"type": "integer",
|
|
"title": "Daily Limit",
|
|
"description": "Max emails per day"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["email", "preferences", "daily_limit"],
|
|
"title": "NotificationPreferenceDTO"
|
|
},
|
|
"NotificationType": {
|
|
"type": "string",
|
|
"enum": [
|
|
"AGENT_RUN",
|
|
"ZERO_BALANCE",
|
|
"LOW_BALANCE",
|
|
"BLOCK_EXECUTION_FAILED",
|
|
"CONTINUOUS_AGENT_ERROR",
|
|
"DAILY_SUMMARY",
|
|
"WEEKLY_SUMMARY",
|
|
"MONTHLY_SUMMARY",
|
|
"REFUND_REQUEST",
|
|
"REFUND_PROCESSED",
|
|
"AGENT_APPROVED",
|
|
"AGENT_REJECTED"
|
|
],
|
|
"title": "NotificationType"
|
|
},
|
|
"OAuth2Credentials": {
|
|
"properties": {
|
|
"id": { "type": "string", "title": "Id" },
|
|
"provider": { "type": "string", "title": "Provider" },
|
|
"title": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Title"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"const": "oauth2",
|
|
"title": "Type",
|
|
"default": "oauth2"
|
|
},
|
|
"username": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Username"
|
|
},
|
|
"access_token": {
|
|
"type": "string",
|
|
"format": "password",
|
|
"title": "Access Token",
|
|
"writeOnly": true
|
|
},
|
|
"access_token_expires_at": {
|
|
"anyOf": [{ "type": "integer" }, { "type": "null" }],
|
|
"title": "Access Token Expires At"
|
|
},
|
|
"refresh_token": {
|
|
"anyOf": [
|
|
{ "type": "string", "format": "password", "writeOnly": true },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Refresh Token"
|
|
},
|
|
"refresh_token_expires_at": {
|
|
"anyOf": [{ "type": "integer" }, { "type": "null" }],
|
|
"title": "Refresh Token Expires At"
|
|
},
|
|
"scopes": {
|
|
"items": { "type": "string" },
|
|
"type": "array",
|
|
"title": "Scopes"
|
|
},
|
|
"metadata": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Metadata"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["provider", "access_token", "scopes"],
|
|
"title": "OAuth2Credentials"
|
|
},
|
|
"OAuthApplicationInfo": {
|
|
"properties": {
|
|
"id": { "type": "string", "title": "Id" },
|
|
"name": { "type": "string", "title": "Name" },
|
|
"description": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Description"
|
|
},
|
|
"logo_url": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Logo Url"
|
|
},
|
|
"client_id": { "type": "string", "title": "Client Id" },
|
|
"redirect_uris": {
|
|
"items": { "type": "string" },
|
|
"type": "array",
|
|
"title": "Redirect Uris"
|
|
},
|
|
"grant_types": {
|
|
"items": { "type": "string" },
|
|
"type": "array",
|
|
"title": "Grant Types"
|
|
},
|
|
"scopes": {
|
|
"items": { "$ref": "#/components/schemas/APIKeyPermission" },
|
|
"type": "array",
|
|
"title": "Scopes"
|
|
},
|
|
"owner_id": { "type": "string", "title": "Owner Id" },
|
|
"is_active": { "type": "boolean", "title": "Is Active" },
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "Created At"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "Updated At"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"id",
|
|
"name",
|
|
"client_id",
|
|
"redirect_uris",
|
|
"grant_types",
|
|
"scopes",
|
|
"owner_id",
|
|
"is_active",
|
|
"created_at",
|
|
"updated_at"
|
|
],
|
|
"title": "OAuthApplicationInfo",
|
|
"description": "OAuth application information (without client secret hash)"
|
|
},
|
|
"OAuthApplicationPublicInfo": {
|
|
"properties": {
|
|
"name": { "type": "string", "title": "Name" },
|
|
"description": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Description"
|
|
},
|
|
"logo_url": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Logo Url"
|
|
},
|
|
"scopes": {
|
|
"items": { "type": "string" },
|
|
"type": "array",
|
|
"title": "Scopes"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["name", "scopes"],
|
|
"title": "OAuthApplicationPublicInfo",
|
|
"description": "Public information about an OAuth application (for consent screen)"
|
|
},
|
|
"OnboardingStatusResponse": {
|
|
"properties": {
|
|
"is_onboarding_enabled": {
|
|
"type": "boolean",
|
|
"title": "Is Onboarding Enabled"
|
|
},
|
|
"is_chat_enabled": { "type": "boolean", "title": "Is Chat Enabled" }
|
|
},
|
|
"type": "object",
|
|
"required": ["is_onboarding_enabled", "is_chat_enabled"],
|
|
"title": "OnboardingStatusResponse",
|
|
"description": "Response for onboarding status check."
|
|
},
|
|
"OnboardingStep": {
|
|
"type": "string",
|
|
"enum": [
|
|
"WELCOME",
|
|
"USAGE_REASON",
|
|
"INTEGRATIONS",
|
|
"AGENT_CHOICE",
|
|
"AGENT_NEW_RUN",
|
|
"AGENT_INPUT",
|
|
"CONGRATS",
|
|
"VISIT_COPILOT",
|
|
"GET_RESULTS",
|
|
"MARKETPLACE_VISIT",
|
|
"MARKETPLACE_ADD_AGENT",
|
|
"MARKETPLACE_RUN_AGENT",
|
|
"BUILDER_SAVE_AGENT",
|
|
"RE_RUN_AGENT",
|
|
"SCHEDULE_AGENT",
|
|
"RUN_AGENTS",
|
|
"RUN_3_DAYS",
|
|
"TRIGGER_WEBHOOK",
|
|
"RUN_14_DAYS",
|
|
"RUN_AGENTS_100",
|
|
"BUILDER_OPEN",
|
|
"BUILDER_RUN_AGENT"
|
|
],
|
|
"title": "OnboardingStep"
|
|
},
|
|
"Pagination": {
|
|
"properties": {
|
|
"total_items": {
|
|
"type": "integer",
|
|
"title": "Total Items",
|
|
"description": "Total number of items.",
|
|
"examples": [42]
|
|
},
|
|
"total_pages": {
|
|
"type": "integer",
|
|
"title": "Total Pages",
|
|
"description": "Total number of pages.",
|
|
"examples": [2]
|
|
},
|
|
"current_page": {
|
|
"type": "integer",
|
|
"title": "Current Page",
|
|
"description": "Current_page page number.",
|
|
"examples": [1]
|
|
},
|
|
"page_size": {
|
|
"type": "integer",
|
|
"title": "Page Size",
|
|
"description": "Number of items per page.",
|
|
"examples": [25]
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["total_items", "total_pages", "current_page", "page_size"],
|
|
"title": "Pagination"
|
|
},
|
|
"PendingHumanReviewModel": {
|
|
"properties": {
|
|
"node_exec_id": {
|
|
"type": "string",
|
|
"title": "Node Exec Id",
|
|
"description": "Node execution ID (primary key)"
|
|
},
|
|
"node_id": {
|
|
"type": "string",
|
|
"title": "Node Id",
|
|
"description": "Node definition ID (for grouping)",
|
|
"default": ""
|
|
},
|
|
"user_id": {
|
|
"type": "string",
|
|
"title": "User Id",
|
|
"description": "User ID associated with the review"
|
|
},
|
|
"graph_exec_id": {
|
|
"type": "string",
|
|
"title": "Graph Exec Id",
|
|
"description": "Graph execution ID"
|
|
},
|
|
"graph_id": {
|
|
"type": "string",
|
|
"title": "Graph Id",
|
|
"description": "Graph ID"
|
|
},
|
|
"graph_version": {
|
|
"type": "integer",
|
|
"title": "Graph Version",
|
|
"description": "Graph version"
|
|
},
|
|
"payload": {
|
|
"anyOf": [
|
|
{ "additionalProperties": true, "type": "object" },
|
|
{ "items": {}, "type": "array" },
|
|
{ "type": "string" },
|
|
{ "type": "integer" },
|
|
{ "type": "number" },
|
|
{ "type": "boolean" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Payload",
|
|
"description": "The actual data payload awaiting review"
|
|
},
|
|
"instructions": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Instructions",
|
|
"description": "Instructions or message for the reviewer"
|
|
},
|
|
"editable": {
|
|
"type": "boolean",
|
|
"title": "Editable",
|
|
"description": "Whether the reviewer can edit the data"
|
|
},
|
|
"status": {
|
|
"$ref": "#/components/schemas/ReviewStatus",
|
|
"description": "Review status"
|
|
},
|
|
"review_message": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Review Message",
|
|
"description": "Optional message from the reviewer"
|
|
},
|
|
"was_edited": {
|
|
"anyOf": [{ "type": "boolean" }, { "type": "null" }],
|
|
"title": "Was Edited",
|
|
"description": "Whether the data was modified during review"
|
|
},
|
|
"processed": {
|
|
"type": "boolean",
|
|
"title": "Processed",
|
|
"description": "Whether the review result has been processed by the execution engine",
|
|
"default": false
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "Created At",
|
|
"description": "When the review was created"
|
|
},
|
|
"updated_at": {
|
|
"anyOf": [
|
|
{ "type": "string", "format": "date-time" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Updated At",
|
|
"description": "When the review was last updated"
|
|
},
|
|
"reviewed_at": {
|
|
"anyOf": [
|
|
{ "type": "string", "format": "date-time" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Reviewed At",
|
|
"description": "When the review was completed"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"node_exec_id",
|
|
"user_id",
|
|
"graph_exec_id",
|
|
"graph_id",
|
|
"graph_version",
|
|
"payload",
|
|
"editable",
|
|
"status",
|
|
"created_at"
|
|
],
|
|
"title": "PendingHumanReviewModel",
|
|
"description": "Response model for pending human review data.\n\nRepresents a human review request that is awaiting user action.\nContains all necessary information for a user to review and approve\nor reject data from a Human-in-the-Loop block execution.\n\nAttributes:\n id: Unique identifier for the review record\n user_id: ID of the user who must perform the review\n node_exec_id: ID of the node execution that created this review\n node_id: ID of the node definition (for grouping reviews from same node)\n graph_exec_id: ID of the graph execution containing the node\n graph_id: ID of the graph template being executed\n graph_version: Version number of the graph template\n payload: The actual data payload awaiting review\n instructions: Instructions or message for the reviewer\n editable: Whether the reviewer can edit the data\n status: Current review status (WAITING, APPROVED, or REJECTED)\n review_message: Optional message from the reviewer\n created_at: Timestamp when review was created\n updated_at: Timestamp when review was last modified\n reviewed_at: Timestamp when review was completed (if applicable)"
|
|
},
|
|
"PostmarkBounceEnum": {
|
|
"type": "integer",
|
|
"enum": [
|
|
1, 2, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384,
|
|
100000, 100001, 100002, 100003, 100006, 100007, 100008, 100009, 100010
|
|
],
|
|
"title": "PostmarkBounceEnum"
|
|
},
|
|
"PostmarkBounceWebhook": {
|
|
"properties": {
|
|
"RecordType": {
|
|
"type": "string",
|
|
"const": "Bounce",
|
|
"title": "Recordtype",
|
|
"default": "Bounce"
|
|
},
|
|
"ID": { "type": "integer", "title": "Id" },
|
|
"Type": { "type": "string", "title": "Type" },
|
|
"TypeCode": { "$ref": "#/components/schemas/PostmarkBounceEnum" },
|
|
"Tag": { "type": "string", "title": "Tag" },
|
|
"MessageID": { "type": "string", "title": "Messageid" },
|
|
"Details": { "type": "string", "title": "Details" },
|
|
"Email": { "type": "string", "title": "Email" },
|
|
"From": { "type": "string", "title": "From" },
|
|
"BouncedAt": { "type": "string", "title": "Bouncedat" },
|
|
"Inactive": { "type": "boolean", "title": "Inactive" },
|
|
"DumpAvailable": { "type": "boolean", "title": "Dumpavailable" },
|
|
"CanActivate": { "type": "boolean", "title": "Canactivate" },
|
|
"Subject": { "type": "string", "title": "Subject" },
|
|
"ServerID": { "type": "integer", "title": "Serverid" },
|
|
"MessageStream": { "type": "string", "title": "Messagestream" },
|
|
"Content": { "type": "string", "title": "Content" },
|
|
"Name": { "type": "string", "title": "Name" },
|
|
"Description": { "type": "string", "title": "Description" },
|
|
"Metadata": {
|
|
"additionalProperties": { "type": "string" },
|
|
"type": "object",
|
|
"title": "Metadata"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"ID",
|
|
"Type",
|
|
"TypeCode",
|
|
"Tag",
|
|
"MessageID",
|
|
"Details",
|
|
"Email",
|
|
"From",
|
|
"BouncedAt",
|
|
"Inactive",
|
|
"DumpAvailable",
|
|
"CanActivate",
|
|
"Subject",
|
|
"ServerID",
|
|
"MessageStream",
|
|
"Content",
|
|
"Name",
|
|
"Description",
|
|
"Metadata"
|
|
],
|
|
"title": "PostmarkBounceWebhook"
|
|
},
|
|
"PostmarkClickWebhook": {
|
|
"properties": {
|
|
"RecordType": {
|
|
"type": "string",
|
|
"const": "Click",
|
|
"title": "Recordtype",
|
|
"default": "Click"
|
|
},
|
|
"MessageStream": { "type": "string", "title": "Messagestream" },
|
|
"Metadata": {
|
|
"additionalProperties": { "type": "string" },
|
|
"type": "object",
|
|
"title": "Metadata"
|
|
},
|
|
"Recipient": { "type": "string", "title": "Recipient" },
|
|
"MessageID": { "type": "string", "title": "Messageid" },
|
|
"ReceivedAt": { "type": "string", "title": "Receivedat" },
|
|
"Platform": { "type": "string", "title": "Platform" },
|
|
"ClickLocation": { "type": "string", "title": "Clicklocation" },
|
|
"OriginalLink": { "type": "string", "title": "Originallink" },
|
|
"Tag": { "type": "string", "title": "Tag" },
|
|
"UserAgent": { "type": "string", "title": "Useragent" },
|
|
"OS": {
|
|
"additionalProperties": { "type": "string" },
|
|
"type": "object",
|
|
"title": "Os"
|
|
},
|
|
"Client": {
|
|
"additionalProperties": { "type": "string" },
|
|
"type": "object",
|
|
"title": "Client"
|
|
},
|
|
"Geo": {
|
|
"additionalProperties": { "type": "string" },
|
|
"type": "object",
|
|
"title": "Geo"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"MessageStream",
|
|
"Metadata",
|
|
"Recipient",
|
|
"MessageID",
|
|
"ReceivedAt",
|
|
"Platform",
|
|
"ClickLocation",
|
|
"OriginalLink",
|
|
"Tag",
|
|
"UserAgent",
|
|
"OS",
|
|
"Client",
|
|
"Geo"
|
|
],
|
|
"title": "PostmarkClickWebhook"
|
|
},
|
|
"PostmarkDeliveryWebhook": {
|
|
"properties": {
|
|
"RecordType": {
|
|
"type": "string",
|
|
"const": "Delivery",
|
|
"title": "Recordtype",
|
|
"default": "Delivery"
|
|
},
|
|
"ServerID": { "type": "integer", "title": "Serverid" },
|
|
"MessageStream": { "type": "string", "title": "Messagestream" },
|
|
"MessageID": { "type": "string", "title": "Messageid" },
|
|
"Recipient": { "type": "string", "title": "Recipient" },
|
|
"Tag": { "type": "string", "title": "Tag" },
|
|
"DeliveredAt": { "type": "string", "title": "Deliveredat" },
|
|
"Details": { "type": "string", "title": "Details" },
|
|
"Metadata": {
|
|
"additionalProperties": { "type": "string" },
|
|
"type": "object",
|
|
"title": "Metadata"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"ServerID",
|
|
"MessageStream",
|
|
"MessageID",
|
|
"Recipient",
|
|
"Tag",
|
|
"DeliveredAt",
|
|
"Details",
|
|
"Metadata"
|
|
],
|
|
"title": "PostmarkDeliveryWebhook"
|
|
},
|
|
"PostmarkOpenWebhook": {
|
|
"properties": {
|
|
"RecordType": {
|
|
"type": "string",
|
|
"const": "Open",
|
|
"title": "Recordtype",
|
|
"default": "Open"
|
|
},
|
|
"MessageStream": { "type": "string", "title": "Messagestream" },
|
|
"Metadata": {
|
|
"additionalProperties": { "type": "string" },
|
|
"type": "object",
|
|
"title": "Metadata"
|
|
},
|
|
"FirstOpen": { "type": "boolean", "title": "Firstopen" },
|
|
"Recipient": { "type": "string", "title": "Recipient" },
|
|
"MessageID": { "type": "string", "title": "Messageid" },
|
|
"ReceivedAt": { "type": "string", "title": "Receivedat" },
|
|
"Platform": { "type": "string", "title": "Platform" },
|
|
"ReadSeconds": { "type": "integer", "title": "Readseconds" },
|
|
"Tag": { "type": "string", "title": "Tag" },
|
|
"UserAgent": { "type": "string", "title": "Useragent" },
|
|
"OS": {
|
|
"additionalProperties": { "type": "string" },
|
|
"type": "object",
|
|
"title": "Os"
|
|
},
|
|
"Client": {
|
|
"additionalProperties": { "type": "string" },
|
|
"type": "object",
|
|
"title": "Client"
|
|
},
|
|
"Geo": {
|
|
"additionalProperties": { "type": "string" },
|
|
"type": "object",
|
|
"title": "Geo"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"MessageStream",
|
|
"Metadata",
|
|
"FirstOpen",
|
|
"Recipient",
|
|
"MessageID",
|
|
"ReceivedAt",
|
|
"Platform",
|
|
"ReadSeconds",
|
|
"Tag",
|
|
"UserAgent",
|
|
"OS",
|
|
"Client",
|
|
"Geo"
|
|
],
|
|
"title": "PostmarkOpenWebhook"
|
|
},
|
|
"PostmarkSpamComplaintWebhook": {
|
|
"properties": {
|
|
"RecordType": {
|
|
"type": "string",
|
|
"const": "SpamComplaint",
|
|
"title": "Recordtype",
|
|
"default": "SpamComplaint"
|
|
},
|
|
"ID": { "type": "integer", "title": "Id" },
|
|
"Type": { "type": "string", "title": "Type" },
|
|
"TypeCode": { "type": "integer", "title": "Typecode" },
|
|
"Tag": { "type": "string", "title": "Tag" },
|
|
"MessageID": { "type": "string", "title": "Messageid" },
|
|
"Details": { "type": "string", "title": "Details" },
|
|
"Email": { "type": "string", "title": "Email" },
|
|
"From": { "type": "string", "title": "From" },
|
|
"BouncedAt": { "type": "string", "title": "Bouncedat" },
|
|
"Inactive": { "type": "boolean", "title": "Inactive" },
|
|
"DumpAvailable": { "type": "boolean", "title": "Dumpavailable" },
|
|
"CanActivate": { "type": "boolean", "title": "Canactivate" },
|
|
"Subject": { "type": "string", "title": "Subject" },
|
|
"ServerID": { "type": "integer", "title": "Serverid" },
|
|
"MessageStream": { "type": "string", "title": "Messagestream" },
|
|
"Content": { "type": "string", "title": "Content" },
|
|
"Name": { "type": "string", "title": "Name" },
|
|
"Description": { "type": "string", "title": "Description" },
|
|
"Metadata": {
|
|
"additionalProperties": { "type": "string" },
|
|
"type": "object",
|
|
"title": "Metadata"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"ID",
|
|
"Type",
|
|
"TypeCode",
|
|
"Tag",
|
|
"MessageID",
|
|
"Details",
|
|
"Email",
|
|
"From",
|
|
"BouncedAt",
|
|
"Inactive",
|
|
"DumpAvailable",
|
|
"CanActivate",
|
|
"Subject",
|
|
"ServerID",
|
|
"MessageStream",
|
|
"Content",
|
|
"Name",
|
|
"Description",
|
|
"Metadata"
|
|
],
|
|
"title": "PostmarkSpamComplaintWebhook"
|
|
},
|
|
"PostmarkSubscriptionChangeWebhook": {
|
|
"properties": {
|
|
"RecordType": {
|
|
"type": "string",
|
|
"const": "SubscriptionChange",
|
|
"title": "Recordtype",
|
|
"default": "SubscriptionChange"
|
|
},
|
|
"MessageID": { "type": "string", "title": "Messageid" },
|
|
"ServerID": { "type": "integer", "title": "Serverid" },
|
|
"MessageStream": { "type": "string", "title": "Messagestream" },
|
|
"ChangedAt": { "type": "string", "title": "Changedat" },
|
|
"Recipient": { "type": "string", "title": "Recipient" },
|
|
"Origin": { "type": "string", "title": "Origin" },
|
|
"SuppressSending": { "type": "boolean", "title": "Suppresssending" },
|
|
"SuppressionReason": {
|
|
"type": "string",
|
|
"title": "Suppressionreason"
|
|
},
|
|
"Tag": { "type": "string", "title": "Tag" },
|
|
"Metadata": {
|
|
"additionalProperties": { "type": "string" },
|
|
"type": "object",
|
|
"title": "Metadata"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"MessageID",
|
|
"ServerID",
|
|
"MessageStream",
|
|
"ChangedAt",
|
|
"Recipient",
|
|
"Origin",
|
|
"SuppressSending",
|
|
"SuppressionReason",
|
|
"Tag",
|
|
"Metadata"
|
|
],
|
|
"title": "PostmarkSubscriptionChangeWebhook"
|
|
},
|
|
"Profile": {
|
|
"properties": {
|
|
"name": { "type": "string", "title": "Name" },
|
|
"username": { "type": "string", "title": "Username" },
|
|
"description": { "type": "string", "title": "Description" },
|
|
"links": {
|
|
"items": { "type": "string" },
|
|
"type": "array",
|
|
"title": "Links"
|
|
},
|
|
"avatar_url": { "type": "string", "title": "Avatar Url" },
|
|
"is_featured": {
|
|
"type": "boolean",
|
|
"title": "Is Featured",
|
|
"default": false
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["name", "username", "description", "links", "avatar_url"],
|
|
"title": "Profile"
|
|
},
|
|
"ProfileDetails": {
|
|
"properties": {
|
|
"name": { "type": "string", "title": "Name" },
|
|
"username": { "type": "string", "title": "Username" },
|
|
"description": { "type": "string", "title": "Description" },
|
|
"links": {
|
|
"items": { "type": "string" },
|
|
"type": "array",
|
|
"title": "Links"
|
|
},
|
|
"avatar_url": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Avatar Url"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["name", "username", "description", "links"],
|
|
"title": "ProfileDetails"
|
|
},
|
|
"Provider": {
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"title": "Name",
|
|
"description": "Provider name for integrations. Can be any string value, including custom provider names."
|
|
},
|
|
"description": { "type": "string", "title": "Description" },
|
|
"integration_count": {
|
|
"type": "integer",
|
|
"title": "Integration Count"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["name", "description", "integration_count"],
|
|
"title": "Provider"
|
|
},
|
|
"ProviderConstants": {
|
|
"properties": {
|
|
"PROVIDER_NAMES": {
|
|
"additionalProperties": { "type": "string" },
|
|
"type": "object",
|
|
"title": "Provider Names",
|
|
"description": "All available provider names as a constant mapping",
|
|
"examples": [
|
|
{
|
|
"ANTHROPIC": "anthropic",
|
|
"EXA": "exa",
|
|
"EXAMPLE_SERVICE": "example-service",
|
|
"GEM": "gem",
|
|
"OPENAI": "openai"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"type": "object",
|
|
"title": "ProviderConstants",
|
|
"description": "Model that exposes all provider names as a constant in the OpenAPI schema.\nThis is designed to be converted by Orval into a TypeScript constant."
|
|
},
|
|
"ProviderEnumResponse": {
|
|
"properties": {
|
|
"provider": {
|
|
"type": "string",
|
|
"title": "Provider",
|
|
"description": "A provider name from the complete list of providers"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["provider"],
|
|
"title": "ProviderEnumResponse",
|
|
"description": "Response containing a provider from the enum."
|
|
},
|
|
"ProviderNamesResponse": {
|
|
"properties": {
|
|
"providers": {
|
|
"items": { "type": "string" },
|
|
"type": "array",
|
|
"title": "Providers",
|
|
"description": "List of all available provider names"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"title": "ProviderNamesResponse",
|
|
"description": "Response containing list of all provider names."
|
|
},
|
|
"ProviderResponse": {
|
|
"properties": {
|
|
"providers": {
|
|
"items": { "$ref": "#/components/schemas/Provider" },
|
|
"type": "array",
|
|
"title": "Providers"
|
|
},
|
|
"pagination": { "$ref": "#/components/schemas/Pagination" }
|
|
},
|
|
"type": "object",
|
|
"required": ["providers", "pagination"],
|
|
"title": "ProviderResponse"
|
|
},
|
|
"RefundRequest": {
|
|
"properties": {
|
|
"id": { "type": "string", "title": "Id" },
|
|
"user_id": { "type": "string", "title": "User Id" },
|
|
"transaction_key": { "type": "string", "title": "Transaction Key" },
|
|
"amount": { "type": "integer", "title": "Amount" },
|
|
"reason": { "type": "string", "title": "Reason" },
|
|
"result": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Result"
|
|
},
|
|
"status": { "type": "string", "title": "Status" },
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "Created At"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "Updated At"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"id",
|
|
"user_id",
|
|
"transaction_key",
|
|
"amount",
|
|
"reason",
|
|
"status",
|
|
"created_at",
|
|
"updated_at"
|
|
],
|
|
"title": "RefundRequest"
|
|
},
|
|
"RequestTopUp": {
|
|
"properties": {
|
|
"credit_amount": { "type": "integer", "title": "Credit Amount" }
|
|
},
|
|
"type": "object",
|
|
"required": ["credit_amount"],
|
|
"title": "RequestTopUp"
|
|
},
|
|
"ReviewItem": {
|
|
"properties": {
|
|
"node_exec_id": {
|
|
"type": "string",
|
|
"title": "Node Exec Id",
|
|
"description": "Node execution ID to review"
|
|
},
|
|
"approved": {
|
|
"type": "boolean",
|
|
"title": "Approved",
|
|
"description": "Whether this review is approved (True) or rejected (False)"
|
|
},
|
|
"message": {
|
|
"anyOf": [
|
|
{ "type": "string", "maxLength": 2000 },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Message",
|
|
"description": "Optional review message"
|
|
},
|
|
"reviewed_data": {
|
|
"anyOf": [
|
|
{ "additionalProperties": true, "type": "object" },
|
|
{ "items": {}, "type": "array" },
|
|
{ "type": "string" },
|
|
{ "type": "integer" },
|
|
{ "type": "number" },
|
|
{ "type": "boolean" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Reviewed Data",
|
|
"description": "Optional edited data (ignored if approved=False)"
|
|
},
|
|
"auto_approve_future": {
|
|
"type": "boolean",
|
|
"title": "Auto Approve Future",
|
|
"description": "If true and this review is approved, future executions of this same block (node) will be automatically approved. This only affects approved reviews.",
|
|
"default": false
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["node_exec_id", "approved"],
|
|
"title": "ReviewItem",
|
|
"description": "Single review item for processing."
|
|
},
|
|
"ReviewRequest": {
|
|
"properties": {
|
|
"reviews": {
|
|
"items": { "$ref": "#/components/schemas/ReviewItem" },
|
|
"type": "array",
|
|
"title": "Reviews",
|
|
"description": "All reviews with their approval status, data, and messages"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["reviews"],
|
|
"title": "ReviewRequest",
|
|
"description": "Request model for processing ALL pending reviews for an execution.\n\nThis request must include ALL pending reviews for a graph execution.\nEach review will be either approved (with optional data modifications)\nor rejected (data ignored). The execution will resume only after ALL reviews are processed.\n\nEach review item can individually specify whether to auto-approve future executions\nof the same block via the `auto_approve_future` field on ReviewItem."
|
|
},
|
|
"ReviewResponse": {
|
|
"properties": {
|
|
"approved_count": {
|
|
"type": "integer",
|
|
"title": "Approved Count",
|
|
"description": "Number of reviews successfully approved"
|
|
},
|
|
"rejected_count": {
|
|
"type": "integer",
|
|
"title": "Rejected Count",
|
|
"description": "Number of reviews successfully rejected"
|
|
},
|
|
"failed_count": {
|
|
"type": "integer",
|
|
"title": "Failed Count",
|
|
"description": "Number of reviews that failed processing"
|
|
},
|
|
"error": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Error",
|
|
"description": "Error message if operation failed"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["approved_count", "rejected_count", "failed_count"],
|
|
"title": "ReviewResponse",
|
|
"description": "Response from review endpoint."
|
|
},
|
|
"ReviewStatus": {
|
|
"type": "string",
|
|
"enum": ["WAITING", "APPROVED", "REJECTED"],
|
|
"title": "ReviewStatus"
|
|
},
|
|
"ReviewSubmissionRequest": {
|
|
"properties": {
|
|
"store_listing_version_id": {
|
|
"type": "string",
|
|
"title": "Store Listing Version Id"
|
|
},
|
|
"is_approved": { "type": "boolean", "title": "Is Approved" },
|
|
"comments": { "type": "string", "title": "Comments" },
|
|
"internal_comments": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Internal Comments"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["store_listing_version_id", "is_approved", "comments"],
|
|
"title": "ReviewSubmissionRequest"
|
|
},
|
|
"ScheduleCreationRequest": {
|
|
"properties": {
|
|
"graph_version": {
|
|
"anyOf": [{ "type": "integer" }, { "type": "null" }],
|
|
"title": "Graph Version"
|
|
},
|
|
"name": { "type": "string", "title": "Name" },
|
|
"cron": { "type": "string", "title": "Cron" },
|
|
"inputs": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Inputs"
|
|
},
|
|
"credentials": {
|
|
"additionalProperties": {
|
|
"$ref": "#/components/schemas/CredentialsMetaInput"
|
|
},
|
|
"type": "object",
|
|
"title": "Credentials"
|
|
},
|
|
"timezone": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Timezone",
|
|
"description": "User's timezone for scheduling (e.g., 'America/New_York'). If not provided, will use user's saved timezone or UTC."
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["name", "cron", "inputs"],
|
|
"title": "ScheduleCreationRequest"
|
|
},
|
|
"SearchEntry": {
|
|
"properties": {
|
|
"search_query": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Search Query"
|
|
},
|
|
"filter": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string",
|
|
"enum": [
|
|
"blocks",
|
|
"integrations",
|
|
"marketplace_agents",
|
|
"my_agents"
|
|
]
|
|
},
|
|
"type": "array"
|
|
},
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Filter"
|
|
},
|
|
"by_creator": {
|
|
"anyOf": [
|
|
{ "items": { "type": "string" }, "type": "array" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "By Creator"
|
|
},
|
|
"search_id": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Search Id"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"title": "SearchEntry"
|
|
},
|
|
"SearchResponse": {
|
|
"properties": {
|
|
"items": {
|
|
"items": {
|
|
"anyOf": [
|
|
{ "$ref": "#/components/schemas/BlockInfo" },
|
|
{ "$ref": "#/components/schemas/LibraryAgent" },
|
|
{ "$ref": "#/components/schemas/StoreAgent" }
|
|
]
|
|
},
|
|
"type": "array",
|
|
"title": "Items"
|
|
},
|
|
"search_id": { "type": "string", "title": "Search Id" },
|
|
"total_items": {
|
|
"additionalProperties": { "type": "integer" },
|
|
"propertyNames": {
|
|
"enum": [
|
|
"blocks",
|
|
"integrations",
|
|
"marketplace_agents",
|
|
"my_agents"
|
|
]
|
|
},
|
|
"type": "object",
|
|
"title": "Total Items"
|
|
},
|
|
"pagination": { "$ref": "#/components/schemas/Pagination" }
|
|
},
|
|
"type": "object",
|
|
"required": ["items", "search_id", "total_items", "pagination"],
|
|
"title": "SearchResponse"
|
|
},
|
|
"SessionDetailResponse": {
|
|
"properties": {
|
|
"id": { "type": "string", "title": "Id" },
|
|
"created_at": { "type": "string", "title": "Created At" },
|
|
"updated_at": { "type": "string", "title": "Updated At" },
|
|
"user_id": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "User Id"
|
|
},
|
|
"messages": {
|
|
"items": { "additionalProperties": true, "type": "object" },
|
|
"type": "array",
|
|
"title": "Messages"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["id", "created_at", "updated_at", "user_id", "messages"],
|
|
"title": "SessionDetailResponse",
|
|
"description": "Response model providing complete details for a chat session, including messages."
|
|
},
|
|
"SessionSummaryResponse": {
|
|
"properties": {
|
|
"id": { "type": "string", "title": "Id" },
|
|
"created_at": { "type": "string", "title": "Created At" },
|
|
"updated_at": { "type": "string", "title": "Updated At" },
|
|
"title": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Title"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["id", "created_at", "updated_at"],
|
|
"title": "SessionSummaryResponse",
|
|
"description": "Response model for a session summary (without messages)."
|
|
},
|
|
"SetGraphActiveVersion": {
|
|
"properties": {
|
|
"active_graph_version": {
|
|
"type": "integer",
|
|
"title": "Active Graph Version"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["active_graph_version"],
|
|
"title": "SetGraphActiveVersion"
|
|
},
|
|
"ShareRequest": {
|
|
"properties": {},
|
|
"type": "object",
|
|
"title": "ShareRequest",
|
|
"description": "Optional request body for share endpoint."
|
|
},
|
|
"ShareResponse": {
|
|
"properties": {
|
|
"share_url": { "type": "string", "title": "Share Url" },
|
|
"share_token": { "type": "string", "title": "Share Token" }
|
|
},
|
|
"type": "object",
|
|
"required": ["share_url", "share_token"],
|
|
"title": "ShareResponse",
|
|
"description": "Response from share endpoints."
|
|
},
|
|
"SharedExecutionResponse": {
|
|
"properties": {
|
|
"id": { "type": "string", "title": "Id" },
|
|
"graph_name": { "type": "string", "title": "Graph Name" },
|
|
"graph_description": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Graph Description"
|
|
},
|
|
"status": { "$ref": "#/components/schemas/AgentExecutionStatus" },
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "Created At"
|
|
},
|
|
"outputs": {
|
|
"additionalProperties": { "items": {}, "type": "array" },
|
|
"type": "object",
|
|
"title": "Outputs"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"id",
|
|
"graph_name",
|
|
"graph_description",
|
|
"status",
|
|
"created_at",
|
|
"outputs"
|
|
],
|
|
"title": "SharedExecutionResponse",
|
|
"description": "Public-safe response for shared executions"
|
|
},
|
|
"Stats": {
|
|
"properties": {
|
|
"cost": {
|
|
"type": "integer",
|
|
"title": "Cost",
|
|
"description": "Execution cost (cents)",
|
|
"default": 0
|
|
},
|
|
"duration": {
|
|
"type": "number",
|
|
"title": "Duration",
|
|
"description": "Seconds from start to end of run",
|
|
"default": 0
|
|
},
|
|
"duration_cpu_only": {
|
|
"type": "number",
|
|
"title": "Duration Cpu Only",
|
|
"description": "CPU sec of duration",
|
|
"default": 0
|
|
},
|
|
"node_exec_time": {
|
|
"type": "number",
|
|
"title": "Node Exec Time",
|
|
"description": "Seconds of total node runtime",
|
|
"default": 0
|
|
},
|
|
"node_exec_time_cpu_only": {
|
|
"type": "number",
|
|
"title": "Node Exec Time Cpu Only",
|
|
"description": "CPU sec of node_exec_time",
|
|
"default": 0
|
|
},
|
|
"node_exec_count": {
|
|
"type": "integer",
|
|
"title": "Node Exec Count",
|
|
"description": "Number of node executions",
|
|
"default": 0
|
|
},
|
|
"node_error_count": {
|
|
"type": "integer",
|
|
"title": "Node Error Count",
|
|
"description": "Number of node errors",
|
|
"default": 0
|
|
},
|
|
"error": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Error",
|
|
"description": "Error message if any"
|
|
},
|
|
"activity_status": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Activity Status",
|
|
"description": "AI-generated summary of what the agent did"
|
|
},
|
|
"correctness_score": {
|
|
"anyOf": [{ "type": "number" }, { "type": "null" }],
|
|
"title": "Correctness Score",
|
|
"description": "AI-generated score (0.0-1.0) indicating how well the execution achieved its intended purpose"
|
|
}
|
|
},
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Stats"
|
|
},
|
|
"StoreAgent": {
|
|
"properties": {
|
|
"slug": { "type": "string", "title": "Slug" },
|
|
"agent_name": { "type": "string", "title": "Agent Name" },
|
|
"agent_image": { "type": "string", "title": "Agent Image" },
|
|
"creator": { "type": "string", "title": "Creator" },
|
|
"creator_avatar": { "type": "string", "title": "Creator Avatar" },
|
|
"sub_heading": { "type": "string", "title": "Sub Heading" },
|
|
"description": { "type": "string", "title": "Description" },
|
|
"runs": { "type": "integer", "title": "Runs" },
|
|
"rating": { "type": "number", "title": "Rating" }
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"slug",
|
|
"agent_name",
|
|
"agent_image",
|
|
"creator",
|
|
"creator_avatar",
|
|
"sub_heading",
|
|
"description",
|
|
"runs",
|
|
"rating"
|
|
],
|
|
"title": "StoreAgent"
|
|
},
|
|
"StoreAgentDetails": {
|
|
"properties": {
|
|
"store_listing_version_id": {
|
|
"type": "string",
|
|
"title": "Store Listing Version Id"
|
|
},
|
|
"slug": { "type": "string", "title": "Slug" },
|
|
"agent_name": { "type": "string", "title": "Agent Name" },
|
|
"agent_video": { "type": "string", "title": "Agent Video" },
|
|
"agent_output_demo": {
|
|
"type": "string",
|
|
"title": "Agent Output Demo"
|
|
},
|
|
"agent_image": {
|
|
"items": { "type": "string" },
|
|
"type": "array",
|
|
"title": "Agent Image"
|
|
},
|
|
"creator": { "type": "string", "title": "Creator" },
|
|
"creator_avatar": { "type": "string", "title": "Creator Avatar" },
|
|
"sub_heading": { "type": "string", "title": "Sub Heading" },
|
|
"description": { "type": "string", "title": "Description" },
|
|
"instructions": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Instructions"
|
|
},
|
|
"categories": {
|
|
"items": { "type": "string" },
|
|
"type": "array",
|
|
"title": "Categories"
|
|
},
|
|
"runs": { "type": "integer", "title": "Runs" },
|
|
"rating": { "type": "number", "title": "Rating" },
|
|
"versions": {
|
|
"items": { "type": "string" },
|
|
"type": "array",
|
|
"title": "Versions"
|
|
},
|
|
"agentGraphVersions": {
|
|
"items": { "type": "string" },
|
|
"type": "array",
|
|
"title": "Agentgraphversions"
|
|
},
|
|
"agentGraphId": { "type": "string", "title": "Agentgraphid" },
|
|
"last_updated": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "Last Updated"
|
|
},
|
|
"recommended_schedule_cron": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Recommended Schedule Cron"
|
|
},
|
|
"active_version_id": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Active Version Id"
|
|
},
|
|
"has_approved_version": {
|
|
"type": "boolean",
|
|
"title": "Has Approved Version",
|
|
"default": false
|
|
},
|
|
"changelog": {
|
|
"anyOf": [
|
|
{
|
|
"items": { "$ref": "#/components/schemas/ChangelogEntry" },
|
|
"type": "array"
|
|
},
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Changelog"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"store_listing_version_id",
|
|
"slug",
|
|
"agent_name",
|
|
"agent_video",
|
|
"agent_output_demo",
|
|
"agent_image",
|
|
"creator",
|
|
"creator_avatar",
|
|
"sub_heading",
|
|
"description",
|
|
"categories",
|
|
"runs",
|
|
"rating",
|
|
"versions",
|
|
"agentGraphVersions",
|
|
"agentGraphId",
|
|
"last_updated"
|
|
],
|
|
"title": "StoreAgentDetails"
|
|
},
|
|
"StoreAgentsResponse": {
|
|
"properties": {
|
|
"agents": {
|
|
"items": { "$ref": "#/components/schemas/StoreAgent" },
|
|
"type": "array",
|
|
"title": "Agents"
|
|
},
|
|
"pagination": { "$ref": "#/components/schemas/Pagination" }
|
|
},
|
|
"type": "object",
|
|
"required": ["agents", "pagination"],
|
|
"title": "StoreAgentsResponse"
|
|
},
|
|
"StoreListingWithVersions": {
|
|
"properties": {
|
|
"listing_id": { "type": "string", "title": "Listing Id" },
|
|
"slug": { "type": "string", "title": "Slug" },
|
|
"agent_id": { "type": "string", "title": "Agent Id" },
|
|
"agent_version": { "type": "integer", "title": "Agent Version" },
|
|
"active_version_id": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Active Version Id"
|
|
},
|
|
"has_approved_version": {
|
|
"type": "boolean",
|
|
"title": "Has Approved Version",
|
|
"default": false
|
|
},
|
|
"creator_email": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Creator Email"
|
|
},
|
|
"latest_version": {
|
|
"anyOf": [
|
|
{ "$ref": "#/components/schemas/StoreSubmission" },
|
|
{ "type": "null" }
|
|
]
|
|
},
|
|
"versions": {
|
|
"items": { "$ref": "#/components/schemas/StoreSubmission" },
|
|
"type": "array",
|
|
"title": "Versions",
|
|
"default": []
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["listing_id", "slug", "agent_id", "agent_version"],
|
|
"title": "StoreListingWithVersions",
|
|
"description": "A store listing with its version history"
|
|
},
|
|
"StoreListingsWithVersionsResponse": {
|
|
"properties": {
|
|
"listings": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/StoreListingWithVersions"
|
|
},
|
|
"type": "array",
|
|
"title": "Listings"
|
|
},
|
|
"pagination": { "$ref": "#/components/schemas/Pagination" }
|
|
},
|
|
"type": "object",
|
|
"required": ["listings", "pagination"],
|
|
"title": "StoreListingsWithVersionsResponse",
|
|
"description": "Response model for listings with version history"
|
|
},
|
|
"StoreReview": {
|
|
"properties": {
|
|
"score": { "type": "integer", "title": "Score" },
|
|
"comments": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Comments"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["score"],
|
|
"title": "StoreReview"
|
|
},
|
|
"StoreReviewCreate": {
|
|
"properties": {
|
|
"store_listing_version_id": {
|
|
"type": "string",
|
|
"title": "Store Listing Version Id"
|
|
},
|
|
"score": { "type": "integer", "title": "Score" },
|
|
"comments": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Comments"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["store_listing_version_id", "score"],
|
|
"title": "StoreReviewCreate"
|
|
},
|
|
"StoreSubmission": {
|
|
"properties": {
|
|
"listing_id": { "type": "string", "title": "Listing Id" },
|
|
"agent_id": { "type": "string", "title": "Agent Id" },
|
|
"agent_version": { "type": "integer", "title": "Agent Version" },
|
|
"name": { "type": "string", "title": "Name" },
|
|
"sub_heading": { "type": "string", "title": "Sub Heading" },
|
|
"slug": { "type": "string", "title": "Slug" },
|
|
"description": { "type": "string", "title": "Description" },
|
|
"instructions": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Instructions"
|
|
},
|
|
"image_urls": {
|
|
"items": { "type": "string" },
|
|
"type": "array",
|
|
"title": "Image Urls"
|
|
},
|
|
"date_submitted": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "Date Submitted"
|
|
},
|
|
"status": { "$ref": "#/components/schemas/SubmissionStatus" },
|
|
"runs": { "type": "integer", "title": "Runs" },
|
|
"rating": { "type": "number", "title": "Rating" },
|
|
"store_listing_version_id": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Store Listing Version Id"
|
|
},
|
|
"version": {
|
|
"anyOf": [{ "type": "integer" }, { "type": "null" }],
|
|
"title": "Version"
|
|
},
|
|
"reviewer_id": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Reviewer Id"
|
|
},
|
|
"review_comments": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Review Comments"
|
|
},
|
|
"internal_comments": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Internal Comments"
|
|
},
|
|
"reviewed_at": {
|
|
"anyOf": [
|
|
{ "type": "string", "format": "date-time" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Reviewed At"
|
|
},
|
|
"changes_summary": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Changes Summary"
|
|
},
|
|
"video_url": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Video Url"
|
|
},
|
|
"agent_output_demo_url": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Agent Output Demo Url"
|
|
},
|
|
"categories": {
|
|
"items": { "type": "string" },
|
|
"type": "array",
|
|
"title": "Categories",
|
|
"default": []
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"listing_id",
|
|
"agent_id",
|
|
"agent_version",
|
|
"name",
|
|
"sub_heading",
|
|
"slug",
|
|
"description",
|
|
"image_urls",
|
|
"date_submitted",
|
|
"status",
|
|
"runs",
|
|
"rating"
|
|
],
|
|
"title": "StoreSubmission"
|
|
},
|
|
"StoreSubmissionEditRequest": {
|
|
"properties": {
|
|
"name": { "type": "string", "title": "Name" },
|
|
"sub_heading": { "type": "string", "title": "Sub Heading" },
|
|
"video_url": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Video Url"
|
|
},
|
|
"agent_output_demo_url": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Agent Output Demo Url"
|
|
},
|
|
"image_urls": {
|
|
"items": { "type": "string" },
|
|
"type": "array",
|
|
"title": "Image Urls",
|
|
"default": []
|
|
},
|
|
"description": {
|
|
"type": "string",
|
|
"title": "Description",
|
|
"default": ""
|
|
},
|
|
"instructions": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Instructions"
|
|
},
|
|
"categories": {
|
|
"items": { "type": "string" },
|
|
"type": "array",
|
|
"title": "Categories",
|
|
"default": []
|
|
},
|
|
"changes_summary": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Changes Summary"
|
|
},
|
|
"recommended_schedule_cron": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Recommended Schedule Cron"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["name", "sub_heading"],
|
|
"title": "StoreSubmissionEditRequest"
|
|
},
|
|
"StoreSubmissionRequest": {
|
|
"properties": {
|
|
"agent_id": {
|
|
"type": "string",
|
|
"minLength": 1,
|
|
"title": "Agent Id",
|
|
"description": "Agent ID cannot be empty"
|
|
},
|
|
"agent_version": {
|
|
"type": "integer",
|
|
"exclusiveMinimum": 0.0,
|
|
"title": "Agent Version",
|
|
"description": "Agent version must be greater than 0"
|
|
},
|
|
"slug": { "type": "string", "title": "Slug" },
|
|
"name": { "type": "string", "title": "Name" },
|
|
"sub_heading": { "type": "string", "title": "Sub Heading" },
|
|
"video_url": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Video Url"
|
|
},
|
|
"agent_output_demo_url": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Agent Output Demo Url"
|
|
},
|
|
"image_urls": {
|
|
"items": { "type": "string" },
|
|
"type": "array",
|
|
"title": "Image Urls",
|
|
"default": []
|
|
},
|
|
"description": {
|
|
"type": "string",
|
|
"title": "Description",
|
|
"default": ""
|
|
},
|
|
"instructions": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Instructions"
|
|
},
|
|
"categories": {
|
|
"items": { "type": "string" },
|
|
"type": "array",
|
|
"title": "Categories",
|
|
"default": []
|
|
},
|
|
"changes_summary": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Changes Summary"
|
|
},
|
|
"recommended_schedule_cron": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Recommended Schedule Cron"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"agent_id",
|
|
"agent_version",
|
|
"slug",
|
|
"name",
|
|
"sub_heading"
|
|
],
|
|
"title": "StoreSubmissionRequest"
|
|
},
|
|
"StoreSubmissionsResponse": {
|
|
"properties": {
|
|
"submissions": {
|
|
"items": { "$ref": "#/components/schemas/StoreSubmission" },
|
|
"type": "array",
|
|
"title": "Submissions"
|
|
},
|
|
"pagination": { "$ref": "#/components/schemas/Pagination" }
|
|
},
|
|
"type": "object",
|
|
"required": ["submissions", "pagination"],
|
|
"title": "StoreSubmissionsResponse"
|
|
},
|
|
"StreamChatRequest": {
|
|
"properties": {
|
|
"message": { "type": "string", "title": "Message" },
|
|
"is_user_message": {
|
|
"type": "boolean",
|
|
"title": "Is User Message",
|
|
"default": true
|
|
},
|
|
"context": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": { "type": "string" },
|
|
"type": "object"
|
|
},
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Context"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["message"],
|
|
"title": "StreamChatRequest",
|
|
"description": "Request model for streaming chat with optional context."
|
|
},
|
|
"SubmissionStatus": {
|
|
"type": "string",
|
|
"enum": ["DRAFT", "PENDING", "APPROVED", "REJECTED"],
|
|
"title": "SubmissionStatus"
|
|
},
|
|
"SuggestionsResponse": {
|
|
"properties": {
|
|
"otto_suggestions": {
|
|
"items": { "type": "string" },
|
|
"type": "array",
|
|
"title": "Otto Suggestions"
|
|
},
|
|
"recent_searches": {
|
|
"items": { "$ref": "#/components/schemas/SearchEntry" },
|
|
"type": "array",
|
|
"title": "Recent Searches"
|
|
},
|
|
"providers": {
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Provider name for integrations. Can be any string value, including custom provider names."
|
|
},
|
|
"type": "array",
|
|
"title": "Providers"
|
|
},
|
|
"top_blocks": {
|
|
"items": { "$ref": "#/components/schemas/BlockInfo" },
|
|
"type": "array",
|
|
"title": "Top Blocks"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"otto_suggestions",
|
|
"recent_searches",
|
|
"providers",
|
|
"top_blocks"
|
|
],
|
|
"title": "SuggestionsResponse"
|
|
},
|
|
"TimezoneResponse": {
|
|
"properties": {
|
|
"timezone": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string",
|
|
"enum": [
|
|
"Africa/Abidjan",
|
|
"Africa/Accra",
|
|
"Africa/Addis_Ababa",
|
|
"Africa/Algiers",
|
|
"Africa/Asmara",
|
|
"Africa/Asmera",
|
|
"Africa/Bamako",
|
|
"Africa/Bangui",
|
|
"Africa/Banjul",
|
|
"Africa/Bissau",
|
|
"Africa/Blantyre",
|
|
"Africa/Brazzaville",
|
|
"Africa/Bujumbura",
|
|
"Africa/Cairo",
|
|
"Africa/Casablanca",
|
|
"Africa/Ceuta",
|
|
"Africa/Conakry",
|
|
"Africa/Dakar",
|
|
"Africa/Dar_es_Salaam",
|
|
"Africa/Djibouti",
|
|
"Africa/Douala",
|
|
"Africa/El_Aaiun",
|
|
"Africa/Freetown",
|
|
"Africa/Gaborone",
|
|
"Africa/Harare",
|
|
"Africa/Johannesburg",
|
|
"Africa/Juba",
|
|
"Africa/Kampala",
|
|
"Africa/Khartoum",
|
|
"Africa/Kigali",
|
|
"Africa/Kinshasa",
|
|
"Africa/Lagos",
|
|
"Africa/Libreville",
|
|
"Africa/Lome",
|
|
"Africa/Luanda",
|
|
"Africa/Lubumbashi",
|
|
"Africa/Lusaka",
|
|
"Africa/Malabo",
|
|
"Africa/Maputo",
|
|
"Africa/Maseru",
|
|
"Africa/Mbabane",
|
|
"Africa/Mogadishu",
|
|
"Africa/Monrovia",
|
|
"Africa/Nairobi",
|
|
"Africa/Ndjamena",
|
|
"Africa/Niamey",
|
|
"Africa/Nouakchott",
|
|
"Africa/Ouagadougou",
|
|
"Africa/Porto-Novo",
|
|
"Africa/Sao_Tome",
|
|
"Africa/Timbuktu",
|
|
"Africa/Tripoli",
|
|
"Africa/Tunis",
|
|
"Africa/Windhoek",
|
|
"America/Adak",
|
|
"America/Anchorage",
|
|
"America/Anguilla",
|
|
"America/Antigua",
|
|
"America/Araguaina",
|
|
"America/Argentina/Buenos_Aires",
|
|
"America/Argentina/Catamarca",
|
|
"America/Argentina/ComodRivadavia",
|
|
"America/Argentina/Cordoba",
|
|
"America/Argentina/Jujuy",
|
|
"America/Argentina/La_Rioja",
|
|
"America/Argentina/Mendoza",
|
|
"America/Argentina/Rio_Gallegos",
|
|
"America/Argentina/Salta",
|
|
"America/Argentina/San_Juan",
|
|
"America/Argentina/San_Luis",
|
|
"America/Argentina/Tucuman",
|
|
"America/Argentina/Ushuaia",
|
|
"America/Aruba",
|
|
"America/Asuncion",
|
|
"America/Atikokan",
|
|
"America/Atka",
|
|
"America/Bahia",
|
|
"America/Bahia_Banderas",
|
|
"America/Barbados",
|
|
"America/Belem",
|
|
"America/Belize",
|
|
"America/Blanc-Sablon",
|
|
"America/Boa_Vista",
|
|
"America/Bogota",
|
|
"America/Boise",
|
|
"America/Buenos_Aires",
|
|
"America/Cambridge_Bay",
|
|
"America/Campo_Grande",
|
|
"America/Cancun",
|
|
"America/Caracas",
|
|
"America/Catamarca",
|
|
"America/Cayenne",
|
|
"America/Cayman",
|
|
"America/Chicago",
|
|
"America/Chihuahua",
|
|
"America/Ciudad_Juarez",
|
|
"America/Coral_Harbour",
|
|
"America/Cordoba",
|
|
"America/Costa_Rica",
|
|
"America/Coyhaique",
|
|
"America/Creston",
|
|
"America/Cuiaba",
|
|
"America/Curacao",
|
|
"America/Danmarkshavn",
|
|
"America/Dawson",
|
|
"America/Dawson_Creek",
|
|
"America/Denver",
|
|
"America/Detroit",
|
|
"America/Dominica",
|
|
"America/Edmonton",
|
|
"America/Eirunepe",
|
|
"America/El_Salvador",
|
|
"America/Ensenada",
|
|
"America/Fort_Nelson",
|
|
"America/Fort_Wayne",
|
|
"America/Fortaleza",
|
|
"America/Glace_Bay",
|
|
"America/Godthab",
|
|
"America/Goose_Bay",
|
|
"America/Grand_Turk",
|
|
"America/Grenada",
|
|
"America/Guadeloupe",
|
|
"America/Guatemala",
|
|
"America/Guayaquil",
|
|
"America/Guyana",
|
|
"America/Halifax",
|
|
"America/Havana",
|
|
"America/Hermosillo",
|
|
"America/Indiana/Indianapolis",
|
|
"America/Indiana/Knox",
|
|
"America/Indiana/Marengo",
|
|
"America/Indiana/Petersburg",
|
|
"America/Indiana/Tell_City",
|
|
"America/Indiana/Vevay",
|
|
"America/Indiana/Vincennes",
|
|
"America/Indiana/Winamac",
|
|
"America/Indianapolis",
|
|
"America/Inuvik",
|
|
"America/Iqaluit",
|
|
"America/Jamaica",
|
|
"America/Jujuy",
|
|
"America/Juneau",
|
|
"America/Kentucky/Louisville",
|
|
"America/Kentucky/Monticello",
|
|
"America/Knox_IN",
|
|
"America/Kralendijk",
|
|
"America/La_Paz",
|
|
"America/Lima",
|
|
"America/Los_Angeles",
|
|
"America/Louisville",
|
|
"America/Lower_Princes",
|
|
"America/Maceio",
|
|
"America/Managua",
|
|
"America/Manaus",
|
|
"America/Marigot",
|
|
"America/Martinique",
|
|
"America/Matamoros",
|
|
"America/Mazatlan",
|
|
"America/Mendoza",
|
|
"America/Menominee",
|
|
"America/Merida",
|
|
"America/Metlakatla",
|
|
"America/Mexico_City",
|
|
"America/Miquelon",
|
|
"America/Moncton",
|
|
"America/Monterrey",
|
|
"America/Montevideo",
|
|
"America/Montreal",
|
|
"America/Montserrat",
|
|
"America/Nassau",
|
|
"America/New_York",
|
|
"America/Nipigon",
|
|
"America/Nome",
|
|
"America/Noronha",
|
|
"America/North_Dakota/Beulah",
|
|
"America/North_Dakota/Center",
|
|
"America/North_Dakota/New_Salem",
|
|
"America/Nuuk",
|
|
"America/Ojinaga",
|
|
"America/Panama",
|
|
"America/Pangnirtung",
|
|
"America/Paramaribo",
|
|
"America/Phoenix",
|
|
"America/Port-au-Prince",
|
|
"America/Port_of_Spain",
|
|
"America/Porto_Acre",
|
|
"America/Porto_Velho",
|
|
"America/Puerto_Rico",
|
|
"America/Punta_Arenas",
|
|
"America/Rainy_River",
|
|
"America/Rankin_Inlet",
|
|
"America/Recife",
|
|
"America/Regina",
|
|
"America/Resolute",
|
|
"America/Rio_Branco",
|
|
"America/Rosario",
|
|
"America/Santa_Isabel",
|
|
"America/Santarem",
|
|
"America/Santiago",
|
|
"America/Santo_Domingo",
|
|
"America/Sao_Paulo",
|
|
"America/Scoresbysund",
|
|
"America/Shiprock",
|
|
"America/Sitka",
|
|
"America/St_Barthelemy",
|
|
"America/St_Johns",
|
|
"America/St_Kitts",
|
|
"America/St_Lucia",
|
|
"America/St_Thomas",
|
|
"America/St_Vincent",
|
|
"America/Swift_Current",
|
|
"America/Tegucigalpa",
|
|
"America/Thule",
|
|
"America/Thunder_Bay",
|
|
"America/Tijuana",
|
|
"America/Toronto",
|
|
"America/Tortola",
|
|
"America/Vancouver",
|
|
"America/Virgin",
|
|
"America/Whitehorse",
|
|
"America/Winnipeg",
|
|
"America/Yakutat",
|
|
"America/Yellowknife",
|
|
"Antarctica/Casey",
|
|
"Antarctica/Davis",
|
|
"Antarctica/DumontDUrville",
|
|
"Antarctica/Macquarie",
|
|
"Antarctica/Mawson",
|
|
"Antarctica/McMurdo",
|
|
"Antarctica/Palmer",
|
|
"Antarctica/Rothera",
|
|
"Antarctica/South_Pole",
|
|
"Antarctica/Syowa",
|
|
"Antarctica/Troll",
|
|
"Antarctica/Vostok",
|
|
"Arctic/Longyearbyen",
|
|
"Asia/Aden",
|
|
"Asia/Almaty",
|
|
"Asia/Amman",
|
|
"Asia/Anadyr",
|
|
"Asia/Aqtau",
|
|
"Asia/Aqtobe",
|
|
"Asia/Ashgabat",
|
|
"Asia/Ashkhabad",
|
|
"Asia/Atyrau",
|
|
"Asia/Baghdad",
|
|
"Asia/Bahrain",
|
|
"Asia/Baku",
|
|
"Asia/Bangkok",
|
|
"Asia/Barnaul",
|
|
"Asia/Beirut",
|
|
"Asia/Bishkek",
|
|
"Asia/Brunei",
|
|
"Asia/Calcutta",
|
|
"Asia/Chita",
|
|
"Asia/Choibalsan",
|
|
"Asia/Chongqing",
|
|
"Asia/Chungking",
|
|
"Asia/Colombo",
|
|
"Asia/Dacca",
|
|
"Asia/Damascus",
|
|
"Asia/Dhaka",
|
|
"Asia/Dili",
|
|
"Asia/Dubai",
|
|
"Asia/Dushanbe",
|
|
"Asia/Famagusta",
|
|
"Asia/Gaza",
|
|
"Asia/Harbin",
|
|
"Asia/Hebron",
|
|
"Asia/Ho_Chi_Minh",
|
|
"Asia/Hong_Kong",
|
|
"Asia/Hovd",
|
|
"Asia/Irkutsk",
|
|
"Asia/Istanbul",
|
|
"Asia/Jakarta",
|
|
"Asia/Jayapura",
|
|
"Asia/Jerusalem",
|
|
"Asia/Kabul",
|
|
"Asia/Kamchatka",
|
|
"Asia/Karachi",
|
|
"Asia/Kashgar",
|
|
"Asia/Kathmandu",
|
|
"Asia/Katmandu",
|
|
"Asia/Khandyga",
|
|
"Asia/Kolkata",
|
|
"Asia/Krasnoyarsk",
|
|
"Asia/Kuala_Lumpur",
|
|
"Asia/Kuching",
|
|
"Asia/Kuwait",
|
|
"Asia/Macao",
|
|
"Asia/Macau",
|
|
"Asia/Magadan",
|
|
"Asia/Makassar",
|
|
"Asia/Manila",
|
|
"Asia/Muscat",
|
|
"Asia/Nicosia",
|
|
"Asia/Novokuznetsk",
|
|
"Asia/Novosibirsk",
|
|
"Asia/Omsk",
|
|
"Asia/Oral",
|
|
"Asia/Phnom_Penh",
|
|
"Asia/Pontianak",
|
|
"Asia/Pyongyang",
|
|
"Asia/Qatar",
|
|
"Asia/Qostanay",
|
|
"Asia/Qyzylorda",
|
|
"Asia/Rangoon",
|
|
"Asia/Riyadh",
|
|
"Asia/Saigon",
|
|
"Asia/Sakhalin",
|
|
"Asia/Samarkand",
|
|
"Asia/Seoul",
|
|
"Asia/Shanghai",
|
|
"Asia/Singapore",
|
|
"Asia/Srednekolymsk",
|
|
"Asia/Taipei",
|
|
"Asia/Tashkent",
|
|
"Asia/Tbilisi",
|
|
"Asia/Tehran",
|
|
"Asia/Tel_Aviv",
|
|
"Asia/Thimbu",
|
|
"Asia/Thimphu",
|
|
"Asia/Tokyo",
|
|
"Asia/Tomsk",
|
|
"Asia/Ujung_Pandang",
|
|
"Asia/Ulaanbaatar",
|
|
"Asia/Ulan_Bator",
|
|
"Asia/Urumqi",
|
|
"Asia/Ust-Nera",
|
|
"Asia/Vientiane",
|
|
"Asia/Vladivostok",
|
|
"Asia/Yakutsk",
|
|
"Asia/Yangon",
|
|
"Asia/Yekaterinburg",
|
|
"Asia/Yerevan",
|
|
"Atlantic/Azores",
|
|
"Atlantic/Bermuda",
|
|
"Atlantic/Canary",
|
|
"Atlantic/Cape_Verde",
|
|
"Atlantic/Faeroe",
|
|
"Atlantic/Faroe",
|
|
"Atlantic/Jan_Mayen",
|
|
"Atlantic/Madeira",
|
|
"Atlantic/Reykjavik",
|
|
"Atlantic/South_Georgia",
|
|
"Atlantic/St_Helena",
|
|
"Atlantic/Stanley",
|
|
"Australia/ACT",
|
|
"Australia/Adelaide",
|
|
"Australia/Brisbane",
|
|
"Australia/Broken_Hill",
|
|
"Australia/Canberra",
|
|
"Australia/Currie",
|
|
"Australia/Darwin",
|
|
"Australia/Eucla",
|
|
"Australia/Hobart",
|
|
"Australia/LHI",
|
|
"Australia/Lindeman",
|
|
"Australia/Lord_Howe",
|
|
"Australia/Melbourne",
|
|
"Australia/NSW",
|
|
"Australia/North",
|
|
"Australia/Perth",
|
|
"Australia/Queensland",
|
|
"Australia/South",
|
|
"Australia/Sydney",
|
|
"Australia/Tasmania",
|
|
"Australia/Victoria",
|
|
"Australia/West",
|
|
"Australia/Yancowinna",
|
|
"Brazil/Acre",
|
|
"Brazil/DeNoronha",
|
|
"Brazil/East",
|
|
"Brazil/West",
|
|
"CET",
|
|
"CST6CDT",
|
|
"Canada/Atlantic",
|
|
"Canada/Central",
|
|
"Canada/Eastern",
|
|
"Canada/Mountain",
|
|
"Canada/Newfoundland",
|
|
"Canada/Pacific",
|
|
"Canada/Saskatchewan",
|
|
"Canada/Yukon",
|
|
"Chile/Continental",
|
|
"Chile/EasterIsland",
|
|
"Cuba",
|
|
"EET",
|
|
"EST",
|
|
"EST5EDT",
|
|
"Egypt",
|
|
"Eire",
|
|
"Etc/GMT",
|
|
"Etc/GMT+0",
|
|
"Etc/GMT+1",
|
|
"Etc/GMT+10",
|
|
"Etc/GMT+11",
|
|
"Etc/GMT+12",
|
|
"Etc/GMT+2",
|
|
"Etc/GMT+3",
|
|
"Etc/GMT+4",
|
|
"Etc/GMT+5",
|
|
"Etc/GMT+6",
|
|
"Etc/GMT+7",
|
|
"Etc/GMT+8",
|
|
"Etc/GMT+9",
|
|
"Etc/GMT-0",
|
|
"Etc/GMT-1",
|
|
"Etc/GMT-10",
|
|
"Etc/GMT-11",
|
|
"Etc/GMT-12",
|
|
"Etc/GMT-13",
|
|
"Etc/GMT-14",
|
|
"Etc/GMT-2",
|
|
"Etc/GMT-3",
|
|
"Etc/GMT-4",
|
|
"Etc/GMT-5",
|
|
"Etc/GMT-6",
|
|
"Etc/GMT-7",
|
|
"Etc/GMT-8",
|
|
"Etc/GMT-9",
|
|
"Etc/GMT0",
|
|
"Etc/Greenwich",
|
|
"Etc/UCT",
|
|
"Etc/UTC",
|
|
"Etc/Universal",
|
|
"Etc/Zulu",
|
|
"Europe/Amsterdam",
|
|
"Europe/Andorra",
|
|
"Europe/Astrakhan",
|
|
"Europe/Athens",
|
|
"Europe/Belfast",
|
|
"Europe/Belgrade",
|
|
"Europe/Berlin",
|
|
"Europe/Bratislava",
|
|
"Europe/Brussels",
|
|
"Europe/Bucharest",
|
|
"Europe/Budapest",
|
|
"Europe/Busingen",
|
|
"Europe/Chisinau",
|
|
"Europe/Copenhagen",
|
|
"Europe/Dublin",
|
|
"Europe/Gibraltar",
|
|
"Europe/Guernsey",
|
|
"Europe/Helsinki",
|
|
"Europe/Isle_of_Man",
|
|
"Europe/Istanbul",
|
|
"Europe/Jersey",
|
|
"Europe/Kaliningrad",
|
|
"Europe/Kiev",
|
|
"Europe/Kirov",
|
|
"Europe/Kyiv",
|
|
"Europe/Lisbon",
|
|
"Europe/Ljubljana",
|
|
"Europe/London",
|
|
"Europe/Luxembourg",
|
|
"Europe/Madrid",
|
|
"Europe/Malta",
|
|
"Europe/Mariehamn",
|
|
"Europe/Minsk",
|
|
"Europe/Monaco",
|
|
"Europe/Moscow",
|
|
"Europe/Nicosia",
|
|
"Europe/Oslo",
|
|
"Europe/Paris",
|
|
"Europe/Podgorica",
|
|
"Europe/Prague",
|
|
"Europe/Riga",
|
|
"Europe/Rome",
|
|
"Europe/Samara",
|
|
"Europe/San_Marino",
|
|
"Europe/Sarajevo",
|
|
"Europe/Saratov",
|
|
"Europe/Simferopol",
|
|
"Europe/Skopje",
|
|
"Europe/Sofia",
|
|
"Europe/Stockholm",
|
|
"Europe/Tallinn",
|
|
"Europe/Tirane",
|
|
"Europe/Tiraspol",
|
|
"Europe/Ulyanovsk",
|
|
"Europe/Uzhgorod",
|
|
"Europe/Vaduz",
|
|
"Europe/Vatican",
|
|
"Europe/Vienna",
|
|
"Europe/Vilnius",
|
|
"Europe/Volgograd",
|
|
"Europe/Warsaw",
|
|
"Europe/Zagreb",
|
|
"Europe/Zaporozhye",
|
|
"Europe/Zurich",
|
|
"GB",
|
|
"GB-Eire",
|
|
"GMT",
|
|
"GMT+0",
|
|
"GMT-0",
|
|
"GMT0",
|
|
"Greenwich",
|
|
"HST",
|
|
"Hongkong",
|
|
"Iceland",
|
|
"Indian/Antananarivo",
|
|
"Indian/Chagos",
|
|
"Indian/Christmas",
|
|
"Indian/Cocos",
|
|
"Indian/Comoro",
|
|
"Indian/Kerguelen",
|
|
"Indian/Mahe",
|
|
"Indian/Maldives",
|
|
"Indian/Mauritius",
|
|
"Indian/Mayotte",
|
|
"Indian/Reunion",
|
|
"Iran",
|
|
"Israel",
|
|
"Jamaica",
|
|
"Japan",
|
|
"Kwajalein",
|
|
"Libya",
|
|
"MET",
|
|
"MST",
|
|
"MST7MDT",
|
|
"Mexico/BajaNorte",
|
|
"Mexico/BajaSur",
|
|
"Mexico/General",
|
|
"NZ",
|
|
"NZ-CHAT",
|
|
"Navajo",
|
|
"PRC",
|
|
"PST8PDT",
|
|
"Pacific/Apia",
|
|
"Pacific/Auckland",
|
|
"Pacific/Bougainville",
|
|
"Pacific/Chatham",
|
|
"Pacific/Chuuk",
|
|
"Pacific/Easter",
|
|
"Pacific/Efate",
|
|
"Pacific/Enderbury",
|
|
"Pacific/Fakaofo",
|
|
"Pacific/Fiji",
|
|
"Pacific/Funafuti",
|
|
"Pacific/Galapagos",
|
|
"Pacific/Gambier",
|
|
"Pacific/Guadalcanal",
|
|
"Pacific/Guam",
|
|
"Pacific/Honolulu",
|
|
"Pacific/Johnston",
|
|
"Pacific/Kanton",
|
|
"Pacific/Kiritimati",
|
|
"Pacific/Kosrae",
|
|
"Pacific/Kwajalein",
|
|
"Pacific/Majuro",
|
|
"Pacific/Marquesas",
|
|
"Pacific/Midway",
|
|
"Pacific/Nauru",
|
|
"Pacific/Niue",
|
|
"Pacific/Norfolk",
|
|
"Pacific/Noumea",
|
|
"Pacific/Pago_Pago",
|
|
"Pacific/Palau",
|
|
"Pacific/Pitcairn",
|
|
"Pacific/Pohnpei",
|
|
"Pacific/Ponape",
|
|
"Pacific/Port_Moresby",
|
|
"Pacific/Rarotonga",
|
|
"Pacific/Saipan",
|
|
"Pacific/Samoa",
|
|
"Pacific/Tahiti",
|
|
"Pacific/Tarawa",
|
|
"Pacific/Tongatapu",
|
|
"Pacific/Truk",
|
|
"Pacific/Wake",
|
|
"Pacific/Wallis",
|
|
"Pacific/Yap",
|
|
"Poland",
|
|
"Portugal",
|
|
"ROC",
|
|
"ROK",
|
|
"Singapore",
|
|
"Turkey",
|
|
"UCT",
|
|
"US/Alaska",
|
|
"US/Aleutian",
|
|
"US/Arizona",
|
|
"US/Central",
|
|
"US/East-Indiana",
|
|
"US/Eastern",
|
|
"US/Hawaii",
|
|
"US/Indiana-Starke",
|
|
"US/Michigan",
|
|
"US/Mountain",
|
|
"US/Pacific",
|
|
"US/Samoa",
|
|
"UTC",
|
|
"Universal",
|
|
"W-SU",
|
|
"WET",
|
|
"Zulu"
|
|
],
|
|
"minLength": 1
|
|
},
|
|
{ "type": "string" }
|
|
],
|
|
"title": "Timezone"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["timezone"],
|
|
"title": "TimezoneResponse"
|
|
},
|
|
"TokenIntrospectionResult": {
|
|
"properties": {
|
|
"active": { "type": "boolean", "title": "Active" },
|
|
"scopes": {
|
|
"anyOf": [
|
|
{ "items": { "type": "string" }, "type": "array" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Scopes"
|
|
},
|
|
"client_id": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Client Id"
|
|
},
|
|
"user_id": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "User Id"
|
|
},
|
|
"exp": {
|
|
"anyOf": [{ "type": "integer" }, { "type": "null" }],
|
|
"title": "Exp"
|
|
},
|
|
"token_type": {
|
|
"anyOf": [
|
|
{ "type": "string", "enum": ["access_token", "refresh_token"] },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Token Type"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["active"],
|
|
"title": "TokenIntrospectionResult",
|
|
"description": "Result of token introspection (RFC 7662)"
|
|
},
|
|
"TokenRequestByCode": {
|
|
"properties": {
|
|
"grant_type": {
|
|
"type": "string",
|
|
"const": "authorization_code",
|
|
"title": "Grant Type"
|
|
},
|
|
"code": {
|
|
"type": "string",
|
|
"title": "Code",
|
|
"description": "Authorization code"
|
|
},
|
|
"redirect_uri": {
|
|
"type": "string",
|
|
"title": "Redirect Uri",
|
|
"description": "Redirect URI (must match authorization request)"
|
|
},
|
|
"client_id": { "type": "string", "title": "Client Id" },
|
|
"client_secret": { "type": "string", "title": "Client Secret" },
|
|
"code_verifier": {
|
|
"type": "string",
|
|
"title": "Code Verifier",
|
|
"description": "PKCE code verifier"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"grant_type",
|
|
"code",
|
|
"redirect_uri",
|
|
"client_id",
|
|
"client_secret",
|
|
"code_verifier"
|
|
],
|
|
"title": "TokenRequestByCode"
|
|
},
|
|
"TokenRequestByRefreshToken": {
|
|
"properties": {
|
|
"grant_type": {
|
|
"type": "string",
|
|
"const": "refresh_token",
|
|
"title": "Grant Type"
|
|
},
|
|
"refresh_token": { "type": "string", "title": "Refresh Token" },
|
|
"client_id": { "type": "string", "title": "Client Id" },
|
|
"client_secret": { "type": "string", "title": "Client Secret" }
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"grant_type",
|
|
"refresh_token",
|
|
"client_id",
|
|
"client_secret"
|
|
],
|
|
"title": "TokenRequestByRefreshToken"
|
|
},
|
|
"TokenResponse": {
|
|
"properties": {
|
|
"token_type": {
|
|
"type": "string",
|
|
"const": "Bearer",
|
|
"title": "Token Type",
|
|
"default": "Bearer"
|
|
},
|
|
"access_token": { "type": "string", "title": "Access Token" },
|
|
"access_token_expires_at": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "Access Token Expires At"
|
|
},
|
|
"refresh_token": { "type": "string", "title": "Refresh Token" },
|
|
"refresh_token_expires_at": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "Refresh Token Expires At"
|
|
},
|
|
"scopes": {
|
|
"items": { "type": "string" },
|
|
"type": "array",
|
|
"title": "Scopes"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"access_token",
|
|
"access_token_expires_at",
|
|
"refresh_token",
|
|
"refresh_token_expires_at",
|
|
"scopes"
|
|
],
|
|
"title": "TokenResponse",
|
|
"description": "OAuth 2.0 token response"
|
|
},
|
|
"TransactionHistory": {
|
|
"properties": {
|
|
"transactions": {
|
|
"items": { "$ref": "#/components/schemas/UserTransaction" },
|
|
"type": "array",
|
|
"title": "Transactions"
|
|
},
|
|
"next_transaction_time": {
|
|
"anyOf": [
|
|
{ "type": "string", "format": "date-time" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Next Transaction Time"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["transactions", "next_transaction_time"],
|
|
"title": "TransactionHistory"
|
|
},
|
|
"TriggeredPresetSetupRequest": {
|
|
"properties": {
|
|
"name": { "type": "string", "title": "Name" },
|
|
"description": {
|
|
"type": "string",
|
|
"title": "Description",
|
|
"default": ""
|
|
},
|
|
"graph_id": { "type": "string", "title": "Graph Id" },
|
|
"graph_version": { "type": "integer", "title": "Graph Version" },
|
|
"trigger_config": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Trigger Config"
|
|
},
|
|
"agent_credentials": {
|
|
"additionalProperties": {
|
|
"$ref": "#/components/schemas/CredentialsMetaInput"
|
|
},
|
|
"type": "object",
|
|
"title": "Agent Credentials"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["name", "graph_id", "graph_version", "trigger_config"],
|
|
"title": "TriggeredPresetSetupRequest"
|
|
},
|
|
"UnifiedSearchResponse": {
|
|
"properties": {
|
|
"results": {
|
|
"items": { "$ref": "#/components/schemas/UnifiedSearchResult" },
|
|
"type": "array",
|
|
"title": "Results"
|
|
},
|
|
"pagination": { "$ref": "#/components/schemas/Pagination" }
|
|
},
|
|
"type": "object",
|
|
"required": ["results", "pagination"],
|
|
"title": "UnifiedSearchResponse",
|
|
"description": "Response model for unified search across all content types."
|
|
},
|
|
"UnifiedSearchResult": {
|
|
"properties": {
|
|
"content_type": { "type": "string", "title": "Content Type" },
|
|
"content_id": { "type": "string", "title": "Content Id" },
|
|
"searchable_text": { "type": "string", "title": "Searchable Text" },
|
|
"metadata": {
|
|
"anyOf": [
|
|
{ "additionalProperties": true, "type": "object" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Metadata"
|
|
},
|
|
"updated_at": {
|
|
"anyOf": [
|
|
{ "type": "string", "format": "date-time" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Updated At"
|
|
},
|
|
"combined_score": {
|
|
"anyOf": [{ "type": "number" }, { "type": "null" }],
|
|
"title": "Combined Score"
|
|
},
|
|
"semantic_score": {
|
|
"anyOf": [{ "type": "number" }, { "type": "null" }],
|
|
"title": "Semantic Score"
|
|
},
|
|
"lexical_score": {
|
|
"anyOf": [{ "type": "number" }, { "type": "null" }],
|
|
"title": "Lexical Score"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["content_type", "content_id", "searchable_text"],
|
|
"title": "UnifiedSearchResult",
|
|
"description": "A single result from unified hybrid search across all content types."
|
|
},
|
|
"UpdateAppLogoRequest": {
|
|
"properties": {
|
|
"logo_url": {
|
|
"type": "string",
|
|
"title": "Logo Url",
|
|
"description": "URL of the uploaded logo image"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["logo_url"],
|
|
"title": "UpdateAppLogoRequest"
|
|
},
|
|
"UpdatePermissionsRequest": {
|
|
"properties": {
|
|
"permissions": {
|
|
"items": { "$ref": "#/components/schemas/APIKeyPermission" },
|
|
"type": "array",
|
|
"title": "Permissions"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["permissions"],
|
|
"title": "UpdatePermissionsRequest"
|
|
},
|
|
"UpdateTimezoneRequest": {
|
|
"properties": {
|
|
"timezone": {
|
|
"type": "string",
|
|
"enum": [
|
|
"Africa/Abidjan",
|
|
"Africa/Accra",
|
|
"Africa/Addis_Ababa",
|
|
"Africa/Algiers",
|
|
"Africa/Asmara",
|
|
"Africa/Asmera",
|
|
"Africa/Bamako",
|
|
"Africa/Bangui",
|
|
"Africa/Banjul",
|
|
"Africa/Bissau",
|
|
"Africa/Blantyre",
|
|
"Africa/Brazzaville",
|
|
"Africa/Bujumbura",
|
|
"Africa/Cairo",
|
|
"Africa/Casablanca",
|
|
"Africa/Ceuta",
|
|
"Africa/Conakry",
|
|
"Africa/Dakar",
|
|
"Africa/Dar_es_Salaam",
|
|
"Africa/Djibouti",
|
|
"Africa/Douala",
|
|
"Africa/El_Aaiun",
|
|
"Africa/Freetown",
|
|
"Africa/Gaborone",
|
|
"Africa/Harare",
|
|
"Africa/Johannesburg",
|
|
"Africa/Juba",
|
|
"Africa/Kampala",
|
|
"Africa/Khartoum",
|
|
"Africa/Kigali",
|
|
"Africa/Kinshasa",
|
|
"Africa/Lagos",
|
|
"Africa/Libreville",
|
|
"Africa/Lome",
|
|
"Africa/Luanda",
|
|
"Africa/Lubumbashi",
|
|
"Africa/Lusaka",
|
|
"Africa/Malabo",
|
|
"Africa/Maputo",
|
|
"Africa/Maseru",
|
|
"Africa/Mbabane",
|
|
"Africa/Mogadishu",
|
|
"Africa/Monrovia",
|
|
"Africa/Nairobi",
|
|
"Africa/Ndjamena",
|
|
"Africa/Niamey",
|
|
"Africa/Nouakchott",
|
|
"Africa/Ouagadougou",
|
|
"Africa/Porto-Novo",
|
|
"Africa/Sao_Tome",
|
|
"Africa/Timbuktu",
|
|
"Africa/Tripoli",
|
|
"Africa/Tunis",
|
|
"Africa/Windhoek",
|
|
"America/Adak",
|
|
"America/Anchorage",
|
|
"America/Anguilla",
|
|
"America/Antigua",
|
|
"America/Araguaina",
|
|
"America/Argentina/Buenos_Aires",
|
|
"America/Argentina/Catamarca",
|
|
"America/Argentina/ComodRivadavia",
|
|
"America/Argentina/Cordoba",
|
|
"America/Argentina/Jujuy",
|
|
"America/Argentina/La_Rioja",
|
|
"America/Argentina/Mendoza",
|
|
"America/Argentina/Rio_Gallegos",
|
|
"America/Argentina/Salta",
|
|
"America/Argentina/San_Juan",
|
|
"America/Argentina/San_Luis",
|
|
"America/Argentina/Tucuman",
|
|
"America/Argentina/Ushuaia",
|
|
"America/Aruba",
|
|
"America/Asuncion",
|
|
"America/Atikokan",
|
|
"America/Atka",
|
|
"America/Bahia",
|
|
"America/Bahia_Banderas",
|
|
"America/Barbados",
|
|
"America/Belem",
|
|
"America/Belize",
|
|
"America/Blanc-Sablon",
|
|
"America/Boa_Vista",
|
|
"America/Bogota",
|
|
"America/Boise",
|
|
"America/Buenos_Aires",
|
|
"America/Cambridge_Bay",
|
|
"America/Campo_Grande",
|
|
"America/Cancun",
|
|
"America/Caracas",
|
|
"America/Catamarca",
|
|
"America/Cayenne",
|
|
"America/Cayman",
|
|
"America/Chicago",
|
|
"America/Chihuahua",
|
|
"America/Ciudad_Juarez",
|
|
"America/Coral_Harbour",
|
|
"America/Cordoba",
|
|
"America/Costa_Rica",
|
|
"America/Coyhaique",
|
|
"America/Creston",
|
|
"America/Cuiaba",
|
|
"America/Curacao",
|
|
"America/Danmarkshavn",
|
|
"America/Dawson",
|
|
"America/Dawson_Creek",
|
|
"America/Denver",
|
|
"America/Detroit",
|
|
"America/Dominica",
|
|
"America/Edmonton",
|
|
"America/Eirunepe",
|
|
"America/El_Salvador",
|
|
"America/Ensenada",
|
|
"America/Fort_Nelson",
|
|
"America/Fort_Wayne",
|
|
"America/Fortaleza",
|
|
"America/Glace_Bay",
|
|
"America/Godthab",
|
|
"America/Goose_Bay",
|
|
"America/Grand_Turk",
|
|
"America/Grenada",
|
|
"America/Guadeloupe",
|
|
"America/Guatemala",
|
|
"America/Guayaquil",
|
|
"America/Guyana",
|
|
"America/Halifax",
|
|
"America/Havana",
|
|
"America/Hermosillo",
|
|
"America/Indiana/Indianapolis",
|
|
"America/Indiana/Knox",
|
|
"America/Indiana/Marengo",
|
|
"America/Indiana/Petersburg",
|
|
"America/Indiana/Tell_City",
|
|
"America/Indiana/Vevay",
|
|
"America/Indiana/Vincennes",
|
|
"America/Indiana/Winamac",
|
|
"America/Indianapolis",
|
|
"America/Inuvik",
|
|
"America/Iqaluit",
|
|
"America/Jamaica",
|
|
"America/Jujuy",
|
|
"America/Juneau",
|
|
"America/Kentucky/Louisville",
|
|
"America/Kentucky/Monticello",
|
|
"America/Knox_IN",
|
|
"America/Kralendijk",
|
|
"America/La_Paz",
|
|
"America/Lima",
|
|
"America/Los_Angeles",
|
|
"America/Louisville",
|
|
"America/Lower_Princes",
|
|
"America/Maceio",
|
|
"America/Managua",
|
|
"America/Manaus",
|
|
"America/Marigot",
|
|
"America/Martinique",
|
|
"America/Matamoros",
|
|
"America/Mazatlan",
|
|
"America/Mendoza",
|
|
"America/Menominee",
|
|
"America/Merida",
|
|
"America/Metlakatla",
|
|
"America/Mexico_City",
|
|
"America/Miquelon",
|
|
"America/Moncton",
|
|
"America/Monterrey",
|
|
"America/Montevideo",
|
|
"America/Montreal",
|
|
"America/Montserrat",
|
|
"America/Nassau",
|
|
"America/New_York",
|
|
"America/Nipigon",
|
|
"America/Nome",
|
|
"America/Noronha",
|
|
"America/North_Dakota/Beulah",
|
|
"America/North_Dakota/Center",
|
|
"America/North_Dakota/New_Salem",
|
|
"America/Nuuk",
|
|
"America/Ojinaga",
|
|
"America/Panama",
|
|
"America/Pangnirtung",
|
|
"America/Paramaribo",
|
|
"America/Phoenix",
|
|
"America/Port-au-Prince",
|
|
"America/Port_of_Spain",
|
|
"America/Porto_Acre",
|
|
"America/Porto_Velho",
|
|
"America/Puerto_Rico",
|
|
"America/Punta_Arenas",
|
|
"America/Rainy_River",
|
|
"America/Rankin_Inlet",
|
|
"America/Recife",
|
|
"America/Regina",
|
|
"America/Resolute",
|
|
"America/Rio_Branco",
|
|
"America/Rosario",
|
|
"America/Santa_Isabel",
|
|
"America/Santarem",
|
|
"America/Santiago",
|
|
"America/Santo_Domingo",
|
|
"America/Sao_Paulo",
|
|
"America/Scoresbysund",
|
|
"America/Shiprock",
|
|
"America/Sitka",
|
|
"America/St_Barthelemy",
|
|
"America/St_Johns",
|
|
"America/St_Kitts",
|
|
"America/St_Lucia",
|
|
"America/St_Thomas",
|
|
"America/St_Vincent",
|
|
"America/Swift_Current",
|
|
"America/Tegucigalpa",
|
|
"America/Thule",
|
|
"America/Thunder_Bay",
|
|
"America/Tijuana",
|
|
"America/Toronto",
|
|
"America/Tortola",
|
|
"America/Vancouver",
|
|
"America/Virgin",
|
|
"America/Whitehorse",
|
|
"America/Winnipeg",
|
|
"America/Yakutat",
|
|
"America/Yellowknife",
|
|
"Antarctica/Casey",
|
|
"Antarctica/Davis",
|
|
"Antarctica/DumontDUrville",
|
|
"Antarctica/Macquarie",
|
|
"Antarctica/Mawson",
|
|
"Antarctica/McMurdo",
|
|
"Antarctica/Palmer",
|
|
"Antarctica/Rothera",
|
|
"Antarctica/South_Pole",
|
|
"Antarctica/Syowa",
|
|
"Antarctica/Troll",
|
|
"Antarctica/Vostok",
|
|
"Arctic/Longyearbyen",
|
|
"Asia/Aden",
|
|
"Asia/Almaty",
|
|
"Asia/Amman",
|
|
"Asia/Anadyr",
|
|
"Asia/Aqtau",
|
|
"Asia/Aqtobe",
|
|
"Asia/Ashgabat",
|
|
"Asia/Ashkhabad",
|
|
"Asia/Atyrau",
|
|
"Asia/Baghdad",
|
|
"Asia/Bahrain",
|
|
"Asia/Baku",
|
|
"Asia/Bangkok",
|
|
"Asia/Barnaul",
|
|
"Asia/Beirut",
|
|
"Asia/Bishkek",
|
|
"Asia/Brunei",
|
|
"Asia/Calcutta",
|
|
"Asia/Chita",
|
|
"Asia/Choibalsan",
|
|
"Asia/Chongqing",
|
|
"Asia/Chungking",
|
|
"Asia/Colombo",
|
|
"Asia/Dacca",
|
|
"Asia/Damascus",
|
|
"Asia/Dhaka",
|
|
"Asia/Dili",
|
|
"Asia/Dubai",
|
|
"Asia/Dushanbe",
|
|
"Asia/Famagusta",
|
|
"Asia/Gaza",
|
|
"Asia/Harbin",
|
|
"Asia/Hebron",
|
|
"Asia/Ho_Chi_Minh",
|
|
"Asia/Hong_Kong",
|
|
"Asia/Hovd",
|
|
"Asia/Irkutsk",
|
|
"Asia/Istanbul",
|
|
"Asia/Jakarta",
|
|
"Asia/Jayapura",
|
|
"Asia/Jerusalem",
|
|
"Asia/Kabul",
|
|
"Asia/Kamchatka",
|
|
"Asia/Karachi",
|
|
"Asia/Kashgar",
|
|
"Asia/Kathmandu",
|
|
"Asia/Katmandu",
|
|
"Asia/Khandyga",
|
|
"Asia/Kolkata",
|
|
"Asia/Krasnoyarsk",
|
|
"Asia/Kuala_Lumpur",
|
|
"Asia/Kuching",
|
|
"Asia/Kuwait",
|
|
"Asia/Macao",
|
|
"Asia/Macau",
|
|
"Asia/Magadan",
|
|
"Asia/Makassar",
|
|
"Asia/Manila",
|
|
"Asia/Muscat",
|
|
"Asia/Nicosia",
|
|
"Asia/Novokuznetsk",
|
|
"Asia/Novosibirsk",
|
|
"Asia/Omsk",
|
|
"Asia/Oral",
|
|
"Asia/Phnom_Penh",
|
|
"Asia/Pontianak",
|
|
"Asia/Pyongyang",
|
|
"Asia/Qatar",
|
|
"Asia/Qostanay",
|
|
"Asia/Qyzylorda",
|
|
"Asia/Rangoon",
|
|
"Asia/Riyadh",
|
|
"Asia/Saigon",
|
|
"Asia/Sakhalin",
|
|
"Asia/Samarkand",
|
|
"Asia/Seoul",
|
|
"Asia/Shanghai",
|
|
"Asia/Singapore",
|
|
"Asia/Srednekolymsk",
|
|
"Asia/Taipei",
|
|
"Asia/Tashkent",
|
|
"Asia/Tbilisi",
|
|
"Asia/Tehran",
|
|
"Asia/Tel_Aviv",
|
|
"Asia/Thimbu",
|
|
"Asia/Thimphu",
|
|
"Asia/Tokyo",
|
|
"Asia/Tomsk",
|
|
"Asia/Ujung_Pandang",
|
|
"Asia/Ulaanbaatar",
|
|
"Asia/Ulan_Bator",
|
|
"Asia/Urumqi",
|
|
"Asia/Ust-Nera",
|
|
"Asia/Vientiane",
|
|
"Asia/Vladivostok",
|
|
"Asia/Yakutsk",
|
|
"Asia/Yangon",
|
|
"Asia/Yekaterinburg",
|
|
"Asia/Yerevan",
|
|
"Atlantic/Azores",
|
|
"Atlantic/Bermuda",
|
|
"Atlantic/Canary",
|
|
"Atlantic/Cape_Verde",
|
|
"Atlantic/Faeroe",
|
|
"Atlantic/Faroe",
|
|
"Atlantic/Jan_Mayen",
|
|
"Atlantic/Madeira",
|
|
"Atlantic/Reykjavik",
|
|
"Atlantic/South_Georgia",
|
|
"Atlantic/St_Helena",
|
|
"Atlantic/Stanley",
|
|
"Australia/ACT",
|
|
"Australia/Adelaide",
|
|
"Australia/Brisbane",
|
|
"Australia/Broken_Hill",
|
|
"Australia/Canberra",
|
|
"Australia/Currie",
|
|
"Australia/Darwin",
|
|
"Australia/Eucla",
|
|
"Australia/Hobart",
|
|
"Australia/LHI",
|
|
"Australia/Lindeman",
|
|
"Australia/Lord_Howe",
|
|
"Australia/Melbourne",
|
|
"Australia/NSW",
|
|
"Australia/North",
|
|
"Australia/Perth",
|
|
"Australia/Queensland",
|
|
"Australia/South",
|
|
"Australia/Sydney",
|
|
"Australia/Tasmania",
|
|
"Australia/Victoria",
|
|
"Australia/West",
|
|
"Australia/Yancowinna",
|
|
"Brazil/Acre",
|
|
"Brazil/DeNoronha",
|
|
"Brazil/East",
|
|
"Brazil/West",
|
|
"CET",
|
|
"CST6CDT",
|
|
"Canada/Atlantic",
|
|
"Canada/Central",
|
|
"Canada/Eastern",
|
|
"Canada/Mountain",
|
|
"Canada/Newfoundland",
|
|
"Canada/Pacific",
|
|
"Canada/Saskatchewan",
|
|
"Canada/Yukon",
|
|
"Chile/Continental",
|
|
"Chile/EasterIsland",
|
|
"Cuba",
|
|
"EET",
|
|
"EST",
|
|
"EST5EDT",
|
|
"Egypt",
|
|
"Eire",
|
|
"Etc/GMT",
|
|
"Etc/GMT+0",
|
|
"Etc/GMT+1",
|
|
"Etc/GMT+10",
|
|
"Etc/GMT+11",
|
|
"Etc/GMT+12",
|
|
"Etc/GMT+2",
|
|
"Etc/GMT+3",
|
|
"Etc/GMT+4",
|
|
"Etc/GMT+5",
|
|
"Etc/GMT+6",
|
|
"Etc/GMT+7",
|
|
"Etc/GMT+8",
|
|
"Etc/GMT+9",
|
|
"Etc/GMT-0",
|
|
"Etc/GMT-1",
|
|
"Etc/GMT-10",
|
|
"Etc/GMT-11",
|
|
"Etc/GMT-12",
|
|
"Etc/GMT-13",
|
|
"Etc/GMT-14",
|
|
"Etc/GMT-2",
|
|
"Etc/GMT-3",
|
|
"Etc/GMT-4",
|
|
"Etc/GMT-5",
|
|
"Etc/GMT-6",
|
|
"Etc/GMT-7",
|
|
"Etc/GMT-8",
|
|
"Etc/GMT-9",
|
|
"Etc/GMT0",
|
|
"Etc/Greenwich",
|
|
"Etc/UCT",
|
|
"Etc/UTC",
|
|
"Etc/Universal",
|
|
"Etc/Zulu",
|
|
"Europe/Amsterdam",
|
|
"Europe/Andorra",
|
|
"Europe/Astrakhan",
|
|
"Europe/Athens",
|
|
"Europe/Belfast",
|
|
"Europe/Belgrade",
|
|
"Europe/Berlin",
|
|
"Europe/Bratislava",
|
|
"Europe/Brussels",
|
|
"Europe/Bucharest",
|
|
"Europe/Budapest",
|
|
"Europe/Busingen",
|
|
"Europe/Chisinau",
|
|
"Europe/Copenhagen",
|
|
"Europe/Dublin",
|
|
"Europe/Gibraltar",
|
|
"Europe/Guernsey",
|
|
"Europe/Helsinki",
|
|
"Europe/Isle_of_Man",
|
|
"Europe/Istanbul",
|
|
"Europe/Jersey",
|
|
"Europe/Kaliningrad",
|
|
"Europe/Kiev",
|
|
"Europe/Kirov",
|
|
"Europe/Kyiv",
|
|
"Europe/Lisbon",
|
|
"Europe/Ljubljana",
|
|
"Europe/London",
|
|
"Europe/Luxembourg",
|
|
"Europe/Madrid",
|
|
"Europe/Malta",
|
|
"Europe/Mariehamn",
|
|
"Europe/Minsk",
|
|
"Europe/Monaco",
|
|
"Europe/Moscow",
|
|
"Europe/Nicosia",
|
|
"Europe/Oslo",
|
|
"Europe/Paris",
|
|
"Europe/Podgorica",
|
|
"Europe/Prague",
|
|
"Europe/Riga",
|
|
"Europe/Rome",
|
|
"Europe/Samara",
|
|
"Europe/San_Marino",
|
|
"Europe/Sarajevo",
|
|
"Europe/Saratov",
|
|
"Europe/Simferopol",
|
|
"Europe/Skopje",
|
|
"Europe/Sofia",
|
|
"Europe/Stockholm",
|
|
"Europe/Tallinn",
|
|
"Europe/Tirane",
|
|
"Europe/Tiraspol",
|
|
"Europe/Ulyanovsk",
|
|
"Europe/Uzhgorod",
|
|
"Europe/Vaduz",
|
|
"Europe/Vatican",
|
|
"Europe/Vienna",
|
|
"Europe/Vilnius",
|
|
"Europe/Volgograd",
|
|
"Europe/Warsaw",
|
|
"Europe/Zagreb",
|
|
"Europe/Zaporozhye",
|
|
"Europe/Zurich",
|
|
"GB",
|
|
"GB-Eire",
|
|
"GMT",
|
|
"GMT+0",
|
|
"GMT-0",
|
|
"GMT0",
|
|
"Greenwich",
|
|
"HST",
|
|
"Hongkong",
|
|
"Iceland",
|
|
"Indian/Antananarivo",
|
|
"Indian/Chagos",
|
|
"Indian/Christmas",
|
|
"Indian/Cocos",
|
|
"Indian/Comoro",
|
|
"Indian/Kerguelen",
|
|
"Indian/Mahe",
|
|
"Indian/Maldives",
|
|
"Indian/Mauritius",
|
|
"Indian/Mayotte",
|
|
"Indian/Reunion",
|
|
"Iran",
|
|
"Israel",
|
|
"Jamaica",
|
|
"Japan",
|
|
"Kwajalein",
|
|
"Libya",
|
|
"MET",
|
|
"MST",
|
|
"MST7MDT",
|
|
"Mexico/BajaNorte",
|
|
"Mexico/BajaSur",
|
|
"Mexico/General",
|
|
"NZ",
|
|
"NZ-CHAT",
|
|
"Navajo",
|
|
"PRC",
|
|
"PST8PDT",
|
|
"Pacific/Apia",
|
|
"Pacific/Auckland",
|
|
"Pacific/Bougainville",
|
|
"Pacific/Chatham",
|
|
"Pacific/Chuuk",
|
|
"Pacific/Easter",
|
|
"Pacific/Efate",
|
|
"Pacific/Enderbury",
|
|
"Pacific/Fakaofo",
|
|
"Pacific/Fiji",
|
|
"Pacific/Funafuti",
|
|
"Pacific/Galapagos",
|
|
"Pacific/Gambier",
|
|
"Pacific/Guadalcanal",
|
|
"Pacific/Guam",
|
|
"Pacific/Honolulu",
|
|
"Pacific/Johnston",
|
|
"Pacific/Kanton",
|
|
"Pacific/Kiritimati",
|
|
"Pacific/Kosrae",
|
|
"Pacific/Kwajalein",
|
|
"Pacific/Majuro",
|
|
"Pacific/Marquesas",
|
|
"Pacific/Midway",
|
|
"Pacific/Nauru",
|
|
"Pacific/Niue",
|
|
"Pacific/Norfolk",
|
|
"Pacific/Noumea",
|
|
"Pacific/Pago_Pago",
|
|
"Pacific/Palau",
|
|
"Pacific/Pitcairn",
|
|
"Pacific/Pohnpei",
|
|
"Pacific/Ponape",
|
|
"Pacific/Port_Moresby",
|
|
"Pacific/Rarotonga",
|
|
"Pacific/Saipan",
|
|
"Pacific/Samoa",
|
|
"Pacific/Tahiti",
|
|
"Pacific/Tarawa",
|
|
"Pacific/Tongatapu",
|
|
"Pacific/Truk",
|
|
"Pacific/Wake",
|
|
"Pacific/Wallis",
|
|
"Pacific/Yap",
|
|
"Poland",
|
|
"Portugal",
|
|
"ROC",
|
|
"ROK",
|
|
"Singapore",
|
|
"Turkey",
|
|
"UCT",
|
|
"US/Alaska",
|
|
"US/Aleutian",
|
|
"US/Arizona",
|
|
"US/Central",
|
|
"US/East-Indiana",
|
|
"US/Eastern",
|
|
"US/Hawaii",
|
|
"US/Indiana-Starke",
|
|
"US/Michigan",
|
|
"US/Mountain",
|
|
"US/Pacific",
|
|
"US/Samoa",
|
|
"UTC",
|
|
"Universal",
|
|
"W-SU",
|
|
"WET",
|
|
"Zulu"
|
|
],
|
|
"minLength": 1,
|
|
"title": "Timezone"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["timezone"],
|
|
"title": "UpdateTimezoneRequest"
|
|
},
|
|
"UploadFileResponse": {
|
|
"properties": {
|
|
"file_uri": { "type": "string", "title": "File Uri" },
|
|
"file_name": { "type": "string", "title": "File Name" },
|
|
"size": { "type": "integer", "title": "Size" },
|
|
"content_type": { "type": "string", "title": "Content Type" },
|
|
"expires_in_hours": { "type": "integer", "title": "Expires In Hours" }
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"file_uri",
|
|
"file_name",
|
|
"size",
|
|
"content_type",
|
|
"expires_in_hours"
|
|
],
|
|
"title": "UploadFileResponse"
|
|
},
|
|
"UserHistoryResponse": {
|
|
"properties": {
|
|
"history": {
|
|
"items": { "$ref": "#/components/schemas/UserTransaction" },
|
|
"type": "array",
|
|
"title": "History"
|
|
},
|
|
"pagination": { "$ref": "#/components/schemas/Pagination" }
|
|
},
|
|
"type": "object",
|
|
"required": ["history", "pagination"],
|
|
"title": "UserHistoryResponse",
|
|
"description": "Response model for listings with version history"
|
|
},
|
|
"UserOnboarding": {
|
|
"properties": {
|
|
"userId": { "type": "string", "title": "Userid" },
|
|
"completedSteps": {
|
|
"items": { "$ref": "#/components/schemas/OnboardingStep" },
|
|
"type": "array",
|
|
"title": "Completedsteps"
|
|
},
|
|
"walletShown": { "type": "boolean", "title": "Walletshown" },
|
|
"notified": {
|
|
"items": { "$ref": "#/components/schemas/OnboardingStep" },
|
|
"type": "array",
|
|
"title": "Notified"
|
|
},
|
|
"rewardedFor": {
|
|
"items": { "$ref": "#/components/schemas/OnboardingStep" },
|
|
"type": "array",
|
|
"title": "Rewardedfor"
|
|
},
|
|
"usageReason": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Usagereason"
|
|
},
|
|
"integrations": {
|
|
"items": { "type": "string" },
|
|
"type": "array",
|
|
"title": "Integrations"
|
|
},
|
|
"otherIntegrations": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Otherintegrations"
|
|
},
|
|
"selectedStoreListingVersionId": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Selectedstorelistingversionid"
|
|
},
|
|
"agentInput": {
|
|
"anyOf": [
|
|
{ "additionalProperties": true, "type": "object" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Agentinput"
|
|
},
|
|
"onboardingAgentExecutionId": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Onboardingagentexecutionid"
|
|
},
|
|
"agentRuns": { "type": "integer", "title": "Agentruns" },
|
|
"lastRunAt": {
|
|
"anyOf": [
|
|
{ "type": "string", "format": "date-time" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Lastrunat"
|
|
},
|
|
"consecutiveRunDays": {
|
|
"type": "integer",
|
|
"title": "Consecutiverundays"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"userId",
|
|
"completedSteps",
|
|
"walletShown",
|
|
"notified",
|
|
"rewardedFor",
|
|
"usageReason",
|
|
"integrations",
|
|
"otherIntegrations",
|
|
"selectedStoreListingVersionId",
|
|
"agentInput",
|
|
"onboardingAgentExecutionId",
|
|
"agentRuns",
|
|
"lastRunAt",
|
|
"consecutiveRunDays"
|
|
],
|
|
"title": "UserOnboarding"
|
|
},
|
|
"UserOnboardingUpdate": {
|
|
"properties": {
|
|
"walletShown": {
|
|
"anyOf": [{ "type": "boolean" }, { "type": "null" }],
|
|
"title": "Walletshown"
|
|
},
|
|
"notified": {
|
|
"anyOf": [
|
|
{
|
|
"items": { "$ref": "#/components/schemas/OnboardingStep" },
|
|
"type": "array"
|
|
},
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Notified"
|
|
},
|
|
"usageReason": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Usagereason"
|
|
},
|
|
"integrations": {
|
|
"anyOf": [
|
|
{ "items": { "type": "string" }, "type": "array" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Integrations"
|
|
},
|
|
"otherIntegrations": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Otherintegrations"
|
|
},
|
|
"selectedStoreListingVersionId": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Selectedstorelistingversionid"
|
|
},
|
|
"agentInput": {
|
|
"anyOf": [
|
|
{ "additionalProperties": true, "type": "object" },
|
|
{ "type": "null" }
|
|
],
|
|
"title": "Agentinput"
|
|
},
|
|
"onboardingAgentExecutionId": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Onboardingagentexecutionid"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"title": "UserOnboardingUpdate"
|
|
},
|
|
"UserPasswordCredentials": {
|
|
"properties": {
|
|
"id": { "type": "string", "title": "Id" },
|
|
"provider": { "type": "string", "title": "Provider" },
|
|
"title": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Title"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"const": "user_password",
|
|
"title": "Type",
|
|
"default": "user_password"
|
|
},
|
|
"username": {
|
|
"type": "string",
|
|
"format": "password",
|
|
"title": "Username",
|
|
"writeOnly": true
|
|
},
|
|
"password": {
|
|
"type": "string",
|
|
"format": "password",
|
|
"title": "Password",
|
|
"writeOnly": true
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["provider", "username", "password"],
|
|
"title": "UserPasswordCredentials"
|
|
},
|
|
"UserTransaction": {
|
|
"properties": {
|
|
"transaction_key": {
|
|
"type": "string",
|
|
"title": "Transaction Key",
|
|
"default": ""
|
|
},
|
|
"transaction_time": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "Transaction Time",
|
|
"default": "0001-01-01T00:00:00Z"
|
|
},
|
|
"transaction_type": {
|
|
"$ref": "#/components/schemas/CreditTransactionType",
|
|
"default": "USAGE"
|
|
},
|
|
"amount": { "type": "integer", "title": "Amount", "default": 0 },
|
|
"running_balance": {
|
|
"type": "integer",
|
|
"title": "Running Balance",
|
|
"default": 0
|
|
},
|
|
"current_balance": {
|
|
"type": "integer",
|
|
"title": "Current Balance",
|
|
"default": 0
|
|
},
|
|
"description": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Description"
|
|
},
|
|
"usage_graph_id": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Usage Graph Id"
|
|
},
|
|
"usage_execution_id": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Usage Execution Id"
|
|
},
|
|
"usage_node_count": {
|
|
"type": "integer",
|
|
"title": "Usage Node Count",
|
|
"default": 0
|
|
},
|
|
"usage_start_time": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "Usage Start Time",
|
|
"default": "9999-12-31T23:59:59.999999Z"
|
|
},
|
|
"user_id": { "type": "string", "title": "User Id" },
|
|
"user_email": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "User Email"
|
|
},
|
|
"reason": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Reason"
|
|
},
|
|
"admin_email": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Admin Email"
|
|
},
|
|
"extra_data": {
|
|
"anyOf": [{ "type": "string" }, { "type": "null" }],
|
|
"title": "Extra Data"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": ["user_id"],
|
|
"title": "UserTransaction"
|
|
},
|
|
"ValidationError": {
|
|
"properties": {
|
|
"loc": {
|
|
"items": { "anyOf": [{ "type": "string" }, { "type": "integer" }] },
|
|
"type": "array",
|
|
"title": "Location"
|
|
},
|
|
"msg": { "type": "string", "title": "Message" },
|
|
"type": { "type": "string", "title": "Error Type" }
|
|
},
|
|
"type": "object",
|
|
"required": ["loc", "msg", "type"],
|
|
"title": "ValidationError"
|
|
},
|
|
"Webhook": {
|
|
"properties": {
|
|
"id": { "type": "string", "title": "Id" },
|
|
"user_id": { "type": "string", "title": "User Id" },
|
|
"provider": {
|
|
"type": "string",
|
|
"title": "Provider",
|
|
"description": "Provider name for integrations. Can be any string value, including custom provider names."
|
|
},
|
|
"credentials_id": { "type": "string", "title": "Credentials Id" },
|
|
"webhook_type": { "type": "string", "title": "Webhook Type" },
|
|
"resource": { "type": "string", "title": "Resource" },
|
|
"events": {
|
|
"items": { "type": "string" },
|
|
"type": "array",
|
|
"title": "Events"
|
|
},
|
|
"config": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Config"
|
|
},
|
|
"secret": { "type": "string", "title": "Secret" },
|
|
"provider_webhook_id": {
|
|
"type": "string",
|
|
"title": "Provider Webhook Id"
|
|
},
|
|
"url": { "type": "string", "title": "Url", "readOnly": true }
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"user_id",
|
|
"provider",
|
|
"credentials_id",
|
|
"webhook_type",
|
|
"resource",
|
|
"events",
|
|
"secret",
|
|
"provider_webhook_id",
|
|
"url"
|
|
],
|
|
"title": "Webhook"
|
|
}
|
|
},
|
|
"securitySchemes": {
|
|
"APIKeyAuthenticator-X-Postmark-Webhook-Token": {
|
|
"type": "apiKey",
|
|
"in": "header",
|
|
"name": "X-Postmark-Webhook-Token"
|
|
},
|
|
"HTTPBearer": { "type": "http", "scheme": "bearer" },
|
|
"HTTPBearerJWT": {
|
|
"type": "http",
|
|
"scheme": "bearer",
|
|
"bearerFormat": "jwt"
|
|
}
|
|
},
|
|
"responses": {
|
|
"HTTP401NotAuthenticatedError": {
|
|
"description": "Authentication required",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": { "detail": { "type": "string" } }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|