asor

Agent Analytics Data Schema

Deploying AI agents across your organization is only the first step; understanding their true impact is critical. To maximize your investment, you need actionable insights into agent performance and usage. Key questions organizations must answer include:

Workday agent analytics is designed to help you answer these questions by providing comprehensive analytics and visualization capabilities.

A Unified, Standardized Approach

To ensure a seamless analytics experience—whether your agents are built by Workday, our partners, or your internal teams—we have established a unified underlying data schema. Because we want this schema to be as frictionless as possible for developers and providers to adopt, it is built directly on the OpenTelemetry (OTel) observability standard.

Effortless Integration

When analyzing agents built outside of Workday, all you need to do is configure your agents to emit traces using our specified OTel format. Workday handles the rest of the data pipeline:

  1. Ingestion & Transformation: We ingest your raw traces and transform them into a processed format optimized for analytics.
  2. Unified Visualization: We map this data to our pre-built metrics and charts, visualizing your custom or third-party agent performance in the exact same dashboards used for Workday-native agents.

Schema Requirements

Below, you will find the required input data schema for OTel traces (spans) and logs (events), along with the specific attributes and information required for successful integration.

Create Agent Span

Span Attributes Requirement Level Value Type Description Example Values
Span Info        
start_time Required datetime Start timestamp 2021-10-22 16:04:01.209458162 +0000 UTC
end_time Required datetime End timestamp 2021-10-22 16:04:01.209514132 +0000 UTC
trace_id Required string The unique identifier of the trace. 7bba9f33312b3dbb8b2c2c62bb7abe2d
span_id Required string The unique identifier of the span. 086e83747d0e381e
Default Attributes        
error.type Conditionally Required if the operation ended in an error string Describes a class of error the operation ended with. timeout; java.net.UnknownHostException; server_certificate_invalid; 500
gen_ai.agent.description Required string Free-form description of the GenAI agent provided by the application. Helps with math problems; Generates fiction stories
gen_ai.agent.id Required string The unique identifier of the GenAI agent. asst_5j66UpCpwteGg4YSxUnt7lPY
gen_ai.agent.name Required string Human-readable name of the GenAI agent provided by the application. Math Tutor; Fiction Writer
gen_ai.operation.name Required string The name of the operation being performed. chat; generate_content; text_completion
Additional Attributes        
browser.mobile Recommended if available boolean A boolean that is true if the browser is running on a mobile device  
session.id Required string A unique id to identify a session. 00112233-4455-6677-8899-aabbccddeeff
gen_ai.conversation.id Required string The unique identifier for a conversation/thread, used to store and correlate messages within this conversation. conv_5j66UpCpwteGg4YSxUnt7lPY
user.id Required string Unique identifier of the user. S-1-5-21-202424912787-2692429404-2351956786-1000
user.name OR user.email (to retrieve worker ID) Required string Short name or login/username of the user. OR User email address. a.einstein OR a.einstein@example.com

Invoke Agent Client Span

Span Attributes Requirement Level Value Type Description Example Values
Span Info        
start_time Required datetime Start timestamp 2021-10-22 16:04:01.209458162 +0000 UTC
end_time Required datetime End timestamp 2021-10-22 16:04:01.209514132 +0000 UTC
trace_id Required string The unique identifier of the trace. 7bba9f33312b3dbb8b2c2c62bb7abe2d
span_id Required string The unique identifier of the span. 086e83747d0e381e
Default Attributes        
error.type Conditionally Required if the operation ended in an error string Describes a class of error the operation ended with. timeout; java.net.UnknownHostException; server_certificate_invalid; 500
gen_ai.agent.description Required string Free-form description of the GenAI agent provided by the application. Helps with math problems; Generates fiction stories
gen_ai.agent.id Required string The unique identifier of the GenAI agent. asst_5j66UpCpwteGg4YSxUnt7lPY
gen_ai.agent.name Required string Human-readable name of the GenAI agent provided by the application. Math Tutor; Fiction Writer
gen_ai.conversation.id Required string The unique identifier for a conversation/thread, used to store and correlate messages within this conversation. conv_5j66UpCpwteGg4YSxUnt7lPY
gen_ai.operation.name Required string The name of the operation being performed. chat; generate_content; text_completion
Additional Attributes        
browser.mobile Recommended if available boolean A boolean that is true if the browser is running on a mobile device  
gen_ai.response.id Required (if not available send gen_ai.response.finish_reasons) string The unique identifier for the completion. chatcmpl-123
gen_ai.response.finish_reasons Required (if gen_ai.response.id is not available) string[] Array of reasons the model stopped generating tokens, corresponding to each generation received. [“stop”]; [“stop”, “length”]
session.id Required string A unique id to identify a session. 00112233-4455-6677-8899-aabbccddeeff
user.id Required string Unique identifier of the user. S-1-5-21-202424912787-2692429404-2351956786-1000
user.name OR user.email (to retrieve worker ID) Required string Short name or login/username of the user. OR User email address. a.einstein OR a.einstein@example.com

Invoke Agent Internal Span

Span Attributes Requirement Level Value Type Description Example Values
Span Info        
start_time Required datetime Start timestamp 2021-10-22 16:04:01.209458162 +0000 UTC
end_time Required datetime End timestamp 2021-10-22 16:04:01.209514132 +0000 UTC
trace_id Required string The unique identifier of the trace. 7bba9f33312b3dbb8b2c2c62bb7abe2d
span_id Required string The unique identifier of the span. 086e83747d0e381e
Default Attributes        
error.type Conditionally Required if the operation ended in an error string Describes a class of error the operation ended with. timeout; java.net.UnknownHostException; server_certificate_invalid; 500
gen_ai.agent.description Required string Free-form description of the GenAI agent provided by the application. Helps with math problems; Generates fiction stories
gen_ai.agent.id Required string The unique identifier of the GenAI agent. asst_5j66UpCpwteGg4YSxUnt7lPY
gen_ai.agent.name Required string Human-readable name of the GenAI agent provided by the application. Math Tutor; Fiction Writer
gen_ai.conversation.id Required string The unique identifier for a conversation/thread, used to store and correlate messages within this conversation. conv_5j66UpCpwteGg4YSxUnt7lPY
gen_ai.operation.name Required string The name of the operation being performed. chat; generate_content; text_completion
Additional Attributes        
browser.mobile Recommended if available boolean A boolean that is true if the browser is running on a mobile device  
session.id Required string A unique id to identify a session. 00112233-4455-6677-8899-aabbccddeeff
user.id Required string Unique identifier of the user. S-1-5-21-202424912787-2692429404-2351956786-1000
user.name OR user.email (to retrieve worker ID) Required string Short name or login/username of the user. OR User email address. a.einstein OR a.einstein@example.com

Invoke Workflow Span

Span Attributes Requirement Level Value Type Description Example Values
Span Info        
start_time Required datetime Start timestamp 2021-10-22 16:04:01.209458162 +0000 UTC
end_time Required datetime End timestamp 2021-10-22 16:04:01.209514132 +0000 UTC
trace_id Required string The unique identifier of the trace. 7bba9f33312b3dbb8b2c2c62bb7abe2d
span_id Required string The unique identifier of the span. 086e83747d0e381e
Default Attributes        
error.type Conditionally Required if the operation ended in an error string Describes a class of error the operation ended with. timeout; java.net.UnknownHostException; server_certificate_invalid; 500
gen_ai.operation.name Required string The name of the operation being performed. chat; generate_content; text_completion
gen_ai.workflow.name Conditionally Required when available string Human-readable name of the GenAI workflow provided by the application. multi_agent_rag; customer_support_pipeline
Additional Attributes        
browser.mobile Recommended if available boolean A boolean that is true if the browser is running on a mobile device  
gen_ai.agent.description Required string Free-form description of the GenAI agent provided by the application. Helps with math problems; Generates fiction stories
gen_ai.agent.id Required string The unique identifier of the GenAI agent. asst_5j66UpCpwteGg4YSxUnt7lPY
gen_ai.agent.name Required string Human-readable name of the GenAI agent provided by the application. Math Tutor; Fiction Writer
session.id Required string A unique id to identify a session. 00112233-4455-6677-8899-aabbccddeeff
user.id Required string Unique identifier of the user. S-1-5-21-202424912787-2692429404-2351956786-1000
user.name OR user.email (to retrieve worker ID) Required string Short name or login/username of the user. OR User email address. a.einstein OR a.einstein@example.com

Inference Span

Span Attributes Requirement Level Value Type Description Example Values
Span Info        
start_time Required datetime Start timestamp 2021-10-22 16:04:01.209458162 +0000 UTC
end_time Required datetime End timestamp 2021-10-22 16:04:01.209514132 +0000 UTC
trace_id Required string The unique identifier of the trace. 7bba9f33312b3dbb8b2c2c62bb7abe2d
span_id Required string The unique identifier of the span. 086e83747d0e381e
Default Attributes        
error.type Conditionally Required if the operation ended in an error string Describes a class of error the operation ended with. timeout; java.net.UnknownHostException; server_certificate_invalid; 500
gen_ai.conversation.id Required string The unique identifier for a conversation/thread, used to store and correlate messages within this conversation. conv_5j66UpCpwteGg4YSxUnt7lPY
gen_ai.operation.name Required string The name of the operation being performed. chat; generate_content; text_completion
gen_ai.response.id Required string The unique identifier for the completion. chatcmpl-123
Additional Attributes        
browser.mobile Recommended if available boolean A boolean that is true if the browser is running on a mobile device  
gen_ai.agent.description Required string Free-form description of the GenAI agent provided by the application. Helps with math problems; Generates fiction stories
gen_ai.agent.id Required string The unique identifier of the GenAI agent. asst_5j66UpCpwteGg4YSxUnt7lPY
gen_ai.agent.name Required string Human-readable name of the GenAI agent provided by the application. Math Tutor; Fiction Writer
gen_ai.response.id Required (if not available send gen_ai.response.finish_reasons) string The unique identifier for the completion. chatcmpl-123
gen_ai.response.finish_reasons Required (if gen_ai.response.id is not available) string[] Array of reasons the model stopped generating tokens, corresponding to each generation received. [“stop”]; [“stop”, “length”]
gen_ai.tool.call.id Recommended if available string The tool call identifier. call_mszuSIzqtI65i1wAUOE8w5H4
gen_ai.tool.description Recommended if available string The tool description. Multiply two numbers
gen_ai.tool.name Required string Name of the tool utilized by the agent. Flights
session.id Required string A unique id to identify a session. 00112233-4455-6677-8899-aabbccddeeff
user.id Required string Unique identifier of the user. S-1-5-21-202424912787-2692429404-2351956786-1000
user.name OR user.email (to retrieve worker ID) Required string Short name or login/username of the user. OR User email address. a.einstein OR a.einstein@example.com

Embeddings Span

Span Attributes Requirement Level Value Type Description Example Values
Span Info        
start_time Required datetime Start timestamp 2021-10-22 16:04:01.209458162 +0000 UTC
end_time Required datetime End timestamp 2021-10-22 16:04:01.209514132 +0000 UTC
trace_id Required string The unique identifier of the trace. 7bba9f33312b3dbb8b2c2c62bb7abe2d
span_id Required string The unique identifier of the span. 086e83747d0e381e
Default Attributes        
error.type Conditionally Required if the operation ended in an error string Describes a class of error the operation ended with. timeout; java.net.UnknownHostException; server_certificate_invalid; 500
gen_ai.operation.name Required string The name of the operation being performed. chat; generate_content; text_completion
Additional Attributes        
browser.mobile Recommended if available boolean A boolean that is true if the browser is running on a mobile device  
gen_ai.agent.description Required string Free-form description of the GenAI agent provided by the application. Helps with math problems; Generates fiction stories
gen_ai.agent.id Required string The unique identifier of the GenAI agent. asst_5j66UpCpwteGg4YSxUnt7lPY
gen_ai.agent.name Required string Human-readable name of the GenAI agent provided by the application. Math Tutor; Fiction Writer
gen_ai.tool.call.id Recommended if available string The tool call identifier. call_mszuSIzqtI65i1wAUOE8w5H4
gen_ai.tool.description Recommended if available string The tool description. Multiply two numbers
gen_ai.tool.name Required string Name of the tool utilized by the agent. Flights
session.id Required string A unique id to identify a session. 00112233-4455-6677-8899-aabbccddeeff
user.id Required string Unique identifier of the user. S-1-5-21-202424912787-2692429404-2351956786-1000
user.name OR user.email (to retrieve worker ID) Required string Short name or login/username of the user. OR User email address. a.einstein OR a.einstein@example.com

Retrievals Span

Span Attributes Requirement Level Value Type Description Example Values
Span Info        
start_time Required datetime Start timestamp 2021-10-22 16:04:01.209458162 +0000 UTC
end_time Required datetime End timestamp 2021-10-22 16:04:01.209514132 +0000 UTC
trace_id Required string The unique identifier of the trace. 7bba9f33312b3dbb8b2c2c62bb7abe2d
span_id Required string The unique identifier of the span. 086e83747d0e381e
Default Attributes        
error.type Conditionally Required if the operation ended in an error string Describes a class of error the operation ended with. timeout; java.net.UnknownHostException; server_certificate_invalid; 500
gen_ai.operation.name Required string The name of the operation being performed. chat; generate_content; text_completion
Additional Attributes        
browser.mobile Recommended if available boolean A boolean that is true if the browser is running on a mobile device  
gen_ai.agent.description Required string Free-form description of the GenAI agent provided by the application. Helps with math problems; Generates fiction stories
gen_ai.agent.id Required string The unique identifier of the GenAI agent. asst_5j66UpCpwteGg4YSxUnt7lPY
gen_ai.agent.name Required string Human-readable name of the GenAI agent provided by the application. Math Tutor; Fiction Writer
gen_ai.tool.call.id Recommended if available string The tool call identifier. call_mszuSIzqtI65i1wAUOE8w5H4
gen_ai.tool.description Recommended if available string The tool description. Multiply two numbers
gen_ai.tool.name Required string Name of the tool utilized by the agent. Flights
session.id Required string A unique id to identify a session. 00112233-4455-6677-8899-aabbccddeeff
user.id Required string Unique identifier of the user. S-1-5-21-202424912787-2692429404-2351956786-1000
user.name OR user.email (to retrieve worker ID) Required string Short name or login/username of the user. OR User email address. a.einstein OR a.einstein@example.com

Execute Tool Span

Span Attributes Requirement Level Value Type Description Example Values
Span Info        
start_time Required datetime Start timestamp 2021-10-22 16:04:01.209458162 +0000 UTC
end_time Required datetime End timestamp 2021-10-22 16:04:01.209514132 +0000 UTC
trace_id Required string The unique identifier of the trace. 7bba9f33312b3dbb8b2c2c62bb7abe2d
span_id Required string The unique identifier of the span. 086e83747d0e381e
Default Attributes        
error.type Conditionally Required if the operation ended in an error string Describes a class of error the operation ended with. timeout; java.net.UnknownHostException; server_certificate_invalid; 500
gen_ai.operation.name Required string The name of the operation being performed. chat; generate_content; text_completion
gen_ai.tool.description Recommended if available string The tool description. Multiply two numbers
gen_ai.tool.name Required string Name of the tool utilized by the agent. Flights
Additional Attributes        
browser.mobile Recommended if available boolean A boolean that is true if the browser is running on a mobile device  
gen_ai.agent.description Required string Free-form description of the GenAI agent provided by the application. Helps with math problems; Generates fiction stories
gen_ai.agent.id Required string The unique identifier of the GenAI agent. asst_5j66UpCpwteGg4YSxUnt7lPY
gen_ai.agent.name Required string Human-readable name of the GenAI agent provided by the application. Math Tutor; Fiction Writer
gen_ai.response.id Required (if not available send gen_ai.response.finish_reasons) string The unique identifier for the completion. chatcmpl-123
gen_ai.response.finish_reasons Required (if gen_ai.response.id is not available) string[] Array of reasons the model stopped generating tokens, corresponding to each generation received. [“stop”]; [“stop”, “length”]
session.id Required string A unique id to identify a session. 00112233-4455-6677-8899-aabbccddeeff
user.id Required string Unique identifier of the user. S-1-5-21-202424912787-2692429404-2351956786-1000
user.name OR user.email (to retrieve worker ID) Required string Short name or login/username of the user. OR User email address. a.einstein OR a.einstein@example.com

Client Inference Operation Details Event

Event Attributes Requirement Level Value Type Description Example Values
Event Info        
timestamp Required datetime The timestamp of the event 2024-08-04T12:34:56.789Z
trace_id Required string The unique identifier of the trace. 7bba9f33312b3dbb8b2c2c62bb7abe2d
span_id Required string The unique identifier of the span. 086e83747d0e381e
Default Attributes        
error.type Conditionally Required if the operation ended in an error string Describes a class of error the operation ended with. timeout; java.net.UnknownHostException; server_certificate_invalid; 500
gen_ai.operation.name Required string The name of the operation being performed. chat; generate_content; text_completion
gen_ai.response.id Required string The unique identifier for the completion. chatcmpl-123
gen_ai.tool.definitions Opt-In any The list of tool definitions available to the GenAI agent or model. [ { “type”: “function”, “name”: “get_current_weather”, “description”: “Get the current weather in a given location”, “parameters”: { “type”: “object”, “properties”: { “location”: { “type”: “string”, “description”: “The city and state, e.g. San Francisco, CA” }, “unit”: { “type”: “string”, “enum”: [ “celsius”, “fahrenheit” ] } }, “required”: [ “location”, “unit” ] } } ]
userId Required string The unique identifier of the user. 12345
username (or jwt token) Required string The unique identifier of the worker for Workday login. Might be inferable from the jwt token. johndoe
gen_ai.input.messages Opt-In any The chat history provided to the agent as an input. [ { “role”: “user”, “parts”: [ { “type”: “text”, “content”: “Weather in Paris?” } ] }, { “role”: “assistant”, “parts”: [ { “type”: “tool_call”, “id”: “call_VSPygqKTWdrhaFErNvMV18Yl”, “name”: “get_weather”, “arguments”: { “location”: “Paris” } } ] }, { “role”: “tool”, “parts”: [ { “type”: “tool_call_response”, “id”: “ call_VSPygqKTWdrhaFErNvMV18Yl”, “result”: “rainy, 57°F” } ] } ]
gen_ai.output.messages Opt-In any Messages returned by the agent where each message represents a specific agent response (choice, candidate). [ { “role”: “assistant”, “parts”: [ { “type”: “text”, “content”: “The weather in Paris is currently rainy with a temperature of 57°F.” } ], “finish_reason”: “stop” } ]