एनालिटिक्स: एक व्यू
एनालिटिक्स यूज़र स्टेट पढ़ना है। फ़नल, रिटेंशन और कोहोर्ट उसी लाइव प्रक्षेपण पर क्वेरी हैं जिस पर इंजन का बाकी हिस्सा कार्य करता है।
At a glance
- Host
https://eu.api.prodantix.com- Ingest
POST /v1/events,/v1/identify,/v1/group- Batch size
- 1 to 1000 events per batch
- Answers
202 Accepted: accepted for processing, not yet stored- Auth
projectKeyas a bearer token
- फ़नल और रिटेंशन लाइव स्टेट पर गणना किए जाते हैं, रात्रि वेयरहाउस रोलअप पर नहीं
- कोहोर्ट एक बार परिभाषित और इवेंट आने पर अद्यतन बने रहते हैं
- कोई SQL राउंड-ट्रिप नहीं, स्टेट पहले से ही प्रश्न के लिए आकार में है
यह कैसे काम करता है
Events land on the EU ingestion host, are buffered through Redpanda and written to ClickHouse. Queries read from ClickHouse, so a funnel over thirty days answers in the same shape whether it spans a thousand events or a billion.
Ingestion answers
202. That is acceptance for processing, not proof of storage, a malformed event is still dropped further down the pipeline.इसे कहाँ से एक्सेस करें
| Surface | Operation |
|---|---|
| REST | POST /v1/events · POST /v1/identify · POST /v1/group |
| GraphQL | analytics query · events query · dashboards, cohorts |
| MCP | prodantix.analytics.runQuery |
उदाहरण
curl -X POST "https://eu.api.prodantix.com/v1/events" \
-H "Authorization: Bearer $PRODANTIX_KEY" \
-H "Content-Type: application/json" \
-d '{"batch":[{"distinct_id":"u_8f3a","name":"order.completed","properties":{"amount":4200}}]}'prodantix.capture('order.completed', {
properties: { amount: 4200 },
});await prodantix.capture(
'order.completed',
properties: {'amount': 4200},
);prodantix.capture(
"order.completed",
distinct_id="u_8f3a",
properties={"amount": 4200},
)Querying a funnel
GraphQL
query Funnel($projectId: String!) {
analytics {
funnel(
projectId: $projectId
steps: ["signup.started", "signup.completed", "order.completed"]
window: "P30D"
) {
step
users
conversion
}
}
}