API Documentation
Everything you need to send W3C trace context, ingest spans, complete async work, query aggregation, and use MCP Trace Observatory tools. Public reads are open; ingestion, span completion, replay, forks, syncs, and reports require PLATPHORM_API_KEY.
Quick Start
Send traces with the shared platform key. Public-safe trace browsing, aggregation summaries, docs, and discovery files stay readable without auth.
curl -X POST https://trace.platphormnews.com/api/v1/traces \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $PLATPHORM_API_KEY" \
-d '{
"name": "Multi-tool trace",
"agentName": "my-agent",
"spans": [
{
"spanId": "00f067aa0ba902b7",
"name": "tools/call search",
"startTime": "'$(date -u +"%Y-%m-%dT%H:%M:%SZ")'",
"endTime": "'$(date -u +"%Y-%m-%dT%H:%M:%SZ")'",
"attributes": {
"mcp.method.name": "tools/call",
"gen_ai.tool.name": "search"
},
"status": "ok"
},
{
"spanId": "00f067aa0ba902b8",
"name": "tools/call summarize",
"startTime": "'$(date -u +"%Y-%m-%dT%H:%M:%SZ")'",
"endTime": "'$(date -u +"%Y-%m-%dT%H:%M:%SZ")'",
"attributes": {
"mcp.method.name": "tools/call",
"gen_ai.tool.name": "summarize"
},
"status": "ok"
}
]
}'Trace always stores the trace envelope when authenticated ingestion succeeds. To reduce database writes, durable span rows are persisted only when a batch contains more than one tool call; the response includes spans_received, spans_ingested, spans_skipped, and span_persistence_reason.
W3C Trace Context
Trace accepts standard traceparent and safe tracestate, then maps them to PlatPhorm enrichment headers. Do not put secrets in baggage, tracestate, spans, evidence, or public artifacts.
traceparent: 00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01 tracestate: platphorm=trace X-PlatPhorm-Trace-Id: 4bf92f3577b34da6a3ce929d0e0e4736 X-PlatPhorm-Span-Id: 00f067aa0ba902b7 X-PlatPhorm-Source-Site: cli.platphormnews.com X-PlatPhorm-Target-Site: trace.platphormnews.com
Async Jobs and Span Completion
curl -X POST https://trace.platphormnews.com/api/v1/spans/start \
-H "Authorization: Bearer $PLATPHORM_API_KEY" \
-H "Content-Type: application/json" \
-d '{"traceId":"4bf92f3577b34da6a3ce929d0e0e4736","spanId":"00f067aa0ba902b7","name":"BrowserOps journey","kind":"browser"}'
curl -X POST https://trace.platphormnews.com/api/v1/spans/complete \
-H "X-PlatPhorm-API-Key: $PLATPHORM_API_KEY" \
-H "Content-Type: application/json" \
-d '{"traceId":"4bf92f3577b34da6a3ce929d0e0e4736","spanId":"00f067aa0ba902b7"}'curl -X POST https://trace.platphormnews.com/api/v1/async/jobs \
-H "Authorization: Bearer $PLATPHORM_API_KEY" \
-H "Content-Type: application/json" \
-d '{"traceId":"4bf92f3577b34da6a3ce929d0e0e4736","jobType":"sandbox.command","queueName":"sandbox"}'API Endpoints
/api/v1/traces/api/v1/traces/api/v1/traces/{id}/api/v1/spans/start/api/v1/spans/complete/api/v1/traces/{id}/fork/api/v1/aggregate/summary/api/v1/async/jobs/api/v1/observatory/api/v1/integrations/status/api/v1/playbooks/api/v1/search/api/v1/evidence/api/v1/reports/trace-summaryRate Limits
Security
# With API key (higher rate limits) curl -H "Authorization: Bearer $PLATPHORM_API_KEY" \ https://trace.platphormnews.com/api/v1/traces
- Network*.platphormnews.com
- PlatformVercel metadata is captured only as safe redacted runtime metadata
Ready to start observing?
Public reads are open. Send traces with PLATPHORM_API_KEY.