LogoLogo
Changelog
18.5
18.5
  • Welcome
    • Welcome to Airkit 👋
    • Quickstart
  • Concepts
    • Sessions
      • Linking to Sessions
    • Actors
      • Conversations with Actors
  • Tutorials
    • Building A Contact Form
      • Building the Web UI
      • Building the Database
      • Finalizing the App
      • Connecting Forms to Salesforce
    • Styles, Themes, and Templates
      • Changing the header
      • Changing the Theme
      • Using a custom font
      • Using Animations
    • Multi-Page Form
      • Creating the App Object in AirData
      • Building the Form’s UI
      • Creating the Data Flow to insert data
      • Connecting the Data Flow to the UI
      • Previewing and Publishing the app
    • Scheduling and Follow-Up App
      • Collecting Contact Information
      • Creating Appointment Times
      • Saving Appointment Information
      • Scheduling Appointment Reminder
      • Automating Proactive Follow-Up
      • Requesting Feedback
    • Custom Integrations (Petfinder App)
      • Querying the Petfinder API
      • Displaying Petfinder Data
  • Platform
    • Console
      • Apps
      • Activity
      • App Health
      • Datastores
      • Integrations
      • Conversations
      • Resources
      • API
      • Settings
    • Studio
      • Builder Bar
        • Triggers Builder
        • Web Flows Builder
        • Chat Bots Builder
        • Answer Flows Builder
        • Voice Bots Builder
        • Connections Builder
        • Notifications Builder
        • AirData Builder
        • Media Library
        • Theme Builder
        • Schedules Builder
        • Settings
      • App Preview
      • Data Flows
      • Variable Tree
      • Data Model Editor
      • Events
        • Session Started Events
        • Trigger Events
        • Control Events
        • Session Events
        • Activity Group Events
        • Action Chains
  • Data and Integrations
    • Working with Data
      • Variable Namespaces
      • Standard Session Data
      • AirData
        • AirData App Objects
        • Datastores
        • Identity Objects
        • Place Objects
        • Schedule Objects
      • Airscript Quickstart
        • Working with Dates and Times
        • Working with Missing Values
        • Working with URLs and Base64
      • Pull Values from Lists and Objects
        • Path Expressions
        • Query Expressions
      • Making Forms from Data Models
    • Integrations
      • First Party Integrations
        • Creating A Salesforce Lead
        • Creating a Zendesk Ticket
        • Creating SFTP Credentials
        • Swagger Schema Validation
        • First Party Integration Reference
          • Airtable Integration
          • Genesys Widget Integration
          • Google Integration
          • Guidewire Integration
          • Hubspot Integration
          • Kustomer Integration
          • MX Integration
          • Plaid Integration
          • Salesforce Integration
          • SendGrid Integration
          • SFTP Integration
          • Shopify Integration
          • Stripe Integration
          • Twilio Integration
          • Zendesk Integration
      • Custom Integrations
        • OAuth 2.0
        • API Token
        • HTTP Basic Auth
        • Custom Token
        • SFTP
        • Examples: Twitter and Giphy
      • App APIs
        • Building an App API
      • Subscriptions (Web Hooks)
  • Texts, Calls and Emails
    • SMS
      • SMS Notification Basics
      • Chat Bot Basics
      • Texting Journey Links
      • Data from Inbound Calls/SMS
      • Connecting Twilio Numbers
    • Emails
      • Email Notification Basics
      • Sending Emails by Data Operation
      • Connecting Email Addresses
    • Voice Bots
      • Voice Bot Basics
    • Conversation Chat Bots
      • Setting Up Answer Groups
      • Configuring Conversation Chat Bots
        • Salesforce Relays
        • Kustomer Relays
  • Web Apps
    • Forms
      • Displaying Controls Dynamically
      • Repeating Elements
      • Prefilling Forms
      • Validation of User Data
      • Capture Secure User Data
      • Progress Bars
      • Dropdown Menus
      • Electronic Signatures
    • Calendars
      • Customizing Schedule Availability
      • Using Availability Schedules
      • Rescheduling Deflected Calls
      • Integrating to External Calendars
    • Maps and Addresses
      • Maps
      • Addresses
      • User's Current Location
      • Address Search Map Binding
    • Payments
      • Creating a Stripe Integration
    • Timers and Reminders
      • Setting Timers
      • Setting up Periodic Tasks
    • PDFs
      • Creating a PDF
      • Working with Existing PDFs
      • Adding Assets to PDF
    • Assets and Media
      • Using the File Upload Web Control
      • Working with Files and Media
      • Assets and Data Operations
      • Sending Assets to Remote Servers
    • Styling Overview
      • Web Control Styling Properties
        • Animations
      • Themes and Control Variants
        • Importing and Exporting Themes
      • Working with Custom Assets
      • Page Layouts
        • Creating an App Header
    • Publishing
      • Publish and Manage Deployments
      • Configure Application Resources
      • Editing an Application
      • Importing/Exporting Apps
      • Tying Variables to Deployments
    • Advanced
      • Custom Controls
      • Creating Custom Functions
    • Accessibility
      • Accessibility in Airkit
      • Connecting Labels to Input Controls
  • Authentication
    • SAML Authentication
    • OAuth 2.0 - Google
    • OAuth 2.0 - Okta
    • OAuth 2.0 - Auth0
    • Azure AD B2C
    • Authentication Apps and Secure Apps
  • Embeds
    • SDK Overview
      • SDK Quickstart
      • SDK Authentication
      • Passing Data
      • Configuration
      • Configuration Examples
      • Airkit Lightning Component (Salesforce)
  • Analytics and Administration
    • Airkit Organizations
    • Adding Users to Airkit
    • User Roles
      • Working with Custom Roles
    • JIT Provisioning for an Organization
    • SAML SSO for an Organization
    • Managing the Application Lifecycle
    • Environments
      • Environmental Governance
    • Getting Application Metadata
    • Custom Domains
    • Analytics Overview
      • App Events to Splunk
      • App Events to AWS S3 Buckets
      • Audit Logs to AWS S3 Buckets
      • View Data in Activity Explorer
      • Snowflake Analytics Schema
      • Power BI
      • Heap and GTM Integrations
        • Setting up Analytics with GTM
        • Setting up Analytics with Heap
    • Error Management
      • Logging Errors
      • Setting up Email Notifiers
      • Integrating Error Notifiers to Slack
  • Security and Compliance
    • App Security FAQ
    • Data Masking and Auditing
    • IP Ranges
    • Encrypting Data
    • SSL Auth
    • TCPA
    • Cookie Policies
    • Supported Browsers
    • Realms
  • Reference Docs
    • Reference Documentation Overview
    • Airscript
      • Text Functions
        • CAPITALIZE
        • CONCAT
        • ISSTRING
        • LOWERCASE
        • PADSTRING
        • REPLACE
        • REPT
        • SPLIT
        • STRING_COMPARE
        • STRING_FIND
        • STRIP
        • SUBSTITUTE
        • SUBSTRING
        • TITLECASE
        • TRIM
        • UPPERCASE
      • DateTime Functions
        • ADD_TO_DATE
        • ADD_TO_DATETIME
        • DATE
        • DATETIME
        • DATETIME_DELTA
        • DATETIME_FROM_FORMAT
        • DATETIME_FROM_TIMESTAMP
        • DATE_DELTA
        • DATE_FROM_DATETIME
        • DATE_FROM_FORMAT
        • DAY
        • DAYS
        • FORMAT_DATE
        • FORMAT_DATETIME
        • FORMAT_TIME
        • HOUR
        • ISO_WEEK
        • MINUTE
        • MONTH
        • NOW
        • SECOND
        • SUBTRACT_FROM_DATE
        • SUBTRACT_FROM_DATETIME
        • TIME
        • TIMESTAMP_FROM_DATETIME
        • TIME_DELTA
        • TIME_FROM_DATETIME
        • TIME_FROM_FORMAT
        • TODAY
        • UPDATE_DATE
        • UPDATE_DATETIME
        • UPDATE_DAY
        • UPDATE_HOUR
        • UPDATE_MILLISECOND
        • UPDATE_MINUTE
        • UPDATE_MONTH
        • UPDATE_SECOND
        • UPDATE_TIME
        • UPDATE_TIMEZONE
        • UPDATE_YEAR
        • WEEK
        • WEEKDAY
        • YEAR
      • List Functions
        • CONTAINS
        • FIRST
        • FLAT
        • JOIN
        • LAST
        • LENGTH
        • REMOVE_EMPTY
        • REVERSE
        • SHUFFLE
      • Object Functions
        • KEYS
        • MERGE_OBJECTS
        • OBJECT_TO_SOAP
        • OBJECT_TO_XML
        • SOAP_TO_OBJECT
        • SOAP_HEADER_TO_OBJECT
        • VALUES
        • XML_TO_OBJECT
      • Math Functions
        • ABS
        • ACOS
        • ACOSH
        • ACOT
        • ACOTH
        • ASIN
        • ASINH
        • ATAN
        • ATAN2
        • ATANH
        • CEILING
        • COMBIN
        • COMBINA
        • COS
        • COSH
        • COT
        • COTH
        • CSC
        • CSCH
        • DEGREES
        • EVEN
        • EXP
        • FACT
        • FACTDOUBLE
        • FLOOR
        • GCD
        • ISEVEN
        • ISNUMBER
        • ISODD
        • LATLNGDISTANCE
        • LCM
        • LN
        • LOG
        • MAX
        • MIN
        • MROUND
        • MULTINOMIAL
        • ODD
        • PI
        • POWER
        • PRODUCT
        • RADIANS
        • RANDOM
        • RANGE
        • ROUND
        • ROUNDDOWN
        • ROUNDUP
        • SEC
        • SECH
        • SIGN
        • SIN
        • SINH
        • SQRT
        • SQRTPI
        • SUM
        • SUMSQ
        • TAN
        • TANH
        • TRUNC
      • Conditional Functions
        • EQUAL
        • IF
        • ISEMPTY
        • ISNOTEMPTY
        • NOT
      • Currency Functions
        • CURRENCY
        • FORMAT_CURRENCY
        • PARSE_CURRENCY
      • Phone Functions
        • FORMAT_PHONE
        • ISPHONE
        • PARSE_PHONE
      • Email Functions
        • ISEMAIL
      • Number Formatting Functions
        • ARABIC
        • FORMAT_NUMBER
        • PARSE_NUMBER
        • ROMAN
      • Data Type Functions
        • FROM_JSON
        • TO_JSON
        • TYPEOF
      • Asset Functions
        • ASSET_SIZE
        • ASSET_STATE
        • ASSET_THUMBNAIL_URL
        • ASSET_TO_URI
        • ASSET_TYPE
        • URI_TO_ASSET
      • Encoding Functions
        • BASE
        • BASE64_DECODE
        • BASE64_ENCODE
        • HMAC_MD5
        • HMAC_SHA1
        • HMAC_SHA256
        • MD5
        • SHA1
        • SHA256
        • URL_DECODE
        • URL_ENCODE
        • UUID
        • VALUE_OF
      • Error Handling Functions
        • THROW
        • TRY
      • Form and Validation Functions
        • FIRST_VALIDATION
        • RUN_VALIDATIONS
      • Arithmetic Operators
        • Addition (+)
        • Subtraction (-)
        • Multiplication (*)
        • Division (/)
        • Remainder (%)
      • Comparison Operators
        • Equality (=)
        • Inequality (<>, !=)
        • Ordering (<, <=, > , >=)
      • Logical Operators
        • AND
        • OR
        • XOR
        • Null Coalescing Operator (??)
      • Advanced Expressions
        • LET...IN
        • User Defined Functions
    • Web Controls
      • Button
      • Checkbox
      • Chat
      • Simple Checkbox List
      • Container
      • Container List
      • Credit Card
      • Currency Input
      • Date Input
      • Date Picker
      • Dropdown List
      • Email Input
      • Embedded External Content (iFrame)
      • Fieldset Container
      • File Upload
      • Form
      • Hyperlink
      • Image
      • Inline Container
      • Label
      • Map
      • Markdown
      • Number Input
      • Payment Request Button
      • Phone Input
      • Place Search Input
      • Progress Bar
      • QR Code
      • Radio Button
      • Simple Radio List
      • Scheduler
      • Secure String Input
      • Selectable Container
      • Signature Input
      • Text Area
      • Text Input
      • Time Input
      • Web Flow
      • Web Page
    • Voice and Chat Controls
      • Decision Menu
      • Forward Call
      • Secure Touchtone Capture
      • Text Response Capture
      • Touchtone Capture
    • Data Operations
      • AirData Request
        • DELETE
        • PUT
        • INSERT
        • PATCH
        • QUERY
        • DEPRECATED_QUERY
      • Calendar Search
      • Close Conversation
      • Conversation Transcript
      • Create File
      • Delete Assets
      • Download Encoded Asset
      • Early Return
      • Fetch Agent Information
      • Fetch Asset Details
      • Fetch Routing Flow Stats
      • Find Conversations by Customer Identifier
      • Fill PDF Form
      • Google
      • HTML to PDF
      • HTTP Request
        • Using an API With Paging
      • JWT Generation
      • Merge PDF
      • Move Conversation to Routing Flow
      • Opt Out Search
      • Opt Out List
      • Run Data Flow
      • Run Event in Journey
      • Salesforce
      • Secure Value Retrieval
      • Send Email
      • Send Message to Conversation
      • SFTP
      • Start Journey
      • Swagger Schema Validation
      • Transform
      • Update Customer Identifier
      • Wait
      • XML to JSON
      • Zendesk
      • ZIP File
    • Actions
      • Analytics Identify
      • Analytics Send Event
      • Close Modal
      • Condition
      • End Session
      • Extend Session Expiration Time
      • Initialize Actor
      • Log Custom Event
      • Metric: Count
      • Metric: Field
      • Metric: Start Timer
      • Metric: Statistic
      • Metric: Stop Timer
      • Navigate To Web Flow
      • Navigate to Web Page
      • Open Modal
      • Run Data Flow
      • Run Data Flow Repeatedly
      • Run Embedded Outgoing Event
      • Run Event
      • Send Email
      • Send SMS
      • Set Authentication
      • Set Identifier
      • Set Variable
      • Start Chat Bot
      • Start Voice Bot
      • Start Timer
      • Stop Timer
      • Throw
      • Trigger Form Validation
      • Try
    • Conversation Actions
      • Ask A Question
      • Capture User Response
      • Close Conversation
      • Move Customer to Resource
      • Move Conversation to Routing Flow
      • Quick Replies
      • Run Answer Flow
      • Start Conversation Chat Bot
      • Start Conversation
      • Send Link
      • Text Answer
      • Update Customer Identifier
    • Primitive Data Types
      • Any (JSON)
      • Asset
        • Detailed Asset
      • Boolean
      • Currency
      • Date
      • DateTime
      • Email
      • List
      • Null
      • Number
      • Phone
      • Text
      • Time
  • Transportation Products Catalog
    • The Transportation Products API
      • GET products
      • GET product-by-id
  • Release Notes
    • CXR Overview
    • CXR Upgrades and Migrations
Powered by GitBook
On this page
  • Streaming App Events to Splunk
  • Prerequisites
  • Configure the HEC in Airkit
  • Event Data Schema

Was this helpful?

  1. Analytics and Administration
  2. Analytics Overview

App Events to Splunk

PreviousAnalytics OverviewNextApp Events to AWS S3 Buckets

Last updated 1 year ago

Was this helpful?

Data collected around App Events can be streamed from Airkit to the Splunk HTTP Event Connector (or HEC), allowing you to investigate the data in external analytics platforms.

📘 Business and Enterprise Feature

This feature requires either an ENTERPRISE or BUSINESS license. If you would like to enable either feature for your Airkit Organization, please contact your Airkit representative or contact .

Streaming App Events to Splunk

Here, we through how to set up a JSON Splunk HEC to collect and organize data on how users interact with your Airkit apps.

Prerequisites

  • Splunk Cloud Platform or Splunk Enterprise

📘 Airkit only supports HTTPS transport against Splunk HEC endpoints that use a TLS certificate that is validated against a public Certificate Authority. Airkit does not support sending reporting events encrypted using a self-signed certificate or validated against a private Certificate Authority.

Configure the HEC in Airkit

First, save the Token Value from Splunk’s Data Input > HTTP Event Collector menu:

Fill out the following fields:

  • Name - the name of the Airkit-specific Splunk HEC

  • Host - the host name of the Splunk HEC

  • Port - the port of the Splunk HEC

  • Token - the token of the Splunk HEC

  • Source - the source value to assign to the Event data. This will define the metadata property source.

  • Source Type - the source type to assign to the Event data. This will define the metadata property sourceType. If the receiving Splunk HEC Data Input defines the source type, this value should be left empty.

  • Index - the name of the index by which the Event data is to be indexed. This will define the metadata property index.

  • Event Host - the host value to assign to the Event data. This will define the metadata property host.

  • Channel Identifier - the channel identifier sent within the Event. This will sent within the HTTP header X-Spunk-Request-Channel.

  • Event Fields - a JSON object that contains a flat list of explicit custom fields to be defined at index time. This will be sent the metadata property fields.

Note that the values given for these fields should match how the HEC is configured within Splunk:

Once the you have defined your Splunk App Event Log, click the Save button on the bottom left. The HEC is now configured. Every few minutes, Airkit will send relevant Events from all of the Organization's applications to the services/collector/event endpoint.

Event Data Schema

The Splunk export sends Session Events to Splunk as a JSON payload. The following is an example structure of a JSON event Airkit might send:

{
    "index": "summary",
    "sourcetype": "my_sample_data",
    "source": "my_app",
    "event": {
        "organizationId": "692f9bbd-105f-494d-86e3-62e7fe53cf31",
        "eventTime": "2022-03-04T16:44:25.322451Z",
        "eventId": "1Oih0noL7hD1AmU4gQ4Iw82j9fsJ",
        "appId": "0bd7f6f2-8b6b-43fc-84d2-186cb04406e8",
        "branchId": "2327dbd4-4272-4131-a010-03f72a989ff9",
        "savepointRevision": 3,
        "sessionId": "8439f7b1-d48c-4d66-8d4f-07bf7f059dba",
        "deployId": "c6abd7f1-8256-466d-9561-ada68bb7f58a",
        "type": "click",
        "details": {
            "actorName": "Actor",
            "deployUserId": "1533e663-6753-46b7-b050-79c614888bf6",
            "actorIdentityId": "cfef4563-c529-44ee-9851-fe6adecaaba2"
        },
        "metrics": [
            {
                "source": "DEFAULT",
                "id": "8a638998-3d43-4cb2-a141-d2feb7132fc1",
                "event": "/element/event2/button/on-click.json",
                "type": "COUNT",
                "value": 1
            }
        ],
        "activityId": "e78cf88a-b730-43bc-b2c3-6a9eaa46ca7b",
        "actorId": "d3725a33-09f9-4755-9cf1-55d64099da56",
        "activityGroupId": "44effb0d-2ded-417d-8bba-6c7f2ea75205",
        "client": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.109 Safari/537.36",
        "userAgent": {
            "OperatingSystemNameVersion": "Mac OS X ??",
            "OperatingSystemName": "Mac OS X",
            "AgentNameVersionMajor": "Chrome 98",
            "AgentVersion": "98.0.4758.109",
            "DeviceClass": "Desktop",
            "DeviceBrand": "Apple",
            "LayoutEngineVersion": "98.0",
            "LayoutEngineNameVersionMajor": "Blink 98",
            "AgentNameVersion": "Chrome 98.0.4758.109",
            "AgentVersionMajor": "98",
            "OperatingSystemClass": "Desktop",
            "AgentClass": "Browser",
            "LayoutEngineVersionMajor": "98",
            "OperatingSystemNameVersionMajor": "Mac OS X ??",
            "LayoutEngineClass": "Browser",
            "LayoutEngineNameVersion": "Blink 98.0",
            "AgentName": "Chrome",
            "LayoutEngineName": "Blink",
            "DeviceName": "Apple Macintosh"
        },
        "isDebug": false,
        "isFrozen": false,
        "isProductionDeploy": false,
        "sourceRuntime": "MANAGER",
        "sourceDetail": "INIT",
        "appEventSchema": "/element/event2/button/on-click.json",
        "appEventId": "8a638998-3d43-4cb2-a141-d2feb7132fc1",
        "controlId": "8afd8569-9126-431e-bccf-9d25f5f6a924",
        "controlSchema": "/element/control/button.json",
        "callStack": [
            {
                "$schema": "/element/control/button.json",
                "id": "8afd8569-9126-431e-bccf-9d25f5f6a924"
            },
            {
                "$schema": "/element/event2/button/on-click.json",
                "id": "8a638998-3d43-4cb2-a141-d2feb7132fc1"
            }
        ],
        "ipAddresses": [],
        "kind": "Session"
    }
}

The event field may contain the properties of a Session Event:

ORGANIZATION_ID

VARCHAR

EVENT_YEAR

NUMBER

EVENT_MONTH

DATE

EVENT_DATE

DATE

EVENT_TIME

TIMESTAMPNTZ

EVENT_ID

VARCHAR

APP_ID

VARCHAR

BRANCH_ID

VARCHAR

SESSION_ID

VARCHAR

DEPLOY_ID

VARCHAR

EVENT_TYPE

VARCHAR

CUSTOM_METRICS

OBJECT

DEFAULT_METRICS

OBJECT

SAVEPOINT_REVISION

NUMBER

CHANNEL_ID

VARCHAR

CHANNEL_KEY

VARCHAR

FLOW_ID

VARCHAR

ACTIVITY_ID

VARCHAR

ACTOR_ID

VARCHAR

RESOURCE_ID

VARCHAR

ACTIVITY_GROUP_ID

VARCHAR

CLIENT

VARCHAR

USER_AGENT

VARCHAR

SCREEN_WIDTH

NUMBER

SCREEN_HEIGHT

NUMBER

HTTP_SOURCE

VARCHAR

STATUS

VARCHAR

CODE

NUMBER

SERVICE

VARCHAR

SERVICE_VERSION

VARCHAR

EXTERNAL_ID

VARCHAR

DURATION_MILLIS

NUMBER

CXR_VERSION

VARCHAR

SOURCE_RUNTIME

VARCHAR

SOURCE_DETAIL

VARCHAR

APP_EVENT_PARENT_SCHEMA

VARCHAR

APP_EVENT_PARENT_ID

VARCHAR

APP_EVENT_SCHEMA

VARCHAR

APP_EVENT_ID

VARCHAR

CONTROL_ID

VARCHAR

CONTROL_SCHEMA

VARCHAR

TRIGGER_ID

VARCHAR

PROFILE_ID

VARCHAR

EVENT_SOURCE_ID

VARCHAR

ACTION_PARENT_PATH

VARCHAR

ACTION_PARENT_SCHEMA

VARCHAR

ACTION_PATH

VARCHAR

ACTION_SCHEMA

VARCHAR

CONNECTION_ID

VARCHAR

EVENT_SOURCE_NAME

VARCHAR

EVENT_SOURCE_PARENT_ID

VARCHAR

EVENT_HANDLER_ID

VARCHAR

EVENT_HANDLER_SCHEMA

VARCHAR

EVENT_SOURCE_INPUT

VARCHAR

A with an accessible token and a publicly accessible endpoint.

The Airkit Splunk HEC integration will send JSON-formatted Event data to an active Splunk HEC endpoint. Airkit will send events to the /services/collector/event endpoint. It will also send any . The token and are sent as HTTP headers.

To set up the Splunk HEC in Airkit, go to the Airkit and visit Settings > Logs and App Notifiers. Click on the Create button next to Splunk App Event Logs:

configured HTTP Event Collector
configured Event metadata
channel identifier
Console
support@airkit.com