Skip to main content
This reference describes the Call object schema in W&B Weave, including its properties, how to write custom data to the summary dictionary during execution, and how to read summary data after a Call completes. Use this page when you need to inspect, filter, or extend the data Weave records for each Call. For information about querying calls, see Query and export calls.

Call properties

The following table outlines the key properties of a Call in Weave. For the complete implementation, see the following:

Property details

CallSchema properties help you track and manage Calls:
  • The id, trace_id, and parent_id properties help organize and relate Calls within the system.
  • Timing information (started_at, ended_at) supports performance analysis.
  • The attributes and inputs properties provide context for the Call. Attributes are frozen once the Call starts, so set them before invocation using the weave.attributes() context manager. output and summary capture the results.
  • Use wb_user_id and wb_run_id to link the Call to a W&B user and run.
Together, these properties support detailed tracking and analysis of Calls throughout your project.

Use Call summary

Use the summary property to attach custom, post-execution data to a Call so you can analyze it later alongside Weave’s built-in metrics. It’s a dictionary you can write to during a Call’s execution. When the Call finishes, Weave deep-merges your values with its own computed data and stores the result. The dictionary has two zones:
  • Your custom keys: anything you write to call.summary directly, such as call.summary["accuracy"] = 0.95. These sit at the top level of the summary dict.
  • summary["weave"]: a reserved namespace Weave populates automatically at Call completion. Don’t write to this key directly.
Weave also captures raw LLM token counts from the model response at summary["usage"] (keyed by model name). This is source data passed through from the provider, not a Weave computation. The costs field inside summary["weave"] is what Weave derives from that usage data using token pricing. Weave’s computed fields inside summary["weave"]:

Write during a Call

You can add custom data values during your Call using the summary dictionary.
In Python, assign values to call.summary at any point during execution using weave.get_current_call().

Read summary data

Use getCall to fetch a single Call by ID, or getCalls to fetch multiple Calls. In both cases, summary is the same merged dictionary.