> ## Documentation Index
> Fetch the complete documentation index at: https://docs.appcharge.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Portal Block Clicked

An event triggered when a Game Portal block is clicked.

**Event Data**

<ResponseField name="eventName" type="string">
  Event name: `portal.block.clicked`.
</ResponseField>

<ResponseField name="eventId" type="string">
  Event ID. Use this ID to deduplicate re-delivered events.
</ResponseField>

<ResponseField name="timestamp" type="number">
  Event timestamp in [Epoch time](https://www.epoch101.com/), represented in milliseconds. Example: `1754307361396`.
</ResponseField>

<ResponseField name="sessionId" type="string">
  The [session ID](/../../api-reference/events/v2/introduction#session-id) of the player's current session. Example: `345397c6-d963-4aa4-a0ba-2aaca6c3ee05`.
</ResponseField>

<ResponseField name="requestId" type="string">
  ID assigned by Appcharge to each request sent to the publisher. Helps the publisher identify and debug failed requests. Example: `23539478-c744-566a-c78c-c4cc7763ff62`.
</ResponseField>

<ResponseField name="result" type="string">
  Event result. Supported values: `success`, `failed`.
</ResponseField>

<ResponseField name="reason" type="string">
  Reason for the event result. Example: `invalid_credentials`.
</ResponseField>

<ResponseField name="attributes" type="map<any,any>">
  A key-value map used to label events for tracking personas or tests. Example: `{ "persona":"non_payer", "blackFridayTest":"Base_group" }`
</ResponseField>

<ResponseField name="customer" type="object">
  Information about the player.

  <Expandable title="properties">
    <ResponseField name="id" type="string">
      Player ID. Example: `671e81bb-55ef-428b-97ba-f67783971e0d`.
    </ResponseField>

    <ResponseField name="name" type="string">
      Currently null. Reserved for the player's name in future versions.
    </ResponseField>

    <ResponseField name="email" type="string">
      Player email address. Example: `john.doe@gmail.com`.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="utm" type="object">
  UTM data.

  <Expandable title="properties">
    <ResponseField name="utmSource" type="string">
      Source of the traffic. This is where the player came from before reaching the store. Example: `Google`.
    </ResponseField>

    <ResponseField name="utmMedium" type="string">
      Marketing channel used to bring in the traffic. Example: `email`.
    </ResponseField>

    <ResponseField name="utmCampaign" type="string">
      Identifies the marketing campaign associated with the traffic. Example: `black_friday`.
    </ResponseField>

    <ResponseField name="utmTerm" type="string">
      Paid search keyword or term that generated the traffic. Example: `buy+coins`.
    </ResponseField>

    <ResponseField name="utmContent" type="string">
      A label that identifies which version of content a player clicked to reach the web store. Useful for A/B testing and analyzing performance of different ad or link variations within the same campaign. Example: `summer_sale_ad1`
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="device" type="object">
  Information about the player's device.

  <Expandable title="properties">
    <ResponseField name="platform" type="string">
      Device platform. Example: `iOS`.
    </ResponseField>

    <ResponseField name="deviceModel" type="string">
      Device model. Example: `iPhone 16 Pro`.
    </ResponseField>

    <ResponseField name="osType" type="string">
      Operating system type. Example: `Apple`.
    </ResponseField>

    <ResponseField name="osVersion" type="string">
      Operating system version. Example: `18`.
    </ResponseField>

    <ResponseField name="browserType" type="string">
      Browser type. Example: `Google Chrome`.
    </ResponseField>

    <ResponseField name="browserVersion" type="string">
      Browser version. Example: `138`.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="block" type="object">
  Information about the block.

  <Expandable title="properties">
    <ResponseField name="type" type="string">
      Block type. Example: `image`.
    </ResponseField>

    <ResponseField name="items" type="[object]">
      <Expandable title="properties">
        <ResponseField name="text" type="string">
          Button label text. Applies to: `cta`.
        </ResponseField>

        <ResponseField name="redirectUrl" type="string">
          URL the player is redirected to when clicking the block. Applies to: `cta`, `image`.
        </ResponseField>

        <ResponseField name="isStoreRedirect" type="boolean">
          Whether the URL redirects to an external web store. Applies to: `cta`.
        </ResponseField>

        <ResponseField name="assetUrl" type="string">
          Desktop asset URL for the block. Applies to: `cta`.
        </ResponseField>

        <ResponseField name="assetUrlMobile" type="string">
          Mobile asset URL for the block. Applies to: `cta`.
        </ResponseField>

        <ResponseField name="url" type="string">
          Desktop image URL. Applies to: `image`.
        </ResponseField>

        <ResponseField name="mobileUrl" type="string">
          Mobile image URL. Applies to: `image`.
        </ResponseField>

        <ResponseField name="contentId" type="string">
          Content item ID. Applies to: `contentsPreview`.
        </ResponseField>

        <ResponseField name="contentType" type="string">
          Content type. Example: `news`. Applies to: `contentsPreview`.
        </ResponseField>

        <ResponseField name="title" type="string">
          Content title. Applies to: `contentsPreview`.
        </ResponseField>

        <ResponseField name="subTitle" type="string">
          Content subtitle. Applies to: `contentsPreview`.
        </ResponseField>

        <ResponseField name="thumbnailImage" type="string">
          Thumbnail image URL. Applies to: `contentsPreview`.
        </ResponseField>

        <ResponseField name="date" type="string">
          Publication date in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format. Example: `2025-12-28T21:52:21.539Z`. Applies to: `contentsPreview`.
        </ResponseField>

        <ResponseField name="slug" type="string">
          Content slug. Applies to: `contentsPreview`.
        </ResponseField>

        <ResponseField name="labels" type="[string]">
          List of labels or tags associated with the content. Applies to: `contentsPreview`.
        </ResponseField>
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="geolocation" type="object">
  Information about the player's geolocation.

  <Expandable title="properties">
    <ResponseField name="countryCode2" type="enum">
      Two-letter country code in [ISO-3166 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format. Example: `US`
    </ResponseField>

    <ResponseField name="region" type="string">
      Region or state. Example: `Florida`.
    </ResponseField>

    <ResponseField name="ipAddress" type="string">
      IP address in [IPv4](https://en.wikipedia.org/wiki/IPv4) format. Example: `192.168.1.1`.
    </ResponseField>

    <ResponseField name="zipCode" type="string">
      Zip code. Example: `34997`.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="sessionMetadata" type="object">
  Session metadata.

  <Expandable title="properties">
    <ResponseField name="any" type="any">
      An object for passing data to Appcharge to be returned later. Example: `{ "abTest": "group1", "locale": "en-US" }`.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseExample>
  ```json Event Payload theme={"system"}
  {
    "eventName": "portal.block.clicked",
    "eventId": "3f5bffbc-369e-4599-8c4d-abfe0ae0ef96",
    "timestamp": 1754307361396,
    "sessionId": "345397c6-d963-4aa4-a0ba-2aaca6c3ee05",
    "requestId": "23539478-c744-566a-c78c-c4cc7763ff62",
    "result": "success",
    "reason": "invalid_credentials",
    "attributes": {
      "persona": "non_payer",
      "blackFridayTest": "Base_group"
    },
    "customer": {
      "id": "671e81bb-55ef-428b-97ba-f67783971e0d",
      "name": null,
      "email": "john.doe@gmail.com"
    },
    "utm": {
      "utmSource": "google",
      "utmMedium": "cpc",
      "utmCampaign": "spring_sale",
      "utmTerm": "buy+coins",
      "utmContent": "ad1"
    },
    "device": {
      "platform": "iOS",
      "deviceModel": "iPhone 16 Pro",
      "osType": "Apple",
      "osVersion": "18",
      "browserType": "Google Chrome",
      "browserVersion": "138"
    },
    "block": {
      "type": "cta",
      "items": [
        {
          "text": "click me",
          "redirectUrl": "https://example.com/redirect",
          "isStoreRedirect": true,
          "assetUrl": "https://example.com/asset.png",
          "assetUrlMobile": "https://example.com/asset-mobile.png"
        }
      ]
    },
    "geolocation": {
      "countryCode2": "US",
      "region": "Florida",
      "ipAddress": "192.168.1.1",
      "zipCode": "34997"
    },
    "sessionMetadata": { "abTest": "group1", "locale": "en-US" }
  }
  ```
</ResponseExample>
