Audience: application and coding agent.
Canonical metadata
requestIdtraceparent
Example request
curl -X POST \
-H "x-api-key: $SECAPI_API_KEY" \
-H "secapi-version: 2026-03-19" \
-H "content-type: application/json" \
-d '{"symbol":"NVDA","candidates":["AMD","AVGO","TSM","ASML"],"lookback":"6m","limit":5}' \
"https://api.secapi.ai/v1/factors/custom"
Example response
{
"object": "factor_similarity_pack",
"id": "factor_similarity_pack:NVDA:2026-06-09",
"symbol": "NVDA",
"asOf": "2026-06-09T22:15:00.000Z",
"anchorTheme": "accelerated compute",
"themeLabels": [
"AI infrastructure",
"semiconductors"
],
"factorKeySuggestion": "AI_INFRASTRUCTURE",
"discoveryMode": "factor_overlap_plus_filing_news_signature",
"semanticSignature": {
"algorithm": "secapi_filing_news_signature_v1",
"dimensions": 384,
"topTerms": [
"accelerated computing",
"data center",
"gpu"
],
"sourceKinds": [
"filing_title",
"news_headline"
],
"sourceCount": 18
},
"namingWorkflow": {
"workflowVersion": "2026-06-09",
"selectedLabel": "AI Infrastructure",
"factorKeySuggestion": "AI_INFRASTRUCTURE",
"confidence": "high",
"labelCandidates": [
{
"label": "AI Infrastructure",
"score": 0.91,
"kind": "phrase",
"evidenceTerms": [
"data center",
"gpu"
],
"sourceCount": 18
}
],
"rationale": "Peers cluster around data-center accelerator demand and AI infrastructure filings."
},
"evidence": [],
"peers": [],
"summaryMd": "NVDA peers share semiconductor and AI infrastructure signatures plus similar factor exposure.",
"responseMode": "compact",
"dataAsOf": "2026-06-09",
"freshnessStatus": "fresh",
"methodologyVersion": "secapi_factor_returns_v1",
"materializationVersion": "2026-06-09",
"provenance": {
"source": "secapi_factor_pipeline",
"sourceLabel": "SecAPI factor pipeline",
"accessionNumber": null,
"filingUrl": "https://docs.secapi.ai/factors/methodology",
"acceptedAt": null,
"retrievedAt": "2026-06-09T22:15:00.000Z",
"parserVersion": "secapi-factor-pipeline"
},
"freshness": {
"status": "fresh",
"asOf": "2026-06-09T22:15:00.000Z",
"sourcePublishedAt": "2026-06-09T21:30:00.000Z",
"lagMs": 2700000
},
"materialization": {
"parserVersion": "secapi-factor-pipeline",
"materializationVersion": "2026-06-09"
},
"sourceRights": {
"source": "secapi_owned_factor_pipeline",
"sourceLabel": "SecAPI factor pipeline",
"posture": "public_safe",
"publicAvailability": "public",
"contractStatus": "approved",
"restrictions": [],
"notes": "SecAPI-owned derived factor data."
},
"methodology": {
"id": "secapi_factor_returns",
"version": "v1",
"summary": "SecAPI-owned daily factor returns, exposures, and portfolio analytics built for agent and API workflows.",
"confidence": "high",
"launchState": "beta",
"inputs": [
"secapi_factor_returns",
"secapi_factor_exposures",
"market_calendar"
],
"validation": {
"launchHistoryFloor": "2015-01-01",
"marketCalendarAware": true
}
},
"revision": {
"sourcePublishedAt": "2026-06-09T21:30:00.000Z",
"retrievedAt": "2026-06-09T22:15:00.000Z",
"vintageId": "2026-06-09",
"revisedFrom": null
},
"degradedState": null,
"requestId": "req_2ZK8Q1W9F4M6P7R3",
"traceparent": "00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01"
}
Give this prompt to your agent
Failure posture
- treat non-2xx responses as contract-aware failures, not free-form errors
- preserve
requestIdandtraceparentin logs and downstream reports - if provenance or freshness metadata is present, return it unchanged so trust is not lost in the handoff

