On this page

For AI agents: a documentation index is available at /docs/llms.txt. Append .md to any page URL for markdown, or send Accept: text/markdown.

Mobile Autocapture Schema

This reference lists Autocapture event types and event property names for the iOS Swift SDK, the Android-Kotlin SDK, and the React Native SDK. Use it when you need a stable contract for pipelines, partners, or validation.

React Native

React Native Autocapture ships in @amplitude/analytics-react-native. The React Native section lists its event types.

For Autocapture setup steps, go to Autocapture. For web Autocapture event properties, go to Autocapture events and properties. For a machine-readable web schema, go to Web Autocapture Schema.

Machine-readable schema

json
{
  "description": "Autocapture event types and event property names for the Amplitude iOS Swift SDK, Android-Kotlin SDK, and React Native SDK.",
  "documentation": "/docs/data/mobile-autocapture-schema",
  "ios": {
    "events": {
      "[Amplitude] Start Session": { "properties": [] },
      "[Amplitude] End Session": { "properties": [] },
      "[Amplitude] Application Installed": {
        "properties": ["[Amplitude] Version", "[Amplitude] Build"]
      },
      "[Amplitude] Application Updated": {
        "properties": [
          "[Amplitude] Version",
          "[Amplitude] Build",
          "[Amplitude] Previous Version",
          "[Amplitude] Previous Build"
        ]
      },
      "[Amplitude] Application Opened": {
        "properties": [
          "[Amplitude] Version",
          "[Amplitude] Build",
          "[Amplitude] From Background"
        ]
      },
      "[Amplitude] Application Backgrounded": { "properties": [] },
      "[Amplitude] Screen Viewed": {
        "properties": ["[Amplitude] Screen Name"]
      },
      "[Amplitude] Deep Link Opened": {
        "properties": ["[Amplitude] Link URL", "[Amplitude] Link Referrer"]
      },
      "[Amplitude] Network Request": {
        "properties": [
          "[Amplitude] URL",
          "[Amplitude] URL Query",
          "[Amplitude] URL Fragment",
          "[Amplitude] Request Method",
          "[Amplitude] Status Code",
          "[Amplitude] Error Code",
          "[Amplitude] Error Message",
          "[Amplitude] Start Time",
          "[Amplitude] Completion Time",
          "[Amplitude] Duration",
          "[Amplitude] Request Body Size",
          "[Amplitude] Response Body Size",
          "[Amplitude] Request Body",
          "[Amplitude] Response Body",
          "[Amplitude] Request Headers",
          "[Amplitude] Response Headers"
        ]
      },
      "[Amplitude] Element Interacted": {
        "properties": [
          "[Amplitude] Action",
          "[Amplitude] Target View Class",
          "[Amplitude] Target Text",
          "[Amplitude] Target Accessibility Label",
          "[Amplitude] Target Accessibility Identifier",
          "[Amplitude] Action Method",
          "[Amplitude] Gesture Recognizer",
          "[Amplitude] Hierarchy",
          "[Amplitude] Screen Name"
        ]
      },
      "[Amplitude] Rage Click": {
        "properties": [
          "[Amplitude] Begin Time",
          "[Amplitude] End Time",
          "[Amplitude] Duration",
          "[Amplitude] Click Count",
          "[Amplitude] Clicks",
          "[Amplitude] Action",
          "[Amplitude] Target View Class",
          "[Amplitude] Target Text"
        ]
      },
      "[Amplitude] Dead Click": {
        "properties": [
          "[Amplitude] Begin Time",
          "[Amplitude] End Time",
          "[Amplitude] Duration",
          "[Amplitude] Action",
          "[Amplitude] Target View Class",
          "[Amplitude] Target Text"
        ]
      }
    }
  },
  "android": {
    "events": {
      "[Amplitude] Start Session": { "properties": [] },
      "[Amplitude] End Session": { "properties": [] },
      "[Amplitude] Application Installed": {
        "properties": ["[Amplitude] Version", "[Amplitude] Build"]
      },
      "[Amplitude] Application Updated": {
        "properties": [
          "[Amplitude] Version",
          "[Amplitude] Build",
          "[Amplitude] Previous Version",
          "[Amplitude] Previous Build"
        ]
      },
      "[Amplitude] Application Opened": {
        "properties": [
          "[Amplitude] Version",
          "[Amplitude] Build",
          "[Amplitude] From Background"
        ]
      },
      "[Amplitude] Application Backgrounded": { "properties": [] },
      "[Amplitude] Screen Viewed": {
        "properties": ["[Amplitude] Screen Name"]
      },
      "[Amplitude] Fragment Viewed": {
        "properties": [
          "[Amplitude] Screen Name",
          "[Amplitude] Fragment Class",
          "[Amplitude] Fragment Identifier",
          "[Amplitude] Fragment Tag"
        ]
      },
      "[Amplitude] Deep Link Opened": {
        "properties": ["[Amplitude] Link URL", "[Amplitude] Link Referrer"]
      },
      "[Amplitude] Network Request": {
        "properties": [
          "[Amplitude] URL",
          "[Amplitude] URL Query",
          "[Amplitude] URL Fragment",
          "[Amplitude] Request Method",
          "[Amplitude] Status Code",
          "[Amplitude] Error Message",
          "[Amplitude] Start Time",
          "[Amplitude] Completion Time",
          "[Amplitude] Duration",
          "[Amplitude] Request Body Size",
          "[Amplitude] Response Body Size"
        ]
      },
      "[Amplitude] Element Interacted": {
        "properties": [
          "[Amplitude] Action",
          "[Amplitude] Target Class",
          "[Amplitude] Target Resource",
          "[Amplitude] Target Tag",
          "[Amplitude] Target Text",
          "[Amplitude] Target Source",
          "[Amplitude] Hierarchy",
          "[Amplitude] Screen Name"
        ]
      },
      "[Amplitude] Rage Click": { "properties": [] },
      "[Amplitude] Dead Click": { "properties": [] }
    }
  },
  "reactNative": {
    "events": {
      "session_start": { "properties": [] },
      "session_end": { "properties": [] },
      "[Amplitude] Application Opened": { "properties": [] },
      "[Amplitude] Application Backgrounded": { "properties": [] },
      "[Amplitude] Screen Viewed": {
        "properties": ["[Amplitude] Screen Name"]
      },
      "[Amplitude] Element Pressed": {
        "properties": [
          "[Amplitude] Action",
          "[Amplitude] Target Test ID",
          "[Amplitude] Target Accessibility Label",
          "[Amplitude] Target Component",
          "[Amplitude] Target Element"
        ]
      },
      "[Amplitude] Rage Click": {
        "properties": [
          "[Amplitude] Begin Time",
          "[Amplitude] End Time",
          "[Amplitude] Duration",
          "[Amplitude] Click Count",
          "[Amplitude] Clicks",
          "[Amplitude] Action",
          "[Amplitude] Target Test ID",
          "[Amplitude] Target Accessibility Label",
          "[Amplitude] Target Component",
          "[Amplitude] Target Element",
          "[Amplitude] Screen Name"
        ]
      },
      "[Amplitude] Error Click": {
        "properties": [
          "[Amplitude] Kind",
          "[Amplitude] Message",
          "[Amplitude] Stack",
          "[Amplitude] Filename",
          "[Amplitude] Line Number",
          "[Amplitude] Column Number",
          "[Amplitude] Action",
          "[Amplitude] Target Test ID",
          "[Amplitude] Target Accessibility Label",
          "[Amplitude] Target Component",
          "[Amplitude] Target Element",
          "[Amplitude] Screen Name"
        ]
      }
    }
  }
}

Shared conventions

  • Event type values match what Amplitude stores as event_type (for example, [Amplitude] Screen Viewed).
  • Property names use the [Amplitude] ... prefix in the product and in this doc.
  • Session events typically carry only standard user and session context unless you add more in code.

iOS (Swift SDK)

Enable options through AutocaptureOptions. Go to Autocapture (iOS) for configuration options.

Android (Kotlin SDK)

Enable options through AutocaptureOption. Go to Autocapture (Android) for configuration options.

React Native

Enable options through the autocapture init option. Go to Autocapture (React Native) for configuration options. Screen views require trackScreenView or trackScreenViewOnNavigationStateChange. Element interactions require autocapture.elementInteractions and handlers wrapped with ampCapture or the Babel plugin. Frustration interactions require autocapture.frustrationInteractions and those same wrapped handlers.

Was this helpful?