API សាធារណៈ & សោ API

ចូលប្រើកន្លែងធ្វើការតាមកម្មវិធី — អានគម្រោង វគ្គ ព្រឹត្តិការណ៍ផ្ទាល់ខ្លួន និងក្រុមចម្រោះ ហើយភ្ជាប់លេខសម្គាល់អតិថិជនទៅវគ្គ — ការពារដោយសោ API ដែលកំណត់វិសាលភាពតាមកន្លែងធ្វើការ។

1. ទិដ្ឋភាពទូទៅ

API MousePlayer អនុញ្ញាតឱ្យទាញទិន្នន័យពីកន្លែងធ្វើការទៅផ្ទាំងគ្រប់គ្រង ឃ្លាំងទិន្នន័យ ឬឧបករណ៍ផ្ទៃក្នុងផ្ទាល់។ ក្រៅពីការភ្ជាប់លេខសម្គាល់អតិថិជនទៅវគ្គ (identify ត្រូវការសោមានវិសាលភាពសរសេរ មើលវិសាលភាពសោ) វាជា ការអានតែប៉ុណ្ណោះ៖ មិនអាចកែ ឬលុបទិន្នន័យតាម API។

  • URL មូលដ្ឋាន៖ https://www.mouseplayer.com/api/v1/
  • ចម្លើយទាំងអស់ជា JSON។
  • សំណើនីមួយៗត្រូវបានផ្ទៀងផ្ទាត់ដោយសោ API ហើយកំណត់វិសាលភាពស្វ័យប្រវត្តិទៅកន្លែងធ្វើការដែលសោជាកម្មសិទ្ធិ — សោពីកន្លែងធ្វើការមួយមិនដែលអាចឃើញទិន្នន័យកន្លែងផ្សេង សូម្បីតែដោយចៃដន្យ។
  • ការថតចាក់វគ្គឡើងវិញពេញលេញ (ចលនាកណ្តុរ រូបថត DOM) មិន ត្រូវបានផ្តល់តាម API ទេ។ ទទួលបានទិន្នន័យមេតាវគ្គ ការមើលទំព័រ ព្រឹត្តិការណ៍ផ្ទាល់ខ្លួន និងក្រុមចម្រោះ — គ្រប់គ្រាន់សម្រាប់បង្កើតរបាយការណ៍ និងផ្ទាំងគ្រប់គ្រង ដោយមិនបញ្ជូនទិន្នន័យចាក់ឡើងវិញដើមទៅមក។

2. ការផ្ទៀងផ្ទាត់

បង្កើត និងគ្រប់គ្រងសោ API ក្រោម សោ API ក្នុងម៉ឺនុយគណនី (/api-keys)។ មានតែម្ចាស់ និងអ្នកគ្រប់គ្រងកន្លែងធ្វើការដែលអាចបង្កើត ឬដកហូតសោ។

រក្សាសោជាសម្ងាត់។ វាផ្តល់សិទ្ធិអានអ្វីទាំងអស់ក្នុងកន្លែងធ្វើការ។ សោពេញលេញបង្ហាញម្តងគត់ភ្លាមក្រោយបង្កើត — រក្សាវាក្នុងកម្មវិធីគ្រប់គ្រងពាក្យសម្ងាត់ ឬឃ្លាំងសោសម្ងាត់។ បើបាត់ ដកហូតវា ហើយបង្កើតថ្មី។

ផ្ញើសោជាតូខឹន Bearer ក្នុងបឋមកថា Authorization នៃសំណើនីមួយៗ៖

# List projects in your workspace curl -H "Authorization: Bearer mp_live_..." \ https://www.mouseplayer.com/api/v1/projects

សោបាត់ មានទម្រង់ខុស ឬត្រូវបានដកហូត ទទួលចម្លើយ 401 ៖

{ "error": "Invalid or missing API key. Use: Authorization: Bearer <key>" }

តម្រូវការកញ្ចប់សេវា

REST API ជាផ្នែកនៃកញ្ចប់ Business និង Enterprise ។ កញ្ចប់សេវាយកពី ម្ចាស់ កន្លែងធ្វើការ ដូច្នេះសមាជិកក្រុមដែលបានអញ្ជើញទទួលតាម។ ការពិនិត្យរត់លើ រាល់សំណើមិនមែនតែពេលបង្កើតសោ — បើបន្ថយកញ្ចប់កន្លែងធ្វើការ សោដែលមានស្រាប់ឈប់ដំណើរការ ហើយផ្តល់ 403។

វិសាលភាពសោ

សោនីមួយៗមានវិសាលភាពក្នុងបុព្វបទផ្ទាល់ ដូច្នេះអាចដឹងមុខងារដោយគ្រាន់តែមើលវា — ក្នុង .envក្នុងសំបុត្របញ្ហា ឬក្នុងស្ថានីយ។

បុព្វបទអត្ថន័យ
mp_ro_អានតែប៉ុណ្ណោះ។ អានគម្រោង វគ្គ ព្រឹត្តិការណ៍ និងក្រុមចម្រោះ។ មិនអាចប្តូរអ្វី។
mp_rw_អាន និងសរសេរ។ អ្វីទាំងអស់ខាងលើ បន្ថែមការភ្ជាប់លេខសម្គាល់អតិថិជនតាមចំណុចបញ្ចប់ identify។
ជ្រើសវិសាលភាពពេលបង្កើតសោ។ លំនាំដើមគឺអានតែប៉ុណ្ណោះ។ ប្រើសោអានតែប៉ុណ្ណោះលើចំណុចបញ្ចប់សរសេរ នឹងផ្តល់ 403 ជាមួយសារប្រាប់ប្រភេទសោ និងតម្រូវការចំណុចបញ្ចប់។ មិនអាចប្តូរវិសាលភាពក្រោយមក — បង្កើតសោថ្មី ហើយដកហូតសោចាស់។

3. កម្រិតអត្រា

សោ API នីមួយៗត្រូវបានកំណត់ត្រឹម 60 សំណើក្នុងមួយនាទីដោយតាមដានតាមបង្អួចពេលរំកិល។ ពេលលើស សំណើទទួលចម្លើយ 429 រហូតដល់បង្អួចពេលទំនេរ៖

{ "error": "Rate limit exceeded. Max 60 requests per minute." }

កំពុងបង្កើតអ្វីដែលត្រូវការកម្រិតខ្ពស់ជាង? ទាក់ទងតាម ជំនួយ ហើយប្រាប់ករណីប្រើប្រាស់។

4. ចំណុចបញ្ចប់

GET/api/v1/projects

រាយគម្រោងទាំងអស់ (គេហទំព័រដែលតាមដាន) ក្នុងកន្លែងធ្វើការ។

{ "data": [ { "channelid": "955a45df5ee842cb", "domain": "yourdomain.com", "status": "active", "total_traffic_bytes": 27304765, "created_at": "2026-07-19 22:06:39", "last_used": "2026-08-05 01:12:55" } ] }

GET/api/v1/projects/{channelid}/sessions

រាយវគ្គអ្នកចូលមើលដែលបានថតសម្រាប់គម្រោង ថ្មីបំផុតមុន។ មានការបែងចែកទំព័រ។

ប៉ារ៉ាម៉ែត្រសំណួរការពិពណ៌នា
pageលេខទំព័រ លំនាំដើម 1។
per_pageលទ្ធផលក្នុងមួយទំព័រ លំនាំដើម 25អតិបរមា 100។
sinceតែវគ្គចាប់ផ្តើមនៅ ឬក្រោយកាលបរិច្ឆេទនេះ (YYYY-MM-DD)។
untilតែវគ្គចាប់ផ្តើមនៅ ឬមុនកាលបរិច្ឆេទនេះ។
{ "data": [ { "session_id": "s_kfmist058_1785795295504", "visitor_id": "v_sv90jdpzo_1785795296042", "custom_user_id": null, "country": "DE", "device_type": "desktop", "is_bot": 0, "start_time": "2026-08-04 00:14:56", "end_time": "2026-08-04 00:16:41", "duration_seconds": 105 } ], "pagination": { "page": 1, "per_page": 25, "total": 142, "total_pages": 6 } }

GET/api/v1/sessions/{session_id}

ទិន្នន័យមេតាសម្រាប់វគ្គមួយ និងការមើលទំព័ររបស់វា។ មានចេតនាមិនរួមបញ្ចូលទិន្នន័យចាក់ឡើងវិញពេញលេញ — ប្រើកម្មវិធីចាក់ក្នុងផ្ទាំងគ្រប់គ្រងសម្រាប់វា។

{ "data": { "session_id": "s_kfmist058_1785795295504", "channelid": "955a45df5ee842cb", "visitor_id": "v_sv90jdpzo_1785795296042", "country": "DE", "asn_org": "Deutsche Telekom AG", "referrer": "https://duckduckgo.com/", "device_type": "desktop", "start_time": "2026-08-04 00:14:56", "end_time": "2026-08-04 00:16:41", "duration_seconds": 105, "pageviews": [ { "pageview_id": 1199, "url": "https://yourdomain.com/pricing", "page_title": "Pricing", "start_time": "2026-08-04 00:14:56", "end_time": "2026-08-04 00:16:41" } ] } }

GET/api/v1/sessions/{session_id}/events

ព្រឹត្តិការណ៍ផ្ទាល់ខ្លួនដែលដំណើរការក្នុងវគ្គ (ដូចព្រឹត្តិការណ៍ដែលផ្ញើដោយ mp('event', ...)) រួមទាំងប៉ារ៉ាម៉ែត្ររបស់វា។

{ "data": [ { "event_id": 61, "pageview_id": 1199, "event_name": "add_to_cart", "created_at": "2026-08-04 00:14:59", "params": { "item_id": "SKU_98765", "price": 299.99 } } ] }

GET/api/v1/projects/{channelid}/segments

រាយក្រុមចម្រោះអ្នកចូលមើលដែលបានកំណត់សម្រាប់គម្រោង (ទាំងក្រុមជាក់លាក់គម្រោង និងក្រុមទូទាំងកន្លែងធ្វើការ)។

{ "data": [ { "segment_id": 4, "name": "High Intent Visitors", "description": "Pageviews > 5", "badge_color": "cyan", "is_global": 0, "created_at": "2026-08-03 00:00:43" } ] }

5. ភ្ជាប់លេខសម្គាល់អតិថិជនពីប្រព័ន្ធខាងក្រោយ

កម្មវិធីរុករកជាញឹកញាប់មិនដឹងថាអ្នកណាកំពុងប្រើ។ ក្នុងផលិតផល B2B អត្តសញ្ញាណត្រូវបានកំណត់ក្រោយចូលគណនី — ក្នុងប្រព័ន្ធខាងក្រោយ។ ក្នុងហាង វាត្រូវបានកំណត់ជាមួយការបញ្ជាក់ការបញ្ជាទិញ។ ចំណុចបញ្ចប់នេះសម្រាប់ពេលនោះជាក់លាក់។

POST /api/v1/sessions/{session_id}/identify
Authorization: Bearer mp_live_xxxxxxxxxxxx
Content-Type: application/json

{"user_id": "customer-4711"}

// 200 OK
{"data": {"session_id": "s_a1b2c3", "user_id": "customer-4711",
          "changed": true, "previous": null, "webhook_queued": true}}

បន្ទាប់មកលេខសម្គាល់បង្ហាញក្នុងបញ្ជីវគ្គ អាចស្វែងរកនៅទីនោះ ហើយ webhook session_identified ដំណើរការ — នេះជាវិធីដែលវាទៅដល់ CRM។

ការហៅពីរដងដោយលេខសម្គាល់ដដែលមានសុវត្ថិភាព។ ចម្លើយត្រឡប់ជាមួយ "changed": false ហើយមិនផ្ញើ webhook។ ការបញ្ជាទិញដដែលមិនបង្កើតអតិថិជនសក្តានុពលទីពីរ។
ស្ថានភាពពេលណា
400វាលបាត់ user_id វែងលើស 128 តួអក្សរ ឬមានតួអក្សរបញ្ជា។ យើងបដិសេធជំនួសកាត់ខ្លី — លេខសម្គាល់ដែលកាត់ដោយស្ងាត់មិនផ្គូផ្គងអ្វីក្នុង CRM ប៉ុន្តែមើលទៅជោគជ័យ។
404វគ្គមិនមាន ឬ មិនជារបស់កន្លែងធ្វើការ។ មានចេតនាឆ្លើយដូចគ្នាសម្រាប់ទាំងពីរ។
403កញ្ចប់សេវាកន្លែងធ្វើការមិនរួម API។

6. Webhook៖ ផ្ទៀងផ្ទាត់ហត្ថលេខា

Webhook កំណត់តាមគម្រោងក្រោម ការតភ្ជាប់រួមដែលមានសោសម្ងាត់ចុះហត្ថលេខាផងដែរ។ ការបញ្ជូននីមួយៗផ្ទុកបឋមកថាទាំងនេះ៖

បឋមកថាអត្ថន័យ
X-MousePlayer-Eventឈ្មោះព្រឹត្តិការណ៍ ឧ. session_identified
X-MousePlayer-Timestampវិនាទី Unix — ជាផ្នែកនៃអត្ថបទចុះហត្ថលេខា
X-MousePlayer-Attempt1 នៅការសាកដំបូង ខ្ពស់ជាងនៅការសាកឡើងវិញ
X-MousePlayer-Signaturesha256=<hex>

ហត្ថលេខាជា HMAC-SHA256 លើ timestamp + "." + raw bodyដោយប្រើសោសម្ងាត់ចុះហត្ថលេខារបស់គម្រោង។

// PHP
$erwartet = 'sha256=' . hash_hmac('sha256', $timestamp . '.' . $rawBody, $secret);
if (!hash_equals($erwartet, $signature)) { http_response_code(401); exit; }

// Node
const expected = 'sha256=' + crypto.createHmac('sha256', secret)
                                     .update(timestamp + '.' + rawBody).digest('hex');
ចុះហត្ថលេខាលើតួទិន្នន័យ ដើម មុនបំបែក JSON។ ការធ្វើសៀរៀលឡើងវិញផ្លាស់ប្តូរលំដាប់សោ និងចន្លោះ ហើយហត្ថលេខានឹងមិនដែលត្រូវគ្នា។ បដិសេធផងដែរនូវត្រាពេលវេលាដែលចាស់លើសប៉ុន្មាននាទី — នេះជាគោលបំណងរបស់ត្រាពេលវេលា។

ការបញ្ជូន និងការសាកឡើងវិញ

ការបញ្ជូនបរាជ័យត្រូវបានសាកឡើងវិញបន្ទាប់ពី 1 នាទី 5 នាទី 15 នាទី 1 ម៉ោង និង 6 ម៉ោងរួចបោះបង់។ 4xx ដែលឆ្លើយក្រៅពី 408 និង 429 នឹង មិន ត្រូវបានសាកឡើងវិញ — វាប្រាប់ "មិនមែនរបៀបនេះ" មិនមែន "មិនមែនឥឡូវ"។ ឆ្លើយ 2xx ឱ្យលឿន ហើយធ្វើការក្រោយ។ ការបញ្ជូនអស់ពេលបន្ទាប់ពី 10 វិនាទី។

ព្រឹត្តិការណ៍ដែលមាន

ព្រឹត្តិការណ៍ដំណើរការ
session_identifiedពេលវគ្គទទួលលេខសម្គាល់អតិថិជនជាលើកដំបូង — ពីកម្មវិធីរុករក ឬ API
session_endedម្តង ពេលវគ្គបិទ
goal_reachedម្តងក្នុងមួយវគ្គ ពេលព្រឹត្តិការណ៍ផ្ទាល់ខ្លួនសម្រេចគោលដៅមួយ។ តែគោលដៅប្រភេទ “event” — គោលដៅ URL រយៈពេល ការមើលទំព័រ និងចីវលោមិនត្រូវបានវាយតម្លៃ។ ផ្ទុក goal_id, goal_name, goal_value និង currency។
high_value_sessionពេលអ្នកចូលមើលឆ្លងកម្រិតតម្លៃរបស់គម្រោងនេះជាលើកដំបូងក្នុងថ្ងៃណាមួយ។ កម្រិតនេះ គណនាពីការបែងចែកពិន្ទុផ្ទាល់ (ភាគរយទី 90 ក្នុង 90 ថ្ងៃចុងក្រោយ) មិនមែនលេខថេរ ហើយមិនមានរហូតដល់អ្នកចូលមើលយ៉ាងតិច 20 នាក់ត្រូវបានដាក់ពិន្ទុ។ ផ្ទុក visitor_id, value_score, threshold និងវគ្គដែលគួរមើលបំផុតក្នុងថ្ងៃនោះ។
funnel_dropoffនៅចុងវគ្គដែលចូលចីវលោមួយ ប៉ុន្តែមិនបញ្ចប់។ ប្រាប់ជំហានដែលឈប់ (dropped_at)។ ការបោះបង់ជាអវត្តមានព្រឹត្តិការណ៍ ដូច្នេះអាចដឹងតែពេលវគ្គបញ្ចប់។ វគ្គដែលមិនធ្លាប់ចូលចីវលោមិនមែនជាការបោះបង់ ហើយមិនបង្កព្រឹត្តិការណ៍។
high_friction_sessionម្តងក្នុងមួយវគ្គ ពេលពិន្ទុឧបសគ្គឈានដល់កម្រិតកំណត់ជាលើកដំបូង (លំនាំដើម 60 ក្នុងចំណោម 100)។ ផ្ទុក friction_scoreសញ្ញាដែលជាមូលដ្ឋាន (reasons) និងសញ្ញាដែលធ្វើឱ្យឆ្លងកម្រិត (trigger)។
element_brokenម្តង ពេលធាតុតាមដានរកមិនឃើញអ្វីក្នុងការមើលទំព័រដែលបានពិនិត្យអស់ជាច្រើនថ្ងៃ — ជាធម្មតាក្រោយរចនាឡើងវិញ។ វាដំណើរការម្តងទៀតតែក្រោយការសម្គាល់បានត្រូវគ្នា ហើយខូចម្តងទៀត។ ព្រឹត្តិការណ៍នេះជារបស់ គ្មានវគ្គណាមួយ៖ session_id និង session_url ជា null, link_url បើកការសម្គាល់ជំនួស ហើយ subject_id ប្រាប់ឈ្មោះការសម្គាល់ — ដូចគ្នាសម្រាប់គ្រប់កំណែ ដូច្នេះឧបករណ៍ជ្រើសរើសថ្មីដែលខូចម្តងទៀតចូលហេតុការណ៍បើកដដែល។ ផ្ទុក rule_id, rule_name, selector, page, checked_page_views, window_days និង last_matched។ គ្មានទិន្នន័យអ្នកចូលមើល។
element_recoveredសញ្ញាបញ្ចប់បញ្ហាសម្រាប់ element_broken៖ ម្តង ពេលការសម្គាល់ពិតជារកឃើញធាតុវិញ — ការមើលទំព័រតិចពេកមិនគ្រប់គ្រាន់។ ផ្ញើតែបើ element_broken បានចេញតាម webhook ហើយវាគ្មានប៊ូតុងបើកផ្ទាល់៖ ការជាវ element_broken រួមបញ្ចូលវា។ មាន subject_idដូចគ្នា ដូច្នេះ PagerDuty ដោះស្រាយហេតុការណ៍ ហើយ Opsgenie បិទការជូនដំណឹង។ ផ្ទុក matched_page_views និង checked_page_views បន្ថែម។
anomaly_detectedម្តងក្នុងមួយថ្ងៃ ពេលម្សិលមិញខុសយ៉ាងច្បាស់ពី 28 ថ្ងៃមុន៖ វគ្គតិច ឬច្រើនជាងខ្លាំង អត្រាគោលដៅធ្លាក់ចុះ វគ្គមានឧបសគ្គ ឬកំហុស JS ច្រើនជាង។ ម៉ែត្រ និងទិសដដែលនៅស្ងាត់មួយសប្តាហ៍ (អាចកែបាន)។ ព្រឹត្តិការណ៍នេះជារបស់ គ្មានវគ្គណាមួយ៖ session_id និង session_url ជា null, link_url បើកទិដ្ឋភាពទូទៅគម្រោង ហើយ subject_id ប្រាប់ម៉ែត្រ ទិស និងថ្ងៃ។ ផ្ទុក metric (sessions, goal_rate, friction_rate, js_error_rate, lcp_p75, inp_p75, cls_p75), direction, day, value, expected, sessions, robust_z, z_score និងអត្ថបទអាចអានបាន summary និង hint។ គ្មានទិន្នន័យអ្នកចូលមើល។ សម្រាប់ Web Vitals measurements ជំនួស sessionsហើយ page (ទទេសម្រាប់គេហទំព័រទាំងមូល) និង device (desktop ឬ mobil) ប្រាប់កន្លែងដែលកើតឡើង; link_url បន្ទាប់មកបើកផ្ទាំង Web Vitals។
rage_clickពេលរកឃើញការចុចដោយកំហឹង
error_detectedពេលមានករណីលើកលែងខាងមុខ
ceការជាវរួមសម្រាប់ព្រឹត្តិការណ៍ផ្ទាល់ខ្លួន។ វា មិន រួមបញ្ចូលព្រឹត្តិការណ៍ខាងលើ — ព្រឹត្តិការណ៍ទាំងនោះមានប៊ូតុងបើកផ្ទាល់។

7. កំហុស & កូដស្ថានភាព

ស្ថានភាពអត្ថន័យ
200ជោគជ័យ។
401សោ API បាត់ ទម្រង់ខុស ឬត្រូវបានដកហូត។
404គម្រោង ឬវគ្គដែលស្នើមិនមាន ឬមិនជារបស់កន្លែងធ្វើការ។
429លើសកម្រិតអត្រា — ផ្ញើលើស 60 សំណើក្នុងមួយនាទីជាមួយសោនេះ។
403កញ្ចប់កន្លែងធ្វើការមិនរួម REST API។ សារប្រាប់ទាំងកញ្ចប់ដែលត្រូវការ និងកញ្ចប់បច្ចុប្បន្ន។

8. ចំណាំសុវត្ថិភាព

  • សោអានតែប៉ុណ្ណោះ (mp_ro_) មិនអាចប្តូរអ្វី។ សោសរសេរ (mp_rw_) អាចតែភ្ជាប់លេខសម្គាល់អតិថិជន។ គ្មានសោណាអាចលុបទិន្នន័យ ឬនាំចេញទិន្នន័យចាក់ឡើងវិញដើម។
  • សំណើនីមួយៗត្រូវបានកំណត់វិសាលភាពស្វ័យប្រវត្តិទៅកន្លែងធ្វើការរបស់សោ — គ្មានវិធីបញ្ជូនលេខសម្គាល់កន្លែងធ្វើការផ្សេង ហើយឃើញទិន្នន័យអ្នកផ្សេង។
  • ដកហូតសោគ្រប់ពេលពី /api-keys។ ការដកហូតមានប្រសិទ្ធភាពភ្លាម។
  • ចាត់ទុកសោ API ដូចពាក្យសម្ងាត់។ បើ commit វាទៅឃ្លាំងកូដសាធារណៈដោយចៃដន្យ ដកហូតភ្លាម ហើយបង្កើតថ្មី។

ទំព័រព្រឹត្តិការណ៍មានកម្រិត (API v1, 14 តុលា 2026)

GET /api/v1/sessions/{session_id}/events ផ្តល់អតិបរមា 100 ព្រឹត្តិការណ៍តាមលំនាំដើម។ កំណត់ per_page ជាចំនួនគត់ពី 1 ដល់ 100។ បន្តតាម pagination.next_cursor ដោយផ្ញើ cursor ដដែលក្នុងសំណើបន្ទាប់ ហើយរក្សាវគ្គ និងកន្លែងធ្វើការដដែល។ ព្រឹត្តិការណ៍តម្រៀបតាម created_at និង event_id។ Cursor មានហត្ថលេខា ហើយភ្ជាប់ទៅវគ្គ និងកន្លែងធ្វើការនោះ។ មិនផ្តល់ចំនួនសរុប ឬលេខទំព័រ។

អារេ data និងផែនទី params ដែលមានស្រាប់នៅតែអាចប្រើបាន។ pagination.returned ជាចំនួនពិតដែលផ្តល់ ហើយ pagination.has_more បង្ហាញថាមានទំព័របន្ទាប់។ next_cursor ជា null ពេលបញ្ចប់។ ចម្លើយកំណត់ត្រឹម 524288 បៃ ដូច្នេះទំព័រមួយអាចមានព្រឹត្តិការណ៍តិចជាង per_page។ ក្នុងព្រឹត្តិការណ៍មួយ ផ្តល់អតិបរមា 128 ជួរប៉ារ៉ាម៉ែត្រ។ params_truncated ជា true បើមានច្រើនជាង។ ប៉ារ៉ាម៉ែត្រខ្សែអក្សរនីមួយៗនៅរក្សាកម្រិតមូលដ្ឋានទិន្នន័យ 255 តួអក្សរ។ ប៉ារ៉ាម៉ែត្រដែលកាត់ចេញមិនអាចប្រើតាមចំណុចបញ្ចប់នេះ។ ការបន្ថយ per_page មិនបង្កើនកម្រិតប៉ារ៉ាម៉ែត្រ។

ទំហំទំព័រមិនត្រឹមត្រូវ cursor ដែលកែ និង cursor សម្រាប់វគ្គ/កន្លែងធ្វើការផ្សេងផ្តល់ 400។ ទិន្នន័យព្រឹត្តិការណ៍មួយដែលធំពេកផ្តល់ 413។ ការពិនិត្យសិទ្ធិដែលមានស្រាប់នៅតែផ្តល់ 401, 403, 404 ឬ 409 តាមករណី។

កម្រិតនៅតែ 60 សំណើដែលបានផ្ទៀងផ្ទាត់ក្នុងមួយសោ API ក្នុងមួយនាទី។ ពេលអស់ ផ្តល់ 429 ជាមួយ Retry-After: 60។ បើ Redis ឬឧបករណ៍កំណត់អត្រាមិនអាចប្រើបាន សំណើផ្តល់ 503 ជាមួយ Retry-After: 5។ មិនដែលអនុញ្ញាតដោយគ្មានកម្រិតទេ។ គោរព Retry-After ហើយបន្ថែមការរង់ចាំថយក្រោយចៃដន្យ។ កុំសាកឡើងវិញជារង្វិលជុំរហ័ស។ ការបរាជ័យមូលដ្ឋានទិន្នន័យព្រឹត្តិការណ៍ក៏ផ្តល់ 503។ Cursor មិនបង្កករូបថតទេ៖ ការបញ្ចូលព្រមគ្នាដែលមានត្រាពេលវេលាចាស់ជាង អាចត្រូវការស្កេនថ្មី។

GET /api/v1/sessions/s_example/events?per_page=25
GET /api/v1/sessions/s_example/events?per_page=25&cursor=SIGNED_CURSOR

/api/v1/native ជាផ្លូវគ្រប់គ្រងប្រព័ន្ធខាងក្រោយសម្រាប់តែ Dev នៃការមើលជាមុន SDK ណេទីវ។ វានៅបិទក្នុងផលិតកម្ម។ សោ Bearer ខាងក្រោយត្រូវការវិសាលភាពអានសម្រាប់ list/replay និងសរសេរសម្រាប់ register/grant/delete/disable។ មានការពិនិត្យភាពអាចប្រើការមើលជាមុនណេទីវបន្ថែម។ កុំបង្កប់សោ API កន្លែងធ្វើការអចិន្ត្រៃយ៍ក្នុងកម្មវិធីចល័ត។