Gets the execution trace projected at read time from the raw OTel spans archived during ingest.
Re-runs the same platform-mapper pipeline that built the cached step tree, but starting from the verbatim source-of-truth spans in `otel_spans`. Any improvement to the mapper after the fact reaches existing executions through this endpoint without a re-run. Returns `RawSpanCount = 0` with no traces when the execution didn't go through OTel ingest (native agents, or external runs that emitted no spans) — callers should fall back to `:trace` in that case.
Authorization
Bearer JWT Authorization header using the Bearer scheme. Enter 'Bearer' [space] and then your token.
In: header
Path Parameters
The unique identifier of the agent.
The execution record identifier.
The tenant identifier
Response Body
curl -X GET "https://api.fruxon.com/v1/tenants/string/agents/string/executionRecords/string:projectedTrace"{
"executionRecordId": "00000000-0000-0000-0000-000000000000",
"rawSpanCount": 0,
"traces": [
{
"id": "string",
"displayName": "string",
"type": "TOOL",
"llmStepTrace": {
"providerId": "string",
"model": "string",
"inputTokens": 0,
"outputTokens": 0,
"cachedTokens": 0,
"thinkingTokens": 0,
"inputCost": 0,
"outputCost": 0,
"cachedCost": 0,
"tools": [],
"llmMessages": [],
"serverToolInvocations": []
},
"toolTrace": {
"tool": null,
"displayName": "string",
"toolType": "UNSPECIFIED",
"parameters": {},
"cost": null
},
"hitlTrace": {
"requestId": "00000000-0000-0000-0000-000000000000",
"gateType": "UNSPECIFIED",
"toolKey": "string",
"stepIdentifier": "string",
"requestedAt": 0,
"respondedAt": null,
"respondedBy": "string",
"decision": null,
"responseText": "string",
"outboundMessage": "string",
"proposedParameters": null,
"deliveryRoute": null,
"correlationToken": "string",
"durationMs": null
},
"steps": [],
"result": {
"strValue": "string",
"jsonValue": null,
"fileLink": "string"
},
"status": "SUCCESS",
"error": "string",
"startTime": 0,
"endTime": 0,
"duration": 0
}
]
}{
"type": "string",
"title": "string",
"status": 0,
"detail": "string",
"instance": "string",
"property1": null,
"property2": null
}Gets the execution trace in OTLP/HTTP JSON format.
Returns the trace as an `ExportTraceServiceRequest` compatible with the OpenTelemetry Collector, Jaeger, Grafana Tempo, and other OTLP-compatible backends.
Gets the raw OTLP spans archived for this execution.
Returns each span as we received it from the customer's tracer, no platform mapper applied. Used by the trace sidebar's "raw OTel" view and by external tooling driven off the source-of-truth (mapper validation, attribute audits). Empty `spans` array means the execution didn't go through OTLP ingest (native agent, or external run that emitted no spans).