ব্যবহারকারী কার্যকলাপ API

ইউজার অ্যাক্টিভিটি API একটি Google Analytics সম্পত্তির মালিককে একটি একক ব্যবহারকারীর সাথে সম্পর্কিত সমস্ত বিশ্লেষণ পরিমাপ ডেটা পুনরুদ্ধার করার অনুমতি দেয়। বিশেষত, API একটি নির্দিষ্ট ব্যবহারকারী আইডি বা ক্লায়েন্ট আইডির সাথে সম্পর্কিত সমস্ত পরিমাপ ডেটা পুনরুদ্ধার করে।

একটি ব্যবহারকারী কার্যকলাপ অনুরোধ করা

একটি ব্যবহারকারী কার্যকলাপ অনুরোধ করতে, নিম্নলিখিত ক্ষেত্রগুলির সাথে একটি অনুরোধ অবজেক্ট তৈরি করুন:

  1. ব্যবহারকারীর সাথে যুক্ত ক্লায়েন্ট আইডি বা ইউজার আইডি

  2. ব্যবহারকারীর সাথে সম্পর্কিত ডেটা ধারণকারী একটি অ্যানালিটিক্স ভিউ আইডি।

  3. প্রয়োজন না হলেও, আপনি যে ডেটাতে আগ্রহী তার জন্য সম্ভবত একটি তারিখ পরিসরের প্রয়োজন হবে। ডিফল্টরূপে, API গত সপ্তাহের ব্যবহারকারীর কার্যকলাপ তালিকাভুক্ত করে।

নমুনা অনুরোধ

POST https://analyticsreporting.googleapis.com/v4/userActivity:search

{
    "viewId": "9999999",
    "user": {
        "type": "CLIENT_ID",
        "userId": "1034600000.76425000000"
    },
    "dateRange": {
        "startDate": "2018-01-01",
        "endDate": "2018-12-31",
    }
}

নমুনা প্রতিক্রিয়া

{
    "sessions": [{
        "sessionId": "1539184430",
        "deviceCategory": "desktop",
        "platform": "Windows",
        "dataSource": "web",
        "sessionDate": "2018-10-10"
        "activities": [{
            "activityTime": "2018-10-10T08:13:50.555105Z",
            "source": "(direct)",
            "medium": "(none)",
            "channelGrouping": "Direct",
            "campaign": "(not set)",
            "keyword": "(not set)",
            "hostname": "shop.googlemerchandisestore.com",
            "landingPagePath": "/gpsmap",
            "activityType": "PAGEVIEW",
            "customDimension": [{
                "index": 1,
                "value": "(not set)"
            }, ...]
        }, ...]
    }, ...]
    "totalRows": 1000,
    "nextPageToken": "A6JGY3",
    "sampleRate": 1
}

অধিবেশন এবং কার্যক্রম

ব্যবহারকারী কার্যকলাপ ডেটা সেশন দ্বারা গোষ্ঠীবদ্ধ করা হয়. প্রতিটি সেশনে সেশন সম্পর্কে সাধারণ তথ্য থাকে, যেমন সেশন আইডি এবং তারিখ, সেইসাথে সেই সেশনের জন্য ব্যবহারকারীর কার্যকলাপের একটি তালিকা। একটি সেশনে ব্যবহারকারীর কার্যকলাপ প্রতিটি "হিট" নিয়ে গঠিত যার জন্য ব্যবহারকারী দায়ী ছিল; এর মধ্যে রয়েছে পেজভিউ, ইকমার্স ইভেন্ট এবং gtag(...) বা ga(...) এর মাধ্যমে পাঠানো কাস্টম ইভেন্টের মতো জিনিস।

পৃষ্ঠা সংখ্যা

ইউজার অ্যাক্টিভিটি API বড় ডেটা সেটকে একাধিক অনুরোধ এবং প্রতিক্রিয়াগুলিতে বিভক্ত করতে পৃষ্ঠা সংখ্যা ব্যবহার করে। যাইহোক, যেহেতু API দ্বারা প্রত্যাবর্তিত ডেটা ক্রমানুসারে গঠন করা হয়, তাই সঠিকভাবে ডেটা সংযোজন করার জন্য বিকাশকারীকে কিছু বিশেষ বিবেচনার প্রয়োজন হয়।

পেজিনেশনের উদ্দেশ্যে মৌলিক "সারি" টাইপ হল কার্যকলাপ। যেহেতু ব্যবহারকারীর ডেটা সেশন অনুসারে গোষ্ঠীভুক্ত করা হয়, এর মানে হল একটি সেশনের ভিতরে একটি পৃষ্ঠার সীমানা ঘটতে পারে এবং সেই সেশনে একাধিক পৃষ্ঠা জুড়ে ক্রিয়াকলাপ থাকতে পারে।

নমুনা তথ্য

প্রদর্শনের উদ্দেশ্যে, আমরা নিম্নলিখিত নমুনা ডেটা ব্যবহার করব। এই উদাহরণে, ব্যবহারকারী 3 দিনের মধ্যে 6টি সেশনে সাইটের সাথে ইন্টারঅ্যাক্ট করেছেন৷

তারিখ সেশন আইডি ইভেন্ট লেবেল সময়
2018-11-23 1 10:26
2018-11-23 1 10:32
2018-11-23 1 10:39
2018-11-23 2 18:04
2018-11-23 2 18:11
2018-11-23 2 18:26
2018-11-24 3 11:26
2018-11-24 3 11:29
2018-11-24 3 11:39
2018-11-24 3 ডি 11:42
2018-11-24 4 23:50
2018-11-24 4 23:54
2018-11-25 5 00:02
2018-11-25 5 ডি 00:13
2018-11-25 6 13:01
2018-11-25 6 13:09
2018-11-25 6 13:12
2018-11-25 6 ডি 13:23

এক পাতা

আপনি যদি কমপক্ষে 18 pageSize সহ একটি ব্যবহারকারীর কার্যকলাপের অনুরোধ করেন, তবে সমস্ত ডেটা একটি একক পৃষ্ঠায় বিতরণ করা হবে এবং দেখতে এইরকম কিছু দেখাবে:

POST https://analyticsreporting.googleapis.com/v4/userActivity:search

{
    "viewId": "9999999",
    "user": {
        "type": "CLIENT_ID",
        "userId": "1034600000.76425000000",
    },
    "dateRange": {
        "startDate": "2018-11-20",
        "endDate": "2018-11-30",
    },
    "pageSize": 100,
}
{
    "totalRows": 18,
    "sessions": [{
            "sessionId": "1",
            "sessionDate": "2018-11-23",
            "activities": [{
                    "activityTime": "2018-11-23T10:26:00",
                    "event": {"eventLabel": "A"}
                }, {
                    "activityTime": "2018-11-23T10:32:00",
                    "event": {"eventLabel": "B"}
                }, {
                    "activityTime": "2018-11-23T10:39:00",
                    "event": {"eventLabel": "C"}
                }]
        }, {
            "sessionId": "2",
            "sessionDate": "2018-11-23",
            "activities": [{
                    "activityTime": "2018-11-23T18:04:00",
                    "event": {"eventLabel": "A"}
                }, {
                    "activityTime": "2018-11-23T18:11:00",
                    "event": {"eventLabel": "B"}
                }, {
                    "activityTime": "2018-11-23T18:26:00",
                    "event": {"eventLabel": "C"}
                }]
        }, {
            "sessionId": "3",
            "sessionDate": "2018-11-24",
            "activities": [{
                    "activityTime": "2018-11-24T11:26:00",
                    "event": {"eventLabel": "A"}
                }, {
                    "activityTime": "2018-11-24T11:29:00",
                    "event": {"eventLabel": "B"}
                }, {
                    "activityTime": "2018-11-24T11:39:00",
                    "event": {"eventLabel": "C"}
                }, {
                    "activityTime": "2018-11-24T11:42:00",
                    "event": {"eventLabel": "D"}
                }]
        }, {
            "sessionId": "4",
            "sessionDate": "2018-11-24",
            "activities": [{
                    "activityTime": "2018-11-24T23:50:00",
                    "event": {"eventLabel": "A"}
                }, {
                    "activityTime": "2018-11-24T23:54:00",
                    "event": {"eventLabel": "B"}
                }]
        }, {
            "sessionId": "5",
            "sessionDate": "2018-11-25",
            "activities": [{
                    "activityTime": "2018-11-25T00:01:00",
                    "event": {"eventLabel": "C"}
                }, {
                    "activityTime": "2018-11-25T00:13:00",
                    "event": {"eventLabel": "D"}
                }]
        }, {
            "sessionId": "6",
            "sessionDate": "2018-11-25",
            "activities": [{
                    "activityTime": "2018-11-25T13:01:00",
                    "event": {"eventLabel": "A"}
                }, {
                    "activityTime": "2018-11-25T13:09:00",
                    "event": {"eventLabel": "B"}
                }, {
                    "activityTime": "2018-11-25T10:12:00",
                    "event": {"eventLabel": "C"}
                }, {
                    "activityTime": "2018-11-25T10:23:00",
                    "event": {"eventLabel": "D"}
                }]
        }]
}

একাধিক পৃষ্ঠা

যাইহোক, যদি আপনার পৃষ্ঠার আকার 5 হয়, তাহলে এই ডেটা 4টি প্রতিক্রিয়া পৃষ্ঠায় বিভক্ত হবে:

তারিখ সেশন আইডি ইভেন্ট লেবেল সময়
পৃষ্ঠা 1:
2018-11-23 1 10:26
2018-11-23 1 10:32
2018-11-23 1 10:39
2018-11-23 2 18:04
2018-11-23 2 18:11
পৃষ্ঠা ২:
2018-11-23 2 18:26
2018-11-24 3 11:26
2018-11-24 3 11:29
2018-11-24 3 11:39
2018-11-24 3 ডি 11:42
পৃষ্ঠা 3:
2018-11-24 4 23:50
2018-11-24 4 23:54
2018-11-25 5 00:02
2018-11-25 5 ডি 00:13
2018-11-25 6 13:01
পৃষ্ঠা 4:
2018-11-25 6 13:09
2018-11-25 6 13:12
2018-11-25 6 ডি 13:23

লক্ষ্য করুন যে সেশন 2 প্রথম এবং দ্বিতীয় পৃষ্ঠা জুড়ে বিভক্ত হয়েছে এবং 24 নভেম্বরের 2টি অধিবেশন দ্বিতীয় এবং তৃতীয় পৃষ্ঠা জুড়ে বিভক্ত হয়েছে৷ প্রতিক্রিয়া এই মত কিছু দেখতে হবে:

{
    "totalRows": 18,
    "nextPageToken": "UGMGQS",
    "sessions": [{
            "sessionId": "1",
            "sessionDate": "2018-11-23",
            "activities": [{
                    "activityTime": "2018-11-23T10:26:00",
                    "event": {"eventLabel": "A"}
                }, {
                    "activityTime": "2018-11-23T10:32:00",
                    "event": {"eventLabel": "B"}
                }, {
                    "activityTime": "2018-11-23T10:39:00",
                    "event": {"eventLabel": "C"}
                }]
        }, {
            "sessionId": "2",
            "sessionDate": "2018-11-23",
            "activities": [{
                    "activityTime": "2018-11-23T18:04:00",
                    "event": {"eventLabel": "A"}
                }, {
                    "activityTime": "2018-11-23T18:11:00",
                    "event": {"eventLabel": "B"}
                }]
        }]
}
{
    "totalRows": 18,
    "nextPageToken": "1FKOME",
    "sessions": [{
            "sessionId": "2",
            "sessionDate": "2018-11-23",
            "activities": [{
                    "activityTime": "2018-11-23T18:26:00",
                    "event": {"eventLabel": "C"}
                }]
        }, {
            "sessionId": "3",
            "sessionDate": "2018-11-24",
            "activities": [{
                    "activityTime": "2018-11-24T11:26:00",
                    "event": {"eventLabel": "A"}
                }, {
                    "activityTime": "2018-11-24T11:29:00",
                    "event": {"eventLabel": "B"}
                }, {
                    "activityTime": "2018-11-24T11:39:00",
                    "event": {"eventLabel": "C"}
                }, {
                    "activityTime": "2018-11-24T11:42:00",
                    "event": {"eventLabel": "D"}
                }]
        }]
}
{
    "totalRows": 18,
    "nextPageToken": "7S77H6",
    "sessions": [{
            "sessionId": "4",
            "sessionDate": "2018-11-24",
            "activities": [{
                    "activityTime": "2018-11-24T23:50:00",
                    "event": {"eventLabel": "A"}
                }, {
                    "activityTime": "2018-11-24T23:54:00",
                    "event": {"eventLabel": "B"}
                }]
        }, {
            "sessionId": "5",
            "sessionDate": "2018-11-25",
            "activities": [{
                    "activityTime": "2018-11-25T00:01:00",
                    "event": {"eventLabel": "C"}
                }, {
                    "activityTime": "2018-11-25T00:13:00",
                    "event": {"eventLabel": "D"}
                }]
        }, {
            "sessionId": "6",
            "sessionDate": "2018-11-25",
            "activities": [{
                    "activityTime": "2018-11-25T13:01:00",
                    "event": {"eventLabel": "A"}
                }]
        }]
}
{
    "totalRows": 18,
    "sessions": [{
            "sessionId": "6",
            "sessionDate": "2018-11-25",
            "activities": [{
                    "activityTime": "2018-11-25T13:09:00",
                    "event": {"eventLabel": "B"}
                }, {
                    "activityTime": "2018-11-25T10:12:00",
                    "event": {"eventLabel": "C"}
                }, {
                    "activityTime": "2018-11-25T10:23:00",
                    "event": {"eventLabel": "D"}
                }]
        }]
}

ডেটা স্যাম্পলিং

যদি কোনও ক্লায়েন্ট অনুরোধ করা তারিখের সীমার জন্য প্রচুর পরিমাণে ডেটা জমা করে থাকে, তবে API শুধুমাত্র ক্রিয়াকলাপের একটি নমুনাযুক্ত উপসেট ফেরত দিতে পারে। যখন এটি ঘটবে, sampleRate ক্ষেত্রটি নির্দেশ করবে যে ব্যবহারকারীর কার্যকলাপের কোন ভগ্নাংশ ফেরত দেওয়া হয়েছে।

কিভাবে ডেটা নমুনা করা হয়

ব্যবহারকারীর ডেটা কার্যকলাপ স্তরে নমুনা করা হয়। উদাহরণস্বরূপ, 50% ( 0.5 ) এর নমুনা হার সহ, ব্যবহারকারীর অর্ধেক কার্যকলাপ প্রতিক্রিয়াতে উপস্থিত থাকবে।

এই নমুনা কার্যক্রম নির্বিচারে নির্বাচিত হয়; এপিআই এলোমেলো স্যাম্পলিং সম্পর্কে কোনো গ্যারান্টি প্রদান করে না, অথবা প্রদত্ত তারিখের সীমার জন্য স্যাম্পলিং ক্রিয়াকলাপ জুড়ে সমানুপাতিক হয় না।

ডেটা স্যাম্পলিং প্রতিরোধ করুন

যেহেতু এই এপিআই একটি সেশনকে ক্রিয়াকলাপগুলির একটি সংগ্রহ হিসাবে বিবেচনা করে, যে কোনও সেশন যার জন্য নমুনাযুক্ত সেটে কোনও ক্রিয়াকলাপ প্রদর্শিত হবে না তা প্রতিক্রিয়াতে প্রদর্শিত হবে না। আপনার যদি সেশন বা ক্রিয়াকলাপগুলির একটি বিস্তৃত তালিকার প্রয়োজন হয়, ছোট তারিখের ব্যাপ্তি সহ ফলো-আপ অনুরোধগুলি করুন৷

উদাহরণস্বরূপ, আপনি যদি 2018-01-01 থেকে 2018-12-31 পর্যন্ত ডেটার অনুরোধ করেন এবং প্রতিক্রিয়াটি 0.25 এর নমুনা হার নির্দেশ করে, অনুরোধ করা তারিখের সীমাটিকে 4টি অংশে ভাগ করুন, যাতে প্রতিটি অংশে আশা করা যায় প্রায় এক চতুর্থাংশ থাকবে মূল তথ্য:

  • 2018-01-01 থেকে 2018-03-31 পর্যন্ত
  • 2018-04-01 থেকে 2018-06-30 পর্যন্ত
  • 2018-07-01 থেকে 2018-09-30 পর্যন্ত
  • 2018-10-01 থেকে 2018-12-31 পর্যন্ত