sql क्वेरी के लिए टेबल
sql`…` कमांड Server SDK का हिस्सा है: यह सीधे Qubix डेटाबेस से डेटा पढ़ता है और स्क्रिप्ट, Britva स्वचालित-नियमों, और साइट हैंडलर में उपलब्ध है। यह एक संदर्भ है कि आप कौन-सी टेबल और कॉलम तक पहुँच सकते हैं, और किन नियमों के तहत।
पहुँच कैसे काम करती है
- केवल-पठन। केवल वे क्वेरी अनुमत हैं जो
SELECT,WITH,SHOW,DESCRIBE, याEXPLAINसे शुरू होती हैं। कोई भी डेटा परिवर्तन (INSERT,UPDATE,DELETE) और क्वेरी के अंदर से बाहरी स्रोतों तक पहुँचना अवरुद्ध है। - सुरक्षित पैरामीटर।
${…}के माध्यम से पास किए गए मान हमेशा क्वेरी पैरामीटर के रूप में जाते हैं, टेक्स्ट में नहीं जोड़े जाते। आपको हाथ से कुछ भी एस्केप नहीं करना पड़ता, और क्वेरी प्रतिस्थापन संभव नहीं है। - आप केवल अपना डेटा देखते हैं। क्वेरी आपकी भूमिका की अनुमतियों के भीतर चलती है: आपको बिल्कुल वे पंक्तियाँ मिलती हैं जो आप रिपोर्ट में देखने के हकदार हैं। दूसरों का डेटा पहुँच योग्य नहीं है।
- एक आकार सीमा। एक क्वेरी अधिकतम कुछ हजार पंक्तियाँ लौटाती है (सटीक सीमा एडमिनिस्ट्रेटर तय करता है)। बड़े चुनाव के लिए, क्वेरी में ही एग्रीगेट करें —
count(),sum(),GROUP BY।
टेबल का नाम डेटाबेस प्रिफ़िक्स के बिना लिखा जाता है — बस qubix_events।
qubix_events — इवेंट स्ट्रीम
मुख्य टेबल: प्रति आगंतुक इवेंट और प्रति रूपांतरण क्रिया एक पंक्ति। इसके माध्यम से आप ट्रैफ़िक में होने वाली हर बात देख सकते हैं — पहली विज़िट से जमा और पुश डिलीवरी तक।
इवेंट और पहचान
| कॉलम | यह क्या है |
|---|---|
event | इवेंट प्रकार (मान नीचे तालिका में) |
event_time | इवेंट का समय |
piuid | आगंतुक ID (विज़िट के बीच स्थायी) |
pwa_id | वह PWA जिससे इवेंट संबंधित है |
domain | वह डोमेन जहाँ इवेंट हुआ |
url | पेज का पता |
जियो और डिवाइस
| कॉलम | यह क्या है |
|---|---|
geo, country | आगंतुक का देश (GeoIP के अनुसार) |
city | शहर |
language | ब्राउज़र भाषा |
ua | User-Agent |
ip | IP पता |
device | डिवाइस डेटा (JSON) |
ट्रैकिंग और एट्रिब्यूशन
| कॉलम | यह क्या है |
|---|---|
click_id | ट्रैकर क्लिक ID |
campaign_id | ट्रैकर कैंपेन |
ad_id | विज्ञापन |
sub_id_1 … sub_id_16 | कस्टम ट्रैकर टैग |
fbc, fbp, fbclid | Facebook एट्रिब्यूशन पैरामीटर |
gclid, ttclid | Google / TikTok एट्रिब्यूशन |
source_clid | मूल क्लिक ID |
pixel | पिक्सेल ID |
params | सभी पता पैरामीटर («key → value» मैप) |
ऑफ़र
| कॉलम | यह क्या है |
|---|---|
offer_id | ऑफ़र |
offer_url | ऑफ़र लिंक |
पुश
| कॉलम | यह क्या है |
|---|---|
push_campaign_id | पुश कैंपेन |
subscription_id | आगंतुक की पुश सब्सक्रिप्शन |
message_id | भेजे गए संदेश की ID |
push_title, push_body | पुश का टेक्स्ट |
रूपांतरण
| कॉलम | यह क्या है |
|---|---|
status | रूपांतरण स्थिति |
revenue | इवेंट के लिए राजस्व |
currency | मुद्रा |
response_code | प्रतिक्रिया कोड (सर्वर-साइड इवेंट के लिए) |
error_message | यदि कोई हो तो त्रुटि का टेक्स्ट |
external_id | एक बाहरी पहचानकर्ता |
extra | अतिरिक्त इवेंट डेटा (JSON) |
event के मान
स्ट्रीम में दिखने वाले मुख्य इवेंट प्रकार:
| समूह | मान |
|---|---|
| विज़िट और व्यू | campaign_visit, render, white_page |
| PWA इंस्टॉल | install_accepted, install_rejected, install_blocked, installed, launch_pwa, install_fallback_redirect |
| पुश | push_prompt_shown, push_allow, push_deny, push_ignored, push_subscribe, push_sent, push_shown, push_click, push_dismiss, push_expired |
| रूपांतरण | reg (पंजीकरण), dep (जमा) |
सब्सक्राइब और इंस्टॉल इवेंट मान Browser SDK इवेंट से मेल खाते हैं — window.sdk ब्राउज़र से जो भेजता है वह सीधे यहाँ आता है।
उदाहरण
पिछले एक दिन में किस देश से कितने आगंतुकों ने पुश की अनुमति दी:
const rows = sql`
SELECT geo, count() AS allowed
FROM qubix_events
WHERE event = 'push_allow'
AND event_time >= now() - INTERVAL 1 DAY
GROUP BY geo
ORDER BY allowed DESC`
for (const row of rows) console.log(row.geo, row.allowed)
अन्य टेबल
| टेबल | इसमें क्या है |
|---|---|
pwa_apps | PWA ऐप सेटिंग्स: pwa_id, name, status, country, category, rating, downloads, push_placement, और अन्य कंस्ट्रक्टर फ़ील्ड |
push_subscriptions | पुश सब्सक्रिप्शन: subscription_id, pwa_id, geo_country, active, subscribed_at |
push_campaigns | पुश कैंपेन: push_campaign_id, name, status, target_geo |
तैयार रिपोर्ट मेट्रिक्स (spend, revenue, ROAS, प्रति-विज्ञापन रूपांतरण) कच्ची स्ट्रीम से नहीं बल्कि ad ऑब्जेक्ट के फ़ील्ड से लेना आसान है — पूरी सूची मेट्रिक्स और कॉलम में है।
सेवा-रहस्य क्वेरी से पहुँच योग्य नहीं हैं — उदाहरण के लिए, पुश के लिए निजी चाबियाँ नहीं पढ़ी जा सकतीं। एक क्वेरी हमेशा केवल-पठन रूप में और केवल आपकी भूमिका की अनुमतियों के भीतर काम करती है।