ফায়ারবেস ডায়নামিক লিংক অ্যানালিটিক্স API

আপনি আপনার প্রতিটি ছোট ডায়নামিক লিঙ্কের জন্য বিশ্লেষণ ডেটা পেতে এই REST API ব্যবহার করতে পারেন, তা কনসোলে তৈরি করা হোক বা প্রোগ্রামগতভাবে

API অনুমোদন

আপনি যখন ডায়নামিক লিঙ্ক অ্যানালিটিক্স এপিআই-এর কাছে অনুরোধ করেন, তখন আপনাকে অবশ্যই একটি OAuth 2.0 অ্যাক্সেস টোকেন অন্তর্ভুক্ত করতে হবে যা আপনার Firebase প্রকল্পে অ্যাক্সেস অনুমোদন করে।

আপনি Google API ক্লায়েন্ট লাইব্রেরি ব্যবহার করে অ্যাক্সেস টোকেন পেতে পারেন:

  1. অ্যাডমিন SDK সেটআপ গাইডে বর্ণিত হিসাবে আপনার অ্যাপে Firebase যোগ করুন । অর্থাৎ, একটি পরিষেবা অ্যাকাউন্ট তৈরি করুন এবং একটি ব্যক্তিগত কী তৈরি করুন।
  2. আপনার পরিষেবা অ্যাকাউন্টের শংসাপত্রগুলি থেকে একটি অ্যাক্সেস টোকেন পেতে একটি Google API ক্লায়েন্ট লাইব্রেরি ব্যবহার করুন:

    জাভা

    জাভার জন্য Google API ক্লায়েন্ট লাইব্রেরি ব্যবহার করা:

    // Load the service account key JSON file
    FileInputStream serviceAccount = new FileInputStream("path/to/serviceAccountKey.json");
    
    // Authenticate a Google credential with the service account
    GoogleCredential googleCred = GoogleCredential.fromStream(serviceAccount);
    
    // Add the required scope to the Google credential
    GoogleCredential scoped = googleCred.createScoped(
        Arrays.asList(
          "https://www.googleapis.com/auth/firebase"
        )
    );
    
    // Use the Google credential to generate an access token
    scoped.refreshToken();
    String token = scoped.getAccessToken();
    
    // Include the access token in the Authorization header.
    

    Node.js

    Node.js এর জন্য Google API ক্লায়েন্ট লাইব্রেরি ব্যবহার করা:

    var { google } = require("googleapis");
    
    // Load the service account key JSON file.
    var serviceAccount = require("path/to/serviceAccountKey.json");
    
    // Specify the required scope.
    var scopes = [
      "https://www.googleapis.com/auth/firebase"
    ];
    
    // Authenticate a JWT client with the service account.
    var jwtClient = new google.auth.JWT(
      serviceAccount.client_email,
      null,
      serviceAccount.private_key,
      scopes
    );
    
    // Use the JWT client to generate an access token.
    jwtClient.authorize(function(error, tokens) {
      if (error) {
        console.log("Error making request to generate access token:", error);
      } else if (tokens.access_token === null) {
        console.log("Provided service account does not have permission to generate access tokens");
      } else {
        var accessToken = tokens.access_token;
    
        // Include the access token in the Authorization header.
      }
    });
    

    পাইথন

    পাইথনের জন্য Google Auth লাইব্রেরি ব্যবহার করা:

    from google.oauth2 import service_account
    from google.auth.transport.requests import AuthorizedSession
    
    # Specify the required scope
    scopes = [
      "https://www.googleapis.com/auth/firebase"
    ]
    
    # Authenticate a credential with the service account
    credentials = service_account.Credentials.from_service_account_file(
        "path/to/serviceAccountKey.json", scopes=scopes)
    
    # Use the credentials object to authenticate a Requests session.
    authed_session = AuthorizedSession(credentials)
    response = authed_session.get(
        "https://firebasedynamiclinks.googleapis.com/v1/SHORT_DYNAMIC_LINK/linkStats?durationDays=DURATION")
    
    # Or, use the token directly, as described below.
    request = google.auth.transport.requests.Request()
    credentials.refresh(request)
    access_token = credentials.token
    

একটি একক ডায়নামিক লিঙ্কের পরিসংখ্যান পান

একটি একক ডায়নামিক লিঙ্কের জন্য ইভেন্ট পরিসংখ্যান পেতে linkStats এন্ডপয়েন্ট ব্যবহার করুন।

HTTP অনুরোধ

একটি linkStats অনুরোধের নিম্নলিখিত বিন্যাস রয়েছে:

GET https://firebasedynamiclinks.googleapis.com/v1/SHORT_DYNAMIC_LINK/linkStats?durationDays=DURATION

Authorization: Bearer ACCESS_TOKEN

উদাহরণস্বরূপ, সংক্ষিপ্ত লিঙ্কের জন্য গত 7 দিনের পরিসংখ্যান পুনরুদ্ধার করতে https://example.page.link/wXYz :

GET https://firebasedynamiclinks.googleapis.com/v1/https%3A%2F%2Fexample.page.link%2FwXYz/linkStats?durationDays=7

Authorization: Bearer ya29.Abc123...
পরামিতি
SHORT_DYNAMIC_LINK ইউআরএল-এনকোড করা সংক্ষিপ্ত ডায়নামিক লিঙ্ক যার জন্য আপনি ইভেন্ট ডেটা পেতে চান।
DURATION যে দিনের জন্য ইভেন্ট ডেটা পেতে হবে তার সংখ্যা৷ উদাহরণস্বরূপ, যদি আপনি 30 উল্লেখ করেন, অনুরোধটি গত 30 দিনের ডেটা পুনরুদ্ধার করে। মনে রাখবেন যে গত 36 ঘন্টায় লগ করা কিছু ইভেন্ট অন্তর্ভুক্ত নাও হতে পারে৷
ACCESS_TOKEN একটি অপ্রয়োজনীয় অ্যাক্সেস টোকেন। API অনুমোদন দেখুন।

প্রতিক্রিয়া শরীর

একটি অনুরোধের প্রতিক্রিয়া নিম্নলিখিত মত একটি JSON অবজেক্ট:

{
  "linkEventStats": [
    {
      "platform": "ANDROID",
      "count": "123",
      "event": "CLICK"
    },
    {
      "platform": "IOS",
      "count": "123",
      "event": "CLICK"
    },
    {
      "platform": "DESKTOP",
      "count": "456",
      "event": "CLICK"
    },
    {
      "platform": "ANDROID",
      "count": "99",
      "event": "APP_INSTALL"
    },
    {
      "platform": "ANDROID",
      "count": "42",
      "event": "APP_FIRST_OPEN"
    },

    ...

  ]
}

linkEventStats তালিকার প্রতিটি আইটেমে কিছু ডায়নামিক লিঙ্ক সম্পর্কিত ইভেন্টের একটি প্ল্যাটফর্ম-নির্দিষ্ট গণনা রয়েছে (যেমন Android এ ক্লিকের সংখ্যা)। মনে রাখবেন যে এই পরিসংখ্যানগুলিতে গত 36 ঘন্টার মধ্যে লগ ইন করা ঘটনাগুলি অন্তর্ভুক্ত নাও হতে পারে৷

ঘটনা বর্ণনা ফায়ারবেস কনসোল REST API
ক্লিক একটি ডায়নামিক লিঙ্কে যেকোনো ক্লিকের গণনা, এটি কীভাবে পরিচালনা করা হয় এবং এর গন্তব্য নির্বিশেষে
রিডাইরেক্ট করুন ব্যবহারকারীদের রিডাইরেক্ট করার প্রয়াসের সংখ্যা, হয় অ্যাপ স্টোর বা প্লে স্টোরে অ্যাপ ইনস্টল বা আপডেট করার জন্য বা অন্য কোনো গন্তব্যে
APP_INSTALL প্রকৃত ইনস্টলের সংখ্যা (শুধুমাত্র প্লে স্টোর দ্বারা সমর্থিত)
APP_FIRST_OPEN একটি ইনস্টল করার পরে প্রথম খোলার গণনা
APP_RE_OPEN ডায়নামিক লিঙ্ক কতবার একটি অ্যাপকে পুনরায় খোলার কারণ করেছে৷