API Overview
class ActionsExecuteBatchReq
Pydantic Fields:
project_id:<class 'str'>action_ref:<class 'str'>call_ids:list[str]wb_user_id:typing.Optional[str]
class ActionsExecuteBatchRes
class BaseModelStrict
Base model with strict validation that forbids extra fields.
class CallBatchEndMode
Pydantic Fields:
mode:<class 'str'>req:<class 'CallEndReq'>
class CallBatchStartMode
Pydantic Fields:
mode:<class 'str'>req:<class 'CallStartReq'>
class CallCreateBatchReq
Pydantic Fields:
batch:list[typing.Union[CallBatchStartMode, CallBatchEndMode]]
class CallCreateBatchRes
Pydantic Fields:
res:list[typing.Union[CallStartRes, CallEndRes]]
class CallEndReq
Pydantic Fields:
end:<class 'EndedCallSchemaForInsert'>
class CallEndRes
class CallReadReq
Pydantic Fields:
project_id:<class 'str'>id:<class 'str'>include_costs:typing.Optional[bool]include_storage_size:typing.Optional[bool]include_total_storage_size:typing.Optional[bool]
class CallReadRes
Pydantic Fields:
call:typing.Optional[CallSchema]
class CallSchema
Pydantic Fields:
id:<class 'str'>project_id:<class 'str'>op_name:<class 'str'>display_name:typing.Optional[str]trace_id:<class 'str'>parent_id:typing.Optional[str]thread_id:typing.Optional[str]turn_id:typing.Optional[str]started_at:<class 'datetime.datetime'>attributes:dict[str, typing.Any]inputs:dict[str, typing.Any]ended_at:typing.Optional[datetime.datetime]exception:typing.Optional[str]output:typing.Optional[typing.Any]summary:typing.Optional[SummaryMap]wb_user_id:typing.Optional[str]wb_run_id:typing.Optional[str]wb_run_step:typing.Optional[int]wb_run_step_end:typing.Optional[int]deleted_at:typing.Optional[datetime.datetime]storage_size_bytes:typing.Optional[int]total_storage_size_bytes:typing.Optional[int]
method serialize_typed_dicts
class CallStartReq
Pydantic Fields:
start:<class 'StartedCallSchemaForInsert'>
class CallStartRes
Pydantic Fields:
id:<class 'str'>trace_id:<class 'str'>
class CallUpdateReq
Pydantic Fields:
project_id:<class 'str'>call_id:<class 'str'>display_name:typing.Optional[str]wb_user_id:typing.Optional[str]
class CallUpdateRes
class CallsDeleteReq
Pydantic Fields:
project_id:<class 'str'>call_ids:list[str]wb_user_id:typing.Optional[str]
class CallsDeleteRes
class CallsFilter
Pydantic Fields:
op_names:typing.Optional[list[str]]input_refs:typing.Optional[list[str]]output_refs:typing.Optional[list[str]]parent_ids:typing.Optional[list[str]]trace_ids:typing.Optional[list[str]]call_ids:typing.Optional[list[str]]thread_ids:typing.Optional[list[str]]turn_ids:typing.Optional[list[str]]trace_roots_only:typing.Optional[bool]wb_user_ids:typing.Optional[list[str]]wb_run_ids:typing.Optional[list[str]]
class CallsQueryReq
Pydantic Fields:
project_id:<class 'str'>filter:typing.Optional[CallsFilter]limit:typing.Optional[int]offset:typing.Optional[int]sort_by:typing.Optional[list[SortBy]]query:typing.Optional[weave.trace_server.interface.query.Query]include_costs:typing.Optional[bool]include_feedback:typing.Optional[bool]include_storage_size:typing.Optional[bool]include_total_storage_size:typing.Optional[bool]columns:typing.Optional[list[str]]expand_columns:typing.Optional[list[str]]return_expanded_column_values:typing.Optional[bool]
class CallsQueryRes
Pydantic Fields:
calls:list[CallSchema]
class CallsQueryStatsReq
Pydantic Fields:
project_id:<class 'str'>filter:typing.Optional[CallsFilter]query:typing.Optional[weave.trace_server.interface.query.Query]limit:typing.Optional[int]include_total_storage_size:typing.Optional[bool]expand_columns:typing.Optional[list[str]]
class CallsQueryStatsRes
Pydantic Fields:
count:<class 'int'>total_storage_size_bytes:typing.Optional[int]
class CompletionsCreateReq
Pydantic Fields:
project_id:<class 'str'>inputs:<class 'CompletionsCreateRequestInputs'>wb_user_id:typing.Optional[str]track_llm_call:typing.Optional[bool]
class CompletionsCreateRequestInputs
Pydantic Fields:
model:<class 'str'>messages:<class 'list'>timeout:typing.Union[float, str, NoneType]temperature:typing.Optional[float]top_p:typing.Optional[float]n:typing.Optional[int]stop:typing.Union[str, list, NoneType]max_completion_tokens:typing.Optional[int]max_tokens:typing.Optional[int]modalities:typing.Optional[list]presence_penalty:typing.Optional[float]frequency_penalty:typing.Optional[float]stream:typing.Optional[bool]logit_bias:typing.Optional[dict]user:typing.Optional[str]response_format:typing.Union[dict, type[pydantic.main.BaseModel], NoneType]seed:typing.Optional[int]tools:typing.Optional[list]tool_choice:typing.Union[str, dict, NoneType]logprobs:typing.Optional[bool]top_logprobs:typing.Optional[int]parallel_tool_calls:typing.Optional[bool]extra_headers:typing.Optional[dict]functions:typing.Optional[list]function_call:typing.Optional[str]api_version:typing.Optional[str]
class CompletionsCreateRes
Pydantic Fields:
response:dict[str, typing.Any]weave_call_id:typing.Optional[str]
class CostCreateInput
Pydantic Fields:
prompt_token_cost:<class 'float'>completion_token_cost:<class 'float'>prompt_token_cost_unit:typing.Optional[str]completion_token_cost_unit:typing.Optional[str]effective_date:typing.Optional[datetime.datetime]provider_id:typing.Optional[str]
class CostCreateReq
Pydantic Fields:
project_id:<class 'str'>costs:dict[str, CostCreateInput]wb_user_id:typing.Optional[str]
class CostCreateRes
Pydantic Fields:
ids:list[tuple[str, str]]
class CostPurgeReq
Pydantic Fields:
project_id:<class 'str'>query:<class 'weave.trace_server.interface.query.Query'>
class CostPurgeRes
class CostQueryOutput
Pydantic Fields:
id:typing.Optional[str]llm_id:typing.Optional[str]prompt_token_cost:typing.Optional[float]completion_token_cost:typing.Optional[float]prompt_token_cost_unit:typing.Optional[str]completion_token_cost_unit:typing.Optional[str]effective_date:typing.Optional[datetime.datetime]provider_id:typing.Optional[str]
class CostQueryReq
Pydantic Fields:
project_id:<class 'str'>fields:typing.Optional[list[str]]query:typing.Optional[weave.trace_server.interface.query.Query]sort_by:typing.Optional[list[SortBy]]limit:typing.Optional[int]offset:typing.Optional[int]
class CostQueryRes
Pydantic Fields:
results:list[CostQueryOutput]
class EndedCallSchemaForInsert
Pydantic Fields:
project_id:<class 'str'>id:<class 'str'>ended_at:<class 'datetime.datetime'>exception:typing.Optional[str]output:typing.Optional[typing.Any]summary:<class 'SummaryInsertMap'>wb_run_step_end:typing.Optional[int]
method serialize_typed_dicts
class EnsureProjectExistsRes
Pydantic Fields:
project_name:<class 'str'>
class EvaluateModelReq
Pydantic Fields:
project_id:<class 'str'>evaluation_ref:<class 'str'>model_ref:<class 'str'>wb_user_id:typing.Optional[str]
class EvaluateModelRes
Pydantic Fields:
call_id:<class 'str'>
class EvaluationStatusComplete
Pydantic Fields:
code:typing.Literal['complete']output:dict[str, typing.Any]
class EvaluationStatusFailed
Pydantic Fields:
code:typing.Literal['failed']error:typing.Optional[str]
class EvaluationStatusNotFound
Pydantic Fields:
code:typing.Literal['not_found']
class EvaluationStatusReq
Pydantic Fields:
project_id:<class 'str'>call_id:<class 'str'>
class EvaluationStatusRes
Pydantic Fields:
status:typing.Union[EvaluationStatusNotFound, EvaluationStatusRunning, EvaluationStatusFailed, EvaluationStatusComplete]
class EvaluationStatusRunning
Pydantic Fields:
code:typing.Literal['running']completed_rows:<class 'int'>total_rows:<class 'int'>
class ExportTracePartialSuccess
Pydantic Fields:
rejected_spans:<class 'int'>error_message:<class 'str'>
class ExtraKeysTypedDict
class Feedback
Pydantic Fields:
id:<class 'str'>project_id:<class 'str'>weave_ref:<class 'str'>creator:typing.Optional[str]feedback_type:<class 'str'>payload:dict[str, typing.Any]annotation_ref:typing.Optional[str]runnable_ref:typing.Optional[str]call_ref:typing.Optional[str]trigger_ref:typing.Optional[str]wb_user_id:typing.Optional[str]created_at:<class 'datetime.datetime'>
class FeedbackCreateBatchReq
Pydantic Fields:
batch:list[FeedbackCreateReq]
class FeedbackCreateBatchRes
Pydantic Fields:
res:list[FeedbackCreateRes]
class FeedbackCreateReq
Pydantic Fields:
id:typing.Optional[str]project_id:<class 'str'>weave_ref:<class 'str'>creator:typing.Optional[str]feedback_type:<class 'str'>payload:dict[str, typing.Any]annotation_ref:typing.Optional[str]runnable_ref:typing.Optional[str]call_ref:typing.Optional[str]trigger_ref:typing.Optional[str]wb_user_id:typing.Optional[str]
class FeedbackCreateRes
Pydantic Fields:
id:<class 'str'>created_at:<class 'datetime.datetime'>wb_user_id:<class 'str'>payload:dict[str, typing.Any]
class FeedbackDict
class FeedbackPurgeReq
Pydantic Fields:
project_id:<class 'str'>query:<class 'weave.trace_server.interface.query.Query'>
class FeedbackPurgeRes
class FeedbackQueryReq
Pydantic Fields:
project_id:<class 'str'>fields:typing.Optional[list[str]]query:typing.Optional[weave.trace_server.interface.query.Query]sort_by:typing.Optional[list[SortBy]]limit:typing.Optional[int]offset:typing.Optional[int]
class FeedbackQueryRes
Pydantic Fields:
result:list[dict[str, typing.Any]]
class FeedbackReplaceReq
Pydantic Fields:
id:typing.Optional[str]project_id:<class 'str'>weave_ref:<class 'str'>creator:typing.Optional[str]feedback_type:<class 'str'>payload:dict[str, typing.Any]annotation_ref:typing.Optional[str]runnable_ref:typing.Optional[str]call_ref:typing.Optional[str]trigger_ref:typing.Optional[str]wb_user_id:typing.Optional[str]feedback_id:<class 'str'>
class FeedbackReplaceRes
Pydantic Fields:
id:<class 'str'>created_at:<class 'datetime.datetime'>wb_user_id:<class 'str'>payload:dict[str, typing.Any]
class FileContentReadReq
Pydantic Fields:
project_id:<class 'str'>digest:<class 'str'>
class FileContentReadRes
Pydantic Fields:
content:<class 'bytes'>
class FileCreateReq
Pydantic Fields:
project_id:<class 'str'>name:<class 'str'>content:<class 'bytes'>
class FileCreateRes
Pydantic Fields:
digest:<class 'str'>
class FilesStatsReq
Pydantic Fields:
project_id:<class 'str'>
class FilesStatsRes
Pydantic Fields:
total_size_bytes:<class 'int'>
class ImageGenerationCreateReq
Pydantic Fields:
project_id:<class 'str'>inputs:<class 'ImageGenerationRequestInputs'>wb_user_id:typing.Optional[str]track_llm_call:typing.Optional[bool]
class ImageGenerationCreateRes
Pydantic Fields:
response:dict[str, typing.Any]weave_call_id:typing.Optional[str]
class ImageGenerationRequestInputs
Pydantic Fields:
model:<class 'str'>prompt:<class 'str'>n:typing.Optional[int]
class LLMCostSchema
class LLMUsageSchema
class ObjCreateReq
Pydantic Fields:
obj:<class 'ObjSchemaForInsert'>
class ObjCreateRes
Pydantic Fields:
digest:<class 'str'>
class ObjDeleteReq
Pydantic Fields:
project_id:<class 'str'>object_id:<class 'str'>digests:typing.Optional[list[str]]
class ObjDeleteRes
Pydantic Fields:
num_deleted:<class 'int'>
class ObjQueryReq
Pydantic Fields:
project_id:<class 'str'>filter:typing.Optional[ObjectVersionFilter]limit:typing.Optional[int]offset:typing.Optional[int]sort_by:typing.Optional[list[SortBy]]metadata_only:typing.Optional[bool]include_storage_size:typing.Optional[bool]
class ObjQueryRes
Pydantic Fields:
objs:list[ObjSchema]
class ObjReadReq
Pydantic Fields:
project_id:<class 'str'>object_id:<class 'str'>digest:<class 'str'>metadata_only:typing.Optional[bool]
class ObjReadRes
Pydantic Fields:
obj:<class 'ObjSchema'>
class ObjSchema
Pydantic Fields:
project_id:<class 'str'>object_id:<class 'str'>created_at:<class 'datetime.datetime'>deleted_at:typing.Optional[datetime.datetime]digest:<class 'str'>version_index:<class 'int'>is_latest:<class 'int'>kind:<class 'str'>base_object_class:typing.Optional[str]leaf_object_class:typing.Optional[str]val:typing.Anywb_user_id:typing.Optional[str]size_bytes:typing.Optional[int]
class ObjSchemaForInsert
Pydantic Fields:
project_id:<class 'str'>object_id:<class 'str'>val:typing.Anybuiltin_object_class:typing.Optional[str]set_base_object_class:typing.Optional[str]wb_user_id:typing.Optional[str]
method model_post_init
class ObjectVersionFilter
Pydantic Fields:
base_object_classes:typing.Optional[list[str]]exclude_base_object_classes:typing.Optional[list[str]]leaf_object_classes:typing.Optional[list[str]]object_ids:typing.Optional[list[str]]is_op:typing.Optional[bool]latest_only:typing.Optional[bool]
class OpCreateReq
Pydantic Fields:
op_obj:<class 'ObjSchemaForInsert'>
class OpCreateRes
Pydantic Fields:
digest:<class 'str'>
class OpQueryReq
Pydantic Fields:
project_id:<class 'str'>filter:typing.Optional[OpVersionFilter]
class OpQueryRes
Pydantic Fields:
op_objs:list[ObjSchema]
class OpReadReq
Pydantic Fields:
project_id:<class 'str'>name:<class 'str'>digest:<class 'str'>
class OpReadRes
Pydantic Fields:
op_obj:<class 'ObjSchema'>
class OpVersionFilter
Pydantic Fields:
op_names:typing.Optional[list[str]]latest_only:typing.Optional[bool]
class OtelExportReq
Pydantic Fields:
project_id:<class 'str'>traces:typing.Anywb_user_id:typing.Optional[str]
class OtelExportRes
Pydantic Fields:
partial_success:typing.Optional[ExportTracePartialSuccess]
class ProjectStatsReq
Pydantic Fields:
project_id:<class 'str'>include_trace_storage_size:typing.Optional[bool]include_object_storage_size:typing.Optional[bool]include_table_storage_size:typing.Optional[bool]include_file_storage_size:typing.Optional[bool]
class ProjectStatsRes
Pydantic Fields:
trace_storage_size_bytes:<class 'int'>objects_storage_size_bytes:<class 'int'>tables_storage_size_bytes:<class 'int'>files_storage_size_bytes:<class 'int'>
class RefsReadBatchReq
Pydantic Fields:
refs:list[str]
class RefsReadBatchRes
Pydantic Fields:
vals:list[typing.Any]
class SortBy
Pydantic Fields:
field:<class 'str'>direction:typing.Literal['asc', 'desc']
class StartedCallSchemaForInsert
Pydantic Fields:
project_id:<class 'str'>id:typing.Optional[str]op_name:<class 'str'>display_name:typing.Optional[str]trace_id:typing.Optional[str]parent_id:typing.Optional[str]thread_id:typing.Optional[str]turn_id:typing.Optional[str]started_at:<class 'datetime.datetime'>attributes:dict[str, typing.Any]inputs:dict[str, typing.Any]wb_user_id:typing.Optional[str]wb_run_id:typing.Optional[str]wb_run_step:typing.Optional[int]
class SummaryInsertMap
class SummaryMap
class TableAppendSpec
Pydantic Fields:
append:<class 'TableAppendSpecPayload'>
class TableAppendSpecPayload
Pydantic Fields:
row:dict[str, typing.Any]
class TableCreateFromDigestsReq
Pydantic Fields:
project_id:<class 'str'>row_digests:list[str]
class TableCreateFromDigestsRes
Pydantic Fields:
digest:<class 'str'>
class TableCreateReq
Pydantic Fields:
table:<class 'TableSchemaForInsert'>
class TableCreateRes
Pydantic Fields:
digest:<class 'str'>row_digests:list[str]
class TableInsertSpec
Pydantic Fields:
insert:<class 'TableInsertSpecPayload'>
class TableInsertSpecPayload
Pydantic Fields:
index:<class 'int'>row:dict[str, typing.Any]
class TablePopSpec
Pydantic Fields:
pop:<class 'TablePopSpecPayload'>
class TablePopSpecPayload
Pydantic Fields:
index:<class 'int'>
class TableQueryReq
Pydantic Fields:
project_id:<class 'str'>digest:<class 'str'>filter:typing.Optional[TableRowFilter]limit:typing.Optional[int]offset:typing.Optional[int]sort_by:typing.Optional[list[SortBy]]
class TableQueryRes
Pydantic Fields:
rows:list[TableRowSchema]
class TableQueryStatsBatchReq
Pydantic Fields:
project_id:<class 'str'>digests:typing.Optional[list[str]]include_storage_size:typing.Optional[bool]
class TableQueryStatsBatchRes
Pydantic Fields:
tables:list[TableStatsRow]
class TableQueryStatsReq
Pydantic Fields:
project_id:<class 'str'>digest:<class 'str'>
class TableQueryStatsRes
Pydantic Fields:
count:<class 'int'>
class TableRowFilter
Pydantic Fields:
row_digests:typing.Optional[list[str]]
class TableRowSchema
Pydantic Fields:
digest:<class 'str'>val:typing.Anyoriginal_index:typing.Optional[int]
class TableSchemaForInsert
Pydantic Fields:
project_id:<class 'str'>rows:list[dict[str, typing.Any]]
class TableStatsRow
Pydantic Fields:
count:<class 'int'>digest:<class 'str'>storage_size_bytes:typing.Optional[int]
class TableUpdateReq
Pydantic Fields:
project_id:<class 'str'>base_digest:<class 'str'>updates:list[typing.Union[TableAppendSpec, TablePopSpec, TableInsertSpec]]
class TableUpdateRes
Pydantic Fields:
digest:<class 'str'>updated_row_digests:list[str]
class ThreadSchema
Pydantic Fields:
thread_id:<class 'str'>turn_count:<class 'int'>start_time:<class 'datetime.datetime'>last_updated:<class 'datetime.datetime'>first_turn_id:typing.Optional[str]last_turn_id:typing.Optional[str]p50_turn_duration_ms:typing.Optional[float]p99_turn_duration_ms:typing.Optional[float]
class ThreadsQueryFilter
Pydantic Fields:
after_datetime:typing.Optional[datetime.datetime]before_datetime:typing.Optional[datetime.datetime]thread_ids:typing.Optional[list[str]]
class ThreadsQueryReq
Query threads with aggregated statistics based on turn calls only.
Turn calls are the immediate children of thread contexts (where call.id == turn_id). This provides meaningful conversation-level statistics rather than including all nested implementation details.
Pydantic Fields:
project_id:<class 'str'>filter:typing.Optional[ThreadsQueryFilter]limit:typing.Optional[int]offset:typing.Optional[int]sort_by:typing.Optional[list[SortBy]]