coaiajs 0.3.2 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +12 -4
- package/agents/custom_gpt/ceremony.yml +3341 -0
- package/dist/mcp/config.d.ts.map +1 -1
- package/dist/mcp/config.js +0 -2
- package/dist/mcp/config.js.map +1 -1
- package/dist/mcp/server.js +3 -8
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/tools/coaiapy-tools.d.ts.map +1 -1
- package/dist/mcp/tools/coaiapy-tools.js +3 -18
- package/dist/mcp/tools/coaiapy-tools.js.map +1 -1
- package/dist/src/cli.js +169 -98
- package/dist/src/cli.js.map +1 -1
- package/dist/src/langfuse/client.d.ts +44 -11
- package/dist/src/langfuse/client.d.ts.map +1 -1
- package/dist/src/langfuse/client.js +171 -8
- package/dist/src/langfuse/client.js.map +1 -1
- package/dist/src/langfuse/comments.js +2 -2
- package/dist/src/langfuse/comments.js.map +1 -1
- package/dist/src/langfuse/index.d.ts +5 -3
- package/dist/src/langfuse/index.d.ts.map +1 -1
- package/dist/src/langfuse/index.js +3 -2
- package/dist/src/langfuse/index.js.map +1 -1
- package/dist/src/langfuse/observations.d.ts +37 -2
- package/dist/src/langfuse/observations.d.ts.map +1 -1
- package/dist/src/langfuse/observations.js +132 -61
- package/dist/src/langfuse/observations.js.map +1 -1
- package/dist/src/langfuse/projects.d.ts +2 -0
- package/dist/src/langfuse/projects.d.ts.map +1 -0
- package/dist/src/langfuse/projects.js +8 -0
- package/dist/src/langfuse/projects.js.map +1 -0
- package/dist/src/langfuse/prompts.d.ts +1 -0
- package/dist/src/langfuse/prompts.d.ts.map +1 -1
- package/dist/src/langfuse/prompts.js +53 -0
- package/dist/src/langfuse/prompts.js.map +1 -1
- package/dist/src/langfuse/scores.d.ts +9 -3
- package/dist/src/langfuse/scores.d.ts.map +1 -1
- package/dist/src/langfuse/scores.js +33 -22
- package/dist/src/langfuse/scores.js.map +1 -1
- package/dist/src/langfuse/traces.d.ts +16 -5
- package/dist/src/langfuse/traces.d.ts.map +1 -1
- package/dist/src/langfuse/traces.js +112 -105
- package/dist/src/langfuse/traces.js.map +1 -1
- package/llms-full.txt +9 -6
- package/llms.txt +3 -3
- package/package.json +7 -2
- package/rispecs/03-langfuse-module.spec.md +5 -0
- package/rispecs/08-cli-interface.spec.md +8 -5
- package/rispecs/09-mcp-server.spec.md +2 -2
|
@@ -0,0 +1,3341 @@
|
|
|
1
|
+
openapi: 3.1.0
|
|
2
|
+
info:
|
|
3
|
+
title: winter_solstice_ceremony_langfuse
|
|
4
|
+
version: 0.4.0
|
|
5
|
+
description: >-
|
|
6
|
+
Langfuse v4-compatible ceremony actions using observations-first reads, Scores API v3, and OpenTelemetry trace
|
|
7
|
+
ingestion.
|
|
8
|
+
summary: This is where we trace, get prompts, store prompts versions, and get scores. and various things for the ceremony.
|
|
9
|
+
servers:
|
|
10
|
+
- url: https://cloud.langfuse.com
|
|
11
|
+
paths:
|
|
12
|
+
/api/public/dataset-items:
|
|
13
|
+
get:
|
|
14
|
+
description: |-
|
|
15
|
+
Get dataset items. Optionally specify a version to get the items as they existed at that point in time.
|
|
16
|
+
Note: If version parameter is provided, datasetName must also be provided.
|
|
17
|
+
operationId: datasetItems_list
|
|
18
|
+
tags:
|
|
19
|
+
- DatasetItems
|
|
20
|
+
parameters:
|
|
21
|
+
- name: datasetName
|
|
22
|
+
in: query
|
|
23
|
+
required: false
|
|
24
|
+
schema:
|
|
25
|
+
type:
|
|
26
|
+
- string
|
|
27
|
+
- "null"
|
|
28
|
+
- name: sourceTraceId
|
|
29
|
+
in: query
|
|
30
|
+
required: false
|
|
31
|
+
schema:
|
|
32
|
+
type:
|
|
33
|
+
- string
|
|
34
|
+
- "null"
|
|
35
|
+
- name: sourceObservationId
|
|
36
|
+
in: query
|
|
37
|
+
required: false
|
|
38
|
+
schema:
|
|
39
|
+
type:
|
|
40
|
+
- string
|
|
41
|
+
- "null"
|
|
42
|
+
- name: version
|
|
43
|
+
in: query
|
|
44
|
+
description: |-
|
|
45
|
+
ISO 8601 timestamp (RFC 3339, Section 5.6) in UTC (e.g., "2026-01-21T14:35:42Z").
|
|
46
|
+
If provided, returns state of dataset at this timestamp.
|
|
47
|
+
If not provided, returns the latest version. Requires datasetName to be specified.
|
|
48
|
+
required: false
|
|
49
|
+
schema:
|
|
50
|
+
type:
|
|
51
|
+
- string
|
|
52
|
+
- "null"
|
|
53
|
+
format: date-time
|
|
54
|
+
- name: page
|
|
55
|
+
in: query
|
|
56
|
+
description: page number, starts at 1
|
|
57
|
+
required: false
|
|
58
|
+
schema:
|
|
59
|
+
type:
|
|
60
|
+
- integer
|
|
61
|
+
- "null"
|
|
62
|
+
- name: limit
|
|
63
|
+
in: query
|
|
64
|
+
description: limit of items per page
|
|
65
|
+
required: false
|
|
66
|
+
schema:
|
|
67
|
+
type:
|
|
68
|
+
- integer
|
|
69
|
+
- "null"
|
|
70
|
+
responses:
|
|
71
|
+
"200":
|
|
72
|
+
description: ""
|
|
73
|
+
content:
|
|
74
|
+
application/json:
|
|
75
|
+
schema:
|
|
76
|
+
$ref: "#/components/schemas/PaginatedDatasetItems"
|
|
77
|
+
"400":
|
|
78
|
+
description: ""
|
|
79
|
+
content:
|
|
80
|
+
application/json:
|
|
81
|
+
schema: {}
|
|
82
|
+
"401":
|
|
83
|
+
description: ""
|
|
84
|
+
content:
|
|
85
|
+
application/json:
|
|
86
|
+
schema: {}
|
|
87
|
+
"403":
|
|
88
|
+
description: ""
|
|
89
|
+
content:
|
|
90
|
+
application/json:
|
|
91
|
+
schema: {}
|
|
92
|
+
"404":
|
|
93
|
+
description: ""
|
|
94
|
+
content:
|
|
95
|
+
application/json:
|
|
96
|
+
schema: {}
|
|
97
|
+
"405":
|
|
98
|
+
description: ""
|
|
99
|
+
content:
|
|
100
|
+
application/json:
|
|
101
|
+
schema: {}
|
|
102
|
+
security:
|
|
103
|
+
- BasicAuth: []
|
|
104
|
+
x-openai-isConsequential: false
|
|
105
|
+
/api/public/dataset-items/{id}:
|
|
106
|
+
get:
|
|
107
|
+
description: Get a dataset item
|
|
108
|
+
operationId: datasetItems_get
|
|
109
|
+
tags:
|
|
110
|
+
- DatasetItems
|
|
111
|
+
parameters:
|
|
112
|
+
- name: id
|
|
113
|
+
in: path
|
|
114
|
+
required: true
|
|
115
|
+
schema:
|
|
116
|
+
type: string
|
|
117
|
+
responses:
|
|
118
|
+
"200":
|
|
119
|
+
description: ""
|
|
120
|
+
content:
|
|
121
|
+
application/json:
|
|
122
|
+
schema:
|
|
123
|
+
$ref: "#/components/schemas/DatasetItem"
|
|
124
|
+
"400":
|
|
125
|
+
description: ""
|
|
126
|
+
content:
|
|
127
|
+
application/json:
|
|
128
|
+
schema: {}
|
|
129
|
+
"401":
|
|
130
|
+
description: ""
|
|
131
|
+
content:
|
|
132
|
+
application/json:
|
|
133
|
+
schema: {}
|
|
134
|
+
"403":
|
|
135
|
+
description: ""
|
|
136
|
+
content:
|
|
137
|
+
application/json:
|
|
138
|
+
schema: {}
|
|
139
|
+
"404":
|
|
140
|
+
description: ""
|
|
141
|
+
content:
|
|
142
|
+
application/json:
|
|
143
|
+
schema: {}
|
|
144
|
+
"405":
|
|
145
|
+
description: ""
|
|
146
|
+
content:
|
|
147
|
+
application/json:
|
|
148
|
+
schema: {}
|
|
149
|
+
security:
|
|
150
|
+
- BasicAuth: []
|
|
151
|
+
x-openai-isConsequential: false
|
|
152
|
+
/api/public/comments:
|
|
153
|
+
post:
|
|
154
|
+
description: Create a comment. Comments may be attached to different object types (trace, observation, session, prompt).
|
|
155
|
+
operationId: comments_create
|
|
156
|
+
tags:
|
|
157
|
+
- Comments
|
|
158
|
+
parameters: []
|
|
159
|
+
responses:
|
|
160
|
+
"200":
|
|
161
|
+
description: ""
|
|
162
|
+
content:
|
|
163
|
+
application/json:
|
|
164
|
+
schema:
|
|
165
|
+
$ref: "#/components/schemas/CreateCommentResponse"
|
|
166
|
+
"400":
|
|
167
|
+
description: ""
|
|
168
|
+
content:
|
|
169
|
+
application/json:
|
|
170
|
+
schema: {}
|
|
171
|
+
"401":
|
|
172
|
+
description: ""
|
|
173
|
+
content:
|
|
174
|
+
application/json:
|
|
175
|
+
schema: {}
|
|
176
|
+
"403":
|
|
177
|
+
description: ""
|
|
178
|
+
content:
|
|
179
|
+
application/json:
|
|
180
|
+
schema: {}
|
|
181
|
+
"404":
|
|
182
|
+
description: ""
|
|
183
|
+
content:
|
|
184
|
+
application/json:
|
|
185
|
+
schema: {}
|
|
186
|
+
"405":
|
|
187
|
+
description: ""
|
|
188
|
+
content:
|
|
189
|
+
application/json:
|
|
190
|
+
schema: {}
|
|
191
|
+
security:
|
|
192
|
+
- BasicAuth: []
|
|
193
|
+
requestBody:
|
|
194
|
+
required: true
|
|
195
|
+
content:
|
|
196
|
+
application/json:
|
|
197
|
+
schema:
|
|
198
|
+
$ref: "#/components/schemas/CreateCommentRequest"
|
|
199
|
+
x-openai-isConsequential: false
|
|
200
|
+
get:
|
|
201
|
+
description: Get all comments
|
|
202
|
+
operationId: comments_get
|
|
203
|
+
tags:
|
|
204
|
+
- Comments
|
|
205
|
+
parameters:
|
|
206
|
+
- name: page
|
|
207
|
+
in: query
|
|
208
|
+
description: Page number, starts at 1.
|
|
209
|
+
required: false
|
|
210
|
+
schema:
|
|
211
|
+
type:
|
|
212
|
+
- integer
|
|
213
|
+
- "null"
|
|
214
|
+
- name: limit
|
|
215
|
+
in: query
|
|
216
|
+
description: Limit of items per page. If you encounter api issues due to too large page sizes, try to reduce the limit
|
|
217
|
+
required: false
|
|
218
|
+
schema:
|
|
219
|
+
type:
|
|
220
|
+
- integer
|
|
221
|
+
- "null"
|
|
222
|
+
- name: objectType
|
|
223
|
+
in: query
|
|
224
|
+
description: Filter comments by object type (trace, observation, session, prompt).
|
|
225
|
+
required: false
|
|
226
|
+
schema:
|
|
227
|
+
type:
|
|
228
|
+
- string
|
|
229
|
+
- "null"
|
|
230
|
+
- name: objectId
|
|
231
|
+
in: query
|
|
232
|
+
description: Filter comments by object id. If objectType is not provided, an error will be thrown.
|
|
233
|
+
required: false
|
|
234
|
+
schema:
|
|
235
|
+
type:
|
|
236
|
+
- string
|
|
237
|
+
- "null"
|
|
238
|
+
- name: authorUserId
|
|
239
|
+
in: query
|
|
240
|
+
description: Filter comments by author user id.
|
|
241
|
+
required: false
|
|
242
|
+
schema:
|
|
243
|
+
type:
|
|
244
|
+
- string
|
|
245
|
+
- "null"
|
|
246
|
+
responses:
|
|
247
|
+
"200":
|
|
248
|
+
description: ""
|
|
249
|
+
content:
|
|
250
|
+
application/json:
|
|
251
|
+
schema:
|
|
252
|
+
$ref: "#/components/schemas/GetCommentsResponse"
|
|
253
|
+
"400":
|
|
254
|
+
description: ""
|
|
255
|
+
content:
|
|
256
|
+
application/json:
|
|
257
|
+
schema: {}
|
|
258
|
+
"401":
|
|
259
|
+
description: ""
|
|
260
|
+
content:
|
|
261
|
+
application/json:
|
|
262
|
+
schema: {}
|
|
263
|
+
"403":
|
|
264
|
+
description: ""
|
|
265
|
+
content:
|
|
266
|
+
application/json:
|
|
267
|
+
schema: {}
|
|
268
|
+
"404":
|
|
269
|
+
description: ""
|
|
270
|
+
content:
|
|
271
|
+
application/json:
|
|
272
|
+
schema: {}
|
|
273
|
+
"405":
|
|
274
|
+
description: ""
|
|
275
|
+
content:
|
|
276
|
+
application/json:
|
|
277
|
+
schema: {}
|
|
278
|
+
security:
|
|
279
|
+
- BasicAuth: []
|
|
280
|
+
x-openai-isConsequential: false
|
|
281
|
+
/api/public/v2/observations:
|
|
282
|
+
get:
|
|
283
|
+
description: >-
|
|
284
|
+
Get a list of observations with cursor-based pagination and flexible field selection.
|
|
285
|
+
|
|
286
|
+
|
|
287
|
+
## Cursor-based Pagination
|
|
288
|
+
|
|
289
|
+
This endpoint uses cursor-based pagination for efficient traversal of large datasets.
|
|
290
|
+
|
|
291
|
+
The cursor is returned in the response metadata and should be passed in subsequent requests
|
|
292
|
+
|
|
293
|
+
to retrieve the next page of results.
|
|
294
|
+
|
|
295
|
+
|
|
296
|
+
## Field Selection
|
|
297
|
+
|
|
298
|
+
Use the `fields` parameter to control which observation fields are returned:
|
|
299
|
+
|
|
300
|
+
- `core` - Always included: id, traceId, startTime, endTime, projectId, parentObservationId, type
|
|
301
|
+
|
|
302
|
+
- `basic` - name, level, statusMessage, version, environment, bookmarked, public, userId, sessionId,
|
|
303
|
+
isRootObservation
|
|
304
|
+
|
|
305
|
+
- `time` - completionStartTime, createdAt, updatedAt
|
|
306
|
+
|
|
307
|
+
- `io` - input, output
|
|
308
|
+
|
|
309
|
+
- `metadata` - metadata (truncated to 200 chars by default, use `expandMetadata` to get full values)
|
|
310
|
+
|
|
311
|
+
- `model` - providedModelName, internalModelId, modelParameters
|
|
312
|
+
|
|
313
|
+
- `usage` - usageDetails, costDetails, totalCost, usagePricingTierName
|
|
314
|
+
|
|
315
|
+
- `prompt` - promptId, promptName, promptVersion
|
|
316
|
+
|
|
317
|
+
- `metrics` - latency, timeToFirstToken
|
|
318
|
+
|
|
319
|
+
- `trace_context` - tags, release, traceName
|
|
320
|
+
|
|
321
|
+
|
|
322
|
+
If not specified, `core` and `basic` field groups are returned.
|
|
323
|
+
|
|
324
|
+
|
|
325
|
+
## Filters
|
|
326
|
+
|
|
327
|
+
Multiple filtering options are available via query parameters or the structured `filter` parameter.
|
|
328
|
+
|
|
329
|
+
When using the `filter` parameter, it takes precedence over individual query parameter filters.
|
|
330
|
+
operationId: observations_getMany
|
|
331
|
+
tags:
|
|
332
|
+
- Observations
|
|
333
|
+
parameters:
|
|
334
|
+
- name: fields
|
|
335
|
+
in: query
|
|
336
|
+
description: |-
|
|
337
|
+
Comma-separated list of field groups to include in the response.
|
|
338
|
+
Available groups: core, basic, time, io, metadata, model, usage, prompt, metrics, trace_context.
|
|
339
|
+
If not specified, `core` and `basic` field groups are returned.
|
|
340
|
+
Example: "basic,usage,model"
|
|
341
|
+
required: false
|
|
342
|
+
schema:
|
|
343
|
+
type:
|
|
344
|
+
- string
|
|
345
|
+
- "null"
|
|
346
|
+
- name: expandMetadata
|
|
347
|
+
in: query
|
|
348
|
+
description: |-
|
|
349
|
+
Comma-separated list of metadata keys to return non-truncated.
|
|
350
|
+
By default, metadata values over 200 characters are truncated.
|
|
351
|
+
Use this parameter to retrieve full values for specific keys.
|
|
352
|
+
Example: "key1,key2"
|
|
353
|
+
required: false
|
|
354
|
+
schema:
|
|
355
|
+
type:
|
|
356
|
+
- string
|
|
357
|
+
- "null"
|
|
358
|
+
- name: limit
|
|
359
|
+
in: query
|
|
360
|
+
description: Number of items to return per page. Maximum 1000, default 50.
|
|
361
|
+
required: false
|
|
362
|
+
schema:
|
|
363
|
+
type:
|
|
364
|
+
- integer
|
|
365
|
+
- "null"
|
|
366
|
+
- name: cursor
|
|
367
|
+
in: query
|
|
368
|
+
description: Base64-encoded cursor for pagination. Use the cursor from the previous response to get the next page.
|
|
369
|
+
required: false
|
|
370
|
+
schema:
|
|
371
|
+
type:
|
|
372
|
+
- string
|
|
373
|
+
- "null"
|
|
374
|
+
- name: parseIoAsJson
|
|
375
|
+
in: query
|
|
376
|
+
description: |-
|
|
377
|
+
**Deprecated.** Setting this to `true` will return a 400 error.
|
|
378
|
+
Input/output fields are always returned as raw strings.
|
|
379
|
+
Remove this parameter or set it to `false`.
|
|
380
|
+
required: false
|
|
381
|
+
schema:
|
|
382
|
+
type:
|
|
383
|
+
- boolean
|
|
384
|
+
- "null"
|
|
385
|
+
- name: name
|
|
386
|
+
in: query
|
|
387
|
+
required: false
|
|
388
|
+
schema:
|
|
389
|
+
type:
|
|
390
|
+
- string
|
|
391
|
+
- "null"
|
|
392
|
+
- name: userId
|
|
393
|
+
in: query
|
|
394
|
+
required: false
|
|
395
|
+
schema:
|
|
396
|
+
type:
|
|
397
|
+
- string
|
|
398
|
+
- "null"
|
|
399
|
+
- name: sessionId
|
|
400
|
+
in: query
|
|
401
|
+
description: Filter by session ID.
|
|
402
|
+
required: false
|
|
403
|
+
schema:
|
|
404
|
+
type:
|
|
405
|
+
- string
|
|
406
|
+
- "null"
|
|
407
|
+
- name: type
|
|
408
|
+
in: query
|
|
409
|
+
description: >-
|
|
410
|
+
Filter by observation type (e.g., "GENERATION", "SPAN", "EVENT", "AGENT", "TOOL", "CHAIN", "RETRIEVER",
|
|
411
|
+
"EVALUATOR", "EMBEDDING", "GUARDRAIL")
|
|
412
|
+
required: false
|
|
413
|
+
schema:
|
|
414
|
+
type:
|
|
415
|
+
- string
|
|
416
|
+
- "null"
|
|
417
|
+
- name: traceId
|
|
418
|
+
in: query
|
|
419
|
+
required: false
|
|
420
|
+
schema:
|
|
421
|
+
type:
|
|
422
|
+
- string
|
|
423
|
+
- "null"
|
|
424
|
+
- name: level
|
|
425
|
+
in: query
|
|
426
|
+
description: Optional filter for observations with a specific level (e.g. "DEBUG", "DEFAULT", "WARNING", "ERROR").
|
|
427
|
+
required: false
|
|
428
|
+
schema:
|
|
429
|
+
anyOf:
|
|
430
|
+
- $ref: "#/components/schemas/ObservationLevel"
|
|
431
|
+
- type: "null"
|
|
432
|
+
- name: parentObservationId
|
|
433
|
+
in: query
|
|
434
|
+
description: >-
|
|
435
|
+
Filter by the physical parent observation ID.
|
|
436
|
+
|
|
437
|
+
An empty value matches only observations without a physical parent. Use `isRootObservation` to include
|
|
438
|
+
observations marked as app roots by the SDK, which may retain a non-null `parentObservationId`.
|
|
439
|
+
required: false
|
|
440
|
+
schema:
|
|
441
|
+
type:
|
|
442
|
+
- string
|
|
443
|
+
- "null"
|
|
444
|
+
- name: isRootObservation
|
|
445
|
+
in: query
|
|
446
|
+
description: >-
|
|
447
|
+
Filter by whether an observation is a logical root.
|
|
448
|
+
|
|
449
|
+
Root observations include observations without a physical parent and observations marked as app roots by the
|
|
450
|
+
SDK.
|
|
451
|
+
|
|
452
|
+
An app-root observation may have `isRootObservation=true` and a non-null `parentObservationId`.
|
|
453
|
+
required: false
|
|
454
|
+
schema:
|
|
455
|
+
type:
|
|
456
|
+
- boolean
|
|
457
|
+
- "null"
|
|
458
|
+
- name: environment
|
|
459
|
+
in: query
|
|
460
|
+
description: Optional filter for observations where the environment is one of the provided values.
|
|
461
|
+
required: false
|
|
462
|
+
schema:
|
|
463
|
+
type: array
|
|
464
|
+
items:
|
|
465
|
+
type:
|
|
466
|
+
- string
|
|
467
|
+
- "null"
|
|
468
|
+
- name: fromStartTime
|
|
469
|
+
in: query
|
|
470
|
+
description: Retrieve only observations with a start_time on or after this datetime (ISO 8601).
|
|
471
|
+
required: false
|
|
472
|
+
schema:
|
|
473
|
+
type:
|
|
474
|
+
- string
|
|
475
|
+
- "null"
|
|
476
|
+
format: date-time
|
|
477
|
+
- name: toStartTime
|
|
478
|
+
in: query
|
|
479
|
+
description: Retrieve only observations with a start_time before this datetime (ISO 8601).
|
|
480
|
+
required: false
|
|
481
|
+
schema:
|
|
482
|
+
type:
|
|
483
|
+
- string
|
|
484
|
+
- "null"
|
|
485
|
+
format: date-time
|
|
486
|
+
- name: version
|
|
487
|
+
in: query
|
|
488
|
+
description: Optional filter to only include observations with a certain version.
|
|
489
|
+
required: false
|
|
490
|
+
schema:
|
|
491
|
+
type:
|
|
492
|
+
- string
|
|
493
|
+
- "null"
|
|
494
|
+
- name: filter
|
|
495
|
+
in: query
|
|
496
|
+
description: >-
|
|
497
|
+
JSON string containing an array of filter conditions. When provided, this takes precedence over query
|
|
498
|
+
parameter filters (userId, name, type, level, environment, fromStartTime, ...).
|
|
499
|
+
|
|
500
|
+
|
|
501
|
+
## Filter Structure
|
|
502
|
+
|
|
503
|
+
Each filter condition has the following structure:
|
|
504
|
+
|
|
505
|
+
```json
|
|
506
|
+
|
|
507
|
+
[
|
|
508
|
+
{
|
|
509
|
+
"type": string, // Required. One of: "datetime", "string", "number", "stringOptions", "categoryOptions", "arrayOptions", "stringObject", "numberObject", "boolean", "null"
|
|
510
|
+
"column": string, // Required. Column to filter on (see available columns below)
|
|
511
|
+
"operator": string, // Required. Operator based on type:
|
|
512
|
+
// - datetime: ">", "<", ">=", "<="
|
|
513
|
+
// - string: "=", "contains", "does not contain", "starts with", "ends with", "matches"
|
|
514
|
+
// - stringOptions: "any of", "none of"
|
|
515
|
+
// - categoryOptions: "any of", "none of"
|
|
516
|
+
// - arrayOptions: "any of", "none of", "all of"
|
|
517
|
+
// - number: "=", ">", "<", ">=", "<="
|
|
518
|
+
// - stringObject: "=", "contains", "does not contain", "starts with", "ends with", "matches"
|
|
519
|
+
// - numberObject: "=", ">", "<", ">=", "<="
|
|
520
|
+
// - boolean: "=", "<>"
|
|
521
|
+
// - null: "is null", "is not null"
|
|
522
|
+
"value": any, // Required (except for null type). Value to compare against. Type depends on filter type
|
|
523
|
+
"key": string // Required only for stringObject, numberObject, and categoryOptions types when filtering on nested fields like metadata
|
|
524
|
+
}
|
|
525
|
+
]
|
|
526
|
+
|
|
527
|
+
```
|
|
528
|
+
|
|
529
|
+
|
|
530
|
+
## Available Columns
|
|
531
|
+
|
|
532
|
+
|
|
533
|
+
### Core Observation Fields
|
|
534
|
+
|
|
535
|
+
- `id` (string) - Observation ID
|
|
536
|
+
|
|
537
|
+
- `type` (string) - Observation type (SPAN, GENERATION, EVENT)
|
|
538
|
+
|
|
539
|
+
- `name` (string) - Observation name
|
|
540
|
+
|
|
541
|
+
- `traceId` (string) - Associated trace ID
|
|
542
|
+
|
|
543
|
+
- `startTime` (datetime) - Observation start time
|
|
544
|
+
|
|
545
|
+
- `endTime` (datetime) - Observation end time
|
|
546
|
+
|
|
547
|
+
- `environment` (string) - Environment tag
|
|
548
|
+
|
|
549
|
+
- `level` (string) - Log level (DEBUG, DEFAULT, WARNING, ERROR)
|
|
550
|
+
|
|
551
|
+
- `statusMessage` (string) - Status message
|
|
552
|
+
|
|
553
|
+
- `version` (string) - Version tag
|
|
554
|
+
|
|
555
|
+
- `userId` (string) - User ID
|
|
556
|
+
|
|
557
|
+
- `sessionId` (string) - Session ID
|
|
558
|
+
|
|
559
|
+
- `isRootObservation` (boolean) - Whether the observation is a logical root. Observations marked as app
|
|
560
|
+
roots by the SDK may retain a non-null parentObservationId.
|
|
561
|
+
|
|
562
|
+
|
|
563
|
+
### Trace-Related Fields
|
|
564
|
+
|
|
565
|
+
- `traceName` (string) - Name of the parent trace
|
|
566
|
+
|
|
567
|
+
- `traceTags` (arrayOptions) - Tags from the parent trace
|
|
568
|
+
|
|
569
|
+
- `tags` (arrayOptions) - Alias for traceTags
|
|
570
|
+
|
|
571
|
+
|
|
572
|
+
### Performance Metrics
|
|
573
|
+
|
|
574
|
+
- `latency` (number) - Latency in seconds (calculated: end_time - start_time)
|
|
575
|
+
|
|
576
|
+
- `timeToFirstToken` (number) - Time to first token in seconds
|
|
577
|
+
|
|
578
|
+
- `tokensPerSecond` (number) - Output tokens per second
|
|
579
|
+
|
|
580
|
+
|
|
581
|
+
### Token Usage
|
|
582
|
+
|
|
583
|
+
- `inputTokens` (number) - Number of input tokens
|
|
584
|
+
|
|
585
|
+
- `outputTokens` (number) - Number of output tokens
|
|
586
|
+
|
|
587
|
+
- `totalTokens` (number) - Total tokens (alias: `tokens`)
|
|
588
|
+
|
|
589
|
+
|
|
590
|
+
### Cost Metrics
|
|
591
|
+
|
|
592
|
+
- `inputCost` (number) - Input cost in USD
|
|
593
|
+
|
|
594
|
+
- `outputCost` (number) - Output cost in USD
|
|
595
|
+
|
|
596
|
+
- `totalCost` (number) - Total cost in USD
|
|
597
|
+
|
|
598
|
+
|
|
599
|
+
### Model Information
|
|
600
|
+
|
|
601
|
+
- `model` (string) - Provided model name (alias: `providedModelName`)
|
|
602
|
+
|
|
603
|
+
- `promptName` (string) - Associated prompt name
|
|
604
|
+
|
|
605
|
+
- `promptVersion` (number) - Associated prompt version
|
|
606
|
+
|
|
607
|
+
|
|
608
|
+
### Structured Data
|
|
609
|
+
|
|
610
|
+
- `input` (string) - Observation input. Supports accelerated indexed literal search with the `matches`
|
|
611
|
+
operator.
|
|
612
|
+
|
|
613
|
+
- `output` (string) - Observation output. Supports accelerated indexed literal search with the `matches`
|
|
614
|
+
operator.
|
|
615
|
+
|
|
616
|
+
- `metadata` (stringObject/numberObject/categoryOptions) - Metadata key-value pairs. Use `key` parameter to
|
|
617
|
+
filter on specific metadata keys.
|
|
618
|
+
|
|
619
|
+
|
|
620
|
+
The `matches` operator is only supported for `input`, `output`, and stringObject `metadata` filters. It
|
|
621
|
+
performs indexed literal search with token-boundary pruning using the events table text indexes. Case
|
|
622
|
+
sensitivity differs by target: `input` and `output` matches are case-insensitive, while metadata value
|
|
623
|
+
matches are case-sensitive. Unlike SQL `LIKE`, `%` and `_` are treated as literal characters. Use `contains`
|
|
624
|
+
for legacy substring semantics where the API allows it. Any v2 `input` or `output` filter must be
|
|
625
|
+
accompanied by at least one `=` or `matches` filter on `input` or `output`; standalone `contains`, `starts
|
|
626
|
+
with`, `ends with`, and `does not contain` filters on these columns are rejected.
|
|
627
|
+
|
|
628
|
+
|
|
629
|
+
## Filter Examples
|
|
630
|
+
|
|
631
|
+
```json
|
|
632
|
+
|
|
633
|
+
[
|
|
634
|
+
{
|
|
635
|
+
"type": "string",
|
|
636
|
+
"column": "type",
|
|
637
|
+
"operator": "=",
|
|
638
|
+
"value": "GENERATION"
|
|
639
|
+
},
|
|
640
|
+
{
|
|
641
|
+
"type": "number",
|
|
642
|
+
"column": "latency",
|
|
643
|
+
"operator": ">=",
|
|
644
|
+
"value": 2.5
|
|
645
|
+
},
|
|
646
|
+
{
|
|
647
|
+
"type": "stringObject",
|
|
648
|
+
"column": "metadata",
|
|
649
|
+
"key": "environment",
|
|
650
|
+
"operator": "=",
|
|
651
|
+
"value": "production"
|
|
652
|
+
},
|
|
653
|
+
{
|
|
654
|
+
"type": "string",
|
|
655
|
+
"column": "output",
|
|
656
|
+
"operator": "matches",
|
|
657
|
+
"value": "needle"
|
|
658
|
+
},
|
|
659
|
+
{
|
|
660
|
+
"type": "boolean",
|
|
661
|
+
"column": "isRootObservation",
|
|
662
|
+
"operator": "=",
|
|
663
|
+
"value": true
|
|
664
|
+
}
|
|
665
|
+
]
|
|
666
|
+
|
|
667
|
+
```
|
|
668
|
+
required: false
|
|
669
|
+
schema:
|
|
670
|
+
type:
|
|
671
|
+
- string
|
|
672
|
+
- "null"
|
|
673
|
+
responses:
|
|
674
|
+
"200":
|
|
675
|
+
description: ""
|
|
676
|
+
content:
|
|
677
|
+
application/json:
|
|
678
|
+
schema:
|
|
679
|
+
$ref: "#/components/schemas/ObservationsV2Response"
|
|
680
|
+
"400":
|
|
681
|
+
description: ""
|
|
682
|
+
content:
|
|
683
|
+
application/json:
|
|
684
|
+
schema: {}
|
|
685
|
+
"401":
|
|
686
|
+
description: ""
|
|
687
|
+
content:
|
|
688
|
+
application/json:
|
|
689
|
+
schema: {}
|
|
690
|
+
"403":
|
|
691
|
+
description: ""
|
|
692
|
+
content:
|
|
693
|
+
application/json:
|
|
694
|
+
schema: {}
|
|
695
|
+
"404":
|
|
696
|
+
description: ""
|
|
697
|
+
content:
|
|
698
|
+
application/json:
|
|
699
|
+
schema: {}
|
|
700
|
+
"405":
|
|
701
|
+
description: ""
|
|
702
|
+
content:
|
|
703
|
+
application/json:
|
|
704
|
+
schema: {}
|
|
705
|
+
security:
|
|
706
|
+
- BasicAuth: []
|
|
707
|
+
x-openai-isConsequential: false
|
|
708
|
+
/api/public/otel/v1/traces:
|
|
709
|
+
post:
|
|
710
|
+
description: >-
|
|
711
|
+
**OpenTelemetry Traces Ingestion Endpoint**
|
|
712
|
+
|
|
713
|
+
|
|
714
|
+
This endpoint implements the OTLP/HTTP specification for trace ingestion, providing native OpenTelemetry
|
|
715
|
+
integration for Langfuse Observability.
|
|
716
|
+
|
|
717
|
+
|
|
718
|
+
**Supported Formats:**
|
|
719
|
+
|
|
720
|
+
- Binary Protobuf: `Content-Type: application/x-protobuf`
|
|
721
|
+
|
|
722
|
+
- JSON Protobuf: `Content-Type: application/json`
|
|
723
|
+
|
|
724
|
+
- Supports gzip compression via `Content-Encoding: gzip` header
|
|
725
|
+
|
|
726
|
+
|
|
727
|
+
**Specification Compliance:**
|
|
728
|
+
|
|
729
|
+
- Conforms to [OTLP/HTTP Trace Export](https://opentelemetry.io/docs/specs/otlp/#otlphttp)
|
|
730
|
+
|
|
731
|
+
- Implements `ExportTraceServiceRequest` message format
|
|
732
|
+
|
|
733
|
+
|
|
734
|
+
**Documentation:**
|
|
735
|
+
|
|
736
|
+
- Integration guide: https://langfuse.com/integrations/native/opentelemetry
|
|
737
|
+
|
|
738
|
+
- Data model: https://langfuse.com/docs/observability/data-model
|
|
739
|
+
operationId: opentelemetry_exportTraces
|
|
740
|
+
tags:
|
|
741
|
+
- Opentelemetry
|
|
742
|
+
parameters: []
|
|
743
|
+
responses:
|
|
744
|
+
"200":
|
|
745
|
+
description: ""
|
|
746
|
+
content:
|
|
747
|
+
application/json:
|
|
748
|
+
schema:
|
|
749
|
+
$ref: "#/components/schemas/OtelTraceResponse"
|
|
750
|
+
"400":
|
|
751
|
+
description: ""
|
|
752
|
+
content:
|
|
753
|
+
application/json:
|
|
754
|
+
schema: {}
|
|
755
|
+
"401":
|
|
756
|
+
description: ""
|
|
757
|
+
content:
|
|
758
|
+
application/json:
|
|
759
|
+
schema: {}
|
|
760
|
+
"403":
|
|
761
|
+
description: ""
|
|
762
|
+
content:
|
|
763
|
+
application/json:
|
|
764
|
+
schema: {}
|
|
765
|
+
"404":
|
|
766
|
+
description: ""
|
|
767
|
+
content:
|
|
768
|
+
application/json:
|
|
769
|
+
schema: {}
|
|
770
|
+
"405":
|
|
771
|
+
description: ""
|
|
772
|
+
content:
|
|
773
|
+
application/json:
|
|
774
|
+
schema: {}
|
|
775
|
+
security:
|
|
776
|
+
- BasicAuth: []
|
|
777
|
+
requestBody:
|
|
778
|
+
required: true
|
|
779
|
+
content:
|
|
780
|
+
application/json:
|
|
781
|
+
schema:
|
|
782
|
+
type: object
|
|
783
|
+
properties:
|
|
784
|
+
resourceSpans:
|
|
785
|
+
type: array
|
|
786
|
+
items:
|
|
787
|
+
$ref: "#/components/schemas/OtelResourceSpan"
|
|
788
|
+
description: Array of resource spans containing trace data as defined in the OTLP specification
|
|
789
|
+
required:
|
|
790
|
+
- resourceSpans
|
|
791
|
+
x-openai-isConsequential: false
|
|
792
|
+
/api/public/v2/prompts:
|
|
793
|
+
get:
|
|
794
|
+
description: Get a list of prompt names with versions and labels
|
|
795
|
+
operationId: prompts_list
|
|
796
|
+
tags:
|
|
797
|
+
- Prompts
|
|
798
|
+
parameters:
|
|
799
|
+
- name: name
|
|
800
|
+
in: query
|
|
801
|
+
required: false
|
|
802
|
+
schema:
|
|
803
|
+
type:
|
|
804
|
+
- string
|
|
805
|
+
- "null"
|
|
806
|
+
- name: label
|
|
807
|
+
in: query
|
|
808
|
+
required: false
|
|
809
|
+
schema:
|
|
810
|
+
type:
|
|
811
|
+
- string
|
|
812
|
+
- "null"
|
|
813
|
+
- name: tag
|
|
814
|
+
in: query
|
|
815
|
+
required: false
|
|
816
|
+
schema:
|
|
817
|
+
type:
|
|
818
|
+
- string
|
|
819
|
+
- "null"
|
|
820
|
+
- name: page
|
|
821
|
+
in: query
|
|
822
|
+
description: page number, starts at 1
|
|
823
|
+
required: false
|
|
824
|
+
schema:
|
|
825
|
+
type:
|
|
826
|
+
- integer
|
|
827
|
+
- "null"
|
|
828
|
+
- name: limit
|
|
829
|
+
in: query
|
|
830
|
+
description: limit of items per page
|
|
831
|
+
required: false
|
|
832
|
+
schema:
|
|
833
|
+
type:
|
|
834
|
+
- integer
|
|
835
|
+
- "null"
|
|
836
|
+
- name: fromUpdatedAt
|
|
837
|
+
in: query
|
|
838
|
+
description: Optional filter to only include prompt versions created/updated on or after a certain datetime (ISO 8601)
|
|
839
|
+
required: false
|
|
840
|
+
schema:
|
|
841
|
+
type:
|
|
842
|
+
- string
|
|
843
|
+
- "null"
|
|
844
|
+
format: date-time
|
|
845
|
+
- name: toUpdatedAt
|
|
846
|
+
in: query
|
|
847
|
+
description: Optional filter to only include prompt versions created/updated before a certain datetime (ISO 8601)
|
|
848
|
+
required: false
|
|
849
|
+
schema:
|
|
850
|
+
type:
|
|
851
|
+
- string
|
|
852
|
+
- "null"
|
|
853
|
+
format: date-time
|
|
854
|
+
responses:
|
|
855
|
+
"200":
|
|
856
|
+
description: ""
|
|
857
|
+
content:
|
|
858
|
+
application/json:
|
|
859
|
+
schema:
|
|
860
|
+
$ref: "#/components/schemas/PromptMetaListResponse"
|
|
861
|
+
"400":
|
|
862
|
+
description: ""
|
|
863
|
+
content:
|
|
864
|
+
application/json:
|
|
865
|
+
schema: {}
|
|
866
|
+
"401":
|
|
867
|
+
description: ""
|
|
868
|
+
content:
|
|
869
|
+
application/json:
|
|
870
|
+
schema: {}
|
|
871
|
+
"403":
|
|
872
|
+
description: ""
|
|
873
|
+
content:
|
|
874
|
+
application/json:
|
|
875
|
+
schema: {}
|
|
876
|
+
"404":
|
|
877
|
+
description: ""
|
|
878
|
+
content:
|
|
879
|
+
application/json:
|
|
880
|
+
schema: {}
|
|
881
|
+
"405":
|
|
882
|
+
description: ""
|
|
883
|
+
content:
|
|
884
|
+
application/json:
|
|
885
|
+
schema: {}
|
|
886
|
+
security:
|
|
887
|
+
- BasicAuth: []
|
|
888
|
+
x-openai-isConsequential: false
|
|
889
|
+
post:
|
|
890
|
+
description: Create a new version for the prompt with the given `name`
|
|
891
|
+
operationId: prompts_create
|
|
892
|
+
tags:
|
|
893
|
+
- Prompts
|
|
894
|
+
parameters: []
|
|
895
|
+
responses:
|
|
896
|
+
"200":
|
|
897
|
+
description: ""
|
|
898
|
+
content:
|
|
899
|
+
application/json:
|
|
900
|
+
schema:
|
|
901
|
+
$ref: "#/components/schemas/Prompt"
|
|
902
|
+
"400":
|
|
903
|
+
description: ""
|
|
904
|
+
content:
|
|
905
|
+
application/json:
|
|
906
|
+
schema: {}
|
|
907
|
+
"401":
|
|
908
|
+
description: ""
|
|
909
|
+
content:
|
|
910
|
+
application/json:
|
|
911
|
+
schema: {}
|
|
912
|
+
"403":
|
|
913
|
+
description: ""
|
|
914
|
+
content:
|
|
915
|
+
application/json:
|
|
916
|
+
schema: {}
|
|
917
|
+
"404":
|
|
918
|
+
description: ""
|
|
919
|
+
content:
|
|
920
|
+
application/json:
|
|
921
|
+
schema: {}
|
|
922
|
+
"405":
|
|
923
|
+
description: ""
|
|
924
|
+
content:
|
|
925
|
+
application/json:
|
|
926
|
+
schema: {}
|
|
927
|
+
security:
|
|
928
|
+
- BasicAuth: []
|
|
929
|
+
requestBody:
|
|
930
|
+
required: true
|
|
931
|
+
content:
|
|
932
|
+
application/json:
|
|
933
|
+
schema:
|
|
934
|
+
$ref: "#/components/schemas/CreatePromptRequest"
|
|
935
|
+
x-openai-isConsequential: false
|
|
936
|
+
/api/public/v2/prompts/{promptName}:
|
|
937
|
+
get:
|
|
938
|
+
description: Get a prompt
|
|
939
|
+
operationId: prompts_get
|
|
940
|
+
tags:
|
|
941
|
+
- Prompts
|
|
942
|
+
parameters:
|
|
943
|
+
- name: promptName
|
|
944
|
+
in: path
|
|
945
|
+
description: |-
|
|
946
|
+
The name of the prompt. If the prompt is in a folder (e.g., "folder/subfolder/prompt-name"),
|
|
947
|
+
the folder path must be URL encoded.
|
|
948
|
+
required: true
|
|
949
|
+
schema:
|
|
950
|
+
type: string
|
|
951
|
+
- name: version
|
|
952
|
+
in: query
|
|
953
|
+
description: Version of the prompt to be retrieved.
|
|
954
|
+
required: false
|
|
955
|
+
schema:
|
|
956
|
+
type:
|
|
957
|
+
- integer
|
|
958
|
+
- "null"
|
|
959
|
+
- name: label
|
|
960
|
+
in: query
|
|
961
|
+
description: Label of the prompt to be retrieved. Defaults to "production" if no label or version is set.
|
|
962
|
+
required: false
|
|
963
|
+
schema:
|
|
964
|
+
type:
|
|
965
|
+
- string
|
|
966
|
+
- "null"
|
|
967
|
+
- name: resolve
|
|
968
|
+
in: query
|
|
969
|
+
description: >-
|
|
970
|
+
Resolve prompt dependencies before returning the prompt. Defaults to `true`. Set to `false` to return the
|
|
971
|
+
raw stored prompt with dependency tags intact. This bypasses prompt caching and is intended for debugging or
|
|
972
|
+
one-off jobs, not production runtime fetches.
|
|
973
|
+
required: false
|
|
974
|
+
schema:
|
|
975
|
+
type:
|
|
976
|
+
- boolean
|
|
977
|
+
- "null"
|
|
978
|
+
responses:
|
|
979
|
+
"200":
|
|
980
|
+
description: ""
|
|
981
|
+
content:
|
|
982
|
+
application/json:
|
|
983
|
+
schema:
|
|
984
|
+
$ref: "#/components/schemas/Prompt"
|
|
985
|
+
"400":
|
|
986
|
+
description: ""
|
|
987
|
+
content:
|
|
988
|
+
application/json:
|
|
989
|
+
schema: {}
|
|
990
|
+
"401":
|
|
991
|
+
description: ""
|
|
992
|
+
content:
|
|
993
|
+
application/json:
|
|
994
|
+
schema: {}
|
|
995
|
+
"403":
|
|
996
|
+
description: ""
|
|
997
|
+
content:
|
|
998
|
+
application/json:
|
|
999
|
+
schema: {}
|
|
1000
|
+
"404":
|
|
1001
|
+
description: ""
|
|
1002
|
+
content:
|
|
1003
|
+
application/json:
|
|
1004
|
+
schema: {}
|
|
1005
|
+
"405":
|
|
1006
|
+
description: ""
|
|
1007
|
+
content:
|
|
1008
|
+
application/json:
|
|
1009
|
+
schema: {}
|
|
1010
|
+
security:
|
|
1011
|
+
- BasicAuth: []
|
|
1012
|
+
x-openai-isConsequential: false
|
|
1013
|
+
/api/public/v2/prompts/{name}/versions/{version}:
|
|
1014
|
+
patch:
|
|
1015
|
+
description: Update labels for a specific prompt version
|
|
1016
|
+
operationId: promptVersion_update
|
|
1017
|
+
tags:
|
|
1018
|
+
- PromptVersion
|
|
1019
|
+
parameters:
|
|
1020
|
+
- name: name
|
|
1021
|
+
in: path
|
|
1022
|
+
description: |-
|
|
1023
|
+
The name of the prompt. If the prompt is in a folder (e.g., "folder/subfolder/prompt-name"),
|
|
1024
|
+
the folder path must be URL encoded.
|
|
1025
|
+
required: true
|
|
1026
|
+
schema:
|
|
1027
|
+
type: string
|
|
1028
|
+
- name: version
|
|
1029
|
+
in: path
|
|
1030
|
+
description: Version of the prompt to update
|
|
1031
|
+
required: true
|
|
1032
|
+
schema:
|
|
1033
|
+
type: integer
|
|
1034
|
+
responses:
|
|
1035
|
+
"200":
|
|
1036
|
+
description: ""
|
|
1037
|
+
content:
|
|
1038
|
+
application/json:
|
|
1039
|
+
schema:
|
|
1040
|
+
$ref: "#/components/schemas/Prompt"
|
|
1041
|
+
"400":
|
|
1042
|
+
description: ""
|
|
1043
|
+
content:
|
|
1044
|
+
application/json:
|
|
1045
|
+
schema: {}
|
|
1046
|
+
"401":
|
|
1047
|
+
description: ""
|
|
1048
|
+
content:
|
|
1049
|
+
application/json:
|
|
1050
|
+
schema: {}
|
|
1051
|
+
"403":
|
|
1052
|
+
description: ""
|
|
1053
|
+
content:
|
|
1054
|
+
application/json:
|
|
1055
|
+
schema: {}
|
|
1056
|
+
"404":
|
|
1057
|
+
description: ""
|
|
1058
|
+
content:
|
|
1059
|
+
application/json:
|
|
1060
|
+
schema: {}
|
|
1061
|
+
"405":
|
|
1062
|
+
description: ""
|
|
1063
|
+
content:
|
|
1064
|
+
application/json:
|
|
1065
|
+
schema: {}
|
|
1066
|
+
security:
|
|
1067
|
+
- BasicAuth: []
|
|
1068
|
+
requestBody:
|
|
1069
|
+
required: true
|
|
1070
|
+
content:
|
|
1071
|
+
application/json:
|
|
1072
|
+
schema:
|
|
1073
|
+
type: object
|
|
1074
|
+
properties:
|
|
1075
|
+
newLabels:
|
|
1076
|
+
type: array
|
|
1077
|
+
items:
|
|
1078
|
+
type: string
|
|
1079
|
+
description: >-
|
|
1080
|
+
New labels for the prompt version. Labels are unique across versions. The "latest" label is reserved
|
|
1081
|
+
and managed by Langfuse.
|
|
1082
|
+
required:
|
|
1083
|
+
- newLabels
|
|
1084
|
+
x-openai-isConsequential: false
|
|
1085
|
+
/api/public/scores:
|
|
1086
|
+
post:
|
|
1087
|
+
description: Create a score (supports trace, observation, session, and dataset run scores)
|
|
1088
|
+
operationId: scores_create
|
|
1089
|
+
tags:
|
|
1090
|
+
- Scores
|
|
1091
|
+
parameters: []
|
|
1092
|
+
responses:
|
|
1093
|
+
"200":
|
|
1094
|
+
description: ""
|
|
1095
|
+
content:
|
|
1096
|
+
application/json:
|
|
1097
|
+
schema:
|
|
1098
|
+
$ref: "#/components/schemas/CreateScoreResponse"
|
|
1099
|
+
"400":
|
|
1100
|
+
description: ""
|
|
1101
|
+
content:
|
|
1102
|
+
application/json:
|
|
1103
|
+
schema: {}
|
|
1104
|
+
"401":
|
|
1105
|
+
description: ""
|
|
1106
|
+
content:
|
|
1107
|
+
application/json:
|
|
1108
|
+
schema: {}
|
|
1109
|
+
"403":
|
|
1110
|
+
description: ""
|
|
1111
|
+
content:
|
|
1112
|
+
application/json:
|
|
1113
|
+
schema: {}
|
|
1114
|
+
"404":
|
|
1115
|
+
description: ""
|
|
1116
|
+
content:
|
|
1117
|
+
application/json:
|
|
1118
|
+
schema: {}
|
|
1119
|
+
"405":
|
|
1120
|
+
description: ""
|
|
1121
|
+
content:
|
|
1122
|
+
application/json:
|
|
1123
|
+
schema: {}
|
|
1124
|
+
security:
|
|
1125
|
+
- BasicAuth: []
|
|
1126
|
+
requestBody:
|
|
1127
|
+
required: true
|
|
1128
|
+
content:
|
|
1129
|
+
application/json:
|
|
1130
|
+
schema:
|
|
1131
|
+
$ref: "#/components/schemas/CreateScoreRequest"
|
|
1132
|
+
x-openai-isConsequential: false
|
|
1133
|
+
/api/public/v3/scores:
|
|
1134
|
+
get:
|
|
1135
|
+
description: |-
|
|
1136
|
+
Get a list of scores with a polymorphic `value` field (v3).
|
|
1137
|
+
|
|
1138
|
+
The `value` field type depends on `dataType`:
|
|
1139
|
+
- `NUMERIC` → number
|
|
1140
|
+
- `BOOLEAN` → boolean
|
|
1141
|
+
- `CATEGORICAL`, `TEXT`, `CORRECTION` → string
|
|
1142
|
+
|
|
1143
|
+
The response always includes the core fields: id, projectId, name,
|
|
1144
|
+
value, dataType, source, timestamp, environment, createdAt, updatedAt.
|
|
1145
|
+
|
|
1146
|
+
Additional field groups can be requested via the `fields` parameter:
|
|
1147
|
+
- `details` — adds comment, configId, metadata
|
|
1148
|
+
- `subject` — adds the subject object describing the entity the score
|
|
1149
|
+
is attached to: kind (trace, observation, session, or experiment),
|
|
1150
|
+
id, and traceId for observation-level scores
|
|
1151
|
+
- `annotation` — adds authorUserId, queueId
|
|
1152
|
+
|
|
1153
|
+
Unknown group names return HTTP 400.
|
|
1154
|
+
operationId: scoresV3_getManyV3
|
|
1155
|
+
tags:
|
|
1156
|
+
- ScoresV3
|
|
1157
|
+
parameters:
|
|
1158
|
+
- name: limit
|
|
1159
|
+
in: query
|
|
1160
|
+
description: Number of items per page. Maximum 100, default 50. Requests with a limit greater than 100 return HTTP 400.
|
|
1161
|
+
required: false
|
|
1162
|
+
schema:
|
|
1163
|
+
type:
|
|
1164
|
+
- integer
|
|
1165
|
+
- "null"
|
|
1166
|
+
- name: cursor
|
|
1167
|
+
in: query
|
|
1168
|
+
description: >-
|
|
1169
|
+
URL-safe base64 (base64url) cursor for pagination. Use the cursor from the previous response to get the next
|
|
1170
|
+
page. Absent on the final page.
|
|
1171
|
+
required: false
|
|
1172
|
+
schema:
|
|
1173
|
+
type:
|
|
1174
|
+
- string
|
|
1175
|
+
- "null"
|
|
1176
|
+
- name: fields
|
|
1177
|
+
in: query
|
|
1178
|
+
description: >-
|
|
1179
|
+
Comma-separated field groups to include in addition to the always-returned core fields. Allowed: details,
|
|
1180
|
+
subject, annotation — see the endpoint description for the fields each group adds. Unknown names return HTTP
|
|
1181
|
+
400.
|
|
1182
|
+
required: false
|
|
1183
|
+
schema:
|
|
1184
|
+
type:
|
|
1185
|
+
- string
|
|
1186
|
+
- "null"
|
|
1187
|
+
- name: id
|
|
1188
|
+
in: query
|
|
1189
|
+
description: Comma-separated list of score IDs to filter by (OR within, AND across filters).
|
|
1190
|
+
required: false
|
|
1191
|
+
schema:
|
|
1192
|
+
type:
|
|
1193
|
+
- string
|
|
1194
|
+
- "null"
|
|
1195
|
+
- name: name
|
|
1196
|
+
in: query
|
|
1197
|
+
description: Comma-separated list of score names to filter by.
|
|
1198
|
+
required: false
|
|
1199
|
+
schema:
|
|
1200
|
+
type:
|
|
1201
|
+
- string
|
|
1202
|
+
- "null"
|
|
1203
|
+
- name: source
|
|
1204
|
+
in: query
|
|
1205
|
+
description: >-
|
|
1206
|
+
Comma-separated list of score sources to filter by (e.g. API, ANNOTATION, EVAL). Case-insensitive — `api`
|
|
1207
|
+
and `API` are equivalent.
|
|
1208
|
+
required: false
|
|
1209
|
+
schema:
|
|
1210
|
+
type:
|
|
1211
|
+
- string
|
|
1212
|
+
- "null"
|
|
1213
|
+
- name: dataType
|
|
1214
|
+
in: query
|
|
1215
|
+
description: >-
|
|
1216
|
+
Comma-separated list of data types to filter by (NUMERIC, BOOLEAN, CATEGORICAL, TEXT, CORRECTION).
|
|
1217
|
+
Case-insensitive — `numeric` and `NUMERIC` are equivalent. Must be a single value when used with value,
|
|
1218
|
+
valueMin, or valueMax; otherwise the request returns HTTP 400. Must be NUMERIC when used with valueMin or
|
|
1219
|
+
valueMax.
|
|
1220
|
+
required: false
|
|
1221
|
+
schema:
|
|
1222
|
+
type:
|
|
1223
|
+
- string
|
|
1224
|
+
- "null"
|
|
1225
|
+
- name: environment
|
|
1226
|
+
in: query
|
|
1227
|
+
description: Comma-separated list of environments to filter by.
|
|
1228
|
+
required: false
|
|
1229
|
+
schema:
|
|
1230
|
+
type:
|
|
1231
|
+
- string
|
|
1232
|
+
- "null"
|
|
1233
|
+
- name: configId
|
|
1234
|
+
in: query
|
|
1235
|
+
description: Comma-separated list of score config IDs to filter by.
|
|
1236
|
+
required: false
|
|
1237
|
+
schema:
|
|
1238
|
+
type:
|
|
1239
|
+
- string
|
|
1240
|
+
- "null"
|
|
1241
|
+
- name: queueId
|
|
1242
|
+
in: query
|
|
1243
|
+
description: Comma-separated list of annotation queue IDs to filter by.
|
|
1244
|
+
required: false
|
|
1245
|
+
schema:
|
|
1246
|
+
type:
|
|
1247
|
+
- string
|
|
1248
|
+
- "null"
|
|
1249
|
+
- name: authorUserId
|
|
1250
|
+
in: query
|
|
1251
|
+
description: Comma-separated list of author user IDs to filter by.
|
|
1252
|
+
required: false
|
|
1253
|
+
schema:
|
|
1254
|
+
type:
|
|
1255
|
+
- string
|
|
1256
|
+
- "null"
|
|
1257
|
+
- name: value
|
|
1258
|
+
in: query
|
|
1259
|
+
description: >-
|
|
1260
|
+
Comma-separated list of exact values to filter by. Requires a single dataType from NUMERIC, BOOLEAN, or
|
|
1261
|
+
CATEGORICAL; any other dataType, multiple dataTypes, or omitting dataType returns HTTP 400. For BOOLEAN,
|
|
1262
|
+
each value must be "true" or "false"; for NUMERIC, each value must be a finite number. Otherwise the request
|
|
1263
|
+
returns HTTP 400.
|
|
1264
|
+
required: false
|
|
1265
|
+
schema:
|
|
1266
|
+
type:
|
|
1267
|
+
- string
|
|
1268
|
+
- "null"
|
|
1269
|
+
- name: valueMin
|
|
1270
|
+
in: query
|
|
1271
|
+
description: >-
|
|
1272
|
+
Inclusive lower bound on the numeric value. Requires dataType=NUMERIC as a single value; otherwise the
|
|
1273
|
+
request returns HTTP 400.
|
|
1274
|
+
required: false
|
|
1275
|
+
schema:
|
|
1276
|
+
type:
|
|
1277
|
+
- number
|
|
1278
|
+
- "null"
|
|
1279
|
+
format: double
|
|
1280
|
+
- name: valueMax
|
|
1281
|
+
in: query
|
|
1282
|
+
description: >-
|
|
1283
|
+
Inclusive upper bound on the numeric value. Requires dataType=NUMERIC as a single value; otherwise the
|
|
1284
|
+
request returns HTTP 400.
|
|
1285
|
+
required: false
|
|
1286
|
+
schema:
|
|
1287
|
+
type:
|
|
1288
|
+
- number
|
|
1289
|
+
- "null"
|
|
1290
|
+
format: double
|
|
1291
|
+
- name: traceId
|
|
1292
|
+
in: query
|
|
1293
|
+
description: >-
|
|
1294
|
+
Comma-separated list of trace IDs to filter by. Mutually exclusive with sessionId, experimentId. May be
|
|
1295
|
+
combined with observationId to scope the observation lookup to a specific trace.
|
|
1296
|
+
required: false
|
|
1297
|
+
schema:
|
|
1298
|
+
type:
|
|
1299
|
+
- string
|
|
1300
|
+
- "null"
|
|
1301
|
+
- name: sessionId
|
|
1302
|
+
in: query
|
|
1303
|
+
description: >-
|
|
1304
|
+
Comma-separated list of session IDs to filter by. Mutually exclusive with traceId, observationId,
|
|
1305
|
+
experimentId.
|
|
1306
|
+
required: false
|
|
1307
|
+
schema:
|
|
1308
|
+
type:
|
|
1309
|
+
- string
|
|
1310
|
+
- "null"
|
|
1311
|
+
- name: observationId
|
|
1312
|
+
in: query
|
|
1313
|
+
description: >-
|
|
1314
|
+
Comma-separated list of observation IDs to filter by. Requires traceId to be specified, because observation
|
|
1315
|
+
IDs are scoped to a trace. Mutually exclusive with sessionId, experimentId. Returns HTTP 400 when used
|
|
1316
|
+
without traceId.
|
|
1317
|
+
required: false
|
|
1318
|
+
schema:
|
|
1319
|
+
type:
|
|
1320
|
+
- string
|
|
1321
|
+
- "null"
|
|
1322
|
+
- name: experimentId
|
|
1323
|
+
in: query
|
|
1324
|
+
description: >-
|
|
1325
|
+
Comma-separated list of dataset run IDs (experiment IDs) to filter by. Mutually exclusive with traceId,
|
|
1326
|
+
sessionId, observationId.
|
|
1327
|
+
required: false
|
|
1328
|
+
schema:
|
|
1329
|
+
type:
|
|
1330
|
+
- string
|
|
1331
|
+
- "null"
|
|
1332
|
+
- name: fromTimestamp
|
|
1333
|
+
in: query
|
|
1334
|
+
description: Inclusive lower bound on the score timestamp.
|
|
1335
|
+
required: false
|
|
1336
|
+
schema:
|
|
1337
|
+
type:
|
|
1338
|
+
- string
|
|
1339
|
+
- "null"
|
|
1340
|
+
format: date-time
|
|
1341
|
+
- name: toTimestamp
|
|
1342
|
+
in: query
|
|
1343
|
+
description: Exclusive upper bound on the score timestamp.
|
|
1344
|
+
required: false
|
|
1345
|
+
schema:
|
|
1346
|
+
type:
|
|
1347
|
+
- string
|
|
1348
|
+
- "null"
|
|
1349
|
+
format: date-time
|
|
1350
|
+
responses:
|
|
1351
|
+
"200":
|
|
1352
|
+
description: ""
|
|
1353
|
+
content:
|
|
1354
|
+
application/json:
|
|
1355
|
+
schema:
|
|
1356
|
+
$ref: "#/components/schemas/GetScoresV3Response"
|
|
1357
|
+
"400":
|
|
1358
|
+
description: ""
|
|
1359
|
+
content:
|
|
1360
|
+
application/json:
|
|
1361
|
+
schema: {}
|
|
1362
|
+
"401":
|
|
1363
|
+
description: ""
|
|
1364
|
+
content:
|
|
1365
|
+
application/json:
|
|
1366
|
+
schema: {}
|
|
1367
|
+
"403":
|
|
1368
|
+
description: ""
|
|
1369
|
+
content:
|
|
1370
|
+
application/json:
|
|
1371
|
+
schema: {}
|
|
1372
|
+
"404":
|
|
1373
|
+
description: ""
|
|
1374
|
+
content:
|
|
1375
|
+
application/json:
|
|
1376
|
+
schema: {}
|
|
1377
|
+
"405":
|
|
1378
|
+
description: ""
|
|
1379
|
+
content:
|
|
1380
|
+
application/json:
|
|
1381
|
+
schema: {}
|
|
1382
|
+
security:
|
|
1383
|
+
- BasicAuth: []
|
|
1384
|
+
x-openai-isConsequential: false
|
|
1385
|
+
/api/public/score-configs:
|
|
1386
|
+
post:
|
|
1387
|
+
description: Create a score configuration (config). Score configs are used to define the structure of scores
|
|
1388
|
+
operationId: scoreConfigs_create
|
|
1389
|
+
tags:
|
|
1390
|
+
- ScoreConfigs
|
|
1391
|
+
parameters: []
|
|
1392
|
+
responses:
|
|
1393
|
+
"200":
|
|
1394
|
+
description: ""
|
|
1395
|
+
content:
|
|
1396
|
+
application/json:
|
|
1397
|
+
schema:
|
|
1398
|
+
$ref: "#/components/schemas/ScoreConfig"
|
|
1399
|
+
"400":
|
|
1400
|
+
description: ""
|
|
1401
|
+
content:
|
|
1402
|
+
application/json:
|
|
1403
|
+
schema: {}
|
|
1404
|
+
"401":
|
|
1405
|
+
description: ""
|
|
1406
|
+
content:
|
|
1407
|
+
application/json:
|
|
1408
|
+
schema: {}
|
|
1409
|
+
"403":
|
|
1410
|
+
description: ""
|
|
1411
|
+
content:
|
|
1412
|
+
application/json:
|
|
1413
|
+
schema: {}
|
|
1414
|
+
"404":
|
|
1415
|
+
description: ""
|
|
1416
|
+
content:
|
|
1417
|
+
application/json:
|
|
1418
|
+
schema: {}
|
|
1419
|
+
"405":
|
|
1420
|
+
description: ""
|
|
1421
|
+
content:
|
|
1422
|
+
application/json:
|
|
1423
|
+
schema: {}
|
|
1424
|
+
security:
|
|
1425
|
+
- BasicAuth: []
|
|
1426
|
+
requestBody:
|
|
1427
|
+
required: true
|
|
1428
|
+
content:
|
|
1429
|
+
application/json:
|
|
1430
|
+
schema:
|
|
1431
|
+
$ref: "#/components/schemas/CreateScoreConfigRequest"
|
|
1432
|
+
x-openai-isConsequential: false
|
|
1433
|
+
get:
|
|
1434
|
+
description: Get all score configs
|
|
1435
|
+
operationId: scoreConfigs_get
|
|
1436
|
+
tags:
|
|
1437
|
+
- ScoreConfigs
|
|
1438
|
+
parameters:
|
|
1439
|
+
- name: page
|
|
1440
|
+
in: query
|
|
1441
|
+
description: Page number, starts at 1.
|
|
1442
|
+
required: false
|
|
1443
|
+
schema:
|
|
1444
|
+
type:
|
|
1445
|
+
- integer
|
|
1446
|
+
- "null"
|
|
1447
|
+
- name: limit
|
|
1448
|
+
in: query
|
|
1449
|
+
description: Limit of items per page. If you encounter api issues due to too large page sizes, try to reduce the limit
|
|
1450
|
+
required: false
|
|
1451
|
+
schema:
|
|
1452
|
+
type:
|
|
1453
|
+
- integer
|
|
1454
|
+
- "null"
|
|
1455
|
+
responses:
|
|
1456
|
+
"200":
|
|
1457
|
+
description: ""
|
|
1458
|
+
content:
|
|
1459
|
+
application/json:
|
|
1460
|
+
schema:
|
|
1461
|
+
$ref: "#/components/schemas/ScoreConfigs"
|
|
1462
|
+
"400":
|
|
1463
|
+
description: ""
|
|
1464
|
+
content:
|
|
1465
|
+
application/json:
|
|
1466
|
+
schema: {}
|
|
1467
|
+
"401":
|
|
1468
|
+
description: ""
|
|
1469
|
+
content:
|
|
1470
|
+
application/json:
|
|
1471
|
+
schema: {}
|
|
1472
|
+
"403":
|
|
1473
|
+
description: ""
|
|
1474
|
+
content:
|
|
1475
|
+
application/json:
|
|
1476
|
+
schema: {}
|
|
1477
|
+
"404":
|
|
1478
|
+
description: ""
|
|
1479
|
+
content:
|
|
1480
|
+
application/json:
|
|
1481
|
+
schema: {}
|
|
1482
|
+
"405":
|
|
1483
|
+
description: ""
|
|
1484
|
+
content:
|
|
1485
|
+
application/json:
|
|
1486
|
+
schema: {}
|
|
1487
|
+
security:
|
|
1488
|
+
- BasicAuth: []
|
|
1489
|
+
x-openai-isConsequential: false
|
|
1490
|
+
/api/public/score-configs/{configId}:
|
|
1491
|
+
get:
|
|
1492
|
+
description: Get a score config
|
|
1493
|
+
operationId: scoreConfigs_get-by-id
|
|
1494
|
+
tags:
|
|
1495
|
+
- ScoreConfigs
|
|
1496
|
+
parameters:
|
|
1497
|
+
- name: configId
|
|
1498
|
+
in: path
|
|
1499
|
+
description: The unique langfuse identifier of a score config
|
|
1500
|
+
required: true
|
|
1501
|
+
schema:
|
|
1502
|
+
type: string
|
|
1503
|
+
responses:
|
|
1504
|
+
"200":
|
|
1505
|
+
description: ""
|
|
1506
|
+
content:
|
|
1507
|
+
application/json:
|
|
1508
|
+
schema:
|
|
1509
|
+
$ref: "#/components/schemas/ScoreConfig"
|
|
1510
|
+
"400":
|
|
1511
|
+
description: ""
|
|
1512
|
+
content:
|
|
1513
|
+
application/json:
|
|
1514
|
+
schema: {}
|
|
1515
|
+
"401":
|
|
1516
|
+
description: ""
|
|
1517
|
+
content:
|
|
1518
|
+
application/json:
|
|
1519
|
+
schema: {}
|
|
1520
|
+
"403":
|
|
1521
|
+
description: ""
|
|
1522
|
+
content:
|
|
1523
|
+
application/json:
|
|
1524
|
+
schema: {}
|
|
1525
|
+
"404":
|
|
1526
|
+
description: ""
|
|
1527
|
+
content:
|
|
1528
|
+
application/json:
|
|
1529
|
+
schema: {}
|
|
1530
|
+
"405":
|
|
1531
|
+
description: ""
|
|
1532
|
+
content:
|
|
1533
|
+
application/json:
|
|
1534
|
+
schema: {}
|
|
1535
|
+
security:
|
|
1536
|
+
- BasicAuth: []
|
|
1537
|
+
x-openai-isConsequential: false
|
|
1538
|
+
/api/public/media:
|
|
1539
|
+
post:
|
|
1540
|
+
description: Get a presigned upload URL for a media record
|
|
1541
|
+
operationId: media_getUploadUrl
|
|
1542
|
+
tags:
|
|
1543
|
+
- Media
|
|
1544
|
+
parameters: []
|
|
1545
|
+
responses:
|
|
1546
|
+
"200":
|
|
1547
|
+
description: ""
|
|
1548
|
+
content:
|
|
1549
|
+
application/json:
|
|
1550
|
+
schema:
|
|
1551
|
+
$ref: "#/components/schemas/GetMediaUploadUrlResponse"
|
|
1552
|
+
"400":
|
|
1553
|
+
description: ""
|
|
1554
|
+
content:
|
|
1555
|
+
application/json:
|
|
1556
|
+
schema: {}
|
|
1557
|
+
"401":
|
|
1558
|
+
description: ""
|
|
1559
|
+
content:
|
|
1560
|
+
application/json:
|
|
1561
|
+
schema: {}
|
|
1562
|
+
"403":
|
|
1563
|
+
description: ""
|
|
1564
|
+
content:
|
|
1565
|
+
application/json:
|
|
1566
|
+
schema: {}
|
|
1567
|
+
"404":
|
|
1568
|
+
description: ""
|
|
1569
|
+
content:
|
|
1570
|
+
application/json:
|
|
1571
|
+
schema: {}
|
|
1572
|
+
"405":
|
|
1573
|
+
description: ""
|
|
1574
|
+
content:
|
|
1575
|
+
application/json:
|
|
1576
|
+
schema: {}
|
|
1577
|
+
security:
|
|
1578
|
+
- BasicAuth: []
|
|
1579
|
+
requestBody:
|
|
1580
|
+
required: true
|
|
1581
|
+
content:
|
|
1582
|
+
application/json:
|
|
1583
|
+
schema:
|
|
1584
|
+
$ref: "#/components/schemas/GetMediaUploadUrlRequest"
|
|
1585
|
+
x-openai-isConsequential: false
|
|
1586
|
+
/api/public/media/{mediaId}:
|
|
1587
|
+
get:
|
|
1588
|
+
description: Get a media record
|
|
1589
|
+
operationId: media_get
|
|
1590
|
+
tags:
|
|
1591
|
+
- Media
|
|
1592
|
+
parameters:
|
|
1593
|
+
- name: mediaId
|
|
1594
|
+
in: path
|
|
1595
|
+
description: The unique langfuse identifier of a media record
|
|
1596
|
+
required: true
|
|
1597
|
+
schema:
|
|
1598
|
+
type: string
|
|
1599
|
+
responses:
|
|
1600
|
+
"200":
|
|
1601
|
+
description: ""
|
|
1602
|
+
content:
|
|
1603
|
+
application/json:
|
|
1604
|
+
schema:
|
|
1605
|
+
$ref: "#/components/schemas/GetMediaResponse"
|
|
1606
|
+
"400":
|
|
1607
|
+
description: ""
|
|
1608
|
+
content:
|
|
1609
|
+
application/json:
|
|
1610
|
+
schema: {}
|
|
1611
|
+
"401":
|
|
1612
|
+
description: ""
|
|
1613
|
+
content:
|
|
1614
|
+
application/json:
|
|
1615
|
+
schema: {}
|
|
1616
|
+
"403":
|
|
1617
|
+
description: ""
|
|
1618
|
+
content:
|
|
1619
|
+
application/json:
|
|
1620
|
+
schema: {}
|
|
1621
|
+
"404":
|
|
1622
|
+
description: ""
|
|
1623
|
+
content:
|
|
1624
|
+
application/json:
|
|
1625
|
+
schema: {}
|
|
1626
|
+
"405":
|
|
1627
|
+
description: ""
|
|
1628
|
+
content:
|
|
1629
|
+
application/json:
|
|
1630
|
+
schema: {}
|
|
1631
|
+
security:
|
|
1632
|
+
- BasicAuth: []
|
|
1633
|
+
x-openai-isConsequential: false
|
|
1634
|
+
patch:
|
|
1635
|
+
description: Patch a media record
|
|
1636
|
+
operationId: media_patch
|
|
1637
|
+
tags:
|
|
1638
|
+
- Media
|
|
1639
|
+
parameters:
|
|
1640
|
+
- name: mediaId
|
|
1641
|
+
in: path
|
|
1642
|
+
description: The unique langfuse identifier of a media record
|
|
1643
|
+
required: true
|
|
1644
|
+
schema:
|
|
1645
|
+
type: string
|
|
1646
|
+
responses:
|
|
1647
|
+
"204":
|
|
1648
|
+
description: ""
|
|
1649
|
+
"400":
|
|
1650
|
+
description: ""
|
|
1651
|
+
content:
|
|
1652
|
+
application/json:
|
|
1653
|
+
schema: {}
|
|
1654
|
+
"401":
|
|
1655
|
+
description: ""
|
|
1656
|
+
content:
|
|
1657
|
+
application/json:
|
|
1658
|
+
schema: {}
|
|
1659
|
+
"403":
|
|
1660
|
+
description: ""
|
|
1661
|
+
content:
|
|
1662
|
+
application/json:
|
|
1663
|
+
schema: {}
|
|
1664
|
+
"404":
|
|
1665
|
+
description: ""
|
|
1666
|
+
content:
|
|
1667
|
+
application/json:
|
|
1668
|
+
schema: {}
|
|
1669
|
+
"405":
|
|
1670
|
+
description: ""
|
|
1671
|
+
content:
|
|
1672
|
+
application/json:
|
|
1673
|
+
schema: {}
|
|
1674
|
+
security:
|
|
1675
|
+
- BasicAuth: []
|
|
1676
|
+
requestBody:
|
|
1677
|
+
required: true
|
|
1678
|
+
content:
|
|
1679
|
+
application/json:
|
|
1680
|
+
schema:
|
|
1681
|
+
$ref: "#/components/schemas/PatchMediaBody"
|
|
1682
|
+
x-openai-isConsequential: false
|
|
1683
|
+
components:
|
|
1684
|
+
schemas:
|
|
1685
|
+
PaginatedDatasetItems:
|
|
1686
|
+
title: PaginatedDatasetItems
|
|
1687
|
+
type: object
|
|
1688
|
+
properties:
|
|
1689
|
+
data:
|
|
1690
|
+
type: array
|
|
1691
|
+
items:
|
|
1692
|
+
$ref: "#/components/schemas/DatasetItem"
|
|
1693
|
+
meta:
|
|
1694
|
+
$ref: "#/components/schemas/utilsMetaResponse"
|
|
1695
|
+
required:
|
|
1696
|
+
- data
|
|
1697
|
+
- meta
|
|
1698
|
+
DatasetItem:
|
|
1699
|
+
title: DatasetItem
|
|
1700
|
+
type: object
|
|
1701
|
+
properties:
|
|
1702
|
+
id:
|
|
1703
|
+
type: string
|
|
1704
|
+
status:
|
|
1705
|
+
$ref: "#/components/schemas/DatasetStatus"
|
|
1706
|
+
input:
|
|
1707
|
+
description: Input data for the dataset item
|
|
1708
|
+
expectedOutput:
|
|
1709
|
+
description: Expected output for the dataset item
|
|
1710
|
+
metadata:
|
|
1711
|
+
description: Metadata associated with the dataset item
|
|
1712
|
+
sourceTraceId:
|
|
1713
|
+
type:
|
|
1714
|
+
- string
|
|
1715
|
+
- "null"
|
|
1716
|
+
description: The trace ID that sourced this dataset item
|
|
1717
|
+
sourceObservationId:
|
|
1718
|
+
type:
|
|
1719
|
+
- string
|
|
1720
|
+
- "null"
|
|
1721
|
+
description: The observation ID that sourced this dataset item
|
|
1722
|
+
datasetId:
|
|
1723
|
+
type: string
|
|
1724
|
+
datasetName:
|
|
1725
|
+
type: string
|
|
1726
|
+
createdAt:
|
|
1727
|
+
type: string
|
|
1728
|
+
format: date-time
|
|
1729
|
+
updatedAt:
|
|
1730
|
+
type: string
|
|
1731
|
+
format: date-time
|
|
1732
|
+
mediaReferences:
|
|
1733
|
+
type: array
|
|
1734
|
+
items:
|
|
1735
|
+
$ref: "#/components/schemas/DatasetItemMediaReference"
|
|
1736
|
+
description: Resolved Langfuse media references found in input, expectedOutput, and metadata.
|
|
1737
|
+
required:
|
|
1738
|
+
- id
|
|
1739
|
+
- status
|
|
1740
|
+
- input
|
|
1741
|
+
- expectedOutput
|
|
1742
|
+
- metadata
|
|
1743
|
+
- sourceTraceId
|
|
1744
|
+
- sourceObservationId
|
|
1745
|
+
- datasetId
|
|
1746
|
+
- datasetName
|
|
1747
|
+
- createdAt
|
|
1748
|
+
- updatedAt
|
|
1749
|
+
- mediaReferences
|
|
1750
|
+
CreateCommentResponse:
|
|
1751
|
+
title: CreateCommentResponse
|
|
1752
|
+
type: object
|
|
1753
|
+
properties:
|
|
1754
|
+
id:
|
|
1755
|
+
type: string
|
|
1756
|
+
description: The id of the created object in Langfuse
|
|
1757
|
+
required:
|
|
1758
|
+
- id
|
|
1759
|
+
CreateCommentRequest:
|
|
1760
|
+
title: CreateCommentRequest
|
|
1761
|
+
type: object
|
|
1762
|
+
properties:
|
|
1763
|
+
projectId:
|
|
1764
|
+
type: string
|
|
1765
|
+
description: The id of the project to attach the comment to.
|
|
1766
|
+
objectType:
|
|
1767
|
+
type: string
|
|
1768
|
+
description: The type of the object to attach the comment to (trace, observation, session, prompt).
|
|
1769
|
+
objectId:
|
|
1770
|
+
type: string
|
|
1771
|
+
description: >-
|
|
1772
|
+
The id of the object to attach the comment to. If this does not reference a valid existing object, an error
|
|
1773
|
+
will be thrown.
|
|
1774
|
+
content:
|
|
1775
|
+
type: string
|
|
1776
|
+
description: The content of the comment. May include markdown. Currently limited to 5000 characters.
|
|
1777
|
+
authorUserId:
|
|
1778
|
+
type:
|
|
1779
|
+
- string
|
|
1780
|
+
- "null"
|
|
1781
|
+
description: >-
|
|
1782
|
+
The id of the user who created the comment. Must be a member of the organization that owns the project,
|
|
1783
|
+
otherwise an error will be thrown.
|
|
1784
|
+
required:
|
|
1785
|
+
- projectId
|
|
1786
|
+
- objectType
|
|
1787
|
+
- objectId
|
|
1788
|
+
- content
|
|
1789
|
+
GetCommentsResponse:
|
|
1790
|
+
title: GetCommentsResponse
|
|
1791
|
+
type: object
|
|
1792
|
+
properties:
|
|
1793
|
+
data:
|
|
1794
|
+
type: array
|
|
1795
|
+
items:
|
|
1796
|
+
$ref: "#/components/schemas/Comment"
|
|
1797
|
+
meta:
|
|
1798
|
+
$ref: "#/components/schemas/utilsMetaResponse"
|
|
1799
|
+
required:
|
|
1800
|
+
- data
|
|
1801
|
+
- meta
|
|
1802
|
+
ObservationLevel:
|
|
1803
|
+
title: ObservationLevel
|
|
1804
|
+
type: string
|
|
1805
|
+
enum:
|
|
1806
|
+
- DEBUG
|
|
1807
|
+
- DEFAULT
|
|
1808
|
+
- WARNING
|
|
1809
|
+
- ERROR
|
|
1810
|
+
ObservationsV2Response:
|
|
1811
|
+
title: ObservationsV2Response
|
|
1812
|
+
type: object
|
|
1813
|
+
description: |-
|
|
1814
|
+
Response containing observations with field-group-based filtering and cursor-based pagination.
|
|
1815
|
+
|
|
1816
|
+
The `data` array contains observation objects with only the requested field groups included.
|
|
1817
|
+
Use the `cursor` in `meta` to retrieve the next page of results.
|
|
1818
|
+
properties:
|
|
1819
|
+
data:
|
|
1820
|
+
type: array
|
|
1821
|
+
items:
|
|
1822
|
+
$ref: "#/components/schemas/ObservationV2"
|
|
1823
|
+
description: Array of observation objects. Fields included depend on the `fields` parameter in the request.
|
|
1824
|
+
meta:
|
|
1825
|
+
$ref: "#/components/schemas/ObservationsV2Meta"
|
|
1826
|
+
required:
|
|
1827
|
+
- data
|
|
1828
|
+
- meta
|
|
1829
|
+
OtelTraceResponse:
|
|
1830
|
+
title: OtelTraceResponse
|
|
1831
|
+
type: object
|
|
1832
|
+
description: Response from trace export request. Empty object indicates success.
|
|
1833
|
+
properties: {}
|
|
1834
|
+
OtelResourceSpan:
|
|
1835
|
+
title: OtelResourceSpan
|
|
1836
|
+
type: object
|
|
1837
|
+
description: Represents a collection of spans from a single resource as per OTLP specification
|
|
1838
|
+
properties:
|
|
1839
|
+
resource:
|
|
1840
|
+
description: Resource information
|
|
1841
|
+
anyOf:
|
|
1842
|
+
- $ref: "#/components/schemas/OtelResource"
|
|
1843
|
+
- type: "null"
|
|
1844
|
+
scopeSpans:
|
|
1845
|
+
type:
|
|
1846
|
+
- array
|
|
1847
|
+
- "null"
|
|
1848
|
+
items:
|
|
1849
|
+
$ref: "#/components/schemas/OtelScopeSpan"
|
|
1850
|
+
description: Array of scope spans
|
|
1851
|
+
PromptMetaListResponse:
|
|
1852
|
+
title: PromptMetaListResponse
|
|
1853
|
+
type: object
|
|
1854
|
+
properties:
|
|
1855
|
+
data:
|
|
1856
|
+
type: array
|
|
1857
|
+
items:
|
|
1858
|
+
$ref: "#/components/schemas/PromptMeta"
|
|
1859
|
+
meta:
|
|
1860
|
+
$ref: "#/components/schemas/utilsMetaResponse"
|
|
1861
|
+
required:
|
|
1862
|
+
- data
|
|
1863
|
+
- meta
|
|
1864
|
+
Prompt:
|
|
1865
|
+
title: Prompt
|
|
1866
|
+
oneOf:
|
|
1867
|
+
- type: object
|
|
1868
|
+
allOf:
|
|
1869
|
+
- type: object
|
|
1870
|
+
properties:
|
|
1871
|
+
type:
|
|
1872
|
+
type: string
|
|
1873
|
+
enum:
|
|
1874
|
+
- chat
|
|
1875
|
+
- $ref: "#/components/schemas/ChatPrompt"
|
|
1876
|
+
required:
|
|
1877
|
+
- type
|
|
1878
|
+
- type: object
|
|
1879
|
+
allOf:
|
|
1880
|
+
- type: object
|
|
1881
|
+
properties:
|
|
1882
|
+
type:
|
|
1883
|
+
type: string
|
|
1884
|
+
enum:
|
|
1885
|
+
- text
|
|
1886
|
+
- $ref: "#/components/schemas/TextPrompt"
|
|
1887
|
+
required:
|
|
1888
|
+
- type
|
|
1889
|
+
CreatePromptRequest:
|
|
1890
|
+
title: CreatePromptRequest
|
|
1891
|
+
oneOf:
|
|
1892
|
+
- $ref: "#/components/schemas/CreateChatPromptRequest"
|
|
1893
|
+
- $ref: "#/components/schemas/CreateTextPromptRequest"
|
|
1894
|
+
CreateScoreResponse:
|
|
1895
|
+
title: CreateScoreResponse
|
|
1896
|
+
type: object
|
|
1897
|
+
properties:
|
|
1898
|
+
id:
|
|
1899
|
+
type: string
|
|
1900
|
+
description: The id of the created object in Langfuse
|
|
1901
|
+
required:
|
|
1902
|
+
- id
|
|
1903
|
+
CreateScoreRequest:
|
|
1904
|
+
title: CreateScoreRequest
|
|
1905
|
+
type: object
|
|
1906
|
+
properties:
|
|
1907
|
+
id:
|
|
1908
|
+
type:
|
|
1909
|
+
- string
|
|
1910
|
+
- "null"
|
|
1911
|
+
traceId:
|
|
1912
|
+
type:
|
|
1913
|
+
- string
|
|
1914
|
+
- "null"
|
|
1915
|
+
sessionId:
|
|
1916
|
+
type:
|
|
1917
|
+
- string
|
|
1918
|
+
- "null"
|
|
1919
|
+
observationId:
|
|
1920
|
+
type:
|
|
1921
|
+
- string
|
|
1922
|
+
- "null"
|
|
1923
|
+
datasetRunId:
|
|
1924
|
+
type:
|
|
1925
|
+
- string
|
|
1926
|
+
- "null"
|
|
1927
|
+
name:
|
|
1928
|
+
type: string
|
|
1929
|
+
value:
|
|
1930
|
+
$ref: "#/components/schemas/CreateScoreValue"
|
|
1931
|
+
description: >-
|
|
1932
|
+
The value of the score. Must be passed as string for categorical and text scores, and numeric for boolean
|
|
1933
|
+
and numeric scores. Boolean score values must equal either 1 or 0 (true or false). Text score values must be
|
|
1934
|
+
between 1 and 500 characters.
|
|
1935
|
+
comment:
|
|
1936
|
+
type:
|
|
1937
|
+
- string
|
|
1938
|
+
- "null"
|
|
1939
|
+
metadata:
|
|
1940
|
+
type:
|
|
1941
|
+
- object
|
|
1942
|
+
- "null"
|
|
1943
|
+
additionalProperties: true
|
|
1944
|
+
environment:
|
|
1945
|
+
type:
|
|
1946
|
+
- string
|
|
1947
|
+
- "null"
|
|
1948
|
+
description: >-
|
|
1949
|
+
The environment of the score. Can be any lowercase alphanumeric string with hyphens and underscores that
|
|
1950
|
+
does not start with 'langfuse'.
|
|
1951
|
+
queueId:
|
|
1952
|
+
type:
|
|
1953
|
+
- string
|
|
1954
|
+
- "null"
|
|
1955
|
+
description: >-
|
|
1956
|
+
The annotation queue referenced by the score. Indicates if score was initially created while processing
|
|
1957
|
+
annotation queue.
|
|
1958
|
+
dataType:
|
|
1959
|
+
description: >-
|
|
1960
|
+
The data type of the score. When passing a configId this field is inferred. Otherwise, this field must be
|
|
1961
|
+
passed or will default to numeric.
|
|
1962
|
+
anyOf:
|
|
1963
|
+
- $ref: "#/components/schemas/ScoreDataType"
|
|
1964
|
+
- type: "null"
|
|
1965
|
+
configId:
|
|
1966
|
+
type:
|
|
1967
|
+
- string
|
|
1968
|
+
- "null"
|
|
1969
|
+
description: >-
|
|
1970
|
+
Reference a score config on a score. The unique langfuse identifier of a score config. When passing this
|
|
1971
|
+
field, the dataType and stringValue fields are automatically populated.
|
|
1972
|
+
source:
|
|
1973
|
+
description: >-
|
|
1974
|
+
The source of the score. Defaults to API. Set to ANNOTATION to prefill scores (e.g. from an LLM) for a human
|
|
1975
|
+
reviewer to verify in an annotation queue. When source is ANNOTATION, a configId is required unless dataType
|
|
1976
|
+
is CORRECTION. EVAL is reserved for internal evaluator outputs and is not accepted on this endpoint.
|
|
1977
|
+
anyOf:
|
|
1978
|
+
- $ref: "#/components/schemas/CreateScoreSource"
|
|
1979
|
+
- type: "null"
|
|
1980
|
+
required:
|
|
1981
|
+
- name
|
|
1982
|
+
- value
|
|
1983
|
+
GetScoresV3Response:
|
|
1984
|
+
title: GetScoresV3Response
|
|
1985
|
+
type: object
|
|
1986
|
+
properties:
|
|
1987
|
+
data:
|
|
1988
|
+
type: array
|
|
1989
|
+
items:
|
|
1990
|
+
$ref: "#/components/schemas/ScoreV3"
|
|
1991
|
+
meta:
|
|
1992
|
+
$ref: "#/components/schemas/GetScoresV3Meta"
|
|
1993
|
+
required:
|
|
1994
|
+
- data
|
|
1995
|
+
- meta
|
|
1996
|
+
ScoreConfig:
|
|
1997
|
+
title: ScoreConfig
|
|
1998
|
+
type: object
|
|
1999
|
+
description: Configuration for a score
|
|
2000
|
+
properties:
|
|
2001
|
+
id:
|
|
2002
|
+
type: string
|
|
2003
|
+
name:
|
|
2004
|
+
type: string
|
|
2005
|
+
createdAt:
|
|
2006
|
+
type: string
|
|
2007
|
+
format: date-time
|
|
2008
|
+
updatedAt:
|
|
2009
|
+
type: string
|
|
2010
|
+
format: date-time
|
|
2011
|
+
projectId:
|
|
2012
|
+
type: string
|
|
2013
|
+
dataType:
|
|
2014
|
+
$ref: "#/components/schemas/ScoreConfigDataType"
|
|
2015
|
+
isArchived:
|
|
2016
|
+
type: boolean
|
|
2017
|
+
description: Whether the score config is archived. Defaults to false
|
|
2018
|
+
minValue:
|
|
2019
|
+
type:
|
|
2020
|
+
- number
|
|
2021
|
+
- "null"
|
|
2022
|
+
format: double
|
|
2023
|
+
description: Sets minimum value for numerical scores. If not set, the minimum value defaults to -∞
|
|
2024
|
+
maxValue:
|
|
2025
|
+
type:
|
|
2026
|
+
- number
|
|
2027
|
+
- "null"
|
|
2028
|
+
format: double
|
|
2029
|
+
description: Sets maximum value for numerical scores. If not set, the maximum value defaults to +∞
|
|
2030
|
+
categories:
|
|
2031
|
+
type:
|
|
2032
|
+
- array
|
|
2033
|
+
- "null"
|
|
2034
|
+
items:
|
|
2035
|
+
$ref: "#/components/schemas/ConfigCategory"
|
|
2036
|
+
description: Configures custom categories for categorical scores
|
|
2037
|
+
description:
|
|
2038
|
+
type:
|
|
2039
|
+
- string
|
|
2040
|
+
- "null"
|
|
2041
|
+
description: Description of the score config
|
|
2042
|
+
required:
|
|
2043
|
+
- id
|
|
2044
|
+
- name
|
|
2045
|
+
- createdAt
|
|
2046
|
+
- updatedAt
|
|
2047
|
+
- projectId
|
|
2048
|
+
- dataType
|
|
2049
|
+
- isArchived
|
|
2050
|
+
CreateScoreConfigRequest:
|
|
2051
|
+
title: CreateScoreConfigRequest
|
|
2052
|
+
type: object
|
|
2053
|
+
properties:
|
|
2054
|
+
name:
|
|
2055
|
+
type: string
|
|
2056
|
+
description: >-
|
|
2057
|
+
Name of the score config. Max 35 characters. Only letters, numbers, underscores, spaces, periods,
|
|
2058
|
+
parentheses, and hyphens are allowed.
|
|
2059
|
+
dataType:
|
|
2060
|
+
$ref: "#/components/schemas/ScoreConfigDataType"
|
|
2061
|
+
categories:
|
|
2062
|
+
type:
|
|
2063
|
+
- array
|
|
2064
|
+
- "null"
|
|
2065
|
+
items:
|
|
2066
|
+
$ref: "#/components/schemas/ConfigCategory"
|
|
2067
|
+
description: >-
|
|
2068
|
+
Configure custom categories for categorical scores. Pass a list of objects with `label` and `value`
|
|
2069
|
+
properties. Categories are autogenerated for boolean configs and cannot be passed
|
|
2070
|
+
minValue:
|
|
2071
|
+
type:
|
|
2072
|
+
- number
|
|
2073
|
+
- "null"
|
|
2074
|
+
format: double
|
|
2075
|
+
description: Configure a minimum value for numerical scores. If not set, the minimum value defaults to -∞
|
|
2076
|
+
maxValue:
|
|
2077
|
+
type:
|
|
2078
|
+
- number
|
|
2079
|
+
- "null"
|
|
2080
|
+
format: double
|
|
2081
|
+
description: Configure a maximum value for numerical scores. If not set, the maximum value defaults to +∞
|
|
2082
|
+
description:
|
|
2083
|
+
type:
|
|
2084
|
+
- string
|
|
2085
|
+
- "null"
|
|
2086
|
+
description: >-
|
|
2087
|
+
Description is shown across the Langfuse UI and can be used to e.g. explain the config categories in detail,
|
|
2088
|
+
why a numeric range was set, or provide additional context on config name or usage
|
|
2089
|
+
required:
|
|
2090
|
+
- name
|
|
2091
|
+
- dataType
|
|
2092
|
+
ScoreConfigs:
|
|
2093
|
+
title: ScoreConfigs
|
|
2094
|
+
type: object
|
|
2095
|
+
properties:
|
|
2096
|
+
data:
|
|
2097
|
+
type: array
|
|
2098
|
+
items:
|
|
2099
|
+
$ref: "#/components/schemas/ScoreConfig"
|
|
2100
|
+
meta:
|
|
2101
|
+
$ref: "#/components/schemas/utilsMetaResponse"
|
|
2102
|
+
required:
|
|
2103
|
+
- data
|
|
2104
|
+
- meta
|
|
2105
|
+
GetMediaUploadUrlResponse:
|
|
2106
|
+
title: GetMediaUploadUrlResponse
|
|
2107
|
+
type: object
|
|
2108
|
+
properties:
|
|
2109
|
+
uploadUrl:
|
|
2110
|
+
type:
|
|
2111
|
+
- string
|
|
2112
|
+
- "null"
|
|
2113
|
+
description: The presigned upload URL. If the asset is already uploaded, this will be null
|
|
2114
|
+
mediaId:
|
|
2115
|
+
type: string
|
|
2116
|
+
description: The unique langfuse identifier of a media record
|
|
2117
|
+
required:
|
|
2118
|
+
- mediaId
|
|
2119
|
+
GetMediaUploadUrlRequest:
|
|
2120
|
+
title: GetMediaUploadUrlRequest
|
|
2121
|
+
type: object
|
|
2122
|
+
description: >-
|
|
2123
|
+
Request a presigned media upload URL. Provide exactly one context: a trace (traceId, optionally observationId)
|
|
2124
|
+
or a dataset item (datasetId + datasetItemId). field is required and must match the chosen context.
|
|
2125
|
+
properties:
|
|
2126
|
+
traceId:
|
|
2127
|
+
type:
|
|
2128
|
+
- string
|
|
2129
|
+
- "null"
|
|
2130
|
+
description: The trace the media is associated with. Null for dataset item media uploads.
|
|
2131
|
+
observationId:
|
|
2132
|
+
type:
|
|
2133
|
+
- string
|
|
2134
|
+
- "null"
|
|
2135
|
+
description: >-
|
|
2136
|
+
The observation ID associated with the media record. If the media record is associated directly with a
|
|
2137
|
+
trace, this will be null.
|
|
2138
|
+
datasetId:
|
|
2139
|
+
type:
|
|
2140
|
+
- string
|
|
2141
|
+
- "null"
|
|
2142
|
+
description: The dataset the media belongs to. Null for trace/observation media uploads.
|
|
2143
|
+
datasetItemId:
|
|
2144
|
+
type:
|
|
2145
|
+
- string
|
|
2146
|
+
- "null"
|
|
2147
|
+
description: >-
|
|
2148
|
+
The dataset item the media is associated with (need not exist yet). Null for trace/observation media
|
|
2149
|
+
uploads.
|
|
2150
|
+
contentType:
|
|
2151
|
+
$ref: "#/components/schemas/MediaContentType"
|
|
2152
|
+
contentLength:
|
|
2153
|
+
type: integer
|
|
2154
|
+
description: The size of the media record in bytes
|
|
2155
|
+
sha256Hash:
|
|
2156
|
+
type: string
|
|
2157
|
+
description: The SHA-256 hash of the media record
|
|
2158
|
+
field:
|
|
2159
|
+
type: string
|
|
2160
|
+
description: >-
|
|
2161
|
+
The item field the media is in: `input`/`output`/`metadata` (trace) or `input`/`expectedOutput`/`metadata`
|
|
2162
|
+
(dataset item).
|
|
2163
|
+
required:
|
|
2164
|
+
- contentType
|
|
2165
|
+
- contentLength
|
|
2166
|
+
- sha256Hash
|
|
2167
|
+
- field
|
|
2168
|
+
GetMediaResponse:
|
|
2169
|
+
title: GetMediaResponse
|
|
2170
|
+
type: object
|
|
2171
|
+
properties:
|
|
2172
|
+
mediaId:
|
|
2173
|
+
type: string
|
|
2174
|
+
description: The unique langfuse identifier of a media record
|
|
2175
|
+
contentType:
|
|
2176
|
+
type: string
|
|
2177
|
+
description: The MIME type of the media record
|
|
2178
|
+
contentLength:
|
|
2179
|
+
type: integer
|
|
2180
|
+
description: The size of the media record in bytes
|
|
2181
|
+
uploadedAt:
|
|
2182
|
+
type: string
|
|
2183
|
+
format: date-time
|
|
2184
|
+
description: The date and time when the media record was uploaded
|
|
2185
|
+
url:
|
|
2186
|
+
type: string
|
|
2187
|
+
description: The download URL of the media record
|
|
2188
|
+
urlExpiry:
|
|
2189
|
+
type: string
|
|
2190
|
+
description: The expiry date and time of the media record download URL
|
|
2191
|
+
required:
|
|
2192
|
+
- mediaId
|
|
2193
|
+
- contentType
|
|
2194
|
+
- contentLength
|
|
2195
|
+
- uploadedAt
|
|
2196
|
+
- url
|
|
2197
|
+
- urlExpiry
|
|
2198
|
+
PatchMediaBody:
|
|
2199
|
+
title: PatchMediaBody
|
|
2200
|
+
type: object
|
|
2201
|
+
properties:
|
|
2202
|
+
uploadedAt:
|
|
2203
|
+
type: string
|
|
2204
|
+
format: date-time
|
|
2205
|
+
description: The date and time when the media record was uploaded
|
|
2206
|
+
uploadHttpStatus:
|
|
2207
|
+
type: integer
|
|
2208
|
+
description: The HTTP status code of the upload
|
|
2209
|
+
uploadHttpError:
|
|
2210
|
+
type:
|
|
2211
|
+
- string
|
|
2212
|
+
- "null"
|
|
2213
|
+
description: The HTTP error message of the upload
|
|
2214
|
+
uploadTimeMs:
|
|
2215
|
+
type:
|
|
2216
|
+
- integer
|
|
2217
|
+
- "null"
|
|
2218
|
+
description: The time in milliseconds it took to upload the media record
|
|
2219
|
+
required:
|
|
2220
|
+
- uploadedAt
|
|
2221
|
+
- uploadHttpStatus
|
|
2222
|
+
utilsMetaResponse:
|
|
2223
|
+
title: utilsMetaResponse
|
|
2224
|
+
type: object
|
|
2225
|
+
properties:
|
|
2226
|
+
page:
|
|
2227
|
+
type: integer
|
|
2228
|
+
description: current page number
|
|
2229
|
+
limit:
|
|
2230
|
+
type: integer
|
|
2231
|
+
description: number of items per page
|
|
2232
|
+
totalItems:
|
|
2233
|
+
type: integer
|
|
2234
|
+
description: number of total items given the current filters/selection (if any)
|
|
2235
|
+
totalPages:
|
|
2236
|
+
type: integer
|
|
2237
|
+
description: number of total pages given the current limit
|
|
2238
|
+
required:
|
|
2239
|
+
- page
|
|
2240
|
+
- limit
|
|
2241
|
+
- totalItems
|
|
2242
|
+
- totalPages
|
|
2243
|
+
DatasetStatus:
|
|
2244
|
+
title: DatasetStatus
|
|
2245
|
+
type: string
|
|
2246
|
+
enum:
|
|
2247
|
+
- ACTIVE
|
|
2248
|
+
- ARCHIVED
|
|
2249
|
+
DatasetItemMediaReference:
|
|
2250
|
+
title: DatasetItemMediaReference
|
|
2251
|
+
type: object
|
|
2252
|
+
properties:
|
|
2253
|
+
field:
|
|
2254
|
+
$ref: "#/components/schemas/DatasetItemMediaReferenceField"
|
|
2255
|
+
description: The dataset item field containing the reference
|
|
2256
|
+
referenceString:
|
|
2257
|
+
type: string
|
|
2258
|
+
description: The Langfuse media reference string, e.g. `@@@langfuseMedia:type=image/png|id=...|source=bytes@@@`
|
|
2259
|
+
jsonPath:
|
|
2260
|
+
type: string
|
|
2261
|
+
description: JSONPath of the string holding the reference within the field, e.g. `$['image']`
|
|
2262
|
+
media:
|
|
2263
|
+
$ref: "#/components/schemas/DatasetItemMediaReferenceMedia"
|
|
2264
|
+
description: The resolved media record.
|
|
2265
|
+
required:
|
|
2266
|
+
- field
|
|
2267
|
+
- referenceString
|
|
2268
|
+
- jsonPath
|
|
2269
|
+
- media
|
|
2270
|
+
Comment:
|
|
2271
|
+
title: Comment
|
|
2272
|
+
type: object
|
|
2273
|
+
properties:
|
|
2274
|
+
id:
|
|
2275
|
+
type: string
|
|
2276
|
+
projectId:
|
|
2277
|
+
type: string
|
|
2278
|
+
createdAt:
|
|
2279
|
+
type: string
|
|
2280
|
+
format: date-time
|
|
2281
|
+
updatedAt:
|
|
2282
|
+
type: string
|
|
2283
|
+
format: date-time
|
|
2284
|
+
objectType:
|
|
2285
|
+
$ref: "#/components/schemas/CommentObjectType"
|
|
2286
|
+
objectId:
|
|
2287
|
+
type: string
|
|
2288
|
+
content:
|
|
2289
|
+
type: string
|
|
2290
|
+
authorUserId:
|
|
2291
|
+
type:
|
|
2292
|
+
- string
|
|
2293
|
+
- "null"
|
|
2294
|
+
description: The user ID of the comment author
|
|
2295
|
+
required:
|
|
2296
|
+
- id
|
|
2297
|
+
- projectId
|
|
2298
|
+
- createdAt
|
|
2299
|
+
- updatedAt
|
|
2300
|
+
- objectType
|
|
2301
|
+
- objectId
|
|
2302
|
+
- content
|
|
2303
|
+
ObservationV2:
|
|
2304
|
+
title: ObservationV2
|
|
2305
|
+
type: object
|
|
2306
|
+
description: |-
|
|
2307
|
+
An observation from the v2 API with field-group-based selection.
|
|
2308
|
+
Core fields are always present. Other fields are included only when their field group is requested.
|
|
2309
|
+
properties:
|
|
2310
|
+
id:
|
|
2311
|
+
type: string
|
|
2312
|
+
description: The unique identifier of the observation
|
|
2313
|
+
traceId:
|
|
2314
|
+
type:
|
|
2315
|
+
- string
|
|
2316
|
+
- "null"
|
|
2317
|
+
description: The trace ID associated with the observation
|
|
2318
|
+
startTime:
|
|
2319
|
+
type: string
|
|
2320
|
+
format: date-time
|
|
2321
|
+
description: The start time of the observation
|
|
2322
|
+
endTime:
|
|
2323
|
+
type:
|
|
2324
|
+
- string
|
|
2325
|
+
- "null"
|
|
2326
|
+
format: date-time
|
|
2327
|
+
description: The end time of the observation
|
|
2328
|
+
projectId:
|
|
2329
|
+
type: string
|
|
2330
|
+
description: The project ID this observation belongs to
|
|
2331
|
+
parentObservationId:
|
|
2332
|
+
type:
|
|
2333
|
+
- string
|
|
2334
|
+
- "null"
|
|
2335
|
+
description: |-
|
|
2336
|
+
The physical parent observation ID, if present.
|
|
2337
|
+
Observations marked as app roots by the SDK may retain a non-null parent ID.
|
|
2338
|
+
type:
|
|
2339
|
+
type: string
|
|
2340
|
+
description: The type of the observation (e.g. GENERATION, SPAN, EVENT)
|
|
2341
|
+
isRootObservation:
|
|
2342
|
+
type:
|
|
2343
|
+
- boolean
|
|
2344
|
+
- "null"
|
|
2345
|
+
description: |-
|
|
2346
|
+
Whether this observation is a logical root.
|
|
2347
|
+
This is true for observations without a physical parent and observations marked as app roots by the SDK.
|
|
2348
|
+
name:
|
|
2349
|
+
type:
|
|
2350
|
+
- string
|
|
2351
|
+
- "null"
|
|
2352
|
+
description: The name of the observation
|
|
2353
|
+
level:
|
|
2354
|
+
description: The level of the observation
|
|
2355
|
+
anyOf:
|
|
2356
|
+
- $ref: "#/components/schemas/ObservationLevel"
|
|
2357
|
+
- type: "null"
|
|
2358
|
+
statusMessage:
|
|
2359
|
+
type:
|
|
2360
|
+
- string
|
|
2361
|
+
- "null"
|
|
2362
|
+
description: The status message of the observation
|
|
2363
|
+
version:
|
|
2364
|
+
type:
|
|
2365
|
+
- string
|
|
2366
|
+
- "null"
|
|
2367
|
+
description: The version of the observation
|
|
2368
|
+
environment:
|
|
2369
|
+
type:
|
|
2370
|
+
- string
|
|
2371
|
+
- "null"
|
|
2372
|
+
description: The environment from which this observation originated
|
|
2373
|
+
bookmarked:
|
|
2374
|
+
type:
|
|
2375
|
+
- boolean
|
|
2376
|
+
- "null"
|
|
2377
|
+
description: Whether the observation is bookmarked
|
|
2378
|
+
public:
|
|
2379
|
+
type:
|
|
2380
|
+
- boolean
|
|
2381
|
+
- "null"
|
|
2382
|
+
description: Whether the observation is public
|
|
2383
|
+
userId:
|
|
2384
|
+
type:
|
|
2385
|
+
- string
|
|
2386
|
+
- "null"
|
|
2387
|
+
description: The user ID associated with the observation
|
|
2388
|
+
sessionId:
|
|
2389
|
+
type:
|
|
2390
|
+
- string
|
|
2391
|
+
- "null"
|
|
2392
|
+
description: The session ID associated with the observation
|
|
2393
|
+
completionStartTime:
|
|
2394
|
+
type:
|
|
2395
|
+
- string
|
|
2396
|
+
- "null"
|
|
2397
|
+
format: date-time
|
|
2398
|
+
description: The completion start time of the observation
|
|
2399
|
+
createdAt:
|
|
2400
|
+
type:
|
|
2401
|
+
- string
|
|
2402
|
+
- "null"
|
|
2403
|
+
format: date-time
|
|
2404
|
+
description: The creation timestamp of the observation
|
|
2405
|
+
updatedAt:
|
|
2406
|
+
type:
|
|
2407
|
+
- string
|
|
2408
|
+
- "null"
|
|
2409
|
+
format: date-time
|
|
2410
|
+
description: The last update timestamp of the observation
|
|
2411
|
+
input:
|
|
2412
|
+
description: The input data of the observation
|
|
2413
|
+
output:
|
|
2414
|
+
description: The output data of the observation
|
|
2415
|
+
metadata:
|
|
2416
|
+
description: Additional metadata of the observation
|
|
2417
|
+
providedModelName:
|
|
2418
|
+
type:
|
|
2419
|
+
- string
|
|
2420
|
+
- "null"
|
|
2421
|
+
description: The model name as provided by the user
|
|
2422
|
+
internalModelId:
|
|
2423
|
+
type:
|
|
2424
|
+
- string
|
|
2425
|
+
- "null"
|
|
2426
|
+
description: The internal model ID matched by Langfuse
|
|
2427
|
+
modelParameters:
|
|
2428
|
+
description: The parameters of the model used for the observation
|
|
2429
|
+
usageDetails:
|
|
2430
|
+
type:
|
|
2431
|
+
- object
|
|
2432
|
+
- "null"
|
|
2433
|
+
additionalProperties:
|
|
2434
|
+
type: integer
|
|
2435
|
+
description: The usage details of the observation. Key is the usage metric name, value is the number of units consumed.
|
|
2436
|
+
costDetails:
|
|
2437
|
+
type:
|
|
2438
|
+
- object
|
|
2439
|
+
- "null"
|
|
2440
|
+
additionalProperties:
|
|
2441
|
+
type: number
|
|
2442
|
+
format: double
|
|
2443
|
+
description: The cost details of the observation. Key is the cost metric name, value is the cost in USD.
|
|
2444
|
+
totalCost:
|
|
2445
|
+
type:
|
|
2446
|
+
- number
|
|
2447
|
+
- "null"
|
|
2448
|
+
format: double
|
|
2449
|
+
description: The total cost of the observation in USD
|
|
2450
|
+
usagePricingTierName:
|
|
2451
|
+
type:
|
|
2452
|
+
- string
|
|
2453
|
+
- "null"
|
|
2454
|
+
description: The name of the pricing tier applied to this observation's usage costs
|
|
2455
|
+
promptId:
|
|
2456
|
+
type:
|
|
2457
|
+
- string
|
|
2458
|
+
- "null"
|
|
2459
|
+
description: The prompt ID associated with the observation
|
|
2460
|
+
promptName:
|
|
2461
|
+
type:
|
|
2462
|
+
- string
|
|
2463
|
+
- "null"
|
|
2464
|
+
description: The prompt name associated with the observation
|
|
2465
|
+
promptVersion:
|
|
2466
|
+
type:
|
|
2467
|
+
- integer
|
|
2468
|
+
- "null"
|
|
2469
|
+
description: The prompt version associated with the observation
|
|
2470
|
+
latency:
|
|
2471
|
+
type:
|
|
2472
|
+
- number
|
|
2473
|
+
- "null"
|
|
2474
|
+
format: double
|
|
2475
|
+
description: The latency in seconds
|
|
2476
|
+
timeToFirstToken:
|
|
2477
|
+
type:
|
|
2478
|
+
- number
|
|
2479
|
+
- "null"
|
|
2480
|
+
format: double
|
|
2481
|
+
description: The time to first token in seconds
|
|
2482
|
+
modelId:
|
|
2483
|
+
type:
|
|
2484
|
+
- string
|
|
2485
|
+
- "null"
|
|
2486
|
+
description: The matched model ID. Null when the `model` field group is not requested.
|
|
2487
|
+
inputPrice:
|
|
2488
|
+
type:
|
|
2489
|
+
- string
|
|
2490
|
+
- "null"
|
|
2491
|
+
description: >-
|
|
2492
|
+
The input token price (USD per unit) from the matched model, serialized as a decimal string (e.g. "0.0001").
|
|
2493
|
+
Null when the `model` field group is not requested.
|
|
2494
|
+
outputPrice:
|
|
2495
|
+
type:
|
|
2496
|
+
- string
|
|
2497
|
+
- "null"
|
|
2498
|
+
description: >-
|
|
2499
|
+
The output token price (USD per unit) from the matched model, serialized as a decimal string (e.g.
|
|
2500
|
+
"0.0001"). Null when the `model` field group is not requested.
|
|
2501
|
+
totalPrice:
|
|
2502
|
+
type:
|
|
2503
|
+
- string
|
|
2504
|
+
- "null"
|
|
2505
|
+
description: >-
|
|
2506
|
+
The total token price (USD per unit) from the matched model, serialized as a decimal string (e.g. "0.0001").
|
|
2507
|
+
Null when the `model` field group is not requested.
|
|
2508
|
+
traceName:
|
|
2509
|
+
type:
|
|
2510
|
+
- string
|
|
2511
|
+
- "null"
|
|
2512
|
+
description: The name of the parent trace
|
|
2513
|
+
tags:
|
|
2514
|
+
type:
|
|
2515
|
+
- array
|
|
2516
|
+
- "null"
|
|
2517
|
+
items:
|
|
2518
|
+
type: string
|
|
2519
|
+
description: Tags from the parent trace (denormalized onto the observation)
|
|
2520
|
+
release:
|
|
2521
|
+
type:
|
|
2522
|
+
- string
|
|
2523
|
+
- "null"
|
|
2524
|
+
description: The release version of the parent trace
|
|
2525
|
+
required:
|
|
2526
|
+
- id
|
|
2527
|
+
- traceId
|
|
2528
|
+
- startTime
|
|
2529
|
+
- endTime
|
|
2530
|
+
- projectId
|
|
2531
|
+
- parentObservationId
|
|
2532
|
+
- type
|
|
2533
|
+
- modelId
|
|
2534
|
+
- inputPrice
|
|
2535
|
+
- outputPrice
|
|
2536
|
+
- totalPrice
|
|
2537
|
+
ObservationsV2Meta:
|
|
2538
|
+
title: ObservationsV2Meta
|
|
2539
|
+
type: object
|
|
2540
|
+
description: Metadata for cursor-based pagination
|
|
2541
|
+
properties:
|
|
2542
|
+
cursor:
|
|
2543
|
+
type:
|
|
2544
|
+
- string
|
|
2545
|
+
- "null"
|
|
2546
|
+
description: Base64-encoded cursor to use for retrieving the next page. If not present, there are no more results.
|
|
2547
|
+
OtelResource:
|
|
2548
|
+
title: OtelResource
|
|
2549
|
+
type: object
|
|
2550
|
+
description: Resource attributes identifying the source of telemetry
|
|
2551
|
+
properties:
|
|
2552
|
+
attributes:
|
|
2553
|
+
type:
|
|
2554
|
+
- array
|
|
2555
|
+
- "null"
|
|
2556
|
+
items:
|
|
2557
|
+
$ref: "#/components/schemas/OtelAttribute"
|
|
2558
|
+
description: Resource attributes like service.name, service.version, etc.
|
|
2559
|
+
OtelScopeSpan:
|
|
2560
|
+
title: OtelScopeSpan
|
|
2561
|
+
type: object
|
|
2562
|
+
description: Collection of spans from a single instrumentation scope
|
|
2563
|
+
properties:
|
|
2564
|
+
scope:
|
|
2565
|
+
description: Instrumentation scope information
|
|
2566
|
+
anyOf:
|
|
2567
|
+
- $ref: "#/components/schemas/OtelScope"
|
|
2568
|
+
- type: "null"
|
|
2569
|
+
spans:
|
|
2570
|
+
type:
|
|
2571
|
+
- array
|
|
2572
|
+
- "null"
|
|
2573
|
+
items:
|
|
2574
|
+
$ref: "#/components/schemas/OtelSpan"
|
|
2575
|
+
description: Array of spans
|
|
2576
|
+
PromptMeta:
|
|
2577
|
+
title: PromptMeta
|
|
2578
|
+
type: object
|
|
2579
|
+
properties:
|
|
2580
|
+
name:
|
|
2581
|
+
type: string
|
|
2582
|
+
type:
|
|
2583
|
+
$ref: "#/components/schemas/PromptType"
|
|
2584
|
+
description: Indicates whether the prompt is a text or chat prompt.
|
|
2585
|
+
versions:
|
|
2586
|
+
type: array
|
|
2587
|
+
items:
|
|
2588
|
+
type: integer
|
|
2589
|
+
labels:
|
|
2590
|
+
type: array
|
|
2591
|
+
items:
|
|
2592
|
+
type: string
|
|
2593
|
+
tags:
|
|
2594
|
+
type: array
|
|
2595
|
+
items:
|
|
2596
|
+
type: string
|
|
2597
|
+
lastUpdatedAt:
|
|
2598
|
+
type: string
|
|
2599
|
+
format: date-time
|
|
2600
|
+
lastConfig:
|
|
2601
|
+
description: Config object of the most recent prompt version that matches the filters (if any are provided)
|
|
2602
|
+
required:
|
|
2603
|
+
- name
|
|
2604
|
+
- type
|
|
2605
|
+
- versions
|
|
2606
|
+
- labels
|
|
2607
|
+
- tags
|
|
2608
|
+
- lastUpdatedAt
|
|
2609
|
+
- lastConfig
|
|
2610
|
+
ChatPrompt:
|
|
2611
|
+
title: ChatPrompt
|
|
2612
|
+
type: object
|
|
2613
|
+
properties:
|
|
2614
|
+
prompt:
|
|
2615
|
+
type: array
|
|
2616
|
+
items:
|
|
2617
|
+
$ref: "#/components/schemas/ChatMessageWithPlaceholders"
|
|
2618
|
+
required:
|
|
2619
|
+
- prompt
|
|
2620
|
+
allOf:
|
|
2621
|
+
- $ref: "#/components/schemas/BasePrompt"
|
|
2622
|
+
TextPrompt:
|
|
2623
|
+
title: TextPrompt
|
|
2624
|
+
type: object
|
|
2625
|
+
properties:
|
|
2626
|
+
prompt:
|
|
2627
|
+
type: string
|
|
2628
|
+
required:
|
|
2629
|
+
- prompt
|
|
2630
|
+
allOf:
|
|
2631
|
+
- $ref: "#/components/schemas/BasePrompt"
|
|
2632
|
+
CreateChatPromptRequest:
|
|
2633
|
+
title: CreateChatPromptRequest
|
|
2634
|
+
type: object
|
|
2635
|
+
properties:
|
|
2636
|
+
name:
|
|
2637
|
+
type: string
|
|
2638
|
+
prompt:
|
|
2639
|
+
type: array
|
|
2640
|
+
items:
|
|
2641
|
+
$ref: "#/components/schemas/ChatMessageWithPlaceholders"
|
|
2642
|
+
config: {}
|
|
2643
|
+
type:
|
|
2644
|
+
$ref: "#/components/schemas/CreateChatPromptType"
|
|
2645
|
+
labels:
|
|
2646
|
+
type:
|
|
2647
|
+
- array
|
|
2648
|
+
- "null"
|
|
2649
|
+
items:
|
|
2650
|
+
type: string
|
|
2651
|
+
description: List of deployment labels of this prompt version.
|
|
2652
|
+
tags:
|
|
2653
|
+
type:
|
|
2654
|
+
- array
|
|
2655
|
+
- "null"
|
|
2656
|
+
items:
|
|
2657
|
+
type: string
|
|
2658
|
+
description: List of tags to apply to all versions of this prompt.
|
|
2659
|
+
commitMessage:
|
|
2660
|
+
type:
|
|
2661
|
+
- string
|
|
2662
|
+
- "null"
|
|
2663
|
+
description: Commit message for this prompt version.
|
|
2664
|
+
required:
|
|
2665
|
+
- name
|
|
2666
|
+
- prompt
|
|
2667
|
+
- type
|
|
2668
|
+
CreateTextPromptRequest:
|
|
2669
|
+
title: CreateTextPromptRequest
|
|
2670
|
+
type: object
|
|
2671
|
+
properties:
|
|
2672
|
+
name:
|
|
2673
|
+
type: string
|
|
2674
|
+
prompt:
|
|
2675
|
+
type: string
|
|
2676
|
+
config: {}
|
|
2677
|
+
type:
|
|
2678
|
+
anyOf:
|
|
2679
|
+
- $ref: "#/components/schemas/CreateTextPromptType"
|
|
2680
|
+
- type: "null"
|
|
2681
|
+
labels:
|
|
2682
|
+
type:
|
|
2683
|
+
- array
|
|
2684
|
+
- "null"
|
|
2685
|
+
items:
|
|
2686
|
+
type: string
|
|
2687
|
+
description: List of deployment labels of this prompt version.
|
|
2688
|
+
tags:
|
|
2689
|
+
type:
|
|
2690
|
+
- array
|
|
2691
|
+
- "null"
|
|
2692
|
+
items:
|
|
2693
|
+
type: string
|
|
2694
|
+
description: List of tags to apply to all versions of this prompt.
|
|
2695
|
+
commitMessage:
|
|
2696
|
+
type:
|
|
2697
|
+
- string
|
|
2698
|
+
- "null"
|
|
2699
|
+
description: Commit message for this prompt version.
|
|
2700
|
+
required:
|
|
2701
|
+
- name
|
|
2702
|
+
- prompt
|
|
2703
|
+
CreateScoreValue:
|
|
2704
|
+
title: CreateScoreValue
|
|
2705
|
+
oneOf:
|
|
2706
|
+
- type: number
|
|
2707
|
+
format: double
|
|
2708
|
+
- type: string
|
|
2709
|
+
description: >-
|
|
2710
|
+
The value of the score. Must be passed as string for categorical and text scores, and numeric for boolean and
|
|
2711
|
+
numeric scores
|
|
2712
|
+
ScoreDataType:
|
|
2713
|
+
title: ScoreDataType
|
|
2714
|
+
type: string
|
|
2715
|
+
enum:
|
|
2716
|
+
- NUMERIC
|
|
2717
|
+
- BOOLEAN
|
|
2718
|
+
- CATEGORICAL
|
|
2719
|
+
- CORRECTION
|
|
2720
|
+
- TEXT
|
|
2721
|
+
CreateScoreSource:
|
|
2722
|
+
title: CreateScoreSource
|
|
2723
|
+
type: string
|
|
2724
|
+
enum:
|
|
2725
|
+
- API
|
|
2726
|
+
- ANNOTATION
|
|
2727
|
+
description: |-
|
|
2728
|
+
Source values accepted when creating a score via the public REST API.
|
|
2729
|
+
EVAL is reserved for internal evaluator outputs and is intentionally not
|
|
2730
|
+
exposed here — use commons.ScoreSource when reading scores.
|
|
2731
|
+
ScoreV3:
|
|
2732
|
+
title: ScoreV3
|
|
2733
|
+
oneOf:
|
|
2734
|
+
- type: object
|
|
2735
|
+
allOf:
|
|
2736
|
+
- type: object
|
|
2737
|
+
properties:
|
|
2738
|
+
dataType:
|
|
2739
|
+
type: string
|
|
2740
|
+
enum:
|
|
2741
|
+
- NUMERIC
|
|
2742
|
+
- $ref: "#/components/schemas/NumericScoreV3"
|
|
2743
|
+
required:
|
|
2744
|
+
- dataType
|
|
2745
|
+
- type: object
|
|
2746
|
+
allOf:
|
|
2747
|
+
- type: object
|
|
2748
|
+
properties:
|
|
2749
|
+
dataType:
|
|
2750
|
+
type: string
|
|
2751
|
+
enum:
|
|
2752
|
+
- BOOLEAN
|
|
2753
|
+
- $ref: "#/components/schemas/BooleanScoreV3"
|
|
2754
|
+
required:
|
|
2755
|
+
- dataType
|
|
2756
|
+
- type: object
|
|
2757
|
+
allOf:
|
|
2758
|
+
- type: object
|
|
2759
|
+
properties:
|
|
2760
|
+
dataType:
|
|
2761
|
+
type: string
|
|
2762
|
+
enum:
|
|
2763
|
+
- CATEGORICAL
|
|
2764
|
+
- $ref: "#/components/schemas/CategoricalScoreV3"
|
|
2765
|
+
required:
|
|
2766
|
+
- dataType
|
|
2767
|
+
- type: object
|
|
2768
|
+
allOf:
|
|
2769
|
+
- type: object
|
|
2770
|
+
properties:
|
|
2771
|
+
dataType:
|
|
2772
|
+
type: string
|
|
2773
|
+
enum:
|
|
2774
|
+
- TEXT
|
|
2775
|
+
- $ref: "#/components/schemas/TextScoreV3"
|
|
2776
|
+
required:
|
|
2777
|
+
- dataType
|
|
2778
|
+
- type: object
|
|
2779
|
+
allOf:
|
|
2780
|
+
- type: object
|
|
2781
|
+
properties:
|
|
2782
|
+
dataType:
|
|
2783
|
+
type: string
|
|
2784
|
+
enum:
|
|
2785
|
+
- CORRECTION
|
|
2786
|
+
- $ref: "#/components/schemas/CorrectionScoreV3"
|
|
2787
|
+
required:
|
|
2788
|
+
- dataType
|
|
2789
|
+
GetScoresV3Meta:
|
|
2790
|
+
title: GetScoresV3Meta
|
|
2791
|
+
type: object
|
|
2792
|
+
properties:
|
|
2793
|
+
limit:
|
|
2794
|
+
type: integer
|
|
2795
|
+
cursor:
|
|
2796
|
+
type:
|
|
2797
|
+
- string
|
|
2798
|
+
- "null"
|
|
2799
|
+
description: URL-safe base64 (base64url) cursor for the next page. Absent when there are no more results.
|
|
2800
|
+
required:
|
|
2801
|
+
- limit
|
|
2802
|
+
ScoreConfigDataType:
|
|
2803
|
+
title: ScoreConfigDataType
|
|
2804
|
+
type: string
|
|
2805
|
+
enum:
|
|
2806
|
+
- NUMERIC
|
|
2807
|
+
- BOOLEAN
|
|
2808
|
+
- CATEGORICAL
|
|
2809
|
+
- TEXT
|
|
2810
|
+
ConfigCategory:
|
|
2811
|
+
title: ConfigCategory
|
|
2812
|
+
type: object
|
|
2813
|
+
properties:
|
|
2814
|
+
value:
|
|
2815
|
+
type: number
|
|
2816
|
+
format: double
|
|
2817
|
+
label:
|
|
2818
|
+
type: string
|
|
2819
|
+
required:
|
|
2820
|
+
- value
|
|
2821
|
+
- label
|
|
2822
|
+
MediaContentType:
|
|
2823
|
+
title: MediaContentType
|
|
2824
|
+
type: string
|
|
2825
|
+
enum:
|
|
2826
|
+
- image/png
|
|
2827
|
+
- image/jpeg
|
|
2828
|
+
- image/jpg
|
|
2829
|
+
- image/webp
|
|
2830
|
+
- image/gif
|
|
2831
|
+
- image/svg+xml
|
|
2832
|
+
- image/tiff
|
|
2833
|
+
- image/bmp
|
|
2834
|
+
- image/avif
|
|
2835
|
+
- image/heic
|
|
2836
|
+
- audio/mpeg
|
|
2837
|
+
- audio/mp3
|
|
2838
|
+
- audio/wav
|
|
2839
|
+
- audio/ogg
|
|
2840
|
+
- audio/oga
|
|
2841
|
+
- audio/aac
|
|
2842
|
+
- audio/mp4
|
|
2843
|
+
- audio/flac
|
|
2844
|
+
- audio/opus
|
|
2845
|
+
- audio/webm
|
|
2846
|
+
- video/mp4
|
|
2847
|
+
- video/webm
|
|
2848
|
+
- video/ogg
|
|
2849
|
+
- video/mpeg
|
|
2850
|
+
- video/quicktime
|
|
2851
|
+
- video/x-msvideo
|
|
2852
|
+
- video/x-matroska
|
|
2853
|
+
- text/plain
|
|
2854
|
+
- text/html
|
|
2855
|
+
- text/css
|
|
2856
|
+
- text/csv
|
|
2857
|
+
- text/markdown
|
|
2858
|
+
- text/x-python
|
|
2859
|
+
- application/javascript
|
|
2860
|
+
- text/x-typescript
|
|
2861
|
+
- application/x-yaml
|
|
2862
|
+
- application/pdf
|
|
2863
|
+
- application/msword
|
|
2864
|
+
- application/vnd.ms-excel
|
|
2865
|
+
- application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
|
|
2866
|
+
- application/zip
|
|
2867
|
+
- application/json
|
|
2868
|
+
- application/xml
|
|
2869
|
+
- application/octet-stream
|
|
2870
|
+
- application/vnd.openxmlformats-officedocument.wordprocessingml.document
|
|
2871
|
+
- application/vnd.openxmlformats-officedocument.presentationml.presentation
|
|
2872
|
+
- application/rtf
|
|
2873
|
+
- application/x-ndjson
|
|
2874
|
+
- application/vnd.apache.parquet
|
|
2875
|
+
- application/gzip
|
|
2876
|
+
- application/x-tar
|
|
2877
|
+
- application/x-7z-compressed
|
|
2878
|
+
description: The MIME type of the media record
|
|
2879
|
+
DatasetItemMediaReferenceField:
|
|
2880
|
+
title: DatasetItemMediaReferenceField
|
|
2881
|
+
type: string
|
|
2882
|
+
enum:
|
|
2883
|
+
- input
|
|
2884
|
+
- expectedOutput
|
|
2885
|
+
- metadata
|
|
2886
|
+
DatasetItemMediaReferenceMedia:
|
|
2887
|
+
title: DatasetItemMediaReferenceMedia
|
|
2888
|
+
type: object
|
|
2889
|
+
properties:
|
|
2890
|
+
mediaId:
|
|
2891
|
+
type: string
|
|
2892
|
+
description: The unique langfuse identifier of the media record
|
|
2893
|
+
contentType:
|
|
2894
|
+
type: string
|
|
2895
|
+
description: The MIME type of the media record
|
|
2896
|
+
contentLength:
|
|
2897
|
+
type: integer
|
|
2898
|
+
description: The size of the media record in bytes
|
|
2899
|
+
url:
|
|
2900
|
+
type: string
|
|
2901
|
+
description: The signed download URL of the media record
|
|
2902
|
+
urlExpiry:
|
|
2903
|
+
type: string
|
|
2904
|
+
description: The expiry date and time of the download URL
|
|
2905
|
+
required:
|
|
2906
|
+
- mediaId
|
|
2907
|
+
- contentType
|
|
2908
|
+
- contentLength
|
|
2909
|
+
- url
|
|
2910
|
+
- urlExpiry
|
|
2911
|
+
CommentObjectType:
|
|
2912
|
+
title: CommentObjectType
|
|
2913
|
+
type: string
|
|
2914
|
+
enum:
|
|
2915
|
+
- TRACE
|
|
2916
|
+
- OBSERVATION
|
|
2917
|
+
- SESSION
|
|
2918
|
+
- PROMPT
|
|
2919
|
+
OtelAttribute:
|
|
2920
|
+
title: OtelAttribute
|
|
2921
|
+
type: object
|
|
2922
|
+
description: Key-value attribute pair for resources, scopes, or spans
|
|
2923
|
+
properties:
|
|
2924
|
+
key:
|
|
2925
|
+
type:
|
|
2926
|
+
- string
|
|
2927
|
+
- "null"
|
|
2928
|
+
description: Attribute key (e.g., "service.name", "langfuse.observation.type")
|
|
2929
|
+
value:
|
|
2930
|
+
description: Attribute value
|
|
2931
|
+
anyOf:
|
|
2932
|
+
- $ref: "#/components/schemas/OtelAttributeValue"
|
|
2933
|
+
- type: "null"
|
|
2934
|
+
OtelScope:
|
|
2935
|
+
title: OtelScope
|
|
2936
|
+
type: object
|
|
2937
|
+
description: Instrumentation scope information
|
|
2938
|
+
properties:
|
|
2939
|
+
name:
|
|
2940
|
+
type:
|
|
2941
|
+
- string
|
|
2942
|
+
- "null"
|
|
2943
|
+
description: Instrumentation scope name
|
|
2944
|
+
version:
|
|
2945
|
+
type:
|
|
2946
|
+
- string
|
|
2947
|
+
- "null"
|
|
2948
|
+
description: Instrumentation scope version
|
|
2949
|
+
attributes:
|
|
2950
|
+
type:
|
|
2951
|
+
- array
|
|
2952
|
+
- "null"
|
|
2953
|
+
items:
|
|
2954
|
+
$ref: "#/components/schemas/OtelAttribute"
|
|
2955
|
+
description: Additional scope attributes
|
|
2956
|
+
OtelSpan:
|
|
2957
|
+
title: OtelSpan
|
|
2958
|
+
type: object
|
|
2959
|
+
description: Individual span representing a unit of work or operation
|
|
2960
|
+
properties:
|
|
2961
|
+
traceId:
|
|
2962
|
+
description: Trace ID (16 bytes, hex-encoded string in JSON or Buffer in binary)
|
|
2963
|
+
spanId:
|
|
2964
|
+
description: Span ID (8 bytes, hex-encoded string in JSON or Buffer in binary)
|
|
2965
|
+
parentSpanId:
|
|
2966
|
+
description: Parent span ID if this is a child span
|
|
2967
|
+
name:
|
|
2968
|
+
type:
|
|
2969
|
+
- string
|
|
2970
|
+
- "null"
|
|
2971
|
+
description: Span name describing the operation
|
|
2972
|
+
kind:
|
|
2973
|
+
type:
|
|
2974
|
+
- integer
|
|
2975
|
+
- "null"
|
|
2976
|
+
description: Span kind (1=INTERNAL, 2=SERVER, 3=CLIENT, 4=PRODUCER, 5=CONSUMER)
|
|
2977
|
+
startTimeUnixNano:
|
|
2978
|
+
description: Start time in nanoseconds since Unix epoch
|
|
2979
|
+
endTimeUnixNano:
|
|
2980
|
+
description: End time in nanoseconds since Unix epoch
|
|
2981
|
+
attributes:
|
|
2982
|
+
type:
|
|
2983
|
+
- array
|
|
2984
|
+
- "null"
|
|
2985
|
+
items:
|
|
2986
|
+
$ref: "#/components/schemas/OtelAttribute"
|
|
2987
|
+
description: Span attributes including Langfuse-specific attributes (langfuse.observation.*)
|
|
2988
|
+
status:
|
|
2989
|
+
description: Span status object
|
|
2990
|
+
PromptType:
|
|
2991
|
+
title: PromptType
|
|
2992
|
+
type: string
|
|
2993
|
+
enum:
|
|
2994
|
+
- chat
|
|
2995
|
+
- text
|
|
2996
|
+
ChatMessageWithPlaceholders:
|
|
2997
|
+
title: ChatMessageWithPlaceholders
|
|
2998
|
+
oneOf:
|
|
2999
|
+
- $ref: "#/components/schemas/ChatMessage"
|
|
3000
|
+
- $ref: "#/components/schemas/PlaceholderMessage"
|
|
3001
|
+
BasePrompt:
|
|
3002
|
+
title: BasePrompt
|
|
3003
|
+
type: object
|
|
3004
|
+
properties:
|
|
3005
|
+
name:
|
|
3006
|
+
type: string
|
|
3007
|
+
version:
|
|
3008
|
+
type: integer
|
|
3009
|
+
config: {}
|
|
3010
|
+
labels:
|
|
3011
|
+
type: array
|
|
3012
|
+
items:
|
|
3013
|
+
type: string
|
|
3014
|
+
description: List of deployment labels of this prompt version.
|
|
3015
|
+
tags:
|
|
3016
|
+
type: array
|
|
3017
|
+
items:
|
|
3018
|
+
type: string
|
|
3019
|
+
description: List of tags. Used to filter via UI and API. The same across versions of a prompt.
|
|
3020
|
+
commitMessage:
|
|
3021
|
+
type:
|
|
3022
|
+
- string
|
|
3023
|
+
- "null"
|
|
3024
|
+
description: Commit message for this prompt version.
|
|
3025
|
+
resolutionGraph:
|
|
3026
|
+
type:
|
|
3027
|
+
- object
|
|
3028
|
+
- "null"
|
|
3029
|
+
additionalProperties: true
|
|
3030
|
+
description: >-
|
|
3031
|
+
The dependency resolution graph for the current prompt. Null if the prompt has no dependencies or if
|
|
3032
|
+
`resolve=false` was used.
|
|
3033
|
+
required:
|
|
3034
|
+
- name
|
|
3035
|
+
- version
|
|
3036
|
+
- config
|
|
3037
|
+
- labels
|
|
3038
|
+
- tags
|
|
3039
|
+
CreateChatPromptType:
|
|
3040
|
+
title: CreateChatPromptType
|
|
3041
|
+
type: string
|
|
3042
|
+
enum:
|
|
3043
|
+
- chat
|
|
3044
|
+
CreateTextPromptType:
|
|
3045
|
+
title: CreateTextPromptType
|
|
3046
|
+
type: string
|
|
3047
|
+
enum:
|
|
3048
|
+
- text
|
|
3049
|
+
NumericScoreV3:
|
|
3050
|
+
title: NumericScoreV3
|
|
3051
|
+
type: object
|
|
3052
|
+
properties:
|
|
3053
|
+
value:
|
|
3054
|
+
type: number
|
|
3055
|
+
format: double
|
|
3056
|
+
description: The numeric value of the score.
|
|
3057
|
+
required:
|
|
3058
|
+
- value
|
|
3059
|
+
allOf:
|
|
3060
|
+
- $ref: "#/components/schemas/BaseScoreV3"
|
|
3061
|
+
BooleanScoreV3:
|
|
3062
|
+
title: BooleanScoreV3
|
|
3063
|
+
type: object
|
|
3064
|
+
properties:
|
|
3065
|
+
value:
|
|
3066
|
+
type: boolean
|
|
3067
|
+
description: The boolean value of the score.
|
|
3068
|
+
required:
|
|
3069
|
+
- value
|
|
3070
|
+
allOf:
|
|
3071
|
+
- $ref: "#/components/schemas/BaseScoreV3"
|
|
3072
|
+
CategoricalScoreV3:
|
|
3073
|
+
title: CategoricalScoreV3
|
|
3074
|
+
type: object
|
|
3075
|
+
properties:
|
|
3076
|
+
value:
|
|
3077
|
+
type: string
|
|
3078
|
+
description: The string category value of the score.
|
|
3079
|
+
required:
|
|
3080
|
+
- value
|
|
3081
|
+
allOf:
|
|
3082
|
+
- $ref: "#/components/schemas/BaseScoreV3"
|
|
3083
|
+
TextScoreV3:
|
|
3084
|
+
title: TextScoreV3
|
|
3085
|
+
type: object
|
|
3086
|
+
properties:
|
|
3087
|
+
value:
|
|
3088
|
+
type: string
|
|
3089
|
+
description: The text content of the score.
|
|
3090
|
+
required:
|
|
3091
|
+
- value
|
|
3092
|
+
allOf:
|
|
3093
|
+
- $ref: "#/components/schemas/BaseScoreV3"
|
|
3094
|
+
CorrectionScoreV3:
|
|
3095
|
+
title: CorrectionScoreV3
|
|
3096
|
+
type: object
|
|
3097
|
+
properties:
|
|
3098
|
+
value:
|
|
3099
|
+
type: string
|
|
3100
|
+
description: The correction content of the score. Empty string if not set.
|
|
3101
|
+
required:
|
|
3102
|
+
- value
|
|
3103
|
+
allOf:
|
|
3104
|
+
- $ref: "#/components/schemas/BaseScoreV3"
|
|
3105
|
+
OtelAttributeValue:
|
|
3106
|
+
title: OtelAttributeValue
|
|
3107
|
+
type: object
|
|
3108
|
+
description: Attribute value wrapper supporting different value types
|
|
3109
|
+
properties:
|
|
3110
|
+
stringValue:
|
|
3111
|
+
type:
|
|
3112
|
+
- string
|
|
3113
|
+
- "null"
|
|
3114
|
+
description: String value
|
|
3115
|
+
intValue:
|
|
3116
|
+
type:
|
|
3117
|
+
- integer
|
|
3118
|
+
- "null"
|
|
3119
|
+
description: Integer value
|
|
3120
|
+
doubleValue:
|
|
3121
|
+
type:
|
|
3122
|
+
- number
|
|
3123
|
+
- "null"
|
|
3124
|
+
format: double
|
|
3125
|
+
description: Double value
|
|
3126
|
+
boolValue:
|
|
3127
|
+
type:
|
|
3128
|
+
- boolean
|
|
3129
|
+
- "null"
|
|
3130
|
+
description: Boolean value
|
|
3131
|
+
ChatMessage:
|
|
3132
|
+
title: ChatMessage
|
|
3133
|
+
type: object
|
|
3134
|
+
properties:
|
|
3135
|
+
role:
|
|
3136
|
+
type: string
|
|
3137
|
+
content:
|
|
3138
|
+
type: string
|
|
3139
|
+
type:
|
|
3140
|
+
anyOf:
|
|
3141
|
+
- $ref: "#/components/schemas/ChatMessageType"
|
|
3142
|
+
- type: "null"
|
|
3143
|
+
required:
|
|
3144
|
+
- role
|
|
3145
|
+
- content
|
|
3146
|
+
PlaceholderMessage:
|
|
3147
|
+
title: PlaceholderMessage
|
|
3148
|
+
type: object
|
|
3149
|
+
properties:
|
|
3150
|
+
name:
|
|
3151
|
+
type: string
|
|
3152
|
+
type:
|
|
3153
|
+
anyOf:
|
|
3154
|
+
- $ref: "#/components/schemas/PlaceholderMessageType"
|
|
3155
|
+
- type: "null"
|
|
3156
|
+
required:
|
|
3157
|
+
- name
|
|
3158
|
+
BaseScoreV3:
|
|
3159
|
+
title: BaseScoreV3
|
|
3160
|
+
type: object
|
|
3161
|
+
properties:
|
|
3162
|
+
id:
|
|
3163
|
+
type: string
|
|
3164
|
+
projectId:
|
|
3165
|
+
type: string
|
|
3166
|
+
name:
|
|
3167
|
+
type: string
|
|
3168
|
+
source:
|
|
3169
|
+
$ref: "#/components/schemas/ScoreSource"
|
|
3170
|
+
timestamp:
|
|
3171
|
+
type: string
|
|
3172
|
+
format: date-time
|
|
3173
|
+
environment:
|
|
3174
|
+
type: string
|
|
3175
|
+
description: The environment from which this score originated.
|
|
3176
|
+
createdAt:
|
|
3177
|
+
type: string
|
|
3178
|
+
format: date-time
|
|
3179
|
+
updatedAt:
|
|
3180
|
+
type: string
|
|
3181
|
+
format: date-time
|
|
3182
|
+
comment:
|
|
3183
|
+
type:
|
|
3184
|
+
- string
|
|
3185
|
+
- "null"
|
|
3186
|
+
description: Optional comment attached to the score. Present when "details" is included in the fields parameter.
|
|
3187
|
+
configId:
|
|
3188
|
+
type:
|
|
3189
|
+
- string
|
|
3190
|
+
- "null"
|
|
3191
|
+
description: >-
|
|
3192
|
+
The score config ID, if this score was created from a config. Present when "details" is included in the
|
|
3193
|
+
fields parameter.
|
|
3194
|
+
metadata:
|
|
3195
|
+
type:
|
|
3196
|
+
- object
|
|
3197
|
+
- "null"
|
|
3198
|
+
additionalProperties: true
|
|
3199
|
+
description: Arbitrary metadata attached to the score. Present when "details" is included in the fields parameter.
|
|
3200
|
+
authorUserId:
|
|
3201
|
+
type:
|
|
3202
|
+
- string
|
|
3203
|
+
- "null"
|
|
3204
|
+
description: >-
|
|
3205
|
+
The user who created this score, if available. Present when "annotation" is included in the fields
|
|
3206
|
+
parameter.
|
|
3207
|
+
queueId:
|
|
3208
|
+
type:
|
|
3209
|
+
- string
|
|
3210
|
+
- "null"
|
|
3211
|
+
description: >-
|
|
3212
|
+
The annotation queue this score belongs to, if any. Present when "annotation" is included in the fields
|
|
3213
|
+
parameter.
|
|
3214
|
+
subject:
|
|
3215
|
+
description: >-
|
|
3216
|
+
The entity this score is attached to (trace, observation, session, or experiment). Present when "subject" is
|
|
3217
|
+
included in the fields parameter.
|
|
3218
|
+
anyOf:
|
|
3219
|
+
- $ref: "#/components/schemas/ScoreSubjectV3"
|
|
3220
|
+
- type: "null"
|
|
3221
|
+
required:
|
|
3222
|
+
- id
|
|
3223
|
+
- projectId
|
|
3224
|
+
- name
|
|
3225
|
+
- source
|
|
3226
|
+
- timestamp
|
|
3227
|
+
- environment
|
|
3228
|
+
- createdAt
|
|
3229
|
+
- updatedAt
|
|
3230
|
+
ChatMessageType:
|
|
3231
|
+
title: ChatMessageType
|
|
3232
|
+
type: string
|
|
3233
|
+
enum:
|
|
3234
|
+
- chatmessage
|
|
3235
|
+
PlaceholderMessageType:
|
|
3236
|
+
title: PlaceholderMessageType
|
|
3237
|
+
type: string
|
|
3238
|
+
enum:
|
|
3239
|
+
- placeholder
|
|
3240
|
+
ScoreSource:
|
|
3241
|
+
title: ScoreSource
|
|
3242
|
+
type: string
|
|
3243
|
+
enum:
|
|
3244
|
+
- ANNOTATION
|
|
3245
|
+
- API
|
|
3246
|
+
- EVAL
|
|
3247
|
+
ScoreSubjectV3:
|
|
3248
|
+
title: ScoreSubjectV3
|
|
3249
|
+
oneOf:
|
|
3250
|
+
- type: object
|
|
3251
|
+
allOf:
|
|
3252
|
+
- type: object
|
|
3253
|
+
properties:
|
|
3254
|
+
kind:
|
|
3255
|
+
type: string
|
|
3256
|
+
enum:
|
|
3257
|
+
- trace
|
|
3258
|
+
- $ref: "#/components/schemas/ScoreSubjectTraceV3"
|
|
3259
|
+
required:
|
|
3260
|
+
- kind
|
|
3261
|
+
- type: object
|
|
3262
|
+
allOf:
|
|
3263
|
+
- type: object
|
|
3264
|
+
properties:
|
|
3265
|
+
kind:
|
|
3266
|
+
type: string
|
|
3267
|
+
enum:
|
|
3268
|
+
- observation
|
|
3269
|
+
- $ref: "#/components/schemas/ScoreSubjectObservationV3"
|
|
3270
|
+
required:
|
|
3271
|
+
- kind
|
|
3272
|
+
- type: object
|
|
3273
|
+
allOf:
|
|
3274
|
+
- type: object
|
|
3275
|
+
properties:
|
|
3276
|
+
kind:
|
|
3277
|
+
type: string
|
|
3278
|
+
enum:
|
|
3279
|
+
- session
|
|
3280
|
+
- $ref: "#/components/schemas/ScoreSubjectSessionV3"
|
|
3281
|
+
required:
|
|
3282
|
+
- kind
|
|
3283
|
+
- type: object
|
|
3284
|
+
allOf:
|
|
3285
|
+
- type: object
|
|
3286
|
+
properties:
|
|
3287
|
+
kind:
|
|
3288
|
+
type: string
|
|
3289
|
+
enum:
|
|
3290
|
+
- experiment
|
|
3291
|
+
- $ref: "#/components/schemas/ScoreSubjectExperimentV3"
|
|
3292
|
+
required:
|
|
3293
|
+
- kind
|
|
3294
|
+
description: >-
|
|
3295
|
+
A reference to the entity this score is attached to. Discriminated by "kind" — one of trace, observation,
|
|
3296
|
+
session, or experiment.
|
|
3297
|
+
ScoreSubjectTraceV3:
|
|
3298
|
+
title: ScoreSubjectTraceV3
|
|
3299
|
+
type: object
|
|
3300
|
+
properties:
|
|
3301
|
+
id:
|
|
3302
|
+
type: string
|
|
3303
|
+
description: The trace ID.
|
|
3304
|
+
required:
|
|
3305
|
+
- id
|
|
3306
|
+
ScoreSubjectObservationV3:
|
|
3307
|
+
title: ScoreSubjectObservationV3
|
|
3308
|
+
type: object
|
|
3309
|
+
properties:
|
|
3310
|
+
id:
|
|
3311
|
+
type: string
|
|
3312
|
+
description: The observation ID.
|
|
3313
|
+
traceId:
|
|
3314
|
+
type:
|
|
3315
|
+
- string
|
|
3316
|
+
- "null"
|
|
3317
|
+
description: The parent trace ID, if available.
|
|
3318
|
+
required:
|
|
3319
|
+
- id
|
|
3320
|
+
ScoreSubjectSessionV3:
|
|
3321
|
+
title: ScoreSubjectSessionV3
|
|
3322
|
+
type: object
|
|
3323
|
+
properties:
|
|
3324
|
+
id:
|
|
3325
|
+
type: string
|
|
3326
|
+
description: The session ID.
|
|
3327
|
+
required:
|
|
3328
|
+
- id
|
|
3329
|
+
ScoreSubjectExperimentV3:
|
|
3330
|
+
title: ScoreSubjectExperimentV3
|
|
3331
|
+
type: object
|
|
3332
|
+
properties:
|
|
3333
|
+
id:
|
|
3334
|
+
type: string
|
|
3335
|
+
description: The dataset run ID (experiment ID).
|
|
3336
|
+
required:
|
|
3337
|
+
- id
|
|
3338
|
+
securitySchemes:
|
|
3339
|
+
BasicAuth:
|
|
3340
|
+
type: http
|
|
3341
|
+
scheme: basic
|