Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.formo.so/llms.txt

Use this file to discover all available pages before exploring further.

The page event records whenever a user views a page on your website or a screen in your mobile app. Both the web SDK and mobile SDK emit page events with channel set to "web" or "mobile" respectively. On web, page properties are automatically collected from the browser. On mobile, the screen name is mapped to page-equivalent fields (page_title, page_path, page_url) so that web and mobile views are processed through the same analytics pipeline.

Fields

Apart from the common fields, the page call accepts the following properties:
PropertyTypeDescription
urlStringFull URL of the page.
pathStringPath component of the URL (without query string or hash).
hashStringHash fragment of the URL (e.g., #section).
queryStringQuery string of the URL (without the leading ?).
nameStringName of the page or screen.
categoryStringCategory of the page or screen.
titleStringTitle of the page.

Properties

The following table shows which properties are automatically set by each SDK:
PropertyWeb SDKMobile SDK
properties.urlwindow.location.hrefNot set
properties.pathwindow.location.pathnameNot set
properties.hashwindow.location.hashNot set
properties.querywindow.location.searchNot set
properties.nameCaller-providedScreen name (required)
properties.categoryCaller-providedCaller-provided
context.page_urlwindow.location.hrefapp://{screenName}
context.page_titledocument.titleScreen name
context.page_pathNot set (derived in backend)Not set (derived in backend)
context.referrerdocument.referrerFrom deep link (if set)
context.user_agentBrowser user agentDevice user agent (if available)
context.localeBrowser languageDevice locale
context.timezoneResolved IANA timezoneResolved IANA timezone
context.locationCountry derived from timezoneCountry derived from timezone
context.library_name"Formo Web SDK""Formo React Native SDK"
context.library_versionSDK versionSDK version
context.browserDetected browser nameNot set
context.screen_widthwindow.screen.widthDimensions.get("screen").width
context.screen_heightwindow.screen.heightDimensions.get("screen").height
context.screen_densitywindow.devicePixelRatioDimensions.get("screen").scale
context.viewport_widthwindow.innerWidthNot set
context.viewport_heightwindow.innerHeightNot set
context.os_nameNot setiOS or Android
context.os_versionNot setOS version string
context.device_modelNot setDevice model (e.g., iPhone 14 Pro)
context.device_manufacturerNot setDevice manufacturer (e.g., Apple)
context.device_nameNot setDevice name
context.device_typeNot setmobile or tablet
context.app_nameNot setFrom native config or options
context.app_versionNot setFrom native config or options
context.app_buildNot setFrom native config or options
context.app_bundle_idNot setFrom native config or options
context.network_wifiNot settrue if connected via WiFi
context.network_cellularNot settrue if connected via cellular
context.network_carrierNot setCellular carrier name (when on cellular)
channel"web""mobile"

Sample Payload (Web)

{
    "type": "page",
    "channel": "web",
    "context": {
        "user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/132.0.0.0 Safari/537.36",
        "locale": "en-US",
        "timezone": "Asia/Saigon",
        "location": "ID",
        "referrer": "https://chatgpt.com/",
        "utm_source": "chatgpt.com",
        "utm_medium": "",
        "utm_campaign": "",
        "utm_term": "",
        "utm_content": "",
        "page_url": "https://formo.so/faucets?utm_source=chatgpt.com",
        "page_title": "Free testnet faucets",
        "library_name": "Formo Web SDK",
        "library_version": "1.25.0",
        "browser": "chrome",
        "screen_width": 1920,
        "screen_height": 1080,
        "screen_density": 1,
        "viewport_width": 1920,
        "viewport_height": 969
    },
    "properties": {
        "url": "https://formo.so/faucets?utm_source=chatgpt.com",
        "path": "/faucets",
        "hash": "",
        "query": "utm_source=chatgpt.com",
        "name": "Faucets",
        "category": "Docs",
        "title": "Free testnet faucets"
    }
}

Sample Payload (Mobile)

Screen events from the mobile SDK are sent as page events with channel: "mobile":
{
    "type": "page",
    "channel": "mobile",
    "version": "1",
    "session_id": "117b982a451dc22edea6413b8e20958216c0a5b3baaa1d90699c42dbf4e74e33",
    "anonymous_id": "c2bc0ebe-d852-49d1-9efd-e45744850ae0",
    "context": {
        "library_name": "Formo React Native SDK",
        "library_version": "1.0.0",
        "page_title": "Wallet",
        "page_url": "app://Wallet",
        "locale": "en-US",
        "timezone": "America/New_York",
        "location": "US",
        "os_name": "iOS",
        "os_version": "17.0",
        "device_model": "iPhone 14 Pro",
        "device_manufacturer": "Apple",
        "device_name": "Yos's iPhone",
        "device_type": "mobile",
        "app_name": "MyDeFiApp",
        "app_version": "2.1.0",
        "app_build": "42",
        "app_bundle_id": "com.example.mydefiapp",
        "network_wifi": true,
        "network_cellular": false,
        "screen_width": 393,
        "screen_height": 852,
        "screen_density": 3
    },
    "properties": {
        "name": "Wallet",
        "category": "Main"
    }
}