@proveanything/smartlinks 2.0.18 → 2.0.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/ai.d.ts +62 -2
- package/dist/api/ai.js +90 -0
- package/dist/api/functions.d.ts +27 -0
- package/dist/api/functions.js +38 -0
- package/dist/api/index.d.ts +1 -0
- package/dist/api/index.js +1 -0
- package/dist/docs/API_SUMMARY.md +131 -2
- package/dist/docs/host-dependency-contract.md +12 -3
- package/dist/openapi.yaml +387 -4
- package/dist/testing/index.js +6 -0
- package/dist/types/ai.d.ts +71 -0
- package/dist/types/appManifest.d.ts +7 -1
- package/docs/API_SUMMARY.md +131 -2
- package/docs/host-dependency-contract.md +12 -3
- package/openapi.yaml +387 -4
- package/package.json +1 -1
package/docs/API_SUMMARY.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Smartlinks API Summary
|
|
2
2
|
|
|
3
|
-
Version: 2.0.
|
|
3
|
+
Version: 2.0.20 | Generated: 2026-09-25T11:48:23.950Z
|
|
4
4
|
|
|
5
5
|
This is a concise summary of all available API functions and types.
|
|
6
6
|
|
|
@@ -135,6 +135,7 @@ The Smartlinks SDK is organized into the following namespaces:
|
|
|
135
135
|
- **config** - Functions for config operations
|
|
136
136
|
- **containers** - Functions for containers operations
|
|
137
137
|
- **facets** - Functions for facets operations
|
|
138
|
+
- **functions** - Functions for functions operations
|
|
138
139
|
- **http** - Functions for http operations
|
|
139
140
|
- **integrations** - Functions for integrations operations
|
|
140
141
|
- **jobs** - Functions for jobs operations
|
|
@@ -580,6 +581,8 @@ interface ResponsesRequest {
|
|
|
580
581
|
max_concurrent_subagents?: number
|
|
581
582
|
}
|
|
582
583
|
service_tier?: 'auto' | 'standard' | 'flex' | 'priority'
|
|
584
|
+
feature?: string
|
|
585
|
+
session_id?: string
|
|
583
586
|
server_tools?: boolean | AiToolName[]
|
|
584
587
|
allowCapabilities?: AiToolCapability[]
|
|
585
588
|
only?: AiToolName[]
|
|
@@ -857,6 +860,55 @@ interface SessionStatistics {
|
|
|
857
860
|
}
|
|
858
861
|
```
|
|
859
862
|
|
|
863
|
+
**AiSession** (interface)
|
|
864
|
+
```typescript
|
|
865
|
+
interface AiSession {
|
|
866
|
+
id: string
|
|
867
|
+
collectionId: string
|
|
868
|
+
appId?: string | null
|
|
869
|
+
scope: AiSessionScope
|
|
870
|
+
title?: string | null
|
|
871
|
+
status: string
|
|
872
|
+
ownerId?: string | null
|
|
873
|
+
authorId?: string | null
|
|
874
|
+
productId?: string | null
|
|
875
|
+
proofId?: string | null
|
|
876
|
+
feature?: string | null
|
|
877
|
+
items: ResponseInputItem[]
|
|
878
|
+
summary?: Record<string, any>
|
|
879
|
+
usage?: Record<string, any>
|
|
880
|
+
itemCount: number
|
|
881
|
+
lastTurnAt?: string | null
|
|
882
|
+
createdAt: string
|
|
883
|
+
updatedAt: string
|
|
884
|
+
expiresAt?: string | null
|
|
885
|
+
}
|
|
886
|
+
```
|
|
887
|
+
|
|
888
|
+
**AiSessionCreate** (interface)
|
|
889
|
+
```typescript
|
|
890
|
+
interface AiSessionCreate {
|
|
891
|
+
appId?: string
|
|
892
|
+
title?: string
|
|
893
|
+
productId?: string
|
|
894
|
+
proofId?: string
|
|
895
|
+
feature?: string
|
|
896
|
+
ttlMs?: number
|
|
897
|
+
items?: ResponseInputItem[]
|
|
898
|
+
}
|
|
899
|
+
```
|
|
900
|
+
|
|
901
|
+
**AiUsageReport** (interface)
|
|
902
|
+
```typescript
|
|
903
|
+
interface AiUsageReport {
|
|
904
|
+
groupBy: string[]
|
|
905
|
+
from?: string | null
|
|
906
|
+
to?: string | null
|
|
907
|
+
totals: { promptTokens: number; outputTokens: number; totalTokens: number; requests: number; costUnits: number }
|
|
908
|
+
groups: Array<Record<string, any> & { promptTokens: number; outputTokens: number; totalTokens: number; requests: number; costUnits: number }>
|
|
909
|
+
}
|
|
910
|
+
```
|
|
911
|
+
|
|
860
912
|
**VoiceSessionRequest** (interface)
|
|
861
913
|
```typescript
|
|
862
914
|
interface VoiceSessionRequest {
|
|
@@ -1440,6 +1492,8 @@ interface AgentResponseCompletedEvent {
|
|
|
1440
1492
|
}
|
|
1441
1493
|
```
|
|
1442
1494
|
|
|
1495
|
+
**AiSessionScope** = `'admin' | 'owner' | 'public'`
|
|
1496
|
+
|
|
1443
1497
|
**AiToolCapability** = ``
|
|
1444
1498
|
|
|
1445
1499
|
**AiToolName** = ``
|
|
@@ -2102,7 +2156,10 @@ interface ServerFunctionContext {
|
|
|
2102
2156
|
collectionId: string;
|
|
2103
2157
|
appId: string;
|
|
2104
2158
|
sl: any;
|
|
2105
|
-
secrets: {
|
|
2159
|
+
secrets: {
|
|
2160
|
+
get(ref: string): Promise<string | null>;
|
|
2161
|
+
app(ref: string): Promise<string | null>;
|
|
2162
|
+
};
|
|
2106
2163
|
caller: ServerFunctionCaller;
|
|
2107
2164
|
fetch: typeof fetch;
|
|
2108
2165
|
log: (message: string, data?: Record<string, any>) => void;
|
|
@@ -8887,6 +8944,24 @@ type VerifyTokenResponse = {
|
|
|
8887
8944
|
}
|
|
8888
8945
|
```
|
|
8889
8946
|
|
|
8947
|
+
### functions (api)
|
|
8948
|
+
|
|
8949
|
+
**FunctionListEntry** (interface)
|
|
8950
|
+
```typescript
|
|
8951
|
+
interface FunctionListEntry {
|
|
8952
|
+
name: string; visibility?: string; trigger?: string
|
|
8953
|
+
}
|
|
8954
|
+
```
|
|
8955
|
+
|
|
8956
|
+
**FunctionListResponse** (interface)
|
|
8957
|
+
```typescript
|
|
8958
|
+
interface FunctionListResponse {
|
|
8959
|
+
functions: FunctionListEntry[]
|
|
8960
|
+
}
|
|
8961
|
+
```
|
|
8962
|
+
|
|
8963
|
+
**FunctionCallResult** = `any`
|
|
8964
|
+
|
|
8890
8965
|
### sequence (api)
|
|
8891
8966
|
|
|
8892
8967
|
**AllocateSequenceInput** (interface)
|
|
@@ -10379,6 +10454,21 @@ Update a form for a collection (admin only).
|
|
|
10379
10454
|
**remove**(collectionId: string, formId: string) → `Promise<void>`
|
|
10380
10455
|
Delete a form for a collection (admin only).
|
|
10381
10456
|
|
|
10457
|
+
### functions
|
|
10458
|
+
|
|
10459
|
+
**call**(collectionId: string,
|
|
10460
|
+
name: string,
|
|
10461
|
+
body: Record<string, any> = {}) → `Promise<T>`
|
|
10462
|
+
Call a PUBLIC app server function inline. `POST /public/collection/:collectionId/functions/:name` — surface `'public'`. const { value } = await SL.functions.call<{ value: number }>(collectionId, 'increment')
|
|
10463
|
+
|
|
10464
|
+
**callAdmin**(collectionId: string,
|
|
10465
|
+
name: string,
|
|
10466
|
+
body: Record<string, any> = {}) → `Promise<T>`
|
|
10467
|
+
Call an ADMIN app server function (surface `'admin'`; requires an admin session). `POST /admin/collection/:collectionId/functions/:name`.
|
|
10468
|
+
|
|
10469
|
+
**list**(collectionId: string) → `Promise<FunctionListResponse>`
|
|
10470
|
+
List the public functions available for a collection (discovery). `GET /public/collection/:c/functions`.
|
|
10471
|
+
|
|
10382
10472
|
### http
|
|
10383
10473
|
|
|
10384
10474
|
**get**(path: string) → `Promise<T>`
|
|
@@ -11091,6 +11181,27 @@ Check rate limit status
|
|
|
11091
11181
|
request: EphemeralTokenRequest) → `Promise<EphemeralTokenResponse>`
|
|
11092
11182
|
Generate ephemeral token for Gemini Live
|
|
11093
11183
|
|
|
11184
|
+
### publicClient.sessions
|
|
11185
|
+
|
|
11186
|
+
**create**(collectionId: string,
|
|
11187
|
+
body: AiSessionCreate & { scope?: 'owner' | 'public' } = {}) → `Promise<AiSession>`
|
|
11188
|
+
|
|
11189
|
+
**list**(collectionId: string,
|
|
11190
|
+
params?: { appId?: string; limit?: number }) → `Promise<`
|
|
11191
|
+
List the signed-in consumer's own ('owner') sessions — requires an authKit bearer.
|
|
11192
|
+
|
|
11193
|
+
**get**(collectionId: string, id: string) → `Promise<AiSession>`
|
|
11194
|
+
List the signed-in consumer's own ('owner') sessions — requires an authKit bearer.
|
|
11195
|
+
|
|
11196
|
+
**append**(collectionId: string,
|
|
11197
|
+
id: string,
|
|
11198
|
+
items: ResponseInputItem[],
|
|
11199
|
+
opts?: { usage?: Record<string, any> }) → `Promise<AiSession>`
|
|
11200
|
+
List the signed-in consumer's own ('owner') sessions — requires an authKit bearer.
|
|
11201
|
+
|
|
11202
|
+
**clear**(collectionId: string, id: string) → `Promise<`
|
|
11203
|
+
List the signed-in consumer's own ('owner') sessions — requires an authKit bearer.
|
|
11204
|
+
|
|
11094
11205
|
### qr
|
|
11095
11206
|
|
|
11096
11207
|
**lookupShortCode**(shortId: string, code: string) → `Promise<QrShortCodeLookupResponse>`
|
|
@@ -11176,6 +11287,24 @@ Allocate (or return the existing) sequence number for a subject. Idempotent —
|
|
|
11176
11287
|
**stats**(collectionId: string) → `Promise<SessionStatistics>`
|
|
11177
11288
|
Get session statistics
|
|
11178
11289
|
|
|
11290
|
+
**create**(collectionId: string, body: AiSessionCreate = {}) → `Promise<AiSession>`
|
|
11291
|
+
Persisted AI assistant sessions (admin scope) — durable conversation history for admin/host assistants. Create one, then either append your turns explicitly, OR pass its `id` as `session_id` to `ai.chat.responses.create` and the server threads prior turns into the input and persists the new turn automatically (works with `server_tools`).
|
|
11292
|
+
|
|
11293
|
+
**list**(collectionId: string, params?: { appId?: string; limit?: number }) → `Promise<`
|
|
11294
|
+
List sessions, most-recently-active first (optionally filtered by app).
|
|
11295
|
+
|
|
11296
|
+
**get**(collectionId: string, id: string) → `Promise<AiSession>`
|
|
11297
|
+
Get one session, including its full transcript.
|
|
11298
|
+
|
|
11299
|
+
**append**(collectionId: string,
|
|
11300
|
+
id: string,
|
|
11301
|
+
items: ResponseInputItem[],
|
|
11302
|
+
opts?: { usage?: Record<string, any> }) → `Promise<AiSession>`
|
|
11303
|
+
Append Responses items (input/output/tool) to a session — the manual-persistence path.
|
|
11304
|
+
|
|
11305
|
+
**clear**(collectionId: string, id: string) → `Promise<`
|
|
11306
|
+
Archive (soft-delete) a session.
|
|
11307
|
+
|
|
11179
11308
|
### skills
|
|
11180
11309
|
|
|
11181
11310
|
**list**(collectionId: string) → `Promise<SkillsListResponse>`
|
|
@@ -62,12 +62,19 @@ export default defineConfig({
|
|
|
62
62
|
|
|
63
63
|
## Host-provided globals (build against versions ≤ these)
|
|
64
64
|
|
|
65
|
+
> **The SmartLinks packages on the host are always the latest published.** `@proveanything/smartlinks`
|
|
66
|
+
> (and `-utils-ui`, `-auth-ui`) are considered *released* only once Hub and Portal are running them —
|
|
67
|
+
> that's the first place a version lands, by design. So **build against the latest published SmartLinks
|
|
68
|
+
> SDK**; never pin below it. The exact number below is just "current at time of writing" — the rule is
|
|
69
|
+
> *latest*. The third-party framework versions (React, Vite, Router, …) change rarely and are the real
|
|
70
|
+
> compile-time ceiling.
|
|
71
|
+
|
|
65
72
|
| Import | Window global | Host provides (R5) |
|
|
66
73
|
|---|---|---|
|
|
67
74
|
| `react` | `React` | 19.3 (accepts 18.3 builds) |
|
|
68
75
|
| `react-dom` | `ReactDOM` | 19.3 (accepts 18.3 builds) |
|
|
69
76
|
| `react/jsx-runtime` | `jsxRuntime` | 19.3 |
|
|
70
|
-
| `@proveanything/smartlinks` | `SL` | 2.
|
|
77
|
+
| `@proveanything/smartlinks` | `SL` | latest published 2.x (build against latest) |
|
|
71
78
|
| `react-router-dom` | `ReactRouterDOM` | 7.18 (accepts 6.x builds) |
|
|
72
79
|
| `@tanstack/react-query` | `ReactQuery` | 5.103 |
|
|
73
80
|
| `lucide-react` | `LucideReact` | 1.47 |
|
|
@@ -130,10 +137,12 @@ app ships the Tailwind 4 CSS-first layout as the default; see its README.)
|
|
|
130
137
|
## The R5 host stack (reference)
|
|
131
138
|
|
|
132
139
|
React **19.3** · Vite **8.3** · react-router-dom **7.18** · Tailwind **4.3** (CSS-first) ·
|
|
133
|
-
TypeScript **6.0** · ESLint **10.11** ·
|
|
134
|
-
`@proveanything/smartlinks-utils-ui` **1.16.4** · liquidjs **10.29** · marked **12+** ·
|
|
140
|
+
TypeScript **6.0** · ESLint **10.11** · liquidjs **10.29** · marked **12+** ·
|
|
135
141
|
dompurify **3+** · clsx **2+** · tailwind-merge **3+**.
|
|
136
142
|
|
|
143
|
+
The SmartLinks packages (`@proveanything/smartlinks`, `-utils-ui`, `-auth-ui`) are **always the latest
|
|
144
|
+
published 2.x** — see the note above; build against latest, don't pin a specific number here (it rots).
|
|
145
|
+
|
|
137
146
|
> **TypeScript 7** (the native/Go compiler) is **deliberately deferred** — tooling hasn't settled.
|
|
138
147
|
> Target **TS 6** for R5; it compiles existing code with no source changes.
|
|
139
148
|
|
package/openapi.yaml
CHANGED
|
@@ -72,6 +72,8 @@ tags:
|
|
|
72
72
|
description: Product facet querying and aggregation.
|
|
73
73
|
- name: form
|
|
74
74
|
description: Form definitions and submissions.
|
|
75
|
+
- name: functions
|
|
76
|
+
description: functions API
|
|
75
77
|
- name: integrations
|
|
76
78
|
description: Third-party integration flows and imports.
|
|
77
79
|
- name: interactions
|
|
@@ -1081,6 +1083,39 @@ paths:
|
|
|
1081
1083
|
application/json:
|
|
1082
1084
|
schema:
|
|
1083
1085
|
$ref: "#/components/schemas/AISearchPhotosRequest"
|
|
1086
|
+
/admin/collection/{collectionId}/ai/sessions:
|
|
1087
|
+
post:
|
|
1088
|
+
tags:
|
|
1089
|
+
- sessions
|
|
1090
|
+
summary: Persisted AI assistant sessions (admin scope) — durable conversation history for admin/host assistants.
|
|
1091
|
+
operationId: sessions_create
|
|
1092
|
+
security:
|
|
1093
|
+
- bearerAuth: []
|
|
1094
|
+
parameters:
|
|
1095
|
+
- name: collectionId
|
|
1096
|
+
in: path
|
|
1097
|
+
required: true
|
|
1098
|
+
schema:
|
|
1099
|
+
type: string
|
|
1100
|
+
responses:
|
|
1101
|
+
200:
|
|
1102
|
+
description: Success
|
|
1103
|
+
content:
|
|
1104
|
+
application/json:
|
|
1105
|
+
schema:
|
|
1106
|
+
$ref: "#/components/schemas/AiSession"
|
|
1107
|
+
400:
|
|
1108
|
+
description: Bad request
|
|
1109
|
+
401:
|
|
1110
|
+
description: Unauthorized
|
|
1111
|
+
404:
|
|
1112
|
+
description: Not found
|
|
1113
|
+
requestBody:
|
|
1114
|
+
required: true
|
|
1115
|
+
content:
|
|
1116
|
+
application/json:
|
|
1117
|
+
schema:
|
|
1118
|
+
$ref: "#/components/schemas/AiSessionCreate"
|
|
1084
1119
|
/admin/collection/{collectionId}/ai/sessions/stats:
|
|
1085
1120
|
get:
|
|
1086
1121
|
tags:
|
|
@@ -1108,6 +1143,77 @@ paths:
|
|
|
1108
1143
|
description: Unauthorized
|
|
1109
1144
|
404:
|
|
1110
1145
|
description: Not found
|
|
1146
|
+
/admin/collection/{collectionId}/ai/sessions/{id}:
|
|
1147
|
+
get:
|
|
1148
|
+
tags:
|
|
1149
|
+
- sessions
|
|
1150
|
+
summary: Get one session, including its full transcript.
|
|
1151
|
+
operationId: sessions_get
|
|
1152
|
+
security:
|
|
1153
|
+
- bearerAuth: []
|
|
1154
|
+
parameters:
|
|
1155
|
+
- name: collectionId
|
|
1156
|
+
in: path
|
|
1157
|
+
required: true
|
|
1158
|
+
schema:
|
|
1159
|
+
type: string
|
|
1160
|
+
- name: id
|
|
1161
|
+
in: path
|
|
1162
|
+
required: true
|
|
1163
|
+
schema:
|
|
1164
|
+
type: string
|
|
1165
|
+
responses:
|
|
1166
|
+
200:
|
|
1167
|
+
description: Success
|
|
1168
|
+
content:
|
|
1169
|
+
application/json:
|
|
1170
|
+
schema:
|
|
1171
|
+
$ref: "#/components/schemas/AiSession"
|
|
1172
|
+
400:
|
|
1173
|
+
description: Bad request
|
|
1174
|
+
401:
|
|
1175
|
+
description: Unauthorized
|
|
1176
|
+
404:
|
|
1177
|
+
description: Not found
|
|
1178
|
+
/admin/collection/{collectionId}/ai/sessions/{id}/append:
|
|
1179
|
+
post:
|
|
1180
|
+
tags:
|
|
1181
|
+
- sessions
|
|
1182
|
+
summary: Append Responses items (input/output/tool) to a session — the manual-persistence path.
|
|
1183
|
+
operationId: sessions_append
|
|
1184
|
+
security:
|
|
1185
|
+
- bearerAuth: []
|
|
1186
|
+
parameters:
|
|
1187
|
+
- name: collectionId
|
|
1188
|
+
in: path
|
|
1189
|
+
required: true
|
|
1190
|
+
schema:
|
|
1191
|
+
type: string
|
|
1192
|
+
- name: id
|
|
1193
|
+
in: path
|
|
1194
|
+
required: true
|
|
1195
|
+
schema:
|
|
1196
|
+
type: string
|
|
1197
|
+
responses:
|
|
1198
|
+
200:
|
|
1199
|
+
description: Success
|
|
1200
|
+
content:
|
|
1201
|
+
application/json:
|
|
1202
|
+
schema:
|
|
1203
|
+
$ref: "#/components/schemas/AiSession"
|
|
1204
|
+
400:
|
|
1205
|
+
description: Bad request
|
|
1206
|
+
401:
|
|
1207
|
+
description: Unauthorized
|
|
1208
|
+
404:
|
|
1209
|
+
description: Not found
|
|
1210
|
+
requestBody:
|
|
1211
|
+
required: true
|
|
1212
|
+
content:
|
|
1213
|
+
application/json:
|
|
1214
|
+
schema:
|
|
1215
|
+
type: object
|
|
1216
|
+
additionalProperties: true
|
|
1111
1217
|
/admin/collection/{collectionId}/ai/skills:
|
|
1112
1218
|
get:
|
|
1113
1219
|
tags:
|
|
@@ -1196,6 +1302,33 @@ paths:
|
|
|
1196
1302
|
description: Unauthorized
|
|
1197
1303
|
404:
|
|
1198
1304
|
description: Not found
|
|
1305
|
+
/admin/collection/{collectionId}/ai/usage:
|
|
1306
|
+
get:
|
|
1307
|
+
tags:
|
|
1308
|
+
- sessions
|
|
1309
|
+
summary: AI usage / cost report for a collection, grouped by any of model/serviceTier/appId/feature/mode over an optional date window.
|
|
1310
|
+
operationId: sessions_usage
|
|
1311
|
+
security:
|
|
1312
|
+
- bearerAuth: []
|
|
1313
|
+
parameters:
|
|
1314
|
+
- name: collectionId
|
|
1315
|
+
in: path
|
|
1316
|
+
required: true
|
|
1317
|
+
schema:
|
|
1318
|
+
type: string
|
|
1319
|
+
responses:
|
|
1320
|
+
200:
|
|
1321
|
+
description: Success
|
|
1322
|
+
content:
|
|
1323
|
+
application/json:
|
|
1324
|
+
schema:
|
|
1325
|
+
$ref: "#/components/schemas/AiUsageReport"
|
|
1326
|
+
400:
|
|
1327
|
+
description: Bad request
|
|
1328
|
+
401:
|
|
1329
|
+
description: Unauthorized
|
|
1330
|
+
404:
|
|
1331
|
+
description: Not found
|
|
1199
1332
|
/admin/collection/{collectionId}/ai/v1/chat/completions:
|
|
1200
1333
|
post:
|
|
1201
1334
|
tags:
|
|
@@ -10294,9 +10427,9 @@ paths:
|
|
|
10294
10427
|
/public/collection/{collectionId}/ai/rate-limit/{userId}:
|
|
10295
10428
|
get:
|
|
10296
10429
|
tags:
|
|
10297
|
-
-
|
|
10430
|
+
- sessions
|
|
10298
10431
|
summary: Check rate limit status
|
|
10299
|
-
operationId:
|
|
10432
|
+
operationId: sessions_getRateLimit
|
|
10300
10433
|
security: []
|
|
10301
10434
|
parameters:
|
|
10302
10435
|
- name: collectionId
|
|
@@ -10353,12 +10486,113 @@ paths:
|
|
|
10353
10486
|
description: Unauthorized
|
|
10354
10487
|
404:
|
|
10355
10488
|
description: Not found
|
|
10489
|
+
/public/collection/{collectionId}/ai/sessions:
|
|
10490
|
+
post:
|
|
10491
|
+
tags:
|
|
10492
|
+
- sessions
|
|
10493
|
+
summary: sessions.create
|
|
10494
|
+
operationId: sessions_create
|
|
10495
|
+
security: []
|
|
10496
|
+
parameters:
|
|
10497
|
+
- name: collectionId
|
|
10498
|
+
in: path
|
|
10499
|
+
required: true
|
|
10500
|
+
schema:
|
|
10501
|
+
type: string
|
|
10502
|
+
responses:
|
|
10503
|
+
200:
|
|
10504
|
+
description: Success
|
|
10505
|
+
content:
|
|
10506
|
+
application/json:
|
|
10507
|
+
schema:
|
|
10508
|
+
$ref: "#/components/schemas/AiSession"
|
|
10509
|
+
400:
|
|
10510
|
+
description: Bad request
|
|
10511
|
+
401:
|
|
10512
|
+
description: Unauthorized
|
|
10513
|
+
404:
|
|
10514
|
+
description: Not found
|
|
10515
|
+
requestBody:
|
|
10516
|
+
required: true
|
|
10517
|
+
content:
|
|
10518
|
+
application/json:
|
|
10519
|
+
schema:
|
|
10520
|
+
$ref: "#/components/schemas/AiSessionCreate"
|
|
10521
|
+
/public/collection/{collectionId}/ai/sessions/{id}:
|
|
10522
|
+
get:
|
|
10523
|
+
tags:
|
|
10524
|
+
- sessions
|
|
10525
|
+
summary: sessions.get
|
|
10526
|
+
operationId: sessions_get
|
|
10527
|
+
security: []
|
|
10528
|
+
parameters:
|
|
10529
|
+
- name: collectionId
|
|
10530
|
+
in: path
|
|
10531
|
+
required: true
|
|
10532
|
+
schema:
|
|
10533
|
+
type: string
|
|
10534
|
+
- name: id
|
|
10535
|
+
in: path
|
|
10536
|
+
required: true
|
|
10537
|
+
schema:
|
|
10538
|
+
type: string
|
|
10539
|
+
responses:
|
|
10540
|
+
200:
|
|
10541
|
+
description: Success
|
|
10542
|
+
content:
|
|
10543
|
+
application/json:
|
|
10544
|
+
schema:
|
|
10545
|
+
$ref: "#/components/schemas/AiSession"
|
|
10546
|
+
400:
|
|
10547
|
+
description: Bad request
|
|
10548
|
+
401:
|
|
10549
|
+
description: Unauthorized
|
|
10550
|
+
404:
|
|
10551
|
+
description: Not found
|
|
10552
|
+
/public/collection/{collectionId}/ai/sessions/{id}/append:
|
|
10553
|
+
post:
|
|
10554
|
+
tags:
|
|
10555
|
+
- sessions
|
|
10556
|
+
summary: sessions.append
|
|
10557
|
+
operationId: sessions_append
|
|
10558
|
+
security: []
|
|
10559
|
+
parameters:
|
|
10560
|
+
- name: collectionId
|
|
10561
|
+
in: path
|
|
10562
|
+
required: true
|
|
10563
|
+
schema:
|
|
10564
|
+
type: string
|
|
10565
|
+
- name: id
|
|
10566
|
+
in: path
|
|
10567
|
+
required: true
|
|
10568
|
+
schema:
|
|
10569
|
+
type: string
|
|
10570
|
+
responses:
|
|
10571
|
+
200:
|
|
10572
|
+
description: Success
|
|
10573
|
+
content:
|
|
10574
|
+
application/json:
|
|
10575
|
+
schema:
|
|
10576
|
+
$ref: "#/components/schemas/AiSession"
|
|
10577
|
+
400:
|
|
10578
|
+
description: Bad request
|
|
10579
|
+
401:
|
|
10580
|
+
description: Unauthorized
|
|
10581
|
+
404:
|
|
10582
|
+
description: Not found
|
|
10583
|
+
requestBody:
|
|
10584
|
+
required: true
|
|
10585
|
+
content:
|
|
10586
|
+
application/json:
|
|
10587
|
+
schema:
|
|
10588
|
+
type: object
|
|
10589
|
+
additionalProperties: true
|
|
10356
10590
|
/public/collection/{collectionId}/ai/token:
|
|
10357
10591
|
post:
|
|
10358
10592
|
tags:
|
|
10359
|
-
-
|
|
10593
|
+
- sessions
|
|
10360
10594
|
summary: Generate ephemeral token for Gemini Live
|
|
10361
|
-
operationId:
|
|
10595
|
+
operationId: sessions_getToken
|
|
10362
10596
|
security: []
|
|
10363
10597
|
parameters:
|
|
10364
10598
|
- name: collectionId
|
|
@@ -11918,6 +12152,32 @@ paths:
|
|
|
11918
12152
|
description: Unauthorized
|
|
11919
12153
|
404:
|
|
11920
12154
|
description: Not found
|
|
12155
|
+
/public/collection/{collectionId}/functions:
|
|
12156
|
+
get:
|
|
12157
|
+
tags:
|
|
12158
|
+
- functions
|
|
12159
|
+
summary: List the public functions available for a collection (discovery).
|
|
12160
|
+
operationId: functions_list
|
|
12161
|
+
security: []
|
|
12162
|
+
parameters:
|
|
12163
|
+
- name: collectionId
|
|
12164
|
+
in: path
|
|
12165
|
+
required: true
|
|
12166
|
+
schema:
|
|
12167
|
+
type: string
|
|
12168
|
+
responses:
|
|
12169
|
+
200:
|
|
12170
|
+
description: Success
|
|
12171
|
+
content:
|
|
12172
|
+
application/json:
|
|
12173
|
+
schema:
|
|
12174
|
+
$ref: "#/components/schemas/FunctionListResponse"
|
|
12175
|
+
400:
|
|
12176
|
+
description: Bad request
|
|
12177
|
+
401:
|
|
12178
|
+
description: Unauthorized
|
|
12179
|
+
404:
|
|
12180
|
+
description: Not found
|
|
11921
12181
|
/public/collection/{collectionId}/interactions:
|
|
11922
12182
|
get:
|
|
11923
12183
|
tags:
|
|
@@ -15244,6 +15504,10 @@ components:
|
|
|
15244
15504
|
- standard
|
|
15245
15505
|
- flex
|
|
15246
15506
|
- priority
|
|
15507
|
+
feature:
|
|
15508
|
+
type: string
|
|
15509
|
+
session_id:
|
|
15510
|
+
type: string
|
|
15247
15511
|
server_tools:
|
|
15248
15512
|
type: array
|
|
15249
15513
|
items:
|
|
@@ -15799,6 +16063,102 @@ components:
|
|
|
15799
16063
|
- activeSessions
|
|
15800
16064
|
- totalMessages
|
|
15801
16065
|
- rateLimitedUsers
|
|
16066
|
+
AiSession:
|
|
16067
|
+
type: object
|
|
16068
|
+
properties:
|
|
16069
|
+
id:
|
|
16070
|
+
type: string
|
|
16071
|
+
collectionId:
|
|
16072
|
+
type: string
|
|
16073
|
+
appId:
|
|
16074
|
+
type: string
|
|
16075
|
+
scope:
|
|
16076
|
+
$ref: "#/components/schemas/AiSessionScope"
|
|
16077
|
+
title:
|
|
16078
|
+
type: string
|
|
16079
|
+
status:
|
|
16080
|
+
type: string
|
|
16081
|
+
ownerId:
|
|
16082
|
+
type: string
|
|
16083
|
+
authorId:
|
|
16084
|
+
type: string
|
|
16085
|
+
productId:
|
|
16086
|
+
type: string
|
|
16087
|
+
proofId:
|
|
16088
|
+
type: string
|
|
16089
|
+
feature:
|
|
16090
|
+
type: string
|
|
16091
|
+
items:
|
|
16092
|
+
type: array
|
|
16093
|
+
items:
|
|
16094
|
+
$ref: "#/components/schemas/ResponseInputItem"
|
|
16095
|
+
summary:
|
|
16096
|
+
type: object
|
|
16097
|
+
additionalProperties: true
|
|
16098
|
+
usage:
|
|
16099
|
+
type: object
|
|
16100
|
+
additionalProperties: true
|
|
16101
|
+
itemCount:
|
|
16102
|
+
type: number
|
|
16103
|
+
lastTurnAt:
|
|
16104
|
+
type: string
|
|
16105
|
+
createdAt:
|
|
16106
|
+
type: string
|
|
16107
|
+
updatedAt:
|
|
16108
|
+
type: string
|
|
16109
|
+
expiresAt:
|
|
16110
|
+
type: string
|
|
16111
|
+
required:
|
|
16112
|
+
- id
|
|
16113
|
+
- collectionId
|
|
16114
|
+
- scope
|
|
16115
|
+
- status
|
|
16116
|
+
- items
|
|
16117
|
+
- itemCount
|
|
16118
|
+
- createdAt
|
|
16119
|
+
- updatedAt
|
|
16120
|
+
AiSessionCreate:
|
|
16121
|
+
type: object
|
|
16122
|
+
properties:
|
|
16123
|
+
appId:
|
|
16124
|
+
type: string
|
|
16125
|
+
title:
|
|
16126
|
+
type: string
|
|
16127
|
+
productId:
|
|
16128
|
+
type: string
|
|
16129
|
+
proofId:
|
|
16130
|
+
type: string
|
|
16131
|
+
feature:
|
|
16132
|
+
type: string
|
|
16133
|
+
ttlMs:
|
|
16134
|
+
type: number
|
|
16135
|
+
items:
|
|
16136
|
+
type: array
|
|
16137
|
+
items:
|
|
16138
|
+
$ref: "#/components/schemas/ResponseInputItem"
|
|
16139
|
+
AiUsageReport:
|
|
16140
|
+
type: object
|
|
16141
|
+
properties:
|
|
16142
|
+
groupBy:
|
|
16143
|
+
type: array
|
|
16144
|
+
items:
|
|
16145
|
+
type: string
|
|
16146
|
+
from:
|
|
16147
|
+
type: string
|
|
16148
|
+
to:
|
|
16149
|
+
type: string
|
|
16150
|
+
totals:
|
|
16151
|
+
type: object
|
|
16152
|
+
additionalProperties: true
|
|
16153
|
+
groups:
|
|
16154
|
+
type: array
|
|
16155
|
+
items:
|
|
16156
|
+
type: object
|
|
16157
|
+
additionalProperties: true
|
|
16158
|
+
required:
|
|
16159
|
+
- groupBy
|
|
16160
|
+
- totals
|
|
16161
|
+
- groups
|
|
15802
16162
|
VoiceSessionRequest:
|
|
15803
16163
|
type: object
|
|
15804
16164
|
properties:
|
|
@@ -16656,6 +17016,12 @@ components:
|
|
|
16656
17016
|
additionalProperties: true
|
|
16657
17017
|
required:
|
|
16658
17018
|
- type
|
|
17019
|
+
AiSessionScope:
|
|
17020
|
+
type: string
|
|
17021
|
+
enum:
|
|
17022
|
+
- admin
|
|
17023
|
+
- owner
|
|
17024
|
+
- public
|
|
16659
17025
|
AiToolCapability:
|
|
16660
17026
|
type: string
|
|
16661
17027
|
enum:
|
|
@@ -28931,6 +29297,23 @@ components:
|
|
|
28931
29297
|
additionalProperties: true
|
|
28932
29298
|
required:
|
|
28933
29299
|
- valid
|
|
29300
|
+
FunctionListEntry:
|
|
29301
|
+
type: object
|
|
29302
|
+
properties:
|
|
29303
|
+
name:
|
|
29304
|
+
type: object
|
|
29305
|
+
additionalProperties: true
|
|
29306
|
+
required:
|
|
29307
|
+
- name
|
|
29308
|
+
FunctionListResponse:
|
|
29309
|
+
type: object
|
|
29310
|
+
properties:
|
|
29311
|
+
functions:
|
|
29312
|
+
type: array
|
|
29313
|
+
items:
|
|
29314
|
+
$ref: "#/components/schemas/FunctionListEntry"
|
|
29315
|
+
required:
|
|
29316
|
+
- functions
|
|
28934
29317
|
AllocateSequenceInput:
|
|
28935
29318
|
type: object
|
|
28936
29319
|
properties:
|