[{"data":1,"prerenderedAt":3980},["ShallowReactive",2],{"learn-chrome-th":3,"nav-th":114,"doc-\u002Fth\u002Fdocs\u002Fai-and-api\u002Fapi\u002Fplatform-data":677,"mdc-f8ab9n-key":3969},{"id":4,"docsPage":5,"docsSidebar":15,"docsTabs":17,"extension":19,"footer":20,"header":92,"localeSwitch":109,"meta":111,"stem":112,"__hash__":113},"chrome_th\u002Fth\u002Fchrome.yml",{"onThisPage":6,"copyPage":7,"copied":8,"copyMenu":9,"copyMarkdownLink":10,"linkCopied":8,"viewMarkdown":11,"openChatGpt":12,"openClaude":13,"platforms":14},"บนหน้านี้","คัดลอกหน้า","คัดลอกแล้ว","ตัวเลือกการคัดลอกเพิ่มเติม","คัดลอกลิงก์ Markdown","ดูเป็น Markdown","เปิดใน ChatGPT","เปิดใน Claude","ใช้ได้กับ",{"label":16},"เมนูเอกสาร",{"ariaLabel":18},"หมวดเอกสาร","yml",{"ariaLabel":21,"columns":22,"legal":72,"quote":73,"askAi":76},"ส่วนท้าย",[23,38,50,60],{"label":24,"children":25},"เรียนรู้",[26,29,32,35],{"label":27,"to":28},"เอกสาร","\u002Fdocs",{"label":30,"to":31},"ตัวอย่างการใช้งาน","\u002Fuse-cases",{"label":33,"to":34},"การฝึกอบรม","\u002Ftraining",{"label":36,"to":37},"แหล่งข้อมูล","\u002Fresources",{"label":39,"children":40},"สำหรับนักพัฒนา",[41,44,47],{"label":42,"to":43},"ผู้ช่วย AI","\u002Fdocs\u002Fai-and-api\u002Fassistants",{"label":45,"to":46},"API","\u002Fdocs\u002Fai-and-api\u002Fapi\u002Fgetting-started",{"label":48,"to":49},"Open Platform","\u002Fdocs\u002Fadministration\u002Faccount\u002Fopen-platform",{"label":51,"children":52},"อัปเดต",[53,56],{"label":54,"to":55},"อัปเดตล่าสุด","\u002Freleases",{"label":57,"to":58,"target":59},"บทความ","https:\u002F\u002Fwww.dataglasslabs.com\u002Fblog","_blank",{"label":61,"children":62},"DataGlass",[63,66,69],{"label":64,"to":65,"target":59},"เปิด DataGlass","https:\u002F\u002Fapp.dataglasslabs.com",{"label":67,"to":68,"target":59},"เว็บไซต์","https:\u002F\u002Fwww.dataglasslabs.com",{"label":70,"to":71},"ราคา","\u002Fdocs\u002Foverview\u002Fexplore\u002Fpricing","DataGlass Labs สงวนลิขสิทธิ์",{"text":74,"caption":75},"วัดสิ่งที่เหลือเป็นกำไร แล้วค่อยเติบโตจากสิ่งที่วัดได้","ทีม DataGlass",{"label":77,"prompt":78,"assistants":79},"ถาม AI เกี่ยวกับ DataGlass","ช่วยสอนวิธีใช้ DataGlass ให้หน่อย DataGlass คือ Decision Engine สำหรับผู้ขายบน Shopee, Lazada และ TikTok Shop ที่ปรับโฆษณา ราคา และโปรโมชันเพื่อกำไรที่แท้จริง ใช้การค้นหาเว็บเพื่ออ่านเอกสารที่ https:\u002F\u002Flearn.dataglasslabs.com\u002Fth\u002Fdocs (สรุปสำหรับ AI อยู่ที่ https:\u002F\u002Flearn.dataglasslabs.com\u002Fllms.txt) แล้วตอบเป็นภาษาไทยว่า DataGlass ทำอะไร เริ่มต้นใช้งานอย่างไร และควรอ่านคู่มือเรื่องไหนก่อน",[80,84,88],{"label":81,"icon":82,"url":83},"ChatGPT","chatgpt","https:\u002F\u002Fchatgpt.com\u002F?prompt={prompt}",{"label":85,"icon":86,"url":87},"Claude","claude","https:\u002F\u002Fclaude.ai\u002Fnew?q={prompt}",{"label":89,"icon":90,"url":91},"Perplexity","perplexity","https:\u002F\u002Fwww.perplexity.ai\u002Fsearch?q={prompt}",{"sections":93,"navLabel":107,"openApp":64,"search":108},[94,97,99,101,103,105],{"key":95,"label":96},"home","หน้าแรก",{"key":98,"label":27},"docs",{"key":100,"label":30},"use-cases",{"key":102,"label":33},"training",{"key":104,"label":54},"releases",{"key":106,"label":36},"resources","ส่วนต่าง ๆ","เริ่มค้นหา",{"label":110},"ภูมิภาคและภาษา",{},"th\u002Fchrome","oehsJxJS8-mOnkBR_goBo54MPvM7axylEK_M0cWBEHI",[115],{"title":116,"path":28,"stem":98,"children":117,"page":120},"Docs",[118,185,374,562,640],{"title":119,"draft":120,"path":121,"stem":122,"children":123},"ภาพรวม",false,"\u002Fdocs\u002Foverview","docs\u002F01.overview\u002Findex",[124,125,149,174],{"title":119,"path":121,"stem":122,"draft":120},{"title":126,"draft":120,"path":127,"stem":128,"children":129,"page":120},"เริ่มต้นใช้งาน","\u002Fdocs\u002Foverview\u002Fget-started","docs\u002F01.overview\u002F01.get-started",[130,135,139,144],{"title":131,"path":132,"stem":133,"draft":120,"icon":134},"DataGlass คืออะไร","\u002Fdocs\u002Foverview\u002Fget-started\u002Fwhat-is-dataglass","docs\u002F01.overview\u002F01.get-started\u002F01.what-is-dataglass","i-material-symbols-info-rounded",{"title":126,"path":136,"stem":137,"draft":120,"icon":138},"\u002Fdocs\u002Foverview\u002Fget-started\u002Fquick-start","docs\u002F01.overview\u002F01.get-started\u002F02.quick-start","i-material-symbols-rocket-launch-rounded",{"title":140,"path":141,"stem":142,"draft":120,"icon":143},"แพลตฟอร์มที่รองรับ","\u002Fdocs\u002Foverview\u002Fget-started\u002Fsupported-platforms","docs\u002F01.overview\u002F01.get-started\u002F03.supported-platforms","i-material-symbols-grid-view-rounded",{"title":145,"path":146,"stem":147,"draft":120,"icon":148},"การเชื่อมต่อร้านค้า","\u002Fdocs\u002Foverview\u002Fget-started\u002Fconnecting-shops","docs\u002F01.overview\u002F01.get-started\u002F04.connecting-shops","i-material-symbols-link-rounded",{"title":150,"draft":120,"path":151,"stem":152,"children":153,"page":120},"พื้นฐาน","\u002Fdocs\u002Foverview\u002Ffoundations","docs\u002F01.overview\u002F02.foundations",[154,159,164,169],{"title":155,"path":156,"stem":157,"draft":120,"icon":158},"มุมมองร้านค้านี้ เทียบกับ มุมมองรวมทุกร้าน","\u002Fdocs\u002Foverview\u002Ffoundations\u002Fthis-shop-vs-unified","docs\u002F01.overview\u002F02.foundations\u002F01.this-shop-vs-unified","i-material-symbols-layers-rounded",{"title":160,"path":161,"stem":162,"draft":120,"icon":163},"COGS และบทบาทสำคัญ","\u002Fdocs\u002Foverview\u002Ffoundations\u002Fcogs-and-their-role","docs\u002F01.overview\u002F02.foundations\u002F02.cogs-and-their-role","i-material-symbols-payments-rounded",{"title":165,"path":166,"stem":167,"draft":120,"icon":168},"margin ของคุณรวมอะไรบ้าง","\u002Fdocs\u002Foverview\u002Ffoundations\u002Fideal-vs-realized-margin","docs\u002F01.overview\u002F02.foundations\u002F03.ideal-vs-realized-margin","i-material-symbols-compare-arrows-rounded",{"title":170,"path":171,"stem":172,"draft":120,"icon":173},"True ROAS","\u002Fdocs\u002Foverview\u002Ffoundations\u002Ftrue-roas","docs\u002F01.overview\u002F02.foundations\u002F04.true-roas","i-material-symbols-ad-group-rounded",{"title":175,"draft":120,"path":176,"stem":177,"children":178,"page":120},"สำรวจ","\u002Fdocs\u002Foverview\u002Fexplore","docs\u002F01.overview\u002F03.explore",[179,182],{"title":70,"path":71,"stem":180,"draft":120,"icon":181},"docs\u002F01.overview\u002F03.explore\u002F01.pricing","i-material-symbols-sell-rounded",{"title":54,"path":183,"stem":184,"draft":120,"to":55},"\u002Fdocs\u002Foverview\u002Fexplore\u002Freleases","docs\u002F01.overview\u002F03.explore\u002F02.releases",{"title":186,"draft":120,"path":187,"stem":188,"children":189},"ฟีเจอร์","\u002Fdocs\u002Ffeatures","docs\u002F02.features\u002Findex",[190,191,221,271,312,335,355],{"title":119,"path":187,"stem":188,"draft":120},{"title":192,"draft":120,"path":193,"stem":194,"children":195,"page":120},"ร้านค้า","\u002Fdocs\u002Ffeatures\u002Fshops","docs\u002F02.features\u002F01.shops",[196,201,206,211,216],{"title":197,"path":198,"stem":199,"draft":120,"icon":200},"ภาพรวมร้านค้า","\u002Fdocs\u002Ffeatures\u002Fshops\u002Fshop-overview","docs\u002F02.features\u002F01.shops\u002F01.shop-overview","i-material-symbols-space-dashboard-rounded",{"title":202,"path":203,"stem":204,"draft":120,"icon":205},"ทำความเข้าใจตัวเลขต่างๆ","\u002Fdocs\u002Ffeatures\u002Fshops\u002Funderstanding-the-numbers","docs\u002F02.features\u002F01.shops\u002F02.understanding-the-numbers","i-material-symbols-help-rounded",{"title":207,"path":208,"stem":209,"draft":120,"icon":210},"การระบุที่มาและการขจัดการนับซ้ำ (Attribution & dedup)","\u002Fdocs\u002Ffeatures\u002Fshops\u002Fattribution-and-dedup","docs\u002F02.features\u002F01.shops\u002F03.attribution-and-dedup","i-material-symbols-call-merge-rounded",{"title":212,"path":213,"stem":214,"draft":120,"icon":215},"สุขภาพร้าน","\u002Fdocs\u002Ffeatures\u002Fshops\u002Fshop-health","docs\u002F02.features\u002F01.shops\u002F04.shop-health","i-material-symbols-monitor-heart-rounded",{"title":217,"path":218,"stem":219,"draft":120,"icon":220},"การตั้งค่าร้านค้าและการซิงก์ข้อมูล","\u002Fdocs\u002Ffeatures\u002Fshops\u002Fshop-settings-and-sync","docs\u002F02.features\u002F01.shops\u002F05.shop-settings-and-sync","i-material-symbols-settings-rounded",{"title":222,"draft":120,"path":223,"stem":224,"children":225,"page":120},"สินค้า","\u002Fdocs\u002Ffeatures\u002Fproducts","docs\u002F02.features\u002F02.products",[226,231,236,241,246,251,256,261,266],{"title":227,"path":228,"stem":229,"draft":120,"icon":230},"ตารางสินค้า","\u002Fdocs\u002Ffeatures\u002Fproducts\u002Fproduct-table","docs\u002F02.features\u002F02.products\u002F01.product-table","i-material-symbols-deployed-code-rounded",{"title":232,"path":233,"stem":234,"draft":120,"icon":235},"ภาพรวมสินค้า","\u002Fdocs\u002Ffeatures\u002Fproducts\u002Funified-products","docs\u002F02.features\u002F02.products\u002F02.unified-products","i-material-symbols-dashboard-customize-rounded",{"title":237,"path":238,"stem":239,"draft":120,"icon":240},"จับคู่และรวมสินค้า","\u002Fdocs\u002Ffeatures\u002Fproducts\u002Fmatching-and-merging","docs\u002F02.features\u002F02.products\u002F03.matching-and-merging","i-material-symbols-merge-rounded",{"title":242,"path":243,"stem":244,"draft":120,"icon":245},"แก้ไขหลายรายการ (Excel)","\u002Fdocs\u002Ffeatures\u002Fproducts\u002Fbulk-edit-excel","docs\u002F02.features\u002F02.products\u002F04.bulk-edit-excel","i-material-symbols-grid-on-rounded",{"title":247,"path":248,"stem":249,"draft":120,"icon":250},"สต็อกและการสั่งซื้อเพิ่ม","\u002Fdocs\u002Ffeatures\u002Fproducts\u002Finventory-and-reorder","docs\u002F02.features\u002F02.products\u002F05.inventory-and-reorder","i-material-symbols-inventory-2-rounded",{"title":252,"path":253,"stem":254,"draft":120,"icon":255},"ซิงก์สต็อก","\u002Fdocs\u002Ffeatures\u002Fproducts\u002Fstock-sync","docs\u002F02.features\u002F02.products\u002F06.stock-sync","i-material-symbols-sync-rounded",{"title":257,"path":258,"stem":259,"draft":120,"icon":260},"ค่าคอมมิชชั่น","\u002Fdocs\u002Ffeatures\u002Fproducts\u002Fcommission","docs\u002F02.features\u002F02.products\u002F07.commission","i-material-symbols-price-change-rounded",{"title":262,"path":263,"stem":264,"draft":120,"icon":265},"Auto bump","\u002Fdocs\u002Ffeatures\u002Fproducts\u002Fauto-bump","docs\u002F02.features\u002F02.products\u002F08.auto-bump","i-material-symbols-trending-up-rounded",{"title":267,"path":268,"stem":269,"draft":120,"icon":270},"ช่วง margin","\u002Fdocs\u002Ffeatures\u002Fproducts\u002Fmargin-spread","docs\u002F02.features\u002F02.products\u002F09.margin-spread","i-material-symbols-straighten-rounded",{"title":272,"draft":120,"path":273,"stem":274,"children":275},"การวิเคราะห์ทางการเงิน","\u002Fdocs\u002Ffeatures\u002Ffinancial-breakdown","docs\u002F02.features\u002F03.financial-breakdown\u002Findex",[276,277,282,287,292,297,302,307],{"title":119,"path":273,"stem":274,"draft":120},{"title":278,"path":279,"stem":280,"draft":120,"icon":281},"การจำลองและบันทึกร่างการแก้ไข","\u002Fdocs\u002Ffeatures\u002Ffinancial-breakdown\u002Fsimulate-and-draft-edit","docs\u002F02.features\u002F03.financial-breakdown\u002F01.simulate-and-draft-edit","i-material-symbols-science-rounded",{"title":283,"path":284,"stem":285,"draft":120,"icon":286},"การตั้งค่า margin","\u002Fdocs\u002Ffeatures\u002Ffinancial-breakdown\u002Fset-margin","docs\u002F02.features\u002F03.financial-breakdown\u002F02.set-margin","i-material-symbols-tune-rounded",{"title":288,"path":289,"stem":290,"draft":120,"icon":291},"Margin optimizer","\u002Fdocs\u002Ffeatures\u002Ffinancial-breakdown\u002Fmargin-optimizer","docs\u002F02.features\u002F03.financial-breakdown\u002F03.margin-optimizer","i-material-symbols-instant-mix-rounded",{"title":293,"path":294,"stem":295,"draft":120,"icon":296},"ความยืดหยุ่นของราคา","\u002Fdocs\u002Ffeatures\u002Ffinancial-breakdown\u002Fprice-elasticity","docs\u002F02.features\u002F03.financial-breakdown\u002F04.price-elasticity","i-material-symbols-show-chart-rounded",{"title":298,"path":299,"stem":300,"draft":120,"icon":301},"เครื่องคำนวณสินค้า","\u002Fdocs\u002Ffeatures\u002Ffinancial-breakdown\u002Fproduct-calculator","docs\u002F02.features\u002F03.financial-breakdown\u002F05.product-calculator","i-material-symbols-calculate-rounded",{"title":303,"path":304,"stem":305,"draft":120,"icon":306},"ประวัติสินค้า","\u002Fdocs\u002Ffeatures\u002Ffinancial-breakdown\u002Fproduct-history","docs\u002F02.features\u002F03.financial-breakdown\u002F06.product-history","i-material-symbols-history-rounded",{"title":308,"path":309,"stem":310,"draft":120,"icon":311},"กำไรสุทธิและต้นทุนแฝง","\u002Fdocs\u002Ffeatures\u002Ffinancial-breakdown\u002Fnet-profit-and-hidden-cost","docs\u002F02.features\u002F03.financial-breakdown\u002F07.net-profit-and-hidden-cost","i-material-symbols-visibility-off-rounded",{"title":313,"draft":120,"path":314,"stem":315,"children":316,"page":120},"การตั้งราคา","\u002Fdocs\u002Ffeatures\u002Fpricing","docs\u002F02.features\u002F04.pricing",[317,321,326,331],{"title":318,"path":319,"stem":320,"draft":120,"icon":245},"Price Edit","\u002Fdocs\u002Ffeatures\u002Fpricing\u002Fprice-edit","docs\u002F02.features\u002F04.pricing\u002F01.price-edit",{"title":322,"path":323,"stem":324,"draft":120,"icon":325},"Whitelist การขึ้นราคา","\u002Fdocs\u002Ffeatures\u002Fpricing\u002Fprice-increase-whitelist","docs\u002F02.features\u002F04.pricing\u002F02.price-increase-whitelist","i-lucide-badge-check",{"title":327,"path":328,"stem":329,"draft":120,"icon":330},"การขออนุมัติ whitelist","\u002Fdocs\u002Ffeatures\u002Fpricing\u002Frequest-whitelist-approval","docs\u002F02.features\u002F04.pricing\u002F03.request-whitelist-approval","i-lucide-mail",{"title":332,"path":333,"stem":334,"draft":120,"icon":181},"ระดับราคา","\u002Fdocs\u002Ffeatures\u002Fpricing\u002Fprice-tiers","docs\u002F02.features\u002F04.pricing\u002F04.price-tiers",{"title":336,"draft":120,"path":337,"stem":338,"children":339},"ตัวจำลองแคมเปญ","\u002Fdocs\u002Ffeatures\u002Fcampaign-simulator","docs\u002F02.features\u002F05.campaign-simulator\u002Findex",[340,341,346,351],{"title":119,"path":337,"stem":338,"draft":120},{"title":342,"path":343,"stem":344,"draft":120,"icon":345},"โมเดลช่วงแคมเปญ","\u002Fdocs\u002Ffeatures\u002Fcampaign-simulator\u002Fphase-model","docs\u002F02.features\u002F05.campaign-simulator\u002F01.phase-model","i-material-symbols-timeline-rounded",{"title":347,"path":348,"stem":349,"draft":120,"icon":350},"การวางแผนโฆษณา","\u002Fdocs\u002Ffeatures\u002Fcampaign-simulator\u002Fads-planning","docs\u002F02.features\u002F05.campaign-simulator\u002F02.ads-planning","i-material-symbols-ads-click-rounded",{"title":352,"path":353,"stem":354,"draft":120,"icon":168},"เทียบไม่จัดแคมเปญ","\u002Fdocs\u002Ffeatures\u002Fcampaign-simulator\u002Fcounterfactual","docs\u002F02.features\u002F05.campaign-simulator\u002F03.counterfactual",{"title":356,"draft":120,"path":357,"stem":358,"children":359,"page":120},"ออเดอร์","\u002Fdocs\u002Ffeatures\u002Forders","docs\u002F02.features\u002F06.orders",[360,364,369],{"title":356,"path":361,"stem":362,"draft":120,"icon":363},"\u002Fdocs\u002Ffeatures\u002Forders\u002Forders","docs\u002F02.features\u002F06.orders\u002F01.orders","i-material-symbols-receipt-long-rounded",{"title":365,"path":366,"stem":367,"draft":120,"icon":368},"Reconciliation","\u002Fdocs\u002Ffeatures\u002Forders\u002Freconciliation","docs\u002F02.features\u002F06.orders\u002F02.reconciliation","i-material-symbols-balance",{"title":370,"path":371,"stem":372,"draft":120,"icon":373},"ใบปะหน้าพัสดุ","\u002Fdocs\u002Ffeatures\u002Forders\u002Fshipping-labels","docs\u002F02.features\u002F06.orders\u002F03.shipping-labels","i-material-symbols-local-shipping-rounded",{"title":375,"draft":120,"path":376,"stem":377,"children":378},"การเติบโต","\u002Fdocs\u002Fgrowth","docs\u002F03.growth\u002Findex",[379,380,403,467,491],{"title":119,"path":376,"stem":377,"draft":120},{"title":381,"draft":120,"path":382,"stem":383,"children":384,"page":120},"Actions","\u002Fdocs\u002Fgrowth\u002Factions","docs\u002F03.growth\u002F01.actions",[385,390,394,399],{"title":386,"path":387,"stem":388,"draft":120,"icon":389},"Actions คืออะไร","\u002Fdocs\u002Fgrowth\u002Factions\u002Fwhat-are-actions","docs\u002F03.growth\u002F01.actions\u002F01.what-are-actions","i-material-symbols-app-spark-rounded",{"title":391,"path":392,"stem":393,"draft":120},"ขั้นตอนของ Action","\u002Fdocs\u002Fgrowth\u002Factions\u002Faction-flow","docs\u002F03.growth\u002F01.actions\u002F02.action-flow",{"title":395,"path":396,"stem":397,"draft":120,"icon":398},"Deployed และ Dismissed","\u002Fdocs\u002Fgrowth\u002Factions\u002Fdeployed-and-dismissed","docs\u002F03.growth\u002F01.actions\u002F03.deployed-and-dismissed","i-material-symbols-published-with-changes-rounded",{"title":400,"path":401,"stem":402,"draft":120,"icon":301},"ผลลัพธ์คำนวณอย่างไร","\u002Fdocs\u002Fgrowth\u002Factions\u002Fresults","docs\u002F03.growth\u002F01.actions\u002F04.results",{"title":404,"draft":120,"path":405,"stem":406,"children":407,"icon":409},"ประเภทของ Action","\u002Fdocs\u002Fgrowth\u002Faction-types","docs\u002F03.growth\u002F02.action-types\u002Findex",[408,410,415,420,424,429,434,439,444,448,453,458,463],{"title":119,"path":405,"stem":406,"draft":120,"icon":409},"i-material-symbols-format-list-bulleted-rounded",{"title":411,"path":412,"stem":413,"draft":120,"icon":414},"Price buffer","\u002Fdocs\u002Fgrowth\u002Faction-types\u002Fprice-buffer","docs\u002F03.growth\u002F02.action-types\u002F01.price-buffer","i-material-symbols-money-range-rounded",{"title":416,"path":417,"stem":418,"draft":120,"icon":419},"Commission adjust","\u002Fdocs\u002Fgrowth\u002Faction-types\u002Fcommission-adjust","docs\u002F03.growth\u002F02.action-types\u002F02.commission-adjust","i-material-symbols-percent-discount-rounded",{"title":421,"path":422,"stem":423,"draft":120,"icon":210},"Variant merge","\u002Fdocs\u002Fgrowth\u002Faction-types\u002Fvariant-merge","docs\u002F03.growth\u002F02.action-types\u002F03.variant-merge",{"title":425,"path":426,"stem":427,"draft":120,"icon":428},"Target ROAS","\u002Fdocs\u002Fgrowth\u002Faction-types\u002Ftarget-roas","docs\u002F03.growth\u002F02.action-types\u002F04.target-roas","i-material-symbols-target",{"title":430,"path":431,"stem":432,"draft":120,"icon":433},"Bundle Deal","\u002Fdocs\u002Fgrowth\u002Faction-types\u002Fbundle-deal","docs\u002F03.growth\u002F02.action-types\u002F05.bundle-deal","i-material-symbols-category-rounded",{"title":435,"path":436,"stem":437,"draft":120,"icon":438},"Product Boost","\u002Fdocs\u002Fgrowth\u002Faction-types\u002Fproduct-boost","docs\u002F03.growth\u002F02.action-types\u002F06.product-boost","i-material-symbols-electric-bolt-rounded",{"title":440,"path":441,"stem":442,"draft":120,"icon":443},"การลงทะเบียนแคมเปญ","\u002Fdocs\u002Fgrowth\u002Faction-types\u002Fcampaign-enrollment","docs\u002F03.growth\u002F02.action-types\u002F07.campaign-enrollment","i-material-symbols-play-arrow-rounded",{"title":445,"path":446,"stem":447,"draft":120,"icon":350},"การปรับแต่งโฆษณา","\u002Fdocs\u002Fgrowth\u002Faction-types\u002Fad-adjustment","docs\u002F03.growth\u002F02.action-types\u002F08.ad-adjustment",{"title":449,"path":450,"stem":451,"draft":120,"icon":452},"SEO","\u002Fdocs\u002Fgrowth\u002Faction-types\u002Fseo","docs\u002F03.growth\u002F02.action-types\u002F09.seo","i-material-symbols-category-search-rounded",{"title":454,"path":455,"stem":456,"draft":120,"icon":457},"Add-on Deal","\u002Fdocs\u002Fgrowth\u002Faction-types\u002Fadd-on-deal","docs\u002F03.growth\u002F02.action-types\u002F10.add-on-deal","i-material-symbols-add-box-rounded",{"title":459,"path":460,"stem":461,"draft":120,"icon":462},"Stock Up","\u002Fdocs\u002Fgrowth\u002Faction-types\u002Fstock-up","docs\u002F03.growth\u002F02.action-types\u002F11.stock-up","i-material-symbols-inventory-rounded",{"title":464,"path":465,"stem":466,"draft":120,"icon":428},"TikTok Target ROAS","\u002Fdocs\u002Fgrowth\u002Faction-types\u002Ftiktok-target-roas","docs\u002F03.growth\u002F02.action-types\u002F12.tiktok-target-roas",{"title":468,"draft":120,"path":469,"stem":470,"children":471,"page":120},"โฆษณา","\u002Fdocs\u002Fgrowth\u002Fads","docs\u002F03.growth\u002F03.ads",[472,477,481,486],{"title":473,"path":474,"stem":475,"draft":120,"icon":476},"การอ่านแผนภูมิ Sankey","\u002Fdocs\u002Fgrowth\u002Fads\u002Freading-the-sankey","docs\u002F03.growth\u002F03.ads\u002F01.reading-the-sankey","i-material-symbols-schema-rounded",{"title":478,"path":479,"stem":480,"draft":120,"icon":168},"Cannibalization","\u002Fdocs\u002Fgrowth\u002Fads\u002Fcannibalization","docs\u002F03.growth\u002F03.ads\u002F02.cannibalization",{"title":482,"path":483,"stem":484,"draft":120,"icon":485},"Meta (Facebook) Ads","\u002Fdocs\u002Fgrowth\u002Fads\u002Fmeta-ads","docs\u002F03.growth\u002F03.ads\u002F03.meta-ads","i-simple-icons-meta",{"title":487,"path":488,"stem":489,"draft":120,"icon":490},"กำไรจาก CPAS","\u002Fdocs\u002Fgrowth\u002Fads\u002Fcpas-profit","docs\u002F03.growth\u002F03.ads\u002F04.cpas-profit","i-material-symbols-hub-rounded",{"title":492,"draft":120,"path":493,"stem":494,"children":495,"icon":173},"Optimization groups","\u002Fdocs\u002Fgrowth\u002Foptimization-groups","docs\u002F03.growth\u002F04.optimization-groups\u002Findex",[496,497,502,507,512,517,522,527,532,537,542,547,552,557],{"title":119,"path":493,"stem":494,"draft":120,"icon":173},{"title":498,"path":499,"stem":500,"draft":120,"icon":501},"สร้างกลุ่ม","\u002Fdocs\u002Fgrowth\u002Foptimization-groups\u002Fcreating-a-group","docs\u002F03.growth\u002F04.optimization-groups\u002F01.creating-a-group","i-lucide-plus",{"title":503,"path":504,"stem":505,"draft":120,"icon":506},"การตั้งค่าโดยรวม","\u002Fdocs\u002Fgrowth\u002Foptimization-groups\u002Fglobal-settings","docs\u002F03.growth\u002F04.optimization-groups\u002F02.global-settings","i-lucide-settings-2",{"title":508,"path":509,"stem":510,"draft":120,"icon":511},"งบและขีดจำกัด","\u002Fdocs\u002Fgrowth\u002Foptimization-groups\u002Fbudget-and-limits","docs\u002F03.growth\u002F04.optimization-groups\u002F03.budget-and-limits","i-lucide-wallet",{"title":513,"path":514,"stem":515,"draft":120,"icon":516},"เลือกเป้าหมาย","\u002Fdocs\u002Fgrowth\u002Foptimization-groups\u002Fchoosing-an-objective","docs\u002F03.growth\u002F04.optimization-groups\u002F05.choosing-an-objective","i-lucide-target",{"title":518,"path":519,"stem":520,"draft":120,"icon":521},"เงื่อนไข","\u002Fdocs\u002Fgrowth\u002Foptimization-groups\u002Fconstraints","docs\u002F03.growth\u002F04.optimization-groups\u002F06.constraints","i-lucide-shield-check",{"title":523,"path":524,"stem":525,"draft":120,"icon":526},"การกระจายงบ","\u002Fdocs\u002Fgrowth\u002Foptimization-groups\u002Fallocation-preference","docs\u002F03.growth\u002F04.optimization-groups\u002F07.allocation-preference","i-lucide-sliders-horizontal",{"title":528,"path":529,"stem":530,"draft":120,"icon":531},"แผนรายเดือน","\u002Fdocs\u002Fgrowth\u002Foptimization-groups\u002Fmonthly-plan","docs\u002F03.growth\u002F04.optimization-groups\u002F09.monthly-plan","i-lucide-calendar-days",{"title":533,"path":534,"stem":535,"draft":120,"icon":536},"ตารางเวลาบนไทม์ไลน์","\u002Fdocs\u002Fgrowth\u002Foptimization-groups\u002Fschedule","docs\u002F03.growth\u002F04.optimization-groups\u002F10.schedule","i-lucide-clock",{"title":538,"path":539,"stem":540,"draft":120,"icon":541},"กฎระบบอัตโนมัติ","\u002Fdocs\u002Fgrowth\u002Foptimization-groups\u002Fautomation","docs\u002F03.growth\u002F04.optimization-groups\u002F11.automation","i-lucide-workflow",{"title":543,"path":544,"stem":545,"draft":120,"icon":546},"จัดการแคมเปญในกลุ่ม","\u002Fdocs\u002Fgrowth\u002Foptimization-groups\u002Fmanaging-campaigns","docs\u002F03.growth\u002F04.optimization-groups\u002F12.managing-campaigns","i-lucide-list-checks",{"title":548,"path":549,"stem":550,"draft":120,"icon":551},"รอบการปรับงบทำงานอย่างไร","\u002Fdocs\u002Fgrowth\u002Foptimization-groups\u002Fdaily-run","docs\u002F03.growth\u002F04.optimization-groups\u002F13.daily-run","i-lucide-refresh-cw",{"title":553,"path":554,"stem":555,"draft":120,"icon":556},"เมื่อโมเดลโฆษณากำลังอัปเดต","\u002Fdocs\u002Fgrowth\u002Foptimization-groups\u002Fmodel-training","docs\u002F03.growth\u002F04.optimization-groups\u002F14.model-training","i-lucide-brain-circuit",{"title":558,"path":559,"stem":560,"draft":120,"icon":561},"อภิธานศัพท์","\u002Fdocs\u002Fgrowth\u002Foptimization-groups\u002Fglossary","docs\u002F03.growth\u002F04.optimization-groups\u002F16.glossary","i-lucide-book-a",{"title":563,"draft":120,"path":564,"stem":565,"children":566},"AI และ API","\u002Fdocs\u002Fai-and-api","docs\u002F04.ai-and-api\u002Findex",[567,568,608],{"title":119,"path":564,"stem":565,"draft":120},{"title":42,"draft":120,"path":43,"stem":569,"children":570,"icon":572},"docs\u002F04.ai-and-api\u002F01.assistants\u002Findex",[571,573,578,583,588,593,598,603],{"title":119,"path":43,"stem":569,"draft":120,"icon":572},"i-material-symbols-smart-toy-rounded",{"title":574,"path":575,"stem":576,"draft":120,"icon":577},"เชื่อมต่อกับ ChatGPT","\u002Fdocs\u002Fai-and-api\u002Fassistants\u002Fconnect-chatgpt","docs\u002F04.ai-and-api\u002F01.assistants\u002F01.connect-chatgpt","i-simple-icons-openai",{"title":579,"path":580,"stem":581,"draft":120,"icon":582},"เชื่อมต่อกับ Claude","\u002Fdocs\u002Fai-and-api\u002Fassistants\u002Fconnect-claude","docs\u002F04.ai-and-api\u002F01.assistants\u002F02.connect-claude","i-simple-icons-claude",{"title":584,"path":585,"stem":586,"draft":120,"icon":587},"Native playbooks","\u002Fdocs\u002Fai-and-api\u002Fassistants\u002Fplaybooks","docs\u002F04.ai-and-api\u002F01.assistants\u002F03.playbooks","i-material-symbols-route-rounded",{"title":589,"path":590,"stem":591,"draft":120,"icon":592},"คลัง prompt","\u002Fdocs\u002Fai-and-api\u002Fassistants\u002Fprompt-library","docs\u002F04.ai-and-api\u002F01.assistants\u002F04.prompt-library","i-material-symbols-forum-rounded",{"title":594,"path":595,"stem":596,"draft":120,"icon":597},"MCP tool catalog","\u002Fdocs\u002Fai-and-api\u002Fassistants\u002Ftool-catalog","docs\u002F04.ai-and-api\u002F01.assistants\u002F05.tool-catalog","i-material-symbols-build-rounded",{"title":599,"path":600,"stem":601,"draft":120,"icon":602},"สิทธิ์และความปลอดภัย","\u002Fdocs\u002Fai-and-api\u002Fassistants\u002Fusage-and-safety","docs\u002F04.ai-and-api\u002F01.assistants\u002F06.usage-and-safety","i-material-symbols-health-and-safety-rounded",{"title":604,"path":605,"stem":606,"draft":120,"icon":607},"ตัวอย่าง MCP แบบครบขั้นตอน","\u002Fdocs\u002Fai-and-api\u002Fassistants\u002Fworked-examples","docs\u002F04.ai-and-api\u002F01.assistants\u002F07.worked-examples","i-material-symbols-menu-book-rounded",{"title":45,"draft":120,"path":609,"stem":610,"children":611,"page":120},"\u002Fdocs\u002Fai-and-api\u002Fapi","docs\u002F04.ai-and-api\u002F02.api",[612,615,620,625,630,635],{"title":126,"path":46,"stem":613,"draft":120,"icon":614},"docs\u002F04.ai-and-api\u002F02.api\u002F01.getting-started","i-material-symbols-key-rounded",{"title":616,"path":617,"stem":618,"draft":120,"icon":619},"ความปลอดภัยและขีดจำกัดของ API","\u002Fdocs\u002Fai-and-api\u002Fapi\u002Fsecurity","docs\u002F04.ai-and-api\u002F02.api\u002F02.security","i-material-symbols-verified-user-rounded",{"title":621,"path":622,"stem":623,"draft":120,"icon":624},"Endpoints: สินค้าและออเดอร์","\u002Fdocs\u002Fai-and-api\u002Fapi\u002Fproducts-and-orders","docs\u002F04.ai-and-api\u002F02.api\u002F03.products-and-orders","i-material-symbols-package-2-rounded",{"title":626,"path":627,"stem":628,"draft":120,"icon":629},"Endpoints: การแยกรายละเอียดทางการเงิน","\u002Fdocs\u002Fai-and-api\u002Fapi\u002Ffinancial-breakdown","docs\u002F04.ai-and-api\u002F02.api\u002F04.financial-breakdown","i-material-symbols-account-balance-rounded",{"title":631,"path":632,"stem":633,"draft":120,"icon":634},"Endpoints: ข้อมูลแพลตฟอร์มดิบ","\u002Fdocs\u002Fai-and-api\u002Fapi\u002Fplatform-data","docs\u002F04.ai-and-api\u002F02.api\u002F05.platform-data","i-material-symbols-database-rounded",{"title":636,"path":637,"stem":638,"draft":120,"icon":639},"Endpoints: Actions และคำแนะนำ","\u002Fdocs\u002Fai-and-api\u002Fapi\u002Frecommendations","docs\u002F04.ai-and-api\u002F02.api\u002F06.recommendations","i-material-symbols-recommend-rounded",{"title":641,"draft":120,"path":642,"stem":643,"children":644},"การดูแลระบบ","\u002Fdocs\u002Fadministration","docs\u002F05.administration\u002Findex",[645,646,666],{"title":119,"path":642,"stem":643,"draft":120},{"title":647,"draft":120,"path":648,"stem":649,"children":650,"page":120},"ทีมและการเข้าถึง","\u002Fdocs\u002Fadministration\u002Fteam-and-access","docs\u002F05.administration\u002F01.team-and-access",[651,656,661],{"title":652,"path":653,"stem":654,"draft":120,"icon":655},"ทีมและบทบาท","\u002Fdocs\u002Fadministration\u002Fteam-and-access\u002Fteam-and-roles","docs\u002F05.administration\u002F01.team-and-access\u002F01.team-and-roles","i-material-symbols-group-rounded",{"title":657,"path":658,"stem":659,"draft":120,"icon":660},"การเพิ่มสมาชิก","\u002Fdocs\u002Fadministration\u002Fteam-and-access\u002Fadding-teammates","docs\u002F05.administration\u002F01.team-and-access\u002F02.adding-teammates","i-material-symbols-person-add-rounded",{"title":662,"path":663,"stem":664,"draft":120,"icon":665},"การจัดการการเข้าถึง","\u002Fdocs\u002Fadministration\u002Fteam-and-access\u002Fmanaging-access","docs\u002F05.administration\u002F01.team-and-access\u002F03.managing-access","i-material-symbols-admin-panel-settings-rounded",{"title":667,"draft":120,"path":668,"stem":669,"children":670,"page":120},"บัญชี","\u002Fdocs\u002Fadministration\u002Faccount","docs\u002F05.administration\u002F02.account",[671,673],{"title":48,"path":49,"stem":672,"draft":120,"icon":490},"docs\u002F05.administration\u002F02.account\u002F01.open-platform",{"title":674,"path":675,"stem":676,"draft":120,"icon":363},"VAT","\u002Fdocs\u002Fadministration\u002Faccount\u002Fvat","docs\u002F05.administration\u002F02.account\u002F02.vat",{"id":678,"title":631,"body":679,"description":3961,"draft":120,"draftReason":3962,"extension":3963,"layout":3962,"meta":3964,"navigation":3965,"path":632,"platforms":3962,"rawbody":3966,"seo":3967,"stem":633,"__hash__":3968},"docs_th\u002Fdocs\u002F04.ai-and-api\u002F02.api\u002F05.platform-data.md",{"type":680,"value":681,"toc":3951},"minimark",[682,713,720,725,859,959,1153,1175,1198,1373,1513,1592,1596,1700,1731,1760,1840,1844,1950,2059,2196,2441,2506,2639,2724,2807,2887,2966,2970,3062,3155,3319,3340,3359,3516,3639,3643,3668,3705,3781,3871],[683,684,685,686,690,691,694,695,699,700,703,704,708,709,712],"p",{},"Endpoint เหล่านี้เปิดเผยข้อมูลดิบที่ปรับให้เป็นมาตรฐานในแต่ละแพลตฟอร์ม — แถวข้อมูลเบื้องหลังการวิเคราะห์ ",[687,688,689],"strong",{},"RT"," (real-time) คือ snapshot ล่าสุด ส่วน ",[687,692,693],{},"Fact"," คือข้อมูลย้อนหลังแบบรายวัน ดู ",[696,697,126],"a",{"href":698},"\u002Fth\u002Fdocs\u002Fai-and-api\u002Fapi\u002Fgetting-started"," และ ",[696,701,702],{"href":698},"หลักการทั่วไป"," ทุก endpoint เป็นแบบอ่านอย่างเดียว (พารามิเตอร์ ",[705,706,707],"code",{},"datadate"," เป็นจำนวนเต็มในรูปแบบ ",[705,710,711],{},"YYYYMMDD",")",[714,715,717],"callout",{"icon":716},"i-lucide-mouse-pointer-click",[683,718,719],{},"คลิกที่ endpoint ใดก็ได้เพื่อขยายดูพารามิเตอร์, request body และ response (รายละเอียดเชิงเทคนิคเป็นภาษาอังกฤษ)",[721,722,724],"h2",{"id":723},"shopee-products-raw","Shopee — products (raw)",[726,727,731,734,739,745,845],"api-endpoint",{"method":728,"path":729,"summary":730},"POST","\u002Fapi\u002Fshopee\u002Fproduct\u002Finternal\u002Ffact\u002Ffetch-full-product","Historical Shopee products",[683,732,733],{},"Retrieves historical (Fact) snapshots of Shopee products over a date range, searched by shop, region, and optional item id. Use for time-series analysis and historical comparisons.",[683,735,736],{},[687,737,738],{},"Request body",[683,740,741,742],{},"Array of ",[705,743,744],{},"FactShopeeProductSearchRequest",[746,747,748,767],"table",{},[749,750,751],"thead",{},[752,753,754,758,761,764],"tr",{},[755,756,757],"th",{},"Field",[755,759,760],{},"Type",[755,762,763],{},"Required",[755,765,766],{},"Description",[768,769,770,787,802,817,831],"tbody",{},[752,771,772,778,781,784],{},[773,774,775],"td",{},[705,776,777],{},"shopId",[773,779,780],{},"integer",[773,782,783],{},"yes",[773,785,786],{},"Shop ID",[752,788,789,794,797,799],{},[773,790,791],{},[705,792,793],{},"region",[773,795,796],{},"string",[773,798,783],{},[773,800,801],{},"Region code",[752,803,804,809,811,814],{},[773,805,806],{},[705,807,808],{},"itemId",[773,810,780],{},[773,812,813],{},"no",[773,815,816],{},"Item ID filter",[752,818,819,824,826,828],{},[773,820,821],{},[705,822,823],{},"datadateStart",[773,825,780],{},[773,827,783],{},[773,829,830],{},"Start date (YYYYMMDD)",[752,832,833,838,840,842],{},[773,834,835],{},[705,836,837],{},"datadateEnd",[773,839,780],{},[773,841,783],{},[773,843,844],{},"End date (YYYYMMDD)",[683,846,847,850,851,854,855],{},[687,848,849],{},"Response"," — Array of ",[705,852,853],{},"FactShopeeProductFull"," — historical product snapshots: name, SKU, category, brand, images, engagement (views\u002Flikes\u002Frating\u002Fsales), stock (in-transit, sellable, reserved, available), pricing, and tax fields. ",[856,857,858],"em",{},"…and more — see the full schema in the OpenAPI spec.",[726,860,863,866,870,875,945],{"method":728,"path":861,"summary":862},"\u002Fapi\u002Fshopee\u002Fproduct\u002Finternal\u002Frt\u002Ffetch-full-product","Current Shopee products",[683,864,865],{},"Retrieves the latest (RT) snapshot of Shopee products for a shop\u002Fregion, with optional item-id and status filters.",[683,867,868],{},[687,869,738],{},[683,871,741,872],{},[705,873,874],{},"RtShopeeProductSearchRequest",[746,876,877,889],{},[749,878,879],{},[752,880,881,883,885,887],{},[755,882,757],{},[755,884,760],{},[755,886,763],{},[755,888,766],{},[768,890,891,903,915,927],{},[752,892,893,897,899,901],{},[773,894,895],{},[705,896,777],{},[773,898,780],{},[773,900,783],{},[773,902,786],{},[752,904,905,909,911,913],{},[773,906,907],{},[705,908,793],{},[773,910,796],{},[773,912,783],{},[773,914,801],{},[752,916,917,921,923,925],{},[773,918,919],{},[705,920,808],{},[773,922,780],{},[773,924,813],{},[773,926,816],{},[752,928,929,934,937,939],{},[773,930,931],{},[705,932,933],{},"itemStatuses",[773,935,936],{},"array",[773,938,813],{},[773,940,941,942,712],{},"Status filter (e.g. ",[705,943,944],{},"[\"NORMAL\",\"UNLIST\"]",[683,946,947,850,949,952,953,956,957],{},[687,948,849],{},[705,950,951],{},"RtShopeeProductFull"," — current product records (name, SKU, category, brand, images, engagement, stock, pricing, fulfillment flag, promotion id, tax fields) with a nested ",[705,954,955],{},"models"," array of variant data. ",[856,958,858],{},[726,960,963,966,970,975,1142],{"method":728,"path":961,"summary":962},"\u002Fapi\u002Fshopee\u002Fproduct\u002Finternal\u002Frt\u002Ffetch-full-product\u002Fpaginated","Current Shopee products (cursor paginated)",[683,964,965],{},"Cursor-paginated RT products with advanced filtering (product\u002FSKU search, numeric filters on sale\u002Fmargin\u002FCOGS\u002Funits) and custom sort.",[683,967,968],{},[687,969,738],{},[683,971,972],{},[705,973,974],{},"RtShopeeProductPaginatedFetchRequest",[746,976,977,989],{},[749,978,979],{},[752,980,981,983,985,987],{},[755,982,757],{},[755,984,760],{},[755,986,763],{},[755,988,766],{},[768,990,991,1005,1017,1029,1043,1057,1071,1085,1099,1113,1128],{},[752,992,993,998,1000,1002],{},[773,994,995],{},[705,996,997],{},"userId",[773,999,780],{},[773,1001,783],{},[773,1003,1004],{},"Must match the authenticated user",[752,1006,1007,1011,1013,1015],{},[773,1008,1009],{},[705,1010,777],{},[773,1012,780],{},[773,1014,783],{},[773,1016,786],{},[752,1018,1019,1023,1025,1027],{},[773,1020,1021],{},[705,1022,793],{},[773,1024,796],{},[773,1026,783],{},[773,1028,801],{},[752,1030,1031,1036,1038,1040],{},[773,1032,1033],{},[705,1034,1035],{},"productSearch",[773,1037,796],{},[773,1039,813],{},[773,1041,1042],{},"Product name search",[752,1044,1045,1050,1052,1054],{},[773,1046,1047],{},[705,1048,1049],{},"itemSkuSearch",[773,1051,796],{},[773,1053,813],{},[773,1055,1056],{},"Item SKU search",[752,1058,1059,1064,1066,1068],{},[773,1060,1061],{},[705,1062,1063],{},"filters",[773,1065,936],{},[773,1067,813],{},[773,1069,1070],{},"Numeric field filters (gt, gte, lt, lte, between…)",[752,1072,1073,1078,1080,1082],{},[773,1074,1075],{},[705,1076,1077],{},"sortBy",[773,1079,796],{},[773,1081,813],{},[773,1083,1084],{},"Sort field (sale, views, likes, rating…)",[752,1086,1087,1092,1094,1096],{},[773,1088,1089],{},[705,1090,1091],{},"sortDirection",[773,1093,796],{},[773,1095,813],{},[773,1097,1098],{},"asc or desc",[752,1100,1101,1106,1108,1110],{},[773,1102,1103],{},[705,1104,1105],{},"cursorRtProductId",[773,1107,780],{},[773,1109,813],{},[773,1111,1112],{},"Pagination cursor",[752,1114,1115,1120,1123,1125],{},[773,1116,1117],{},[705,1118,1119],{},"cursorSortValue",[773,1121,1122],{},"number",[773,1124,813],{},[773,1126,1127],{},"Last-seen sort value",[752,1129,1130,1135,1137,1139],{},[773,1131,1132],{},[705,1133,1134],{},"pageSize",[773,1136,780],{},[773,1138,813],{},[773,1140,1141],{},"Rows per page (default 200)",[683,1143,1144,1146,1147,1150,1151],{},[687,1145,849],{}," — ",[705,1148,1149],{},"CursorPaginatedResult\u003CRtShopeeProductCursor, RtShopeeProductFull>"," — product rows (with nested models) plus the next cursor. ",[856,1152,858],{},[726,1154,1157,1160,1167],{"method":728,"path":1155,"summary":1156},"\u002Fapi\u002Fshopee\u002Fproduct\u002Finternal\u002Ffetch-product-dashboard\u002Fpaginated","Shopee product dashboard (cursor)",[683,1158,1159],{},"Cursor-paginated RT product dashboard rows for the products UI, with search, filtering, and sort. Returns margin percentiles and variant counts per product.",[683,1161,1162,1146,1164,1166],{},[687,1163,738],{},[705,1165,974],{}," (same fields as the RT paginated endpoint above).",[683,1168,1169,1146,1171,1174],{},[687,1170,849],{},[705,1172,1173],{},"CursorPaginatedResult\u003CRtShopeeProductCursor, ShopeeProductDashboard>"," — dashboard rows (name, SKU, status, images, margin, sale, 180-day units, COGS, variant count, margin percentiles min\u002FQ1\u002Fmedian\u002FQ3\u002Fmax\u002Fmean).",[726,1176,1179,1182,1190],{"method":728,"path":1177,"summary":1178},"\u002Fapi\u002Fshopee\u002Fproduct\u002Finternal\u002Ffetch-product-dashboard\u002Fmargin-stats","Margin stats over product set",[683,1180,1181],{},"Computes aggregated margin statistics (min, max, median, Q1, Q3) over the filtered product-dashboard set. No pagination — a single stats response.",[683,1183,1184,1146,1186,1189],{},[687,1185,738],{},[705,1187,1188],{},"RtShopeeProductPaginatedV2FetchRequest"," (unified column filters; pagination fields ignored).",[683,1191,1192,1146,1194,1197],{},[687,1193,849],{},[705,1195,1196],{},"ProductMarginStats"," — margin percentiles: minimum, Q1, median, Q3, maximum.",[726,1199,1202,1205,1209,1213,1366],{"method":728,"path":1200,"summary":1201},"\u002Fapi\u002Fshopee\u002Fproduct\u002Finternal\u002Ffetch-product-dashboard\u002Fpaginated\u002Fv2","Shopee product dashboard v2 (unified filters)",[683,1203,1204],{},"Cursor-paginated dashboard with the unified column-filter syntax (name, SKU, COGS, sale, 180-day units, margin) and custom sort.",[683,1206,1207],{},[687,1208,738],{},[683,1210,1211],{},[705,1212,1188],{},[746,1214,1215,1227],{},[749,1216,1217],{},[752,1218,1219,1221,1223,1225],{},[755,1220,757],{},[755,1222,760],{},[755,1224,763],{},[755,1226,766],{},[768,1228,1229,1242,1254,1266,1278,1290,1303,1316,1328,1340,1353],{},[752,1230,1231,1235,1237,1239],{},[773,1232,1233],{},[705,1234,997],{},[773,1236,780],{},[773,1238,783],{},[773,1240,1241],{},"Authenticated user id",[752,1243,1244,1248,1250,1252],{},[773,1245,1246],{},[705,1247,777],{},[773,1249,780],{},[773,1251,783],{},[773,1253,786],{},[752,1255,1256,1260,1262,1264],{},[773,1257,1258],{},[705,1259,793],{},[773,1261,796],{},[773,1263,783],{},[773,1265,801],{},[752,1267,1268,1272,1274,1276],{},[773,1269,1270],{},[705,1271,1035],{},[773,1273,796],{},[773,1275,813],{},[773,1277,1042],{},[752,1279,1280,1284,1286,1288],{},[773,1281,1282],{},[705,1283,1049],{},[773,1285,796],{},[773,1287,813],{},[773,1289,1056],{},[752,1291,1292,1296,1298,1300],{},[773,1293,1294],{},[705,1295,1063],{},[773,1297,936],{},[773,1299,813],{},[773,1301,1302],{},"Unified column filters (name\u002Fsku\u002Fnumber\u002Fmargin operators)",[752,1304,1305,1309,1311,1313],{},[773,1306,1307],{},[705,1308,1077],{},[773,1310,796],{},[773,1312,813],{},[773,1314,1315],{},"Sort field",[752,1317,1318,1322,1324,1326],{},[773,1319,1320],{},[705,1321,1091],{},[773,1323,796],{},[773,1325,813],{},[773,1327,1098],{},[752,1329,1330,1334,1336,1338],{},[773,1331,1332],{},[705,1333,1105],{},[773,1335,780],{},[773,1337,813],{},[773,1339,1112],{},[752,1341,1342,1346,1348,1350],{},[773,1343,1344],{},[705,1345,1119],{},[773,1347,1122],{},[773,1349,813],{},[773,1351,1352],{},"Sort value cursor",[752,1354,1355,1359,1361,1363],{},[773,1356,1357],{},[705,1358,1134],{},[773,1360,780],{},[773,1362,813],{},[773,1364,1365],{},"Rows per page",[683,1367,1368,1146,1370,1372],{},[687,1369,849],{},[705,1371,1173],{}," — dashboard rows with margin percentiles.",[726,1374,1377,1380,1384,1389,1505],{"method":728,"path":1375,"summary":1376},"\u002Fapi\u002Fshopee\u002Fproduct\u002Finternal\u002Ffetch-product-dashboard\u002Fpaginated\u002Fv3","Shopee product dashboard (offset)",[683,1378,1379],{},"Offset-paginated dashboard (page\u002FpageSize) with unified column filters and custom sort.",[683,1381,1382],{},[687,1383,738],{},[683,1385,1386],{},[705,1387,1388],{},"RtShopeeProductPaginatedV3FetchRequest",[746,1390,1391,1403],{},[749,1392,1393],{},[752,1394,1395,1397,1399,1401],{},[755,1396,757],{},[755,1398,760],{},[755,1400,763],{},[755,1402,766],{},[768,1404,1405,1417,1429,1441,1454,1467,1479,1493],{},[752,1406,1407,1411,1413,1415],{},[773,1408,1409],{},[705,1410,997],{},[773,1412,780],{},[773,1414,783],{},[773,1416,1241],{},[752,1418,1419,1423,1425,1427],{},[773,1420,1421],{},[705,1422,777],{},[773,1424,780],{},[773,1426,783],{},[773,1428,786],{},[752,1430,1431,1435,1437,1439],{},[773,1432,1433],{},[705,1434,793],{},[773,1436,796],{},[773,1438,783],{},[773,1440,801],{},[752,1442,1443,1447,1449,1451],{},[773,1444,1445],{},[705,1446,1063],{},[773,1448,936],{},[773,1450,813],{},[773,1452,1453],{},"Unified column filters",[752,1455,1456,1460,1462,1464],{},[773,1457,1458],{},[705,1459,1077],{},[773,1461,796],{},[773,1463,813],{},[773,1465,1466],{},"Sort field (sale, margin, cogs, units_sold_180d)",[752,1468,1469,1473,1475,1477],{},[773,1470,1471],{},[705,1472,1091],{},[773,1474,796],{},[773,1476,813],{},[773,1478,1098],{},[752,1480,1481,1486,1488,1490],{},[773,1482,1483],{},[705,1484,1485],{},"page",[773,1487,780],{},[773,1489,813],{},[773,1491,1492],{},"0-based page (default 0)",[752,1494,1495,1499,1501,1503],{},[773,1496,1497],{},[705,1498,1134],{},[773,1500,780],{},[773,1502,813],{},[773,1504,1141],{},[683,1506,1507,1146,1509,1512],{},[687,1508,849],{},[705,1510,1511],{},"OffsetPaginatedResult\u003CShopeeProductDashboard>"," — page metadata (page, pageSize, totalItems, totalPages) plus dashboard rows.",[726,1514,1517,1520,1524,1529,1584],{"method":728,"path":1515,"summary":1516},"\u002Fapi\u002Fshopee\u002Fproduct\u002Finternal\u002Fproduct-lifecycle\u002Ffetch","Product lifecycle",[683,1518,1519],{},"Analyzes one item's lifecycle across all its models, aggregated to a time resolution (DAY\u002FWEEK\u002FMONTH) — sales trends, peak periods, and per-model breakdown.",[683,1521,1522],{},[687,1523,738],{},[683,1525,1526],{},[705,1527,1528],{},"ShopeeProductLifecycleRequest",[746,1530,1531,1543],{},[749,1532,1533],{},[752,1534,1535,1537,1539,1541],{},[755,1536,757],{},[755,1538,760],{},[755,1540,763],{},[755,1542,766],{},[768,1544,1545,1557,1570],{},[752,1546,1547,1551,1553,1555],{},[773,1548,1549],{},[705,1550,777],{},[773,1552,780],{},[773,1554,783],{},[773,1556,786],{},[752,1558,1559,1563,1565,1567],{},[773,1560,1561],{},[705,1562,808],{},[773,1564,780],{},[773,1566,783],{},[773,1568,1569],{},"Item ID",[752,1571,1572,1577,1579,1581],{},[773,1573,1574],{},[705,1575,1576],{},"resolution",[773,1578,796],{},[773,1580,783],{},[773,1582,1583],{},"Time resolution: DAY, WEEK, or MONTH",[683,1585,1586,1146,1588,1591],{},[687,1587,849],{},[705,1589,1590],{},"ShopeeProductLifecycleData"," — aggregate lifecycle statistics and per-model trend data at the requested resolution.",[721,1593,1595],{"id":1594},"shopee-orders-raw","Shopee — orders (raw)",[726,1597,1600,1603,1607,1612,1690],{"method":728,"path":1598,"summary":1599},"\u002Fapi\u002Fshopee\u002Forder\u002Finternal\u002Ffact\u002Forder-full\u002Ffetch","Historical Shopee orders",[683,1601,1602],{},"Retrieves historical (Fact) Shopee order snapshots over a date range, searched by shop, region, and optional order SN.",[683,1604,1605],{},[687,1606,738],{},[683,1608,741,1609],{},[705,1610,1611],{},"FactShopeeOrderSearchRequest",[746,1613,1614,1626],{},[749,1615,1616],{},[752,1617,1618,1620,1622,1624],{},[755,1619,757],{},[755,1621,760],{},[755,1623,763],{},[755,1625,766],{},[768,1627,1628,1640,1652,1666,1678],{},[752,1629,1630,1634,1636,1638],{},[773,1631,1632],{},[705,1633,777],{},[773,1635,780],{},[773,1637,783],{},[773,1639,786],{},[752,1641,1642,1646,1648,1650],{},[773,1643,1644],{},[705,1645,793],{},[773,1647,796],{},[773,1649,783],{},[773,1651,801],{},[752,1653,1654,1659,1661,1663],{},[773,1655,1656],{},[705,1657,1658],{},"orderSn",[773,1660,796],{},[773,1662,813],{},[773,1664,1665],{},"Order SN filter",[752,1667,1668,1672,1674,1676],{},[773,1669,1670],{},[705,1671,823],{},[773,1673,780],{},[773,1675,783],{},[773,1677,830],{},[752,1679,1680,1684,1686,1688],{},[773,1681,1682],{},[705,1683,837],{},[773,1685,780],{},[773,1687,783],{},[773,1689,844],{},[683,1691,1692,850,1694,1697,1698],{},[687,1693,849],{},[705,1695,1696],{},"FactShopeeOrderFull"," — order snapshots (order SN, status, currency, buyer, total amount, shipping, fulfillment, payment method, COD flag, timestamps, and shipping\u002Fhandling\u002Ftax details). ",[856,1699,858],{},[726,1701,1704,1707,1724],{"method":728,"path":1702,"summary":1703},"\u002Fapi\u002Fshopee\u002Forder\u002Finternal\u002Frt\u002Forder-full\u002Fcount","Count current Shopee orders",[683,1705,1706],{},"Counts RT orders matching the criteria (shop\u002Fregion\u002Foptional order SN).",[683,1708,1709,850,1711,1714,1715,1717,1718,1720,1721,1723],{},[687,1710,738],{},[705,1712,1713],{},"RtShopeeOrderSearchRequest"," (",[705,1716,777],{},", ",[705,1719,793],{}," required; ",[705,1722,1658],{}," optional).",[683,1725,1726,1146,1728,1730],{},[687,1727,849],{},[705,1729,780],{}," — total count of matching RT orders.",[726,1732,1735,1738,1750],{"method":728,"path":1733,"summary":1734},"\u002Fapi\u002Fshopee\u002Forder\u002Finternal\u002Frt\u002Forder-full\u002Ffetch","Current Shopee orders",[683,1736,1737],{},"Retrieves the latest (RT) Shopee order snapshots for a shop\u002Fregion, with optional order-SN filter.",[683,1739,1740,850,1742,1714,1744,1717,1746,1720,1748,1723],{},[687,1741,738],{},[705,1743,1713],{},[705,1745,777],{},[705,1747,793],{},[705,1749,1658],{},[683,1751,1752,850,1754,1757,1758],{},[687,1753,849],{},[705,1755,1756],{},"RtShopeeOrderFull"," — current order records (order SN, status, buyer, amounts, shipping, payment, timestamps, fee\u002Ftax fields). ",[856,1759,858],{},[726,1761,1764,1767,1771,1776,1832],{"method":728,"path":1762,"summary":1763},"\u002Fapi\u002Fshopee\u002Forder\u002Finternal\u002Frt\u002Forder-full\u002Ffetch-paginated","Current Shopee orders (cursor paginated)",[683,1765,1766],{},"Cursor-paginated RT orders; supports multiple shop\u002Fregion search criteria at once.",[683,1768,1769],{},[687,1770,738],{},[683,1772,1773],{},[705,1774,1775],{},"RtShopeeOrderPaginatedFetchRequest",[746,1777,1778,1790],{},[749,1779,1780],{},[752,1781,1782,1784,1786,1788],{},[755,1783,757],{},[755,1785,760],{},[755,1787,763],{},[755,1789,766],{},[768,1791,1792,1806,1820],{},[752,1793,1794,1799,1801,1803],{},[773,1795,1796],{},[705,1797,1798],{},"searches",[773,1800,936],{},[773,1802,783],{},[773,1804,1805],{},"Array of RtShopeeOrderSearchRequest (shop, region, optional order SN)",[752,1807,1808,1813,1815,1817],{},[773,1809,1810],{},[705,1811,1812],{},"cursor",[773,1814,780],{},[773,1816,813],{},[773,1818,1819],{},"Pagination cursor (rt_order_id)",[752,1821,1822,1826,1828,1830],{},[773,1823,1824],{},[705,1825,1134],{},[773,1827,780],{},[773,1829,813],{},[773,1831,1141],{},[683,1833,1834,1146,1836,1839],{},[687,1835,849],{},[705,1837,1838],{},"CursorPaginatedResult\u003CLong, RtShopeeOrderFull>"," — current order rows plus the next cursor.",[721,1841,1843],{"id":1842},"shopee-ads-raw","Shopee — ads (raw)",[726,1845,1848,1851,1855,1860,1940],{"method":728,"path":1846,"summary":1847},"\u002Fapi\u002Fshopee\u002Fads\u002Finternal\u002Ffact\u002Fad-campaign-full\u002Ffetch","Historical Shopee ad campaigns",[683,1849,1850],{},"Retrieves historical (Fact) Shopee ad-campaign snapshots over a date range, with optional campaign id \u002F shop \u002F region filters.",[683,1852,1853],{},[687,1854,738],{},[683,1856,741,1857],{},[705,1858,1859],{},"FactShopeeAdCampaignSearchRequest",[746,1861,1862,1874],{},[749,1863,1864],{},[752,1865,1866,1868,1870,1872],{},[755,1867,757],{},[755,1869,760],{},[755,1871,763],{},[755,1873,766],{},[768,1875,1876,1890,1903,1916,1928],{},[752,1877,1878,1883,1885,1887],{},[773,1879,1880],{},[705,1881,1882],{},"campaignId",[773,1884,780],{},[773,1886,813],{},[773,1888,1889],{},"Campaign ID filter",[752,1891,1892,1896,1898,1900],{},[773,1893,1894],{},[705,1895,777],{},[773,1897,780],{},[773,1899,813],{},[773,1901,1902],{},"Shop ID filter",[752,1904,1905,1909,1911,1913],{},[773,1906,1907],{},[705,1908,793],{},[773,1910,796],{},[773,1912,813],{},[773,1914,1915],{},"Region code filter",[752,1917,1918,1922,1924,1926],{},[773,1919,1920],{},[705,1921,823],{},[773,1923,780],{},[773,1925,783],{},[773,1927,830],{},[752,1929,1930,1934,1936,1938],{},[773,1931,1932],{},[705,1933,837],{},[773,1935,780],{},[773,1937,783],{},[773,1939,844],{},[683,1941,1942,850,1944,1947,1948],{},[687,1943,849],{},[705,1945,1946],{},"FactShopeeAdCampaignFull"," — campaign records (id, name, ad type, placement, active flag, datadate\u002Fdatahour, metrics: spend\u002Fimpressions\u002Fclicks\u002FGMV\u002Forders\u002FROAS, plus settings). ",[856,1949,858],{},[726,1951,1954,1957,1961,1966,2049],{"method":728,"path":1952,"summary":1953},"\u002Fapi\u002Fshopee\u002Fads\u002Finternal\u002Ffact\u002Fad-campaign-full\u002Ffetch-paginated","Historical ad campaigns (cursor paginated)",[683,1955,1956],{},"Cursor-paginated Fact ad campaigns; supports multiple search criteria.",[683,1958,1959],{},[687,1960,738],{},[683,1962,1963],{},[705,1964,1965],{},"FactShopeeAdCampaignPaginatedFetchRequest",[746,1967,1968,1980],{},[749,1969,1970],{},[752,1971,1972,1974,1976,1978],{},[755,1973,757],{},[755,1975,760],{},[755,1977,763],{},[755,1979,766],{},[768,1981,1982,1995,2009,2023,2037],{},[752,1983,1984,1988,1990,1992],{},[773,1985,1986],{},[705,1987,1798],{},[773,1989,936],{},[773,1991,783],{},[773,1993,1994],{},"Array of FactShopeeAdCampaignSearchRequest",[752,1996,1997,2002,2004,2006],{},[773,1998,1999],{},[705,2000,2001],{},"cursorDatadate",[773,2003,780],{},[773,2005,813],{},[773,2007,2008],{},"Cursor datadate (YYYYMMDD)",[752,2010,2011,2016,2018,2020],{},[773,2012,2013],{},[705,2014,2015],{},"cursorDatahour",[773,2017,780],{},[773,2019,813],{},[773,2021,2022],{},"Cursor datahour (0–23)",[752,2024,2025,2030,2032,2034],{},[773,2026,2027],{},[705,2028,2029],{},"cursorCampaignId",[773,2031,780],{},[773,2033,813],{},[773,2035,2036],{},"Cursor campaign id",[752,2038,2039,2043,2045,2047],{},[773,2040,2041],{},[705,2042,1134],{},[773,2044,780],{},[773,2046,813],{},[773,2048,1141],{},[683,2050,2051,1146,2053,2056,2057],{},[687,2052,849],{},[705,2054,2055],{},"CursorPaginatedResult\u003CFactShopeeAdCampaignCursor, FactShopeeAdCampaignFull>"," — campaign records plus the next cursor. ",[856,2058,858],{},[726,2060,2063,2066,2071,2112,2116,2122,2188],{"method":728,"path":2061,"summary":2062},"\u002Fapi\u002Fshopee\u002Fads\u002Finternal\u002Ffact\u002Fad-campaign-full\u002F{shopId}\u002F{region}\u002Ffetch-daily-grouped","Ad campaigns grouped by day",[683,2064,2065],{},"Fact ad campaigns grouped by campaign per date, with hourly sub-rows. Cursor-paginated.",[683,2067,2068],{},[687,2069,2070],{},"Path parameters",[746,2072,2073,2086],{},[749,2074,2075],{},[752,2076,2077,2080,2082,2084],{},[755,2078,2079],{},"Name",[755,2081,760],{},[755,2083,763],{},[755,2085,766],{},[768,2087,2088,2100],{},[752,2089,2090,2094,2096,2098],{},[773,2091,2092],{},[705,2093,777],{},[773,2095,780],{},[773,2097,783],{},[773,2099,786],{},[752,2101,2102,2106,2108,2110],{},[773,2103,2104],{},[705,2105,793],{},[773,2107,796],{},[773,2109,783],{},[773,2111,801],{},[683,2113,2114],{},[687,2115,738],{},[683,2117,2118,2121],{},[705,2119,2120],{},"FactShopeeAdCampaignGroupedFetchRequest"," (optional)",[746,2123,2124,2136],{},[749,2125,2126],{},[752,2127,2128,2130,2132,2134],{},[755,2129,757],{},[755,2131,760],{},[755,2133,763],{},[755,2135,766],{},[768,2137,2138,2151,2163,2175],{},[752,2139,2140,2144,2146,2148],{},[773,2141,2142],{},[705,2143,1798],{},[773,2145,936],{},[773,2147,813],{},[773,2149,2150],{},"Filter by campaign id and\u002For date range",[752,2152,2153,2157,2159,2161],{},[773,2154,2155],{},[705,2156,2001],{},[773,2158,780],{},[773,2160,813],{},[773,2162,2008],{},[752,2164,2165,2169,2171,2173],{},[773,2166,2167],{},[705,2168,2029],{},[773,2170,780],{},[773,2172,813],{},[773,2174,2036],{},[752,2176,2177,2181,2183,2185],{},[773,2178,2179],{},[705,2180,1134],{},[773,2182,780],{},[773,2184,813],{},[773,2186,2187],{},"Max grouped rows (default 50)",[683,2189,2190,1146,2192,2195],{},[687,2191,849],{},[705,2193,2194],{},"CursorPaginatedResult\u003CFactShopeeAdCampaignDailyCursor, FactShopeeAdCampaignDailyGrouped>"," — grouped campaign-per-date records with hourly sub-rows.",[726,2197,2200,2203,2207,2247,2251,2256,2431],{"method":728,"path":2198,"summary":2199},"\u002Fapi\u002Fshopee\u002Fads\u002Finternal\u002Ffact\u002Fad-campaign-full\u002F{shopId}\u002F{region}\u002Ffetch-active-campaigns-dashboard","Active campaigns (summary rows)",[683,2201,2202],{},"Active (ongoing) campaigns with the latest day's aggregated metrics, with optional name\u002Fid\u002Fad-type filters and custom sort. Cursor-paginated.",[683,2204,2205],{},[687,2206,2070],{},[746,2208,2209,2221],{},[749,2210,2211],{},[752,2212,2213,2215,2217,2219],{},[755,2214,2079],{},[755,2216,760],{},[755,2218,763],{},[755,2220,766],{},[768,2222,2223,2235],{},[752,2224,2225,2229,2231,2233],{},[773,2226,2227],{},[705,2228,777],{},[773,2230,780],{},[773,2232,783],{},[773,2234,786],{},[752,2236,2237,2241,2243,2245],{},[773,2238,2239],{},[705,2240,793],{},[773,2242,796],{},[773,2244,783],{},[773,2246,801],{},[683,2248,2249],{},[687,2250,738],{},[683,2252,2253,2121],{},[705,2254,2255],{},"FactShopeeAdCampaignActiveSummaryFetchRequest",[746,2257,2258,2270],{},[749,2259,2260],{},[752,2261,2262,2264,2266,2268],{},[755,2263,757],{},[755,2265,760],{},[755,2267,763],{},[755,2269,766],{},[768,2271,2272,2285,2300,2314,2328,2341,2355,2368,2380,2393,2405,2418],{},[752,2273,2274,2278,2280,2282],{},[773,2275,2276],{},[705,2277,707],{},[773,2279,780],{},[773,2281,813],{},[773,2283,2284],{},"Filter to an exact datadate (YYYYMMDD)",[752,2286,2287,2292,2295,2297],{},[773,2288,2289],{},[705,2290,2291],{},"activeOnly",[773,2293,2294],{},"boolean",[773,2296,813],{},[773,2298,2299],{},"Only active campaigns (null = all)",[752,2301,2302,2307,2309,2311],{},[773,2303,2304],{},[705,2305,2306],{},"searchCampaign",[773,2308,796],{},[773,2310,813],{},[773,2312,2313],{},"Fuzzy search by campaign\u002Fad name",[752,2315,2316,2321,2323,2325],{},[773,2317,2318],{},[705,2319,2320],{},"searchCampaignId",[773,2322,780],{},[773,2324,813],{},[773,2326,2327],{},"Search by campaign id",[752,2329,2330,2334,2336,2338],{},[773,2331,2332],{},[705,2333,1063],{},[773,2335,936],{},[773,2337,813],{},[773,2339,2340],{},"Numeric filters on campaign metrics",[752,2342,2343,2348,2350,2352],{},[773,2344,2345],{},[705,2346,2347],{},"adTypeFilter",[773,2349,936],{},[773,2351,813],{},[773,2353,2354],{},"Filter by ad type (auto, manual)",[752,2356,2357,2361,2363,2365],{},[773,2358,2359],{},[705,2360,1077],{},[773,2362,796],{},[773,2364,813],{},[773,2366,2367],{},"Sort field (expense, broadRoi, datadate…)",[752,2369,2370,2374,2376,2378],{},[773,2371,2372],{},[705,2373,1091],{},[773,2375,796],{},[773,2377,813],{},[773,2379,1098],{},[752,2381,2382,2386,2388,2390],{},[773,2383,2384],{},[705,2385,2001],{},[773,2387,780],{},[773,2389,813],{},[773,2391,2392],{},"Cursor datadate",[752,2394,2395,2399,2401,2403],{},[773,2396,2397],{},[705,2398,2029],{},[773,2400,780],{},[773,2402,813],{},[773,2404,2036],{},[752,2406,2407,2411,2413,2415],{},[773,2408,2409],{},[705,2410,1119],{},[773,2412,1122],{},[773,2414,813],{},[773,2416,2417],{},"Cursor sort value",[752,2419,2420,2424,2426,2428],{},[773,2421,2422],{},[705,2423,1134],{},[773,2425,780],{},[773,2427,813],{},[773,2429,2430],{},"Max campaigns (default 50)",[683,2432,2433,1146,2435,2438,2439],{},[687,2434,849],{},[705,2436,2437],{},"CursorPaginatedResult\u003CFactShopeeAdCampaignDailyCursor, FactShopeeAdCampaignSummary>"," — active campaigns with latest-day metrics. ",[856,2440,858],{},[726,2442,2445,2448,2452,2492,2499],{"method":728,"path":2443,"summary":2444},"\u002Fapi\u002Fshopee\u002Fads\u002Finternal\u002Ffact\u002Fad-campaign-full\u002F{shopId}\u002F{region}\u002Ffetch-active-campaigns","Active campaigns (grouped rows)",[683,2446,2447],{},"Same active-campaign selection as the dashboard variant, but returned as grouped campaign-per-date rows with hourly sub-rows.",[683,2449,2450],{},[687,2451,2070],{},[746,2453,2454,2466],{},[749,2455,2456],{},[752,2457,2458,2460,2462,2464],{},[755,2459,2079],{},[755,2461,760],{},[755,2463,763],{},[755,2465,766],{},[768,2467,2468,2480],{},[752,2469,2470,2474,2476,2478],{},[773,2471,2472],{},[705,2473,777],{},[773,2475,780],{},[773,2477,783],{},[773,2479,786],{},[752,2481,2482,2486,2488,2490],{},[773,2483,2484],{},[705,2485,793],{},[773,2487,796],{},[773,2489,783],{},[773,2491,801],{},[683,2493,2494,1146,2496,2498],{},[687,2495,738],{},[705,2497,2255],{}," (optional; same fields as above).",[683,2500,2501,1146,2503,2505],{},[687,2502,849],{},[705,2504,2194],{}," — grouped daily campaign records with hourly sub-rows.",[726,2507,2510,2513,2517,2570,2574,2579,2632],{"method":728,"path":2508,"summary":2509},"\u002Fapi\u002Fshopee\u002Fads\u002Finternal\u002Ffact\u002Fad-campaign-full\u002F{shopId}\u002F{region}\u002Fcampaigns\u002F{campaignId}\u002Ffetch-daily-summary","Daily summary for one campaign",[683,2511,2512],{},"Daily summary rows for a single campaign. Cursor-paginated.",[683,2514,2515],{},[687,2516,2070],{},[746,2518,2519,2531],{},[749,2520,2521],{},[752,2522,2523,2525,2527,2529],{},[755,2524,2079],{},[755,2526,760],{},[755,2528,763],{},[755,2530,766],{},[768,2532,2533,2545,2557],{},[752,2534,2535,2539,2541,2543],{},[773,2536,2537],{},[705,2538,777],{},[773,2540,780],{},[773,2542,783],{},[773,2544,786],{},[752,2546,2547,2551,2553,2555],{},[773,2548,2549],{},[705,2550,793],{},[773,2552,796],{},[773,2554,783],{},[773,2556,801],{},[752,2558,2559,2563,2565,2567],{},[773,2560,2561],{},[705,2562,1882],{},[773,2564,780],{},[773,2566,783],{},[773,2568,2569],{},"Campaign ID",[683,2571,2572],{},[687,2573,738],{},[683,2575,2576,2121],{},[705,2577,2578],{},"FactShopeeAdCampaignDailySummaryFetchRequest",[746,2580,2581,2593],{},[749,2582,2583],{},[752,2584,2585,2587,2589,2591],{},[755,2586,757],{},[755,2588,760],{},[755,2590,763],{},[755,2592,766],{},[768,2594,2595,2607,2619],{},[752,2596,2597,2601,2603,2605],{},[773,2598,2599],{},[705,2600,2001],{},[773,2602,780],{},[773,2604,813],{},[773,2606,2008],{},[752,2608,2609,2613,2615,2617],{},[773,2610,2611],{},[705,2612,2029],{},[773,2614,780],{},[773,2616,813],{},[773,2618,2036],{},[752,2620,2621,2625,2627,2629],{},[773,2622,2623],{},[705,2624,1134],{},[773,2626,780],{},[773,2628,813],{},[773,2630,2631],{},"Max daily rows (default 50)",[683,2633,2634,1146,2636,2638],{},[687,2635,849],{},[705,2637,2194],{}," — daily records with hourly sub-rows and metrics.",[726,2640,2644,2647,2651,2716],{"method":2641,"path":2642,"summary":2643},"GET","\u002Fapi\u002Fshopee\u002Fads\u002Finternal\u002Ffact\u002Fad-campaign-full\u002F{shopId}\u002F{region}\u002Fcampaigns\u002F{campaignId}\u002Fdates\u002F{datadate}\u002Ffetch-hourly-detail","Hourly detail for a campaign\u002Fdate",[683,2645,2646],{},"Hourly performance data for a single campaign on a specific date.",[683,2648,2649],{},[687,2650,2070],{},[746,2652,2653,2665],{},[749,2654,2655],{},[752,2656,2657,2659,2661,2663],{},[755,2658,2079],{},[755,2660,760],{},[755,2662,763],{},[755,2664,766],{},[768,2666,2667,2679,2691,2703],{},[752,2668,2669,2673,2675,2677],{},[773,2670,2671],{},[705,2672,777],{},[773,2674,780],{},[773,2676,783],{},[773,2678,786],{},[752,2680,2681,2685,2687,2689],{},[773,2682,2683],{},[705,2684,793],{},[773,2686,796],{},[773,2688,783],{},[773,2690,801],{},[752,2692,2693,2697,2699,2701],{},[773,2694,2695],{},[705,2696,1882],{},[773,2698,780],{},[773,2700,783],{},[773,2702,2569],{},[752,2704,2705,2709,2711,2713],{},[773,2706,2707],{},[705,2708,707],{},[773,2710,780],{},[773,2712,783],{},[773,2714,2715],{},"Date (YYYYMMDD)",[683,2717,2718,850,2720,2723],{},[687,2719,849],{},[705,2721,2722],{},"FactShopeeAdCampaignHourlyEntry"," — hourly snapshots (datahour 0–23, spend, impressions, clicks, GMV, orders, ROAS).",[726,2725,2728,2731,2735,2787,2799],{"method":728,"path":2726,"summary":2727},"\u002Fapi\u002Fshopee\u002Fads\u002Finternal\u002Ffact\u002Fad-cancellation-dedup\u002F{shopId}\u002F{datadateStart}\u002F{datadateEnd}","Ad-cancellation dedup amounts",[683,2729,2730],{},"Dedup amounts for cancelled ads within a date range, optionally filtered to specific campaigns.",[683,2732,2733],{},[687,2734,2070],{},[746,2736,2737,2749],{},[749,2738,2739],{},[752,2740,2741,2743,2745,2747],{},[755,2742,2079],{},[755,2744,760],{},[755,2746,763],{},[755,2748,766],{},[768,2750,2751,2763,2775],{},[752,2752,2753,2757,2759,2761],{},[773,2754,2755],{},[705,2756,777],{},[773,2758,780],{},[773,2760,783],{},[773,2762,786],{},[752,2764,2765,2769,2771,2773],{},[773,2766,2767],{},[705,2768,823],{},[773,2770,780],{},[773,2772,783],{},[773,2774,830],{},[752,2776,2777,2781,2783,2785],{},[773,2778,2779],{},[705,2780,837],{},[773,2782,780],{},[773,2784,783],{},[773,2786,844],{},[683,2788,2789,1146,2791,2794,2795,2798],{},[687,2790,738],{},[705,2792,2793],{},"ShopeeAdCancellationDedupFetchRequest"," (optional) — ",[705,2796,2797],{},"campaignIds"," (null = all campaigns).",[683,2800,2801,1146,2803,2806],{},[687,2802,849],{},[705,2804,2805],{},"ShopeeAdCancellationDedupResponse"," — dedup amounts by campaign plus totals.",[726,2808,2811,2814,2818,2870,2879],{"method":728,"path":2809,"summary":2810},"\u002Fapi\u002Fshopee\u002Fads\u002Finternal\u002Ffact\u002Fad-total-cancel-dedup\u002F{shopId}\u002F{datadateStart}\u002F{datadateEnd}","Total cancel dedup (all cancels)",[683,2812,2813],{},"Total dedup amounts for all cancelled ads (no rebuy check) within a date range, optionally filtered to specific campaigns.",[683,2815,2816],{},[687,2817,2070],{},[746,2819,2820,2832],{},[749,2821,2822],{},[752,2823,2824,2826,2828,2830],{},[755,2825,2079],{},[755,2827,760],{},[755,2829,763],{},[755,2831,766],{},[768,2833,2834,2846,2858],{},[752,2835,2836,2840,2842,2844],{},[773,2837,2838],{},[705,2839,777],{},[773,2841,780],{},[773,2843,783],{},[773,2845,786],{},[752,2847,2848,2852,2854,2856],{},[773,2849,2850],{},[705,2851,823],{},[773,2853,780],{},[773,2855,783],{},[773,2857,830],{},[752,2859,2860,2864,2866,2868],{},[773,2861,2862],{},[705,2863,837],{},[773,2865,780],{},[773,2867,783],{},[773,2869,844],{},[683,2871,2872,1146,2874,2794,2876,2878],{},[687,2873,738],{},[705,2875,2793],{},[705,2877,2797],{},".",[683,2880,2881,1146,2883,2886],{},[687,2882,849],{},[705,2884,2885],{},"ShopeeAdTotalCancelDedupResponse"," — total cancel dedup amounts by campaign and aggregated totals.",[726,2888,2891,2898,2902,2956],{"method":2641,"path":2889,"summary":2890},"\u002Fapi\u002Fshopee\u002Fads\u002Finternal\u002Fanalytics-summary\u002F{shopId}\u002F{datadateFrom}\u002F{datadateTo}","Hourly-computed analytics summary",[683,2892,2893,2894,2897],{},"Precomputed hourly shop-analytics summary across a date range — product, ads, order, return, and engagement stats with a ",[705,2895,2896],{},"computedAt"," timestamp.",[683,2899,2900],{},[687,2901,2070],{},[746,2903,2904,2916],{},[749,2905,2906],{},[752,2907,2908,2910,2912,2914],{},[755,2909,2079],{},[755,2911,760],{},[755,2913,763],{},[755,2915,766],{},[768,2917,2918,2930,2943],{},[752,2919,2920,2924,2926,2928],{},[773,2921,2922],{},[705,2923,777],{},[773,2925,780],{},[773,2927,783],{},[773,2929,786],{},[752,2931,2932,2937,2939,2941],{},[773,2933,2934],{},[705,2935,2936],{},"datadateFrom",[773,2938,780],{},[773,2940,783],{},[773,2942,830],{},[752,2944,2945,2950,2952,2954],{},[773,2946,2947],{},[705,2948,2949],{},"datadateTo",[773,2951,780],{},[773,2953,783],{},[773,2955,844],{},[683,2957,2958,850,2960,2963,2964,2878],{},[687,2959,849],{},[705,2961,2962],{},"ShopeeShopAnalyticsSummary"," — per-date rows: product counts, avg price, total stock, ad metrics (impressions\u002Fclicks\u002Fspend\u002FGMV\u002Forders\u002FROAS\u002FCTR), order stats (count\u002Funits\u002Frevenue\u002FAOV), return stats, and engagement (views\u002Flikes\u002Frating\u002Fsales), with ",[705,2965,2896],{},[721,2967,2969],{"id":2968},"lazada-products-raw","Lazada — products (raw)",[726,2971,2974,2977,2981,2986,3052],{"method":728,"path":2972,"summary":2973},"\u002Fapi\u002Flazada\u002Fproduct\u002Finternal\u002Ffact\u002Ffetch-full-product","Historical Lazada products",[683,2975,2976],{},"Retrieves historical (Fact) Lazada product snapshots on a specific date, searched by seller, region, and optional item id.",[683,2978,2979],{},[687,2980,738],{},[683,2982,741,2983],{},[705,2984,2985],{},"FactLazadaProductSearchRequest",[746,2987,2988,3000],{},[749,2989,2990],{},[752,2991,2992,2994,2996,2998],{},[755,2993,757],{},[755,2995,760],{},[755,2997,763],{},[755,2999,766],{},[768,3001,3002,3016,3028,3040],{},[752,3003,3004,3009,3011,3013],{},[773,3005,3006],{},[705,3007,3008],{},"sellerId",[773,3010,780],{},[773,3012,783],{},[773,3014,3015],{},"Seller (shop) ID",[752,3017,3018,3022,3024,3026],{},[773,3019,3020],{},[705,3021,793],{},[773,3023,796],{},[773,3025,783],{},[773,3027,801],{},[752,3029,3030,3034,3036,3038],{},[773,3031,3032],{},[705,3033,808],{},[773,3035,780],{},[773,3037,813],{},[773,3039,816],{},[752,3041,3042,3046,3048,3050],{},[773,3043,3044],{},[705,3045,707],{},[773,3047,780],{},[773,3049,783],{},[773,3051,2715],{},[683,3053,3054,850,3056,3059,3060],{},[687,3055,849],{},[705,3057,3058],{},"FactLazadaProduct"," — historical snapshots (item id, name, SKU, category, brand, images, status, stock, pricing, rating). ",[856,3061,858],{},[726,3063,3066,3069,3073,3078,3145],{"method":728,"path":3064,"summary":3065},"\u002Fapi\u002Flazada\u002Fproduct\u002Finternal\u002Frt\u002Ffetch-full-product","Current Lazada products",[683,3067,3068],{},"Retrieves the latest (RT) Lazada product snapshots for a seller\u002Fregion, with optional item-id and updated-after filters.",[683,3070,3071],{},[687,3072,738],{},[683,3074,741,3075],{},[705,3076,3077],{},"RtLazadaProductSearchRequest",[746,3079,3080,3092],{},[749,3081,3082],{},[752,3083,3084,3086,3088,3090],{},[755,3085,757],{},[755,3087,760],{},[755,3089,763],{},[755,3091,766],{},[768,3093,3094,3106,3118,3130],{},[752,3095,3096,3100,3102,3104],{},[773,3097,3098],{},[705,3099,3008],{},[773,3101,780],{},[773,3103,783],{},[773,3105,3015],{},[752,3107,3108,3112,3114,3116],{},[773,3109,3110],{},[705,3111,793],{},[773,3113,796],{},[773,3115,783],{},[773,3117,801],{},[752,3119,3120,3124,3126,3128],{},[773,3121,3122],{},[705,3123,808],{},[773,3125,780],{},[773,3127,813],{},[773,3129,816],{},[752,3131,3132,3137,3140,3142],{},[773,3133,3134],{},[705,3135,3136],{},"updatedTimeAfter",[773,3138,3139],{},"string (date)",[773,3141,813],{},[773,3143,3144],{},"Only rows updated at\u002Fafter this instant",[683,3146,3147,850,3149,3152,3153],{},[687,3148,849],{},[705,3150,3151],{},"RtLazadaProduct"," — current product records (item id, name, SKU, category, brand, images, status, stock, pricing, rating). ",[856,3154,858],{},[726,3156,3159,3162,3166,3171,3309],{"method":728,"path":3157,"summary":3158},"\u002Fapi\u002Flazada\u002Fproduct\u002Finternal\u002Frt\u002Ffetch-full-product\u002Fpaginated","Current Lazada products (cursor paginated)",[683,3160,3161],{},"Cursor-paginated RT products with product\u002FSKU search, numeric filters, and custom sort.",[683,3163,3164],{},[687,3165,738],{},[683,3167,3168],{},[705,3169,3170],{},"RtLazadaProductPaginatedFetchRequest",[746,3172,3173,3185],{},[749,3174,3175],{},[752,3176,3177,3179,3181,3183],{},[755,3178,757],{},[755,3180,760],{},[755,3182,763],{},[755,3184,766],{},[768,3186,3187,3199,3211,3223,3235,3248,3261,3273,3285,3297],{},[752,3188,3189,3193,3195,3197],{},[773,3190,3191],{},[705,3192,3008],{},[773,3194,780],{},[773,3196,783],{},[773,3198,3015],{},[752,3200,3201,3205,3207,3209],{},[773,3202,3203],{},[705,3204,793],{},[773,3206,796],{},[773,3208,783],{},[773,3210,801],{},[752,3212,3213,3217,3219,3221],{},[773,3214,3215],{},[705,3216,1035],{},[773,3218,796],{},[773,3220,813],{},[773,3222,1042],{},[752,3224,3225,3229,3231,3233],{},[773,3226,3227],{},[705,3228,1049],{},[773,3230,796],{},[773,3232,813],{},[773,3234,1056],{},[752,3236,3237,3241,3243,3245],{},[773,3238,3239],{},[705,3240,1063],{},[773,3242,936],{},[773,3244,813],{},[773,3246,3247],{},"Numeric field filters",[752,3249,3250,3254,3256,3258],{},[773,3251,3252],{},[705,3253,1077],{},[773,3255,796],{},[773,3257,813],{},[773,3259,3260],{},"Sort field (sale, margin, cogs)",[752,3262,3263,3267,3269,3271],{},[773,3264,3265],{},[705,3266,1091],{},[773,3268,796],{},[773,3270,813],{},[773,3272,1098],{},[752,3274,3275,3279,3281,3283],{},[773,3276,3277],{},[705,3278,1105],{},[773,3280,780],{},[773,3282,813],{},[773,3284,1112],{},[752,3286,3287,3291,3293,3295],{},[773,3288,3289],{},[705,3290,1119],{},[773,3292,1122],{},[773,3294,813],{},[773,3296,1127],{},[752,3298,3299,3303,3305,3307],{},[773,3300,3301],{},[705,3302,1134],{},[773,3304,780],{},[773,3306,813],{},[773,3308,1141],{},[683,3310,3311,1146,3313,3316,3317],{},[687,3312,849],{},[705,3314,3315],{},"CursorPaginatedResult\u003CRtLazadaProductCursor, RtLazadaProduct>"," — product rows plus the next cursor. ",[856,3318,858],{},[726,3320,3323,3326,3332],{"method":728,"path":3321,"summary":3322},"\u002Fapi\u002Flazada\u002Fproduct\u002Finternal\u002Frt\u002Ffetch-product-dashboard\u002Fpaginated","Lazada product dashboard (cursor)",[683,3324,3325],{},"Cursor-paginated RT product dashboard rows with search, filters, sort, margin percentiles, and variant counts.",[683,3327,3328,1146,3330,1166],{},[687,3329,738],{},[705,3331,3170],{},[683,3333,3334,1146,3336,3339],{},[687,3335,849],{},[705,3337,3338],{},"CursorPaginatedResult\u003CRtLazadaProductCursor, LazadaProductDashboard>"," — dashboard rows (id, name, SKU, status, images, margin, sale, 180-day units, COGS, variant count, margin percentiles).",[726,3341,3343,3346,3353],{"method":728,"path":3342,"summary":1178},"\u002Fapi\u002Flazada\u002Fproduct\u002Finternal\u002Frt\u002Ffetch-product-dashboard\u002Fmargin-stats",[683,3344,3345],{},"Aggregated margin statistics (min, max, median, Q1, Q3) over the filtered Lazada dashboard set.",[683,3347,3348,1146,3350,1189],{},[687,3349,738],{},[705,3351,3352],{},"RtLazadaProductPaginatedV2FetchRequest",[683,3354,3355,1146,3357,1197],{},[687,3356,849],{},[705,3358,1196],{},[726,3360,3363,3366,3370,3374,3510],{"method":728,"path":3361,"summary":3362},"\u002Fapi\u002Flazada\u002Fproduct\u002Finternal\u002Frt\u002Ffetch-product-dashboard\u002Fpaginated\u002Fv2","Lazada product dashboard v2 (unified filters)",[683,3364,3365],{},"Cursor-paginated dashboard with the unified column-filter syntax (name, SKU, COGS, sale, margin) and custom sort.",[683,3367,3368],{},[687,3369,738],{},[683,3371,3372],{},[705,3373,3352],{},[746,3375,3376,3388],{},[749,3377,3378],{},[752,3379,3380,3382,3384,3386],{},[755,3381,757],{},[755,3383,760],{},[755,3385,763],{},[755,3387,766],{},[768,3389,3390,3402,3414,3426,3438,3450,3462,3474,3486,3498],{},[752,3391,3392,3396,3398,3400],{},[773,3393,3394],{},[705,3395,3008],{},[773,3397,780],{},[773,3399,783],{},[773,3401,3015],{},[752,3403,3404,3408,3410,3412],{},[773,3405,3406],{},[705,3407,793],{},[773,3409,796],{},[773,3411,783],{},[773,3413,801],{},[752,3415,3416,3420,3422,3424],{},[773,3417,3418],{},[705,3419,1035],{},[773,3421,796],{},[773,3423,813],{},[773,3425,1042],{},[752,3427,3428,3432,3434,3436],{},[773,3429,3430],{},[705,3431,1049],{},[773,3433,796],{},[773,3435,813],{},[773,3437,1056],{},[752,3439,3440,3444,3446,3448],{},[773,3441,3442],{},[705,3443,1063],{},[773,3445,936],{},[773,3447,813],{},[773,3449,1302],{},[752,3451,3452,3456,3458,3460],{},[773,3453,3454],{},[705,3455,1077],{},[773,3457,796],{},[773,3459,813],{},[773,3461,1315],{},[752,3463,3464,3468,3470,3472],{},[773,3465,3466],{},[705,3467,1091],{},[773,3469,796],{},[773,3471,813],{},[773,3473,1098],{},[752,3475,3476,3480,3482,3484],{},[773,3477,3478],{},[705,3479,1105],{},[773,3481,780],{},[773,3483,813],{},[773,3485,1112],{},[752,3487,3488,3492,3494,3496],{},[773,3489,3490],{},[705,3491,1119],{},[773,3493,1122],{},[773,3495,813],{},[773,3497,1352],{},[752,3499,3500,3504,3506,3508],{},[773,3501,3502],{},[705,3503,1134],{},[773,3505,780],{},[773,3507,813],{},[773,3509,1365],{},[683,3511,3512,1146,3514,1372],{},[687,3513,849],{},[705,3515,3338],{},[726,3517,3520,3522,3526,3531,3631],{"method":728,"path":3518,"summary":3519},"\u002Fapi\u002Flazada\u002Fproduct\u002Finternal\u002Frt\u002Ffetch-product-dashboard\u002Fpaginated\u002Fv3","Lazada product dashboard (offset)",[683,3521,1379],{},[683,3523,3524],{},[687,3525,738],{},[683,3527,3528],{},[705,3529,3530],{},"RtLazadaProductPaginatedV3FetchRequest",[746,3532,3533,3545],{},[749,3534,3535],{},[752,3536,3537,3539,3541,3543],{},[755,3538,757],{},[755,3540,760],{},[755,3542,763],{},[755,3544,766],{},[768,3546,3547,3559,3571,3583,3595,3607,3619],{},[752,3548,3549,3553,3555,3557],{},[773,3550,3551],{},[705,3552,3008],{},[773,3554,780],{},[773,3556,783],{},[773,3558,3015],{},[752,3560,3561,3565,3567,3569],{},[773,3562,3563],{},[705,3564,793],{},[773,3566,796],{},[773,3568,783],{},[773,3570,801],{},[752,3572,3573,3577,3579,3581],{},[773,3574,3575],{},[705,3576,1063],{},[773,3578,936],{},[773,3580,813],{},[773,3582,1453],{},[752,3584,3585,3589,3591,3593],{},[773,3586,3587],{},[705,3588,1077],{},[773,3590,796],{},[773,3592,813],{},[773,3594,3260],{},[752,3596,3597,3601,3603,3605],{},[773,3598,3599],{},[705,3600,1091],{},[773,3602,796],{},[773,3604,813],{},[773,3606,1098],{},[752,3608,3609,3613,3615,3617],{},[773,3610,3611],{},[705,3612,1485],{},[773,3614,780],{},[773,3616,813],{},[773,3618,1492],{},[752,3620,3621,3625,3627,3629],{},[773,3622,3623],{},[705,3624,1134],{},[773,3626,780],{},[773,3628,813],{},[773,3630,1141],{},[683,3632,3633,1146,3635,3638],{},[687,3634,849],{},[705,3636,3637],{},"OffsetPaginatedResult\u003CLazadaProductDashboard>"," — page metadata plus dashboard rows.",[721,3640,3642],{"id":3641},"tiktok-orders-raw","TikTok — orders (raw)",[726,3644,3647,3650,3662],{"method":728,"path":3645,"summary":3646},"\u002Fapi\u002Ftiktok\u002Forder\u002Finternal\u002Frt\u002Forder-full\u002Fcount","Count current TikTok orders",[683,3648,3649],{},"Counts RT TikTok orders matching the criteria (shop and optional order id).",[683,3651,3652,850,3654,1714,3657,1720,3659,1723],{},[687,3653,738],{},[705,3655,3656],{},"RtTikTokOrderSearchRequest",[705,3658,777],{},[705,3660,3661],{},"orderId",[683,3663,3664,1146,3666,1730],{},[687,3665,849],{},[705,3667,780],{},[726,3669,3672,3675,3685],{"method":728,"path":3670,"summary":3671},"\u002Fapi\u002Ftiktok\u002Forder\u002Finternal\u002Frt\u002Forder-full\u002Ffetch","Current TikTok orders",[683,3673,3674],{},"Retrieves the latest (RT) TikTok order snapshots for a shop, with optional order-id filter.",[683,3676,3677,850,3679,1714,3681,1720,3683,1723],{},[687,3678,738],{},[705,3680,3656],{},[705,3682,777],{},[705,3684,3661],{},[683,3686,3687,850,3689,3692,3693,1717,3696,1717,3699,3702,3703],{},[687,3688,849],{},[705,3690,3691],{},"RtTikTokOrder"," — current order records (order id, status, currency, buyer, total amount, shipping, COD, payment method, recipient address, timestamps, fee\u002Ftax fields) with nested ",[705,3694,3695],{},"itemList",[705,3697,3698],{},"itemTaxList",[705,3700,3701],{},"packageList",". ",[856,3704,858],{},[726,3706,3709,3712,3716,3721,3774],{"method":728,"path":3707,"summary":3708},"\u002Fapi\u002Ftiktok\u002Forder\u002Finternal\u002Frt\u002Forder-full\u002Ffetch-paginated","Current TikTok orders (cursor paginated)",[683,3710,3711],{},"Cursor-paginated RT orders; supports multiple shop\u002Forder-id search criteria.",[683,3713,3714],{},[687,3715,738],{},[683,3717,3718],{},[705,3719,3720],{},"RtTikTokOrderPaginatedFetchRequest",[746,3722,3723,3735],{},[749,3724,3725],{},[752,3726,3727,3729,3731,3733],{},[755,3728,757],{},[755,3730,760],{},[755,3732,763],{},[755,3734,766],{},[768,3736,3737,3750,3762],{},[752,3738,3739,3743,3745,3747],{},[773,3740,3741],{},[705,3742,1798],{},[773,3744,936],{},[773,3746,783],{},[773,3748,3749],{},"Array of RtTikTokOrderSearchRequest (shop id, optional order id)",[752,3751,3752,3756,3758,3760],{},[773,3753,3754],{},[705,3755,1812],{},[773,3757,780],{},[773,3759,813],{},[773,3761,1819],{},[752,3763,3764,3768,3770,3772],{},[773,3765,3766],{},[705,3767,1134],{},[773,3769,780],{},[773,3771,813],{},[773,3773,1141],{},[683,3775,3776,1146,3778,1839],{},[687,3777,849],{},[705,3779,3780],{},"CursorPaginatedResult\u003CLong, RtTikTokOrder>",[726,3782,3785,3788,3792,3797,3861],{"method":728,"path":3783,"summary":3784},"\u002Fapi\u002Ftiktok\u002Forder\u002Finternal\u002Ffact\u002Forder-full\u002Ffetch","Historical TikTok orders",[683,3786,3787],{},"Retrieves historical (Fact) TikTok order snapshots over a date range, searched by shop and region.",[683,3789,3790],{},[687,3791,738],{},[683,3793,741,3794],{},[705,3795,3796],{},"FactTikTokOrderSearchRequest",[746,3798,3799,3811],{},[749,3800,3801],{},[752,3802,3803,3805,3807,3809],{},[755,3804,757],{},[755,3806,760],{},[755,3808,763],{},[755,3810,766],{},[768,3812,3813,3825,3837,3849],{},[752,3814,3815,3819,3821,3823],{},[773,3816,3817],{},[705,3818,777],{},[773,3820,780],{},[773,3822,783],{},[773,3824,786],{},[752,3826,3827,3831,3833,3835],{},[773,3828,3829],{},[705,3830,793],{},[773,3832,796],{},[773,3834,783],{},[773,3836,801],{},[752,3838,3839,3843,3845,3847],{},[773,3840,3841],{},[705,3842,823],{},[773,3844,780],{},[773,3846,783],{},[773,3848,830],{},[752,3850,3851,3855,3857,3859],{},[773,3852,3853],{},[705,3854,837],{},[773,3856,780],{},[773,3858,783],{},[773,3860,844],{},[683,3862,3863,850,3865,3868,3869],{},[687,3864,849],{},[705,3866,3867],{},"FactTikTokOrder"," — historical order snapshots (order id, status, buyer, amounts, shipping, fees, payment, recipient address, timestamps incl. datadate\u002Fdatahour\u002Fdatamonth) with nested item\u002Ftax\u002Fpackage arrays. ",[856,3870,858],{},[726,3872,3875,3878,3882,3887,3941],{"method":728,"path":3873,"summary":3874},"\u002Fapi\u002Ftiktok\u002Forder\u002Finternal\u002Ffact\u002Forder-full\u002Ffetch-paginated","Historical TikTok orders (cursor paginated)",[683,3876,3877],{},"Cursor-paginated Fact orders; supports multiple shop\u002Fregion\u002Fdate-range search criteria.",[683,3879,3880],{},[687,3881,738],{},[683,3883,3884],{},[705,3885,3886],{},"FactTikTokOrderPaginatedFetchRequest",[746,3888,3889,3901],{},[749,3890,3891],{},[752,3892,3893,3895,3897,3899],{},[755,3894,757],{},[755,3896,760],{},[755,3898,763],{},[755,3900,766],{},[768,3902,3903,3916,3929],{},[752,3904,3905,3909,3911,3913],{},[773,3906,3907],{},[705,3908,1798],{},[773,3910,936],{},[773,3912,783],{},[773,3914,3915],{},"Array of FactTikTokOrderSearchRequest (shop id, region, date range)",[752,3917,3918,3922,3924,3926],{},[773,3919,3920],{},[705,3921,1812],{},[773,3923,780],{},[773,3925,813],{},[773,3927,3928],{},"Pagination cursor (fact_order_id)",[752,3930,3931,3935,3937,3939],{},[773,3932,3933],{},[705,3934,1134],{},[773,3936,780],{},[773,3938,813],{},[773,3940,1141],{},[683,3942,3943,1146,3945,3948,3949],{},[687,3944,849],{},[705,3946,3947],{},"CursorPaginatedResult\u003CLong, FactTikTokOrder>"," — historical order rows (with nested item\u002Ftax\u002Fpackage arrays) plus the next cursor. ",[856,3950,858],{},{"title":3952,"searchDepth":3953,"depth":3953,"links":3954},"",3,[3955,3957,3958,3959,3960],{"id":723,"depth":3956,"text":724},2,{"id":1594,"depth":3956,"text":1595},{"id":1842,"depth":3956,"text":1843},{"id":2968,"depth":3956,"text":2969},{"id":3641,"depth":3956,"text":3642},"เข้าถึงข้อมูลสินค้า, ออเดอร์ และแคมเปญโฆษณาที่ปรับให้เป็นมาตรฐานในแต่ละแพลตฟอร์มโดยตรง",null,"md",{},{"icon":634},"---\ntitle: \"Endpoints: ข้อมูลแพลตฟอร์มดิบ\"\ndescription: เข้าถึงข้อมูลสินค้า, ออเดอร์ และแคมเปญโฆษณาที่ปรับให้เป็นมาตรฐานในแต่ละแพลตฟอร์มโดยตรง\nnavigation:\n  icon: i-material-symbols-database-rounded\n---\n\nEndpoint เหล่านี้เปิดเผยข้อมูลดิบที่ปรับให้เป็นมาตรฐานในแต่ละแพลตฟอร์ม — แถวข้อมูลเบื้องหลังการวิเคราะห์ **RT** (real-time) คือ snapshot ล่าสุด ส่วน **Fact** คือข้อมูลย้อนหลังแบบรายวัน ดู [เริ่มต้นใช้งาน](\u002Fth\u002Fdocs\u002Fai-and-api\u002Fapi\u002Fgetting-started) และ [หลักการทั่วไป](\u002Fth\u002Fdocs\u002Fai-and-api\u002Fapi\u002Fgetting-started) ทุก endpoint เป็นแบบอ่านอย่างเดียว (พารามิเตอร์ `datadate` เป็นจำนวนเต็มในรูปแบบ `YYYYMMDD`)\n\n::callout{icon=\"i-lucide-mouse-pointer-click\"}\nคลิกที่ endpoint ใดก็ได้เพื่อขยายดูพารามิเตอร์, request body และ response (รายละเอียดเชิงเทคนิคเป็นภาษาอังกฤษ)\n::\n\n## Shopee — products (raw)\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Fshopee\u002Fproduct\u002Finternal\u002Ffact\u002Ffetch-full-product\" summary=\"Historical Shopee products\"}\nRetrieves historical (Fact) snapshots of Shopee products over a date range, searched by shop, region, and optional item id. Use for time-series analysis and historical comparisons.\n\n**Request body**\n\nArray of `FactShopeeProductSearchRequest`\n\n| Field | Type | Required | Description |\n|---|---|---|---|\n| `shopId` | integer | yes | Shop ID |\n| `region` | string | yes | Region code |\n| `itemId` | integer | no | Item ID filter |\n| `datadateStart` | integer | yes | Start date (YYYYMMDD) |\n| `datadateEnd` | integer | yes | End date (YYYYMMDD) |\n\n**Response** — Array of `FactShopeeProductFull` — historical product snapshots: name, SKU, category, brand, images, engagement (views\u002Flikes\u002Frating\u002Fsales), stock (in-transit, sellable, reserved, available), pricing, and tax fields. *…and more — see the full schema in the OpenAPI spec.*\n::\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Fshopee\u002Fproduct\u002Finternal\u002Frt\u002Ffetch-full-product\" summary=\"Current Shopee products\"}\nRetrieves the latest (RT) snapshot of Shopee products for a shop\u002Fregion, with optional item-id and status filters.\n\n**Request body**\n\nArray of `RtShopeeProductSearchRequest`\n\n| Field | Type | Required | Description |\n|---|---|---|---|\n| `shopId` | integer | yes | Shop ID |\n| `region` | string | yes | Region code |\n| `itemId` | integer | no | Item ID filter |\n| `itemStatuses` | array | no | Status filter (e.g. `[\"NORMAL\",\"UNLIST\"]`) |\n\n**Response** — Array of `RtShopeeProductFull` — current product records (name, SKU, category, brand, images, engagement, stock, pricing, fulfillment flag, promotion id, tax fields) with a nested `models` array of variant data. *…and more — see the full schema in the OpenAPI spec.*\n::\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Fshopee\u002Fproduct\u002Finternal\u002Frt\u002Ffetch-full-product\u002Fpaginated\" summary=\"Current Shopee products (cursor paginated)\"}\nCursor-paginated RT products with advanced filtering (product\u002FSKU search, numeric filters on sale\u002Fmargin\u002FCOGS\u002Funits) and custom sort.\n\n**Request body**\n\n`RtShopeeProductPaginatedFetchRequest`\n\n| Field | Type | Required | Description |\n|---|---|---|---|\n| `userId` | integer | yes | Must match the authenticated user |\n| `shopId` | integer | yes | Shop ID |\n| `region` | string | yes | Region code |\n| `productSearch` | string | no | Product name search |\n| `itemSkuSearch` | string | no | Item SKU search |\n| `filters` | array | no | Numeric field filters (gt, gte, lt, lte, between…) |\n| `sortBy` | string | no | Sort field (sale, views, likes, rating…) |\n| `sortDirection` | string | no | asc or desc |\n| `cursorRtProductId` | integer | no | Pagination cursor |\n| `cursorSortValue` | number | no | Last-seen sort value |\n| `pageSize` | integer | no | Rows per page (default 200) |\n\n**Response** — `CursorPaginatedResult\u003CRtShopeeProductCursor, RtShopeeProductFull>` — product rows (with nested models) plus the next cursor. *…and more — see the full schema in the OpenAPI spec.*\n::\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Fshopee\u002Fproduct\u002Finternal\u002Ffetch-product-dashboard\u002Fpaginated\" summary=\"Shopee product dashboard (cursor)\"}\nCursor-paginated RT product dashboard rows for the products UI, with search, filtering, and sort. Returns margin percentiles and variant counts per product.\n\n**Request body** — `RtShopeeProductPaginatedFetchRequest` (same fields as the RT paginated endpoint above).\n\n**Response** — `CursorPaginatedResult\u003CRtShopeeProductCursor, ShopeeProductDashboard>` — dashboard rows (name, SKU, status, images, margin, sale, 180-day units, COGS, variant count, margin percentiles min\u002FQ1\u002Fmedian\u002FQ3\u002Fmax\u002Fmean).\n::\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Fshopee\u002Fproduct\u002Finternal\u002Ffetch-product-dashboard\u002Fmargin-stats\" summary=\"Margin stats over product set\"}\nComputes aggregated margin statistics (min, max, median, Q1, Q3) over the filtered product-dashboard set. No pagination — a single stats response.\n\n**Request body** — `RtShopeeProductPaginatedV2FetchRequest` (unified column filters; pagination fields ignored).\n\n**Response** — `ProductMarginStats` — margin percentiles: minimum, Q1, median, Q3, maximum.\n::\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Fshopee\u002Fproduct\u002Finternal\u002Ffetch-product-dashboard\u002Fpaginated\u002Fv2\" summary=\"Shopee product dashboard v2 (unified filters)\"}\nCursor-paginated dashboard with the unified column-filter syntax (name, SKU, COGS, sale, 180-day units, margin) and custom sort.\n\n**Request body**\n\n`RtShopeeProductPaginatedV2FetchRequest`\n\n| Field | Type | Required | Description |\n|---|---|---|---|\n| `userId` | integer | yes | Authenticated user id |\n| `shopId` | integer | yes | Shop ID |\n| `region` | string | yes | Region code |\n| `productSearch` | string | no | Product name search |\n| `itemSkuSearch` | string | no | Item SKU search |\n| `filters` | array | no | Unified column filters (name\u002Fsku\u002Fnumber\u002Fmargin operators) |\n| `sortBy` | string | no | Sort field |\n| `sortDirection` | string | no | asc or desc |\n| `cursorRtProductId` | integer | no | Pagination cursor |\n| `cursorSortValue` | number | no | Sort value cursor |\n| `pageSize` | integer | no | Rows per page |\n\n**Response** — `CursorPaginatedResult\u003CRtShopeeProductCursor, ShopeeProductDashboard>` — dashboard rows with margin percentiles.\n::\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Fshopee\u002Fproduct\u002Finternal\u002Ffetch-product-dashboard\u002Fpaginated\u002Fv3\" summary=\"Shopee product dashboard (offset)\"}\nOffset-paginated dashboard (page\u002FpageSize) with unified column filters and custom sort.\n\n**Request body**\n\n`RtShopeeProductPaginatedV3FetchRequest`\n\n| Field | Type | Required | Description |\n|---|---|---|---|\n| `userId` | integer | yes | Authenticated user id |\n| `shopId` | integer | yes | Shop ID |\n| `region` | string | yes | Region code |\n| `filters` | array | no | Unified column filters |\n| `sortBy` | string | no | Sort field (sale, margin, cogs, units_sold_180d) |\n| `sortDirection` | string | no | asc or desc |\n| `page` | integer | no | 0-based page (default 0) |\n| `pageSize` | integer | no | Rows per page (default 200) |\n\n**Response** — `OffsetPaginatedResult\u003CShopeeProductDashboard>` — page metadata (page, pageSize, totalItems, totalPages) plus dashboard rows.\n::\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Fshopee\u002Fproduct\u002Finternal\u002Fproduct-lifecycle\u002Ffetch\" summary=\"Product lifecycle\"}\nAnalyzes one item's lifecycle across all its models, aggregated to a time resolution (DAY\u002FWEEK\u002FMONTH) — sales trends, peak periods, and per-model breakdown.\n\n**Request body**\n\n`ShopeeProductLifecycleRequest`\n\n| Field | Type | Required | Description |\n|---|---|---|---|\n| `shopId` | integer | yes | Shop ID |\n| `itemId` | integer | yes | Item ID |\n| `resolution` | string | yes | Time resolution: DAY, WEEK, or MONTH |\n\n**Response** — `ShopeeProductLifecycleData` — aggregate lifecycle statistics and per-model trend data at the requested resolution.\n::\n\n## Shopee — orders (raw)\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Fshopee\u002Forder\u002Finternal\u002Ffact\u002Forder-full\u002Ffetch\" summary=\"Historical Shopee orders\"}\nRetrieves historical (Fact) Shopee order snapshots over a date range, searched by shop, region, and optional order SN.\n\n**Request body**\n\nArray of `FactShopeeOrderSearchRequest`\n\n| Field | Type | Required | Description |\n|---|---|---|---|\n| `shopId` | integer | yes | Shop ID |\n| `region` | string | yes | Region code |\n| `orderSn` | string | no | Order SN filter |\n| `datadateStart` | integer | yes | Start date (YYYYMMDD) |\n| `datadateEnd` | integer | yes | End date (YYYYMMDD) |\n\n**Response** — Array of `FactShopeeOrderFull` — order snapshots (order SN, status, currency, buyer, total amount, shipping, fulfillment, payment method, COD flag, timestamps, and shipping\u002Fhandling\u002Ftax details). *…and more — see the full schema in the OpenAPI spec.*\n::\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Fshopee\u002Forder\u002Finternal\u002Frt\u002Forder-full\u002Fcount\" summary=\"Count current Shopee orders\"}\nCounts RT orders matching the criteria (shop\u002Fregion\u002Foptional order SN).\n\n**Request body** — Array of `RtShopeeOrderSearchRequest` (`shopId`, `region` required; `orderSn` optional).\n\n**Response** — `integer` — total count of matching RT orders.\n::\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Fshopee\u002Forder\u002Finternal\u002Frt\u002Forder-full\u002Ffetch\" summary=\"Current Shopee orders\"}\nRetrieves the latest (RT) Shopee order snapshots for a shop\u002Fregion, with optional order-SN filter.\n\n**Request body** — Array of `RtShopeeOrderSearchRequest` (`shopId`, `region` required; `orderSn` optional).\n\n**Response** — Array of `RtShopeeOrderFull` — current order records (order SN, status, buyer, amounts, shipping, payment, timestamps, fee\u002Ftax fields). *…and more — see the full schema in the OpenAPI spec.*\n::\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Fshopee\u002Forder\u002Finternal\u002Frt\u002Forder-full\u002Ffetch-paginated\" summary=\"Current Shopee orders (cursor paginated)\"}\nCursor-paginated RT orders; supports multiple shop\u002Fregion search criteria at once.\n\n**Request body**\n\n`RtShopeeOrderPaginatedFetchRequest`\n\n| Field | Type | Required | Description |\n|---|---|---|---|\n| `searches` | array | yes | Array of RtShopeeOrderSearchRequest (shop, region, optional order SN) |\n| `cursor` | integer | no | Pagination cursor (rt_order_id) |\n| `pageSize` | integer | no | Rows per page (default 200) |\n\n**Response** — `CursorPaginatedResult\u003CLong, RtShopeeOrderFull>` — current order rows plus the next cursor.\n::\n\n## Shopee — ads (raw)\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Fshopee\u002Fads\u002Finternal\u002Ffact\u002Fad-campaign-full\u002Ffetch\" summary=\"Historical Shopee ad campaigns\"}\nRetrieves historical (Fact) Shopee ad-campaign snapshots over a date range, with optional campaign id \u002F shop \u002F region filters.\n\n**Request body**\n\nArray of `FactShopeeAdCampaignSearchRequest`\n\n| Field | Type | Required | Description |\n|---|---|---|---|\n| `campaignId` | integer | no | Campaign ID filter |\n| `shopId` | integer | no | Shop ID filter |\n| `region` | string | no | Region code filter |\n| `datadateStart` | integer | yes | Start date (YYYYMMDD) |\n| `datadateEnd` | integer | yes | End date (YYYYMMDD) |\n\n**Response** — Array of `FactShopeeAdCampaignFull` — campaign records (id, name, ad type, placement, active flag, datadate\u002Fdatahour, metrics: spend\u002Fimpressions\u002Fclicks\u002FGMV\u002Forders\u002FROAS, plus settings). *…and more — see the full schema in the OpenAPI spec.*\n::\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Fshopee\u002Fads\u002Finternal\u002Ffact\u002Fad-campaign-full\u002Ffetch-paginated\" summary=\"Historical ad campaigns (cursor paginated)\"}\nCursor-paginated Fact ad campaigns; supports multiple search criteria.\n\n**Request body**\n\n`FactShopeeAdCampaignPaginatedFetchRequest`\n\n| Field | Type | Required | Description |\n|---|---|---|---|\n| `searches` | array | yes | Array of FactShopeeAdCampaignSearchRequest |\n| `cursorDatadate` | integer | no | Cursor datadate (YYYYMMDD) |\n| `cursorDatahour` | integer | no | Cursor datahour (0–23) |\n| `cursorCampaignId` | integer | no | Cursor campaign id |\n| `pageSize` | integer | no | Rows per page (default 200) |\n\n**Response** — `CursorPaginatedResult\u003CFactShopeeAdCampaignCursor, FactShopeeAdCampaignFull>` — campaign records plus the next cursor. *…and more — see the full schema in the OpenAPI spec.*\n::\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Fshopee\u002Fads\u002Finternal\u002Ffact\u002Fad-campaign-full\u002F{shopId}\u002F{region}\u002Ffetch-daily-grouped\" summary=\"Ad campaigns grouped by day\"}\nFact ad campaigns grouped by campaign per date, with hourly sub-rows. Cursor-paginated.\n\n**Path parameters**\n\n| Name | Type | Required | Description |\n|---|---|---|---|\n| `shopId` | integer | yes | Shop ID |\n| `region` | string | yes | Region code |\n\n**Request body**\n\n`FactShopeeAdCampaignGroupedFetchRequest` (optional)\n\n| Field | Type | Required | Description |\n|---|---|---|---|\n| `searches` | array | no | Filter by campaign id and\u002For date range |\n| `cursorDatadate` | integer | no | Cursor datadate (YYYYMMDD) |\n| `cursorCampaignId` | integer | no | Cursor campaign id |\n| `pageSize` | integer | no | Max grouped rows (default 50) |\n\n**Response** — `CursorPaginatedResult\u003CFactShopeeAdCampaignDailyCursor, FactShopeeAdCampaignDailyGrouped>` — grouped campaign-per-date records with hourly sub-rows.\n::\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Fshopee\u002Fads\u002Finternal\u002Ffact\u002Fad-campaign-full\u002F{shopId}\u002F{region}\u002Ffetch-active-campaigns-dashboard\" summary=\"Active campaigns (summary rows)\"}\nActive (ongoing) campaigns with the latest day's aggregated metrics, with optional name\u002Fid\u002Fad-type filters and custom sort. Cursor-paginated.\n\n**Path parameters**\n\n| Name | Type | Required | Description |\n|---|---|---|---|\n| `shopId` | integer | yes | Shop ID |\n| `region` | string | yes | Region code |\n\n**Request body**\n\n`FactShopeeAdCampaignActiveSummaryFetchRequest` (optional)\n\n| Field | Type | Required | Description |\n|---|---|---|---|\n| `datadate` | integer | no | Filter to an exact datadate (YYYYMMDD) |\n| `activeOnly` | boolean | no | Only active campaigns (null = all) |\n| `searchCampaign` | string | no | Fuzzy search by campaign\u002Fad name |\n| `searchCampaignId` | integer | no | Search by campaign id |\n| `filters` | array | no | Numeric filters on campaign metrics |\n| `adTypeFilter` | array | no | Filter by ad type (auto, manual) |\n| `sortBy` | string | no | Sort field (expense, broadRoi, datadate…) |\n| `sortDirection` | string | no | asc or desc |\n| `cursorDatadate` | integer | no | Cursor datadate |\n| `cursorCampaignId` | integer | no | Cursor campaign id |\n| `cursorSortValue` | number | no | Cursor sort value |\n| `pageSize` | integer | no | Max campaigns (default 50) |\n\n**Response** — `CursorPaginatedResult\u003CFactShopeeAdCampaignDailyCursor, FactShopeeAdCampaignSummary>` — active campaigns with latest-day metrics. *…and more — see the full schema in the OpenAPI spec.*\n::\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Fshopee\u002Fads\u002Finternal\u002Ffact\u002Fad-campaign-full\u002F{shopId}\u002F{region}\u002Ffetch-active-campaigns\" summary=\"Active campaigns (grouped rows)\"}\nSame active-campaign selection as the dashboard variant, but returned as grouped campaign-per-date rows with hourly sub-rows.\n\n**Path parameters**\n\n| Name | Type | Required | Description |\n|---|---|---|---|\n| `shopId` | integer | yes | Shop ID |\n| `region` | string | yes | Region code |\n\n**Request body** — `FactShopeeAdCampaignActiveSummaryFetchRequest` (optional; same fields as above).\n\n**Response** — `CursorPaginatedResult\u003CFactShopeeAdCampaignDailyCursor, FactShopeeAdCampaignDailyGrouped>` — grouped daily campaign records with hourly sub-rows.\n::\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Fshopee\u002Fads\u002Finternal\u002Ffact\u002Fad-campaign-full\u002F{shopId}\u002F{region}\u002Fcampaigns\u002F{campaignId}\u002Ffetch-daily-summary\" summary=\"Daily summary for one campaign\"}\nDaily summary rows for a single campaign. Cursor-paginated.\n\n**Path parameters**\n\n| Name | Type | Required | Description |\n|---|---|---|---|\n| `shopId` | integer | yes | Shop ID |\n| `region` | string | yes | Region code |\n| `campaignId` | integer | yes | Campaign ID |\n\n**Request body**\n\n`FactShopeeAdCampaignDailySummaryFetchRequest` (optional)\n\n| Field | Type | Required | Description |\n|---|---|---|---|\n| `cursorDatadate` | integer | no | Cursor datadate (YYYYMMDD) |\n| `cursorCampaignId` | integer | no | Cursor campaign id |\n| `pageSize` | integer | no | Max daily rows (default 50) |\n\n**Response** — `CursorPaginatedResult\u003CFactShopeeAdCampaignDailyCursor, FactShopeeAdCampaignDailyGrouped>` — daily records with hourly sub-rows and metrics.\n::\n\n::api-endpoint{method=\"GET\" path=\"\u002Fapi\u002Fshopee\u002Fads\u002Finternal\u002Ffact\u002Fad-campaign-full\u002F{shopId}\u002F{region}\u002Fcampaigns\u002F{campaignId}\u002Fdates\u002F{datadate}\u002Ffetch-hourly-detail\" summary=\"Hourly detail for a campaign\u002Fdate\"}\nHourly performance data for a single campaign on a specific date.\n\n**Path parameters**\n\n| Name | Type | Required | Description |\n|---|---|---|---|\n| `shopId` | integer | yes | Shop ID |\n| `region` | string | yes | Region code |\n| `campaignId` | integer | yes | Campaign ID |\n| `datadate` | integer | yes | Date (YYYYMMDD) |\n\n**Response** — Array of `FactShopeeAdCampaignHourlyEntry` — hourly snapshots (datahour 0–23, spend, impressions, clicks, GMV, orders, ROAS).\n::\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Fshopee\u002Fads\u002Finternal\u002Ffact\u002Fad-cancellation-dedup\u002F{shopId}\u002F{datadateStart}\u002F{datadateEnd}\" summary=\"Ad-cancellation dedup amounts\"}\nDedup amounts for cancelled ads within a date range, optionally filtered to specific campaigns.\n\n**Path parameters**\n\n| Name | Type | Required | Description |\n|---|---|---|---|\n| `shopId` | integer | yes | Shop ID |\n| `datadateStart` | integer | yes | Start date (YYYYMMDD) |\n| `datadateEnd` | integer | yes | End date (YYYYMMDD) |\n\n**Request body** — `ShopeeAdCancellationDedupFetchRequest` (optional) — `campaignIds` (null = all campaigns).\n\n**Response** — `ShopeeAdCancellationDedupResponse` — dedup amounts by campaign plus totals.\n::\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Fshopee\u002Fads\u002Finternal\u002Ffact\u002Fad-total-cancel-dedup\u002F{shopId}\u002F{datadateStart}\u002F{datadateEnd}\" summary=\"Total cancel dedup (all cancels)\"}\nTotal dedup amounts for all cancelled ads (no rebuy check) within a date range, optionally filtered to specific campaigns.\n\n**Path parameters**\n\n| Name | Type | Required | Description |\n|---|---|---|---|\n| `shopId` | integer | yes | Shop ID |\n| `datadateStart` | integer | yes | Start date (YYYYMMDD) |\n| `datadateEnd` | integer | yes | End date (YYYYMMDD) |\n\n**Request body** — `ShopeeAdCancellationDedupFetchRequest` (optional) — `campaignIds`.\n\n**Response** — `ShopeeAdTotalCancelDedupResponse` — total cancel dedup amounts by campaign and aggregated totals.\n::\n\n::api-endpoint{method=\"GET\" path=\"\u002Fapi\u002Fshopee\u002Fads\u002Finternal\u002Fanalytics-summary\u002F{shopId}\u002F{datadateFrom}\u002F{datadateTo}\" summary=\"Hourly-computed analytics summary\"}\nPrecomputed hourly shop-analytics summary across a date range — product, ads, order, return, and engagement stats with a `computedAt` timestamp.\n\n**Path parameters**\n\n| Name | Type | Required | Description |\n|---|---|---|---|\n| `shopId` | integer | yes | Shop ID |\n| `datadateFrom` | integer | yes | Start date (YYYYMMDD) |\n| `datadateTo` | integer | yes | End date (YYYYMMDD) |\n\n**Response** — Array of `ShopeeShopAnalyticsSummary` — per-date rows: product counts, avg price, total stock, ad metrics (impressions\u002Fclicks\u002Fspend\u002FGMV\u002Forders\u002FROAS\u002FCTR), order stats (count\u002Funits\u002Frevenue\u002FAOV), return stats, and engagement (views\u002Flikes\u002Frating\u002Fsales), with `computedAt`.\n::\n\n## Lazada — products (raw)\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Flazada\u002Fproduct\u002Finternal\u002Ffact\u002Ffetch-full-product\" summary=\"Historical Lazada products\"}\nRetrieves historical (Fact) Lazada product snapshots on a specific date, searched by seller, region, and optional item id.\n\n**Request body**\n\nArray of `FactLazadaProductSearchRequest`\n\n| Field | Type | Required | Description |\n|---|---|---|---|\n| `sellerId` | integer | yes | Seller (shop) ID |\n| `region` | string | yes | Region code |\n| `itemId` | integer | no | Item ID filter |\n| `datadate` | integer | yes | Date (YYYYMMDD) |\n\n**Response** — Array of `FactLazadaProduct` — historical snapshots (item id, name, SKU, category, brand, images, status, stock, pricing, rating). *…and more — see the full schema in the OpenAPI spec.*\n::\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Flazada\u002Fproduct\u002Finternal\u002Frt\u002Ffetch-full-product\" summary=\"Current Lazada products\"}\nRetrieves the latest (RT) Lazada product snapshots for a seller\u002Fregion, with optional item-id and updated-after filters.\n\n**Request body**\n\nArray of `RtLazadaProductSearchRequest`\n\n| Field | Type | Required | Description |\n|---|---|---|---|\n| `sellerId` | integer | yes | Seller (shop) ID |\n| `region` | string | yes | Region code |\n| `itemId` | integer | no | Item ID filter |\n| `updatedTimeAfter` | string (date) | no | Only rows updated at\u002Fafter this instant |\n\n**Response** — Array of `RtLazadaProduct` — current product records (item id, name, SKU, category, brand, images, status, stock, pricing, rating). *…and more — see the full schema in the OpenAPI spec.*\n::\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Flazada\u002Fproduct\u002Finternal\u002Frt\u002Ffetch-full-product\u002Fpaginated\" summary=\"Current Lazada products (cursor paginated)\"}\nCursor-paginated RT products with product\u002FSKU search, numeric filters, and custom sort.\n\n**Request body**\n\n`RtLazadaProductPaginatedFetchRequest`\n\n| Field | Type | Required | Description |\n|---|---|---|---|\n| `sellerId` | integer | yes | Seller (shop) ID |\n| `region` | string | yes | Region code |\n| `productSearch` | string | no | Product name search |\n| `itemSkuSearch` | string | no | Item SKU search |\n| `filters` | array | no | Numeric field filters |\n| `sortBy` | string | no | Sort field (sale, margin, cogs) |\n| `sortDirection` | string | no | asc or desc |\n| `cursorRtProductId` | integer | no | Pagination cursor |\n| `cursorSortValue` | number | no | Last-seen sort value |\n| `pageSize` | integer | no | Rows per page (default 200) |\n\n**Response** — `CursorPaginatedResult\u003CRtLazadaProductCursor, RtLazadaProduct>` — product rows plus the next cursor. *…and more — see the full schema in the OpenAPI spec.*\n::\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Flazada\u002Fproduct\u002Finternal\u002Frt\u002Ffetch-product-dashboard\u002Fpaginated\" summary=\"Lazada product dashboard (cursor)\"}\nCursor-paginated RT product dashboard rows with search, filters, sort, margin percentiles, and variant counts.\n\n**Request body** — `RtLazadaProductPaginatedFetchRequest` (same fields as the RT paginated endpoint above).\n\n**Response** — `CursorPaginatedResult\u003CRtLazadaProductCursor, LazadaProductDashboard>` — dashboard rows (id, name, SKU, status, images, margin, sale, 180-day units, COGS, variant count, margin percentiles).\n::\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Flazada\u002Fproduct\u002Finternal\u002Frt\u002Ffetch-product-dashboard\u002Fmargin-stats\" summary=\"Margin stats over product set\"}\nAggregated margin statistics (min, max, median, Q1, Q3) over the filtered Lazada dashboard set.\n\n**Request body** — `RtLazadaProductPaginatedV2FetchRequest` (unified column filters; pagination fields ignored).\n\n**Response** — `ProductMarginStats` — margin percentiles: minimum, Q1, median, Q3, maximum.\n::\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Flazada\u002Fproduct\u002Finternal\u002Frt\u002Ffetch-product-dashboard\u002Fpaginated\u002Fv2\" summary=\"Lazada product dashboard v2 (unified filters)\"}\nCursor-paginated dashboard with the unified column-filter syntax (name, SKU, COGS, sale, margin) and custom sort.\n\n**Request body**\n\n`RtLazadaProductPaginatedV2FetchRequest`\n\n| Field | Type | Required | Description |\n|---|---|---|---|\n| `sellerId` | integer | yes | Seller (shop) ID |\n| `region` | string | yes | Region code |\n| `productSearch` | string | no | Product name search |\n| `itemSkuSearch` | string | no | Item SKU search |\n| `filters` | array | no | Unified column filters (name\u002Fsku\u002Fnumber\u002Fmargin operators) |\n| `sortBy` | string | no | Sort field |\n| `sortDirection` | string | no | asc or desc |\n| `cursorRtProductId` | integer | no | Pagination cursor |\n| `cursorSortValue` | number | no | Sort value cursor |\n| `pageSize` | integer | no | Rows per page |\n\n**Response** — `CursorPaginatedResult\u003CRtLazadaProductCursor, LazadaProductDashboard>` — dashboard rows with margin percentiles.\n::\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Flazada\u002Fproduct\u002Finternal\u002Frt\u002Ffetch-product-dashboard\u002Fpaginated\u002Fv3\" summary=\"Lazada product dashboard (offset)\"}\nOffset-paginated dashboard (page\u002FpageSize) with unified column filters and custom sort.\n\n**Request body**\n\n`RtLazadaProductPaginatedV3FetchRequest`\n\n| Field | Type | Required | Description |\n|---|---|---|---|\n| `sellerId` | integer | yes | Seller (shop) ID |\n| `region` | string | yes | Region code |\n| `filters` | array | no | Unified column filters |\n| `sortBy` | string | no | Sort field (sale, margin, cogs) |\n| `sortDirection` | string | no | asc or desc |\n| `page` | integer | no | 0-based page (default 0) |\n| `pageSize` | integer | no | Rows per page (default 200) |\n\n**Response** — `OffsetPaginatedResult\u003CLazadaProductDashboard>` — page metadata plus dashboard rows.\n::\n\n## TikTok — orders (raw)\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Ftiktok\u002Forder\u002Finternal\u002Frt\u002Forder-full\u002Fcount\" summary=\"Count current TikTok orders\"}\nCounts RT TikTok orders matching the criteria (shop and optional order id).\n\n**Request body** — Array of `RtTikTokOrderSearchRequest` (`shopId` required; `orderId` optional).\n\n**Response** — `integer` — total count of matching RT orders.\n::\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Ftiktok\u002Forder\u002Finternal\u002Frt\u002Forder-full\u002Ffetch\" summary=\"Current TikTok orders\"}\nRetrieves the latest (RT) TikTok order snapshots for a shop, with optional order-id filter.\n\n**Request body** — Array of `RtTikTokOrderSearchRequest` (`shopId` required; `orderId` optional).\n\n**Response** — Array of `RtTikTokOrder` — current order records (order id, status, currency, buyer, total amount, shipping, COD, payment method, recipient address, timestamps, fee\u002Ftax fields) with nested `itemList`, `itemTaxList`, `packageList`. *…and more — see the full schema in the OpenAPI spec.*\n::\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Ftiktok\u002Forder\u002Finternal\u002Frt\u002Forder-full\u002Ffetch-paginated\" summary=\"Current TikTok orders (cursor paginated)\"}\nCursor-paginated RT orders; supports multiple shop\u002Forder-id search criteria.\n\n**Request body**\n\n`RtTikTokOrderPaginatedFetchRequest`\n\n| Field | Type | Required | Description |\n|---|---|---|---|\n| `searches` | array | yes | Array of RtTikTokOrderSearchRequest (shop id, optional order id) |\n| `cursor` | integer | no | Pagination cursor (rt_order_id) |\n| `pageSize` | integer | no | Rows per page (default 200) |\n\n**Response** — `CursorPaginatedResult\u003CLong, RtTikTokOrder>` — current order rows plus the next cursor.\n::\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Ftiktok\u002Forder\u002Finternal\u002Ffact\u002Forder-full\u002Ffetch\" summary=\"Historical TikTok orders\"}\nRetrieves historical (Fact) TikTok order snapshots over a date range, searched by shop and region.\n\n**Request body**\n\nArray of `FactTikTokOrderSearchRequest`\n\n| Field | Type | Required | Description |\n|---|---|---|---|\n| `shopId` | integer | yes | Shop ID |\n| `region` | string | yes | Region code |\n| `datadateStart` | integer | yes | Start date (YYYYMMDD) |\n| `datadateEnd` | integer | yes | End date (YYYYMMDD) |\n\n**Response** — Array of `FactTikTokOrder` — historical order snapshots (order id, status, buyer, amounts, shipping, fees, payment, recipient address, timestamps incl. datadate\u002Fdatahour\u002Fdatamonth) with nested item\u002Ftax\u002Fpackage arrays. *…and more — see the full schema in the OpenAPI spec.*\n::\n\n::api-endpoint{method=\"POST\" path=\"\u002Fapi\u002Ftiktok\u002Forder\u002Finternal\u002Ffact\u002Forder-full\u002Ffetch-paginated\" summary=\"Historical TikTok orders (cursor paginated)\"}\nCursor-paginated Fact orders; supports multiple shop\u002Fregion\u002Fdate-range search criteria.\n\n**Request body**\n\n`FactTikTokOrderPaginatedFetchRequest`\n\n| Field | Type | Required | Description |\n|---|---|---|---|\n| `searches` | array | yes | Array of FactTikTokOrderSearchRequest (shop id, region, date range) |\n| `cursor` | integer | no | Pagination cursor (fact_order_id) |\n| `pageSize` | integer | no | Rows per page (default 200) |\n\n**Response** — `CursorPaginatedResult\u003CLong, FactTikTokOrder>` — historical order rows (with nested item\u002Ftax\u002Fpackage arrays) plus the next cursor. *…and more — see the full schema in the OpenAPI spec.*\n::\n",{"title":631,"description":3961},"wC7EI72wpIqqV6_th4hBXC7godD5jdk7PpuPfMjIfuE",{"data":3970,"body":3971},{},{"type":3972,"children":3973},"root",[3974],{"type":3975,"tag":683,"props":3976,"children":3977},"element",{},[3978],{"type":3979,"value":3961},"text",1792785060034]