75trust / 100
Social X Pulse
by HubVibe in News & content
x402 APIPassing, checked 3 h ago
Twitter / X sentiment and volume for any topic, as numbers, live: post volume per hour or day over the last 1-7 days, and over a sample of recent posts the engagement totals and rate (likes, reposts, replies, quotes, impressions), language mix, top hashtags and link/media share. Aggregates only: no post text or authors. Input: query (X operators allowed); optional days, granularity, sample, lang.
POST https://hubvibe-io.com/work/social/x_pulse
Last 30 days
All checks passedSome failedAll failedNot checked
- Uptime
- 100%
- Response time
- 364 ms typical, 434 ms slowest 5%
- Last check
- 3 h ago
- Next check
- any minute now
How to call it
# See the payment challenge (nothing is charged)
curl -i -X POST "https://hubvibe-io.com/work/social/x_pulse" \
-H "content-type: application/json" \
-d '{"days":3,"lang":"en","query":"open source","sample":20}'import { wrapFetchWithPayment } from "@x402/fetch";
import { x402Client } from "@x402/core/client";
import { ExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";
const client = new x402Client().register(
"eip155:8453",
new ExactEvmScheme(privateKeyToAccount(process.env.AGENT_KEY)),
);
const pay = wrapFetchWithPayment(fetch, client);
// Not sure it's safe to pay? Preflight it first for $0.005:
// GET https://toolvet.app/api/v1/check?url=https%3A%2F%2Fhubvibe-io.com%2Fwork%2Fsocial%2Fx_pulse
const res = await pay("https://hubvibe-io.com/work/social/x_pulse", {
method: "POST",
headers: { "content-type": "application/json" },
body: JSON.stringify({"days":3,"lang":"en","query":"open source","sample":20}),
});
console.log(await res.json());Example input
{
"days": 3,
"lang": "en",
"query": "open source",
"sample": 20
}Example output
{
"attribution": [
{
"text": "Translated by Google",
"url": "https://translate.google.com"
}
],
"price_usd": 0.5,
"provenance": {
"attempts": 1,
"elapsed_ms": 340,
"providers_used": [
"coinbase-advanced-trade-public"
],
"steps": [
{
"ms": 312,
"ok": true,
"provider": "coinbase-advanced-trade-public",
"reason": "provider_timeout",
"step": "quote"
}
]
},
"receipt_id": "rcpt_9f1c2b3a4d5e6f70",
"receipt_url": "/work/receipts/rcpt_9f1c2b3a4d5e6f70",
"result": {
"as_of": "2026-09-27T08:59:45Z",
"checked_at": "2026-09-26T18:00:00Z",
"effective_query": "open source lang:en -is:retweet",
"engagement": {
"bookmarks_total": 12,
"engagement_rate_pct": 0.807,
"impressions_total": 51200,
"languages": {
"en": 20
},
"likes_total": 340,
"max_impressions": 18000,
"max_likes": 120,
"mean_impressions": 2560,
"mean_likes": 17,
"possibly_sensitive_pct": 0,
"posts_read": 20,
"quotes_total": 5,
"replies_total": 27,
"reposts_total": 41,
"top_hashtags": [
{
"posts": 4,
"tag": "opensource"
}
],
"with_hashtags_pct": 35,
"with_links_pct": 40,
"with_media_pct": 15
},
"granularity": "day",
"query": "open source",
"sample": {
"pages": 1,
"read": 20,
"requested": 20,
"x_cost_usd": 0.1
},
"source": "x-api-v2",
"volume": {
"bucket_count": 4,
"buckets": [
{
"count": 7200,
"end": "2026-09-27T00:00:00.000Z",
"start": "2026-09-26T00:00:00.000Z"
}
],
"total": 21636
},
"window": {
"days": 3,
"end": "2026-09-27T08:59:45Z",
"start": "2026-09-24T09:00:00Z"
}
},
"status": "ok",
"worker": "social.x_pulse"
}Security scan
- No findings. We scan names, descriptions and tool definitions for hidden instructions and other prompt-injection patterns.
Recent checks
| When | Result | HTTP | Time | Price |
|---|---|---|---|---|
| 3 h ago | Passed | 402 | 434 ms | $0.5 |
| 6 h ago | Passed | 402 | 364 ms | $0.5 |
| 10 h ago | Passed | 402 | 118 ms | $0.5 |
| 13 h ago | Passed | 402 | 365 ms | $0.5 |
| 16 h ago | Passed | 402 | 118 ms | $0.5 |
| 21 h ago | Passed | 402 | 359 ms | $0.5 |
| 24 h ago | Passed | 402 | 420 ms | $0.5 |
| 27 h ago | Passed | 402 | 382 ms | $0.5 |
| 32 h ago | Passed | 402 | 120 ms | $0.5 |
| 34 h ago | Passed | 402 | 355 ms | $0.5 |
| 40 h ago | Passed | 402 | 466 ms | $0.5 |