Gameball Developers Guide
v4.0
v4.0
  • Introduction
  • Installing Gameball
    • Web
      • Initialize Gameball Customer Widget
      • Track Customer Events
      • Track Orders & Cashback Reward
      • Integrate Redemption
      • Track Referrals
      • Go-Live Checklist
    • iOS
      • Getting Started
      • Initialize Gameball Customer Profile
      • Track Customer Events
      • Track Orders & Cashback Reward
      • Integrate Redemption
      • Push Notifications
      • Track Referrals
      • Go-Live Checklist
    • Android
      • Getting Started
      • Initialize Gameball Customer Profile
      • Track Customer Events
      • Track Orders & Cashback Reward
      • Integrate Redemption
      • Push Notifications
      • Go-Live Checklist
    • React Native
      • Getting Started
      • Initialize Gameball Customer Profile
      • Track Customer Events
      • Track Orders & Cashback Reward
      • Integrate Redemption
      • Track Referrals
      • Push Notifications
      • Go-Live Checklist
    • Flutter
      • Getting Started
      • Initialize Gameball Customer Profile
      • Track Customer Events
      • Track Orders & Cashback Reward
      • Integrate Redemption
      • Track Referrals
      • Go-Live Checklist
    • Generic Mobile App
      • Initialize Gameball Customer Profile
      • Track Customer Events
      • Track Orders & Cashback Reward
      • Integrate Redemption
      • Track Referrals
      • Push Notifications
  • REST API
    • Overview
      • What's New in V4.0
      • Authentication
      • Rate Limiting
      • Status and Error Codes
    • Customers
      • Customer Management
      • Customer Progress
      • Customer Tags
      • Customer Notifications
    • Events
    • Order
      • Order Tracking
      • Order Rewards & History
    • Payment
      • Payment Tracking
    • Transactions
      • Cashback & Redemptions
      • Hold Management
      • Transaction Management
      • Transaction Validation
    • Coupons
    • Configurations
      • Reward Configurations
      • Program Configurations
      • Widget Configuration
    • Leaderboard
    • Batches
      • Batch Creation
      • Batch Management
  • Webhooks
    • Overview
    • Subscribing to Webhooks
    • Webhook Topics
      • Customer's Notifications
      • Customer's Profile Updates
  • Tutorials
    • Tracking Customer Events
    • Redemption Integration
      • Direct debit redemption
      • Coupons Redemption
        • Use Your Own Couponing Engine
        • Gameball Couponing Engine
    • Checkout Integration
    • Build Custom UI Elements
      • Reward Campaigns
      • VIP Tiers
      • Customer Balance
      • Widget Configurations
      • Coupons Customer Experience
      • Customer Notifications
      • Customer Leaderboard
    • Build your Own Notification System
    • Channel Merging Guide
    • Previewing Potential Points Before Purchase
    • Refund
    • Retail & POS Integration with Gameball Loyalty Program
    • Referrals
    • Widget Deep Links
    • Batch APIs usage example
  • Branch.io Integration
  • Adjust Integration
Powered by GitBook
On this page
  1. Installing Gameball
  2. Flutter

Track Customer Events

Start sending your customers' events on your platform to Gameball.

PreviousInitialize Gameball Customer ProfileNextTrack Orders & Cashback Reward

Last updated 27 days ago

Start sending your customers' events on your app to Gameball, along with any metadata that describes the event. Depending on your Gameball programs configuration, the customer can be rewarded based upon the sent events.

Tracked events can be app events or server-side events depending on how you would like to design your programs. App events can be sent via the available SDK interface and server-side events can be sent to Gameball via the .

Every Track Event call records a single customer action which we call “events”. We recommend that you make your event names human-readable, so that everyone can figure them out instantly.

Event metadata are extra pieces of information you can tie to events you track. They can be anything that will be useful while designing your program.

To send Customer events from your app to Gameball, you can use the sendEvent method as shown below.

event Object Required

Event body that is being sent to Gameball.

Event Object

customerIdstring Required

The display name of the customer.


email string Optional

Customer's unique Email address.


mobile string Optional

Customer's unique Mobile number.


events Object Required

An object containing one or more events, each represented by its event name as the key, and an associated object containing metadata related to the event. The structure of the event object can vary depending on the specific event being recorded. Events can be any significant action a customer performs, such as making a purchase, writing a review, adding to cart, etc.

The events object holds one or more events as keys (e.g., write_review, place_order, etc.), where each key is the event name, and its value is an object that can include metadata, providing additional details about the event. The metadata inside each event can vary depending on the nature of the event, but it usually contains properties that help describe the specifics of that event, such as product IDs, order amounts, or timestamps.


sendEventCallback Function Optional

Callback is used for providing the developer with the status of the request as a boolean whether it succeeded or not or with an error if any.

Event eventBody = Event(
          customerId: "{customer_id}",
          events: {
            "{eventName}": {
              "{prop1}": "{value1}"
            }
          });

Send the Event

Using the previously created GameballApp instance or by creating a new one, call the SendEvent() method as shown below.

// SendEventCallback
sendEventCallback(response, error){
        if(error == null && response != null){
          // TODO Handle on success result.
        }
        else{
          // TODO Handle on failure result.
        }
      }
      
gameballApp.sendEvent(eventBody, sendEventCallback);

Track Events API