Social Post / Price Timing Check
Social Post / Price Timing Check. Whether social posts led or lagged the price move, measured on Robinhood-chain token launches only — not BTC, ETH or listed majors. Post times are recovered arithmetically from X snowflake ids. The sample is small, outcome-selected from pumped launches, and can be weeks old; its age in days ships with the result. In our sample posts lagged the move, so this is a timing disclosure and never an early-warning or entry signal.
10000 (raw units)
price
10
calls / 30d
7
unique payers
2026-09-08
updated
Provider
app.tenna.ai · discovered, not yet claimed by its owner
Payment (x402 accepts[])
[
{
"scheme": "exact",
"network": "eip155:8453",
"payTo": "0x7eaf3c393a8996e124c0fa7ccbc55019854c4c5b",
"asset": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
"amount": "10000",
"maxTimeoutSeconds": 60
}
]Output schema
{
"bazaar": {
"discoverable": true,
"info": {
"input": {
"body": {
"offering": "social_timing_check"
},
"bodyType": "json",
"method": "POST",
"type": "http"
},
"output": {
"example": {
"leadDistributionMinutes": {
"maximum": null,
"median": null,
"minimum": null,
"p25": null,
"p75": null,
"unit": "<unit>"
},
"limitations": [
"<limitations>"
],
"offering": "social_timing_check",
"provenance": {
"auditedDeliverableHash": null,
"generatedAt": 1,
"ledgerLaunchCount": null,
"ledgerSpanHours": null,
"resultHash": null,
"rubricVersion": null,
"source": "<source>"
},
"sampleInference": {
"populationEstimateValid": true,
"reason": "<reason>",
"refreshState": "<refreshState>",
"scope": "<scope>"
},
"sampleLeadMinutes": [
1
],
"sampleObservedAt": null,
"sampleSelection": {
"chain": "<chain>",
"group": "<group>",
"minimumSwaps": null,
"outcomeSelected": true,
"pumpThresholdMultiple": null,
"ranking": "<ranking>",
"searchKey": "<searchKey>"
},
"sampleSize": 1,
"sampleTokens": [
"<sampleTokens>"
],
"sampleWindow": {
"durationSeconds": null,
"earliestFirstPostAt": null,
"latestFirstPostAt": null
},
"schemaVersion": "<schemaVersion>",
"verdict": "<verdict>"
},
"type": "json"
}
},
"resource": "https://app.tenna.ai/api/x402/lumi/social_timing_check",
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"body": {
"additionalProperties": false,
"description": "Optional token to look up in the sample.",
"properties": {
"offering": {
"const": "social_timing_check",
"description": "Offering identifier. Must be exactly 'social_timing_check'.",
"type": "string"
},
"tokenAddress": {
"description": "Optional 0x token address to check.",
"type": "string"
}
},
"required": [
"offering"
],
"type": "object"
},
"bodyType": {
"enum": [
"json"
],
"type": "string"
},
"method": {
"enum": [
"POST"
],
"type": "string"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method",
"bodyType",
"body"
],
"type": "object"
},
"output": {
"properties": {
"example": {
"additionalProperties": true,
"properties": {
"laggingPct": {
"description": "Share of posts that lagged.",
"type": [
"number",
"null"
]
},
"laggingPosts": {
"description": "Posts that came after the move.",
"type": [
"integer",
"null"
]
},
"leadDistributionMinutes": {
"additionalProperties": false,
"description": "Descriptive five-number summary of this selected sample; not a population confidence interval.",
"properties": {
"maximum": {
"description": "Maximum observed lead.",
"type": [
"number",
"null"
]
},
"median": {
"description": "Statistical sample median.",
"type": [
"number",
"null"
]
},
"minimum": {
"description": "Minimum observed lead.",
"type": [
"number",
"null"
]
},
"p25": {
"description": "Median of the lower half.",
"type": [
"number",
"null"
]
},
"p75": {
"description": "Median of the upper half.",
"type": [
"number",
"null"
]
},
"unit": {
"description": "minutes",
"type": "string"
}
},
"required": [
"minimum",
"p25",
"median",
"p75",
"maximum",
"unit"
],
"type": "object"
},
"limitations": {
"description": "Coverage limits and missing data, always disclosed.",
"items": {
"type": "string"
},
"type": "array"
},
"medianLeadMinutes": {
"description": "Negative means posts came after the move.",
"type": [
"number",
"null"
]
},
"offering": {
"const": "social_timing_check",
"description": "Offering that produced this result.",
"type": "string"
},
"provenance": {
"description": "Reproducibility metadata so another agent can audit this.",
"properties": {
"auditedDeliverableHash": {
"description": "Explicit alias for resultHash on deliverable-audit results; hashes the buyer-supplied input, not the audit envelope.",
"type": [
"string",
"null"
]
},
"generatedAt": {
"description": "Unix seconds.",
"type": "integer"
},
"ledgerLaunchCount": {
"description": "Launches in the ledger. Null when the offering is not derived from the launch ledger — this means not applicable, not collection failure.",
"type": [
"integer",
"null"
]
},
"ledgerSpanHours": {
"description": "Hours of history covered. Null when the offering is not derived from the launch ledger.",
"type": [
"number",
"null"
]
},
"resultHash": {
"description": "Hash of the audited input, so the same verdict can be reproduced. Present on audit offerings.",
"type": [
"string",
"null"
]
},
"rubricVersion": {
"description": "Rubric the verdict was produced under. Present on audit offerings.",
"type": [
"string",
"null"
]
},
"source": {
"description": "Data origin.",
"type": "string"
}
},
"type": "object"
},
"sampleAgeDays": {
"description": "How old the frozen sample is at delivery, in days. Stated so the age does not have to be derived by subtracting two Unix times. A large value means the observation is historical, not current.",
"type": [
"number",
"null"
]
},
"sampleInference": {
"additionalProperties": false,
"description": "Machine-readable boundary for the small, outcome-selected historical sample.",
"properties": {
"populationEstimateValid": {
"description": "Always false for this outcome-selected artifact.",
"type": "boolean"
},
"reason": {
"description": "SMALL_OUTCOME_SELECTED_SAMPLE.",
"type": "string"
},
"refreshState": {
"description": "HISTORICAL | CURRENT_WITHIN_30_DAYS | UNKNOWN.",
"type": "string"
},
"scope": {
"description": "SELECTED_SAMPLE_ONLY.",
"type": "string"
}
},
"required": [
"scope",
"populationEstimateValid",
"reason",
"refreshState"
],
"type": "object"
},
"sampleLeadMinutes": {
"description": "Sorted per-token lead minutes used to recompute sampleSize, medianLeadMinutes, laggingPosts, laggingPct, and the distribution. Negative values mean the post lagged the price move.",
"items": {
"type": "number"
},
"type": "array"
},
"sampleObservedAt": {
"description": "Unix time when the frozen source artifact was written.",
"type": [
"integer",
"null"
]
},
"sampleSelection": {
"additionalProperties": false,
"description": "Outcome-selected sampling rule and search basis.",
"properties": {
"chain": {
"description": "Chain sampled.",
"type": "string"
},
"group": {
"description": "Eligible sample group.",
"type": "string"
},
"minimumSwaps": {
"description": "Minimum swap observations for eligibility.",
"type": [
"integer",
"null"
]
},
"outcomeSelected": {
"description": "True: the sample was selected using later outcome.",
"type": "boolean"
},
"pumpThresholdMultiple": {
"description": "Minimum peak multiple for the pumped group.",
"type": [
"number",
"null"
]
},
"ranking": {
"description": "Deterministic selection order.",
"type": "string"
},
"searchKey": {
"description": "Exact social-search key type.",
"type": "string"
}
},
"required": [
"chain",
"group",
"ranking",
"pumpThresholdMultiple",
"minimumSwaps",
"searchKey",
"outcomeSelected"
],
"type": "object"
},
"sampleSize": {
"description": "Tokens with a measured lead time.",
"type": "integer"
},
"sampleTokens": {
"description": "Every token behind the aggregate, so the sample can be audited rather than trusted.",
"items": {
"type": "string"
},
"type": "array"
},
"sampleWindow": {
"additionalProperties": false,
"description": "First-post span the sample was measured over.",
"properties": {
"durationSeconds": {
"description": "Observed span between the earliest and latest first posts.",
"type": [
"integer",
"null"
]
},
"earliestFirstPostAt": {
"description": "Earliest first post.",
"type": [
"integer",
"null"
]
},
"latestFirstPostAt": {
"description": "Latest first post.",
"type": [
"integer",
"null"
]
}
},
"required": [
"earliestFirstPostAt",
"latestFirstPostAt",
"durationSeconds"
],
"type": "object"
},
"schemaVersion": {
"description": "Deliverable contract version.",
"type": "string"
},
"verdict": {
"description": "SOCIAL_LAGS_PRICE | MIXED | NO_SAMPLE.",
"type": "string"
}
},
"required": [
"schemaVersion",
"offering",
"provenance",
"limitations",
"sampleSize",
"verdict",
"sampleTokens",
"sampleWindow",
"sampleLeadMinutes",
"leadDistributionMinutes",
"sampleObservedAt",
"sampleSelection",
"sampleInference"
],
"type": "object"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}
}
}Use it
curl
curl "https://app.tenna.ai/api/x402/lumi/social_timing_check" # -> 402 Payment Required, accepts[] lists how to pay # retry with a PAYMENT-SIGNATURE (or PAYMENT header) once paid
JavaScript
const res = await fetch("https://app.tenna.ai/api/x402/lumi/social_timing_check");
if (res.status === 402) {
const { accepts } = await res.json();
// pay one of accepts[] via an x402 client, then retry with the payment header
}Python
import httpx
res = httpx.get("https://app.tenna.ai/api/x402/lumi/social_timing_check")
if res.status_code == 402:
accepts = res.json()["accepts"]
# pay one of accepts[] via an x402 client, then retry with the payment headerMachine-readable
Everything on this page is also available as clean JSON at /resources/5510.json, and this resource appears in /discovery/resources and /discovery/search.