{"_id":"@capawesome/capacitor-formbricks","_rev":"4-cd6246f2ab691b00d3341ea73b7e8ec3","name":"@capawesome/capacitor-formbricks","dist-tags":{"latest":"0.1.2"},"versions":{"0.0.1":{"name":"@capawesome/capacitor-formbricks","version":"0.0.1","keywords":["capacitor","plugin","native","formbricks"],"author":{"name":"Robin Genz","email":"mail@robingenz.dev"},"license":"MIT","_id":"@capawesome/capacitor-formbricks@0.0.1","maintainers":[{"name":"robingenz","email":"mail@robingenz.dev"}],"homepage":"https://capawesome.io/plugins/formbricks/","bugs":{"url":"https://github.com/capawesome-team/capacitor-plugins/issues"},"dist":{"shasum":"8983be99b7ef74777cbb064233037935ae9fdfad","tarball":"https://registry.npmjs.org/@capawesome/capacitor-formbricks/-/capacitor-formbricks-0.0.1.tgz","fileCount":39,"integrity":"sha512-sf0YjG2O56xlKyARcyOBedFci7V1gLl7PVJlLjmhlpLiJkCcIVfeeL0BjzN5lkb0cHps5gpoAFzGndYOMxrYkQ==","signatures":[{"sig":"MEQCIBfCDUlnrJlCv8d+dr9STIlR2k2P3zZ/JmhdDKta0mZdAiAv/xpNuGE7fQMbKHdte5UXapYZJXxg1xMnI3eYU2HWdw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":61714},"main":"dist/plugin.cjs.js","types":"dist/esm/index.d.ts","unpkg":"dist/plugin.js","module":"dist/esm/index.js","funding":[{"url":"https://github.com/sponsors/capawesome-team/","type":"github"},{"url":"https://opencollective.com/capawesome","type":"opencollective"}],"gitHead":"f43b3900f3197d545a5176a4de2fdeb4ed1bfba6","scripts":{"fmt":"npm run eslint -- --fix && npm run prettier -- --write && npm run swiftlint -- --fix --format","lint":"npm run eslint && npm run prettier -- --check && npm run swiftlint -- lint","build":"npm run clean && npm run docgen && tsc && rollup -c rollup.config.mjs","clean":"rimraf ./dist","watch":"tsc --watch","docgen":"docgen --api FormbricksPlugin --output-readme README.md --output-json dist/docs.json","eslint":"eslint . --ext ts","verify":"npm run verify:ios && npm run verify:android && npm run verify:web","prettier":"prettier \"**/*.{css,html,ts,js,java}\"","swiftlint":"node-swiftlint","verify:ios":"cd ios && pod install && xcodebuild -workspace Plugin.xcworkspace -scheme Plugin -destination generic/platform=iOS && cd ..","verify:web":"npm run build","prepublishOnly":"npm run build","verify:android":"cd android && ./gradlew clean build test && cd ..","ios:pod:install":"cd ios && pod install --repo-update && cd ..","ios:spm:install":"cd ios && swift package resolve && cd .."},"_npmUser":{"name":"robingenz","email":"mail@robingenz.dev"},"capacitor":{"ios":{"src":"ios"},"android":{"src":"android"}},"swiftlint":"@ionic/swiftlint-config","repository":{"url":"git+https://github.com/capawesome-team/capacitor-plugins.git","type":"git"},"_npmVersion":"10.9.4","description":"Unofficial Capacitor plugin for Formbricks.","directories":{},"_nodeVersion":"22.22.0","eslintConfig":{"extends":"@ionic/eslint-config/recommended"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"8.57.0","rimraf":"6.1.2","rollup":"4.53.3","prettier":"3.4.2","swiftlint":"2.0.0","typescript":"5.9.3","@capacitor/cli":"8.0.0","@capacitor/ios":"8.0.0","@formbricks/js":"4.4.0","@capacitor/core":"8.0.0","@capacitor/docgen":"0.3.1","@capacitor/android":"8.0.0","@ionic/eslint-config":"0.4.0","prettier-plugin-java":"2.6.7","@ionic/swiftlint-config":"2.0.0"},"peerDependencies":{"@formbricks/js":"^4.4.0","@capacitor/core":">=8.0.0"},"peerDependenciesMeta":{"@formbricks/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/capacitor-formbricks_0.0.1_1778594085250_0.13731291682049207","host":"s3://npm-registry-packages-npm-production"}},"0.1.0":{"name":"@capawesome/capacitor-formbricks","version":"0.1.0","keywords":["capacitor","plugin","native","formbricks"],"author":{"name":"Robin Genz","email":"mail@robingenz.dev"},"license":"MIT","_id":"@capawesome/capacitor-formbricks@0.1.0","maintainers":[{"name":"robingenz","email":"mail@robingenz.dev"}],"homepage":"https://capawesome.io/plugins/formbricks/","bugs":{"url":"https://github.com/capawesome-team/capacitor-plugins/issues"},"dist":{"shasum":"832b03b4ea933f6dbeb846c5ea7fc5fe9c39c6d8","tarball":"https://registry.npmjs.org/@capawesome/capacitor-formbricks/-/capacitor-formbricks-0.1.0.tgz","fileCount":39,"integrity":"sha512-tO/FA5LJ3xAL/4A8EyoPVN7jz6ghNQUrZdBI7J6KUtWalqCwRcQupFcU1EQn8DwLKCoZsP2IAorKYztIJR0+KQ==","signatures":[{"sig":"MEUCIQCL7AVcYMBn9meD610OCUMIDEuN5nv8yksxN91P9TwNIwIgIwlO9eiJtn4bVLY0DGlG21PuJN2xrRiSlnCt47Z2INM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@capawesome%2fcapacitor-formbricks@0.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":61714},"main":"dist/plugin.cjs.js","types":"dist/esm/index.d.ts","unpkg":"dist/plugin.js","module":"dist/esm/index.js","funding":[{"url":"https://github.com/sponsors/capawesome-team/","type":"github"},{"url":"https://opencollective.com/capawesome","type":"opencollective"}],"gitHead":"f43b3900f3197d545a5176a4de2fdeb4ed1bfba6","scripts":{"fmt":"npm run eslint -- --fix && npm run prettier -- --write && npm run swiftlint -- --fix --format","lint":"npm run eslint && npm run prettier -- --check && npm run swiftlint -- lint","build":"npm run clean && npm run docgen && tsc && rollup -c rollup.config.mjs","clean":"rimraf ./dist","watch":"tsc --watch","docgen":"docgen --api FormbricksPlugin --output-readme README.md --output-json dist/docs.json","eslint":"eslint . --ext ts","verify":"npm run verify:ios && npm run verify:android && npm run verify:web","prettier":"prettier \"**/*.{css,html,ts,js,java}\"","swiftlint":"node-swiftlint","verify:ios":"cd ios && pod install && xcodebuild -workspace Plugin.xcworkspace -scheme Plugin -destination generic/platform=iOS && cd ..","verify:web":"npm run build","prepublishOnly":"npm run build","verify:android":"cd android && ./gradlew clean build test && cd ..","ios:pod:install":"cd ios && pod install --repo-update && cd ..","ios:spm:install":"cd ios && swift package resolve && cd .."},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:8d630ff2-6744-4bb1-83ff-84c06a0351a8"}},"capacitor":{"ios":{"src":"ios"},"android":{"src":"android"}},"swiftlint":"@ionic/swiftlint-config","repository":{"url":"git+https://github.com/capawesome-team/capacitor-plugins.git","type":"git"},"_npmVersion":"11.11.0","description":"Unofficial Capacitor plugin for Formbricks.","directories":{},"_nodeVersion":"24.14.1","eslintConfig":{"extends":"@ionic/eslint-config/recommended"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"8.57.0","rimraf":"6.1.2","rollup":"4.53.3","prettier":"3.4.2","swiftlint":"2.0.0","typescript":"5.9.3","@capacitor/cli":"8.0.0","@capacitor/ios":"8.0.0","@formbricks/js":"4.4.0","@capacitor/core":"8.0.0","@capacitor/docgen":"0.3.1","@capacitor/android":"8.0.0","@ionic/eslint-config":"0.4.0","prettier-plugin-java":"2.6.7","@ionic/swiftlint-config":"2.0.0"},"peerDependencies":{"@formbricks/js":"^4.4.0","@capacitor/core":">=8.0.0"},"peerDependenciesMeta":{"@formbricks/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/capacitor-formbricks_0.1.0_1778594259412_0.14328337282433834","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@capawesome/capacitor-formbricks","version":"0.1.1","keywords":["capacitor","plugin","native","formbricks","capacitor-plugin","survey","in-app surveys","user feedback","feedback","user research"],"author":{"name":"Robin Genz","email":"mail@robingenz.dev"},"license":"MIT","_id":"@capawesome/capacitor-formbricks@0.1.1","maintainers":[{"name":"robingenz","email":"mail@robingenz.dev"}],"homepage":"https://capawesome.io/docs/sdks/capacitor/formbricks/","bugs":{"url":"https://github.com/capawesome-team/capacitor-plugins/issues"},"dist":{"shasum":"472d7da65b42139d491d9e912047c5c8c77c81bb","tarball":"https://registry.npmjs.org/@capawesome/capacitor-formbricks/-/capacitor-formbricks-0.1.1.tgz","fileCount":39,"integrity":"sha512-XaH9gy9b9g4LIBuQltDLiyT6bTRt1Oyw84+yKZBTd65JUzgtKQP5jXQAds6H1LPe3y39tH9UWGFwkq0Tvu2WRQ==","signatures":[{"sig":"MEUCIQDHU1cJSxSs3o+hq9UCcWYJb45IekC0T7a9snwJpO8EJgIgOCsqAR86jVrrm0UD8vDKSiS2J3fPRiTgWfhR0h4Ai8A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@capawesome%2fcapacitor-formbricks@0.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":65309},"main":"dist/plugin.cjs.js","types":"dist/esm/index.d.ts","unpkg":"dist/plugin.js","module":"dist/esm/index.js","funding":[{"url":"https://github.com/sponsors/capawesome-team/","type":"github"},{"url":"https://opencollective.com/capawesome","type":"opencollective"}],"gitHead":"7c1937ed10b7de86ca2c1cdc3539a2735fd69a00","scripts":{"fmt":"npm run eslint -- --fix && npm run prettier -- --write && npm run swiftlint -- --fix --format","lint":"npm run eslint && npm run prettier -- --check && npm run swiftlint -- lint","build":"npm run clean && npm run docgen && tsc && rollup -c rollup.config.mjs","clean":"rimraf ./dist","watch":"tsc --watch","docgen":"docgen --api FormbricksPlugin --output-readme README.md --output-json dist/docs.json","eslint":"eslint . --ext ts","verify":"npm run verify:ios && npm run verify:android && npm run verify:web","prettier":"prettier \"**/*.{css,html,ts,js,java}\"","swiftlint":"node-swiftlint","verify:ios":"cd ios && pod install && xcodebuild -workspace Plugin.xcworkspace -scheme Plugin -destination generic/platform=iOS && cd ..","verify:web":"npm run build","prepublishOnly":"npm run build","verify:android":"cd android && ./gradlew clean build test && cd ..","ios:pod:install":"cd ios && pod install --repo-update && cd ..","ios:spm:install":"cd ios && swift package resolve && cd .."},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:8d630ff2-6744-4bb1-83ff-84c06a0351a8"}},"capacitor":{"ios":{"src":"ios"},"android":{"src":"android"}},"repository":{"url":"git+https://github.com/capawesome-team/capacitor-plugins.git","type":"git"},"_npmVersion":"11.17.0","description":"Unofficial Capacitor plugin for Formbricks on Android, iOS, and Web.","directories":{},"_nodeVersion":"24.19.0","eslintConfig":{"extends":"@ionic/eslint-config/recommended"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"8.57.0","rimraf":"6.1.2","rollup":"4.62.3","swiftlint":"2.0.0","typescript":"5.9.3","@capacitor/cli":"8.4.2","@capacitor/ios":"8.0.0","@formbricks/js":"4.4.0","@capacitor/core":"8.0.0","@capacitor/docgen":"0.3.1","@capacitor/android":"8.0.0","@ionic/eslint-config":"0.4.0","prettier-plugin-java":"2.9.7"},"peerDependencies":{"@formbricks/js":"^4.4.0","@capacitor/core":">=8.0.0"},"peerDependenciesMeta":{"@formbricks/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/capacitor-formbricks_0.1.1_1788337345440_0.8164984975120311","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@capawesome/capacitor-formbricks","version":"0.1.2","description":"Unofficial Capacitor plugin for Formbricks on Android, iOS, and Web.","main":"dist/plugin.cjs.js","module":"dist/esm/index.js","types":"dist/esm/index.d.ts","unpkg":"dist/plugin.js","author":{"name":"Robin Genz","email":"mail@robingenz.dev"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/capawesome-team/capacitor-plugins.git"},"bugs":{"url":"https://github.com/capawesome-team/capacitor-plugins/issues"},"funding":[{"type":"github","url":"https://github.com/sponsors/capawesome-team/"},{"type":"opencollective","url":"https://opencollective.com/capawesome"}],"homepage":"https://capawesome.io/docs/sdks/capacitor/formbricks/","keywords":["capacitor","plugin","native","formbricks","capacitor-plugin","survey","in-app surveys","user feedback","feedback","user research"],"scripts":{"verify":"npm run verify:ios && npm run verify:android && npm run verify:web","verify:ios":"cd ios && pod install && xcodebuild -workspace Plugin.xcworkspace -scheme Plugin -destination generic/platform=iOS && cd ..","verify:android":"cd android && ./gradlew clean build test && cd ..","verify:web":"npm run build","lint":"npm run eslint && npm run prettier -- --check && npm run swiftlint -- lint","fmt":"npm run eslint -- --fix && npm run prettier -- --write && npm run swiftlint -- --fix --format","eslint":"eslint . --ext ts","prettier":"prettier \"**/*.{css,html,ts,js,java}\"","swiftlint":"node-swiftlint","docgen":"docgen --api FormbricksPlugin --output-readme README.md --output-json dist/docs.json","build":"npm run clean && npm run docgen && tsc && rollup -c rollup.config.mjs","clean":"rimraf ./dist","watch":"tsc --watch","ios:pod:install":"cd ios && pod install --repo-update && cd ..","ios:spm:install":"cd ios && swift package resolve && cd ..","prepublishOnly":"npm run build"},"devDependencies":{"@capacitor/android":"8.0.0","@capacitor/cli":"8.4.2","@capacitor/core":"8.0.0","@capacitor/docgen":"0.3.1","@capacitor/ios":"8.0.0","@formbricks/js":"4.4.0","@ionic/eslint-config":"0.4.0","eslint":"8.57.0","prettier-plugin-java":"2.9.7","rimraf":"6.1.2","rollup":"4.62.3","swiftlint":"2.0.0","typescript":"5.9.3"},"peerDependencies":{"@capacitor/core":">=8.0.0","@formbricks/js":"^4.4.0"},"peerDependenciesMeta":{"@formbricks/js":{"optional":true}},"eslintConfig":{"extends":"@ionic/eslint-config/recommended"},"capacitor":{"ios":{"src":"ios"},"android":{"src":"android"}},"publishConfig":{"access":"public"},"gitHead":"561d36edf0573902ad46867a37062df3744cf090","_id":"@capawesome/capacitor-formbricks@0.1.2","_nodeVersion":"24.20.0","_npmVersion":"11.19.0","dist":{"integrity":"sha512-57W+O6AqIDS0+50aHdhXgOLg0nco5ZGvPxNNOO7ilNxlQnRbCjpflTb0GpJzKkptVZL+dIs7ZRLPizi+BDhaBA==","shasum":"acbf81ba543b02281d8127c5be4a4d045c806a19","tarball":"https://registry.npmjs.org/@capawesome/capacitor-formbricks/-/capacitor-formbricks-0.1.2.tgz","fileCount":39,"unpackedSize":65309,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@capawesome%2fcapacitor-formbricks@0.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIDmd7jf6vBdqaEGU4+C4iOcJZj7m8B9Su7pWD3feRzHDAiA+uWZAR7YrThcj5Zv4wxl3z5i7OrpbPwxdzsx0PfhFvg=="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:8d630ff2-6744-4bb1-83ff-84c06a0351a8"}},"directories":{},"maintainers":[{"name":"robingenz","email":"mail@robingenz.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/capacitor-formbricks_0.1.2_1789067201799_0.01981323929454404"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-12T13:54:45.161Z","modified":"2026-09-10T19:06:42.321Z","0.0.1":"2026-05-12T13:54:45.414Z","0.1.0":"2026-05-12T13:57:39.579Z","0.1.1":"2026-09-02T08:22:25.562Z","0.1.2":"2026-09-10T19:06:41.951Z"},"bugs":{"url":"https://github.com/capawesome-team/capacitor-plugins/issues"},"author":{"name":"Robin Genz","email":"mail@robingenz.dev"},"license":"MIT","homepage":"https://capawesome.io/docs/sdks/capacitor/formbricks/","keywords":["capacitor","plugin","native","formbricks","capacitor-plugin","survey","in-app surveys","user feedback","feedback","user research"],"repository":{"type":"git","url":"git+https://github.com/capawesome-team/capacitor-plugins.git"},"description":"Unofficial Capacitor plugin for Formbricks on Android, iOS, and Web.","maintainers":[{"name":"robingenz","email":"mail@robingenz.dev"}],"readme":"# Capacitor Formbricks Plugin\n\nUnofficial Capacitor plugin for [Formbricks](https://formbricks.com/).[^1]\n\n<div class=\"capawesome-z29o10a\">\n  <a href=\"https://cloud.capawesome.io/\" target=\"_blank\">\n    <img alt=\"Deliver Live Updates to your Capacitor app with Capawesome Cloud\" src=\"https://cloud.capawesome.io/assets/banners/cloud-build-and-deploy-capacitor-apps.png?t=1\" />\n  </a>\n</div>\n\n## Use Cases\n\nThe Formbricks plugin is typically used to collect user feedback directly in your app, for example:\n\n- **In-app surveys**: Track actions like a button press to trigger Formbricks surveys at the right moment.\n- **Personalized feedback**: Identify users with a user ID to connect survey responses to specific users.\n- **Targeted surveys**: Set user attributes such as plan or tier to show surveys only to specific user segments.\n- **Localized surveys**: Set the survey language to show surveys in the user's language.\n\n## Compatibility\n\n| Plugin Version | Capacitor Version | Status         |\n| -------------- | ----------------- | -------------- |\n| 0.1.x          | >=8.x.x           | Active support |\n\n## Installation\n\nYou can use our **AI-Assisted Setup** to install the plugin.\nAdd the [Capawesome Skills](https://github.com/capawesome-team/skills) to your AI tool using the following command:\n\n```bash\nnpx skills add capawesome-team/skills --skill capacitor-plugins\n```\n\nThen use the following prompt:\n\n```\n Use the `capacitor-plugins` skill from `capawesome-team/skills` to install the `@capawesome/capacitor-formbricks` plugin in my project.\n```\n\nIf you prefer **Manual Setup**, install the plugin by running the following commands and follow the platform-specific instructions below:\n\n```bash\nnpm install @capawesome/capacitor-formbricks @formbricks/js\nnpx cap sync\n```\n\n### Android\n\n#### Variables\n\nIf needed, you can define the following project variable in your app's `variables.gradle` file to change the default version of the dependency:\n\n- `$formbricksAndroidVersion` version of `com.formbricks:android` (default: `1.2.0`)\n\nThis can be useful if you encounter dependency conflicts with other plugins in your project.\n\n#### Data Binding\n\nThe Formbricks Android SDK requires Data Binding to be enabled in your app's `build.gradle` file:\n\n```groovy\nandroid {\n    buildFeatures {\n        dataBinding true\n    }\n}\n```\n\n### iOS\n\n#### Minimum Deployment Target\n\nIf you are using **Swift Package Manager**, make sure that your iOS deployment target is set to at least `16.6` in your Xcode project settings (usually in `ios/App/App.xcodeproj`):\n\n```diff\n-IPHONEOS_DEPLOYMENT_TARGET = 15.0\n+IPHONEOS_DEPLOYMENT_TARGET = 16.6\n```\n\nIf you are using **CocoaPods**, make sure that your iOS deployment target is set to at least `16.6` in your `Podfile`:\n\n```ruby\nplatform :ios, '16.6'\n```\n\n## Configuration\n\nNo configuration required for this plugin.\n\n## Usage\n\nThe following examples show how to set up the SDK, identify the user, set user attributes, set the survey language, track an action, and log out the user.\n\n### Set up the SDK\n\nSet up the Formbricks SDK with the URL of your Formbricks instance and the environment ID of your Formbricks project. This method must be called before any other method:\n\n```typescript\nimport { Formbricks } from '@capawesome/capacitor-formbricks';\n\nconst setup = async () => {\n  await Formbricks.setup({\n    appUrl: 'https://app.formbricks.com',\n    environmentId: 'YOUR_ENVIRONMENT_ID',\n  });\n};\n```\n\n### Identify the user\n\nSet the user ID of the current user to connect survey responses to that user:\n\n```typescript\nimport { Formbricks } from '@capawesome/capacitor-formbricks';\n\nconst setUserId = async () => {\n  await Formbricks.setUserId({\n    userId: 'user-123',\n  });\n};\n```\n\n### Set user attributes\n\nSet a single attribute with `setAttribute(...)` or multiple attributes at once with `setAttributes(...)`, for example to target surveys to specific user segments:\n\n```typescript\nimport { Formbricks } from '@capawesome/capacitor-formbricks';\n\nconst setAttribute = async () => {\n  await Formbricks.setAttribute({\n    key: 'plan',\n    value: 'pro',\n  });\n};\n\nconst setAttributes = async () => {\n  await Formbricks.setAttributes({\n    attributes: {\n      plan: 'pro',\n      tier: 'gold',\n    },\n  });\n};\n```\n\n### Set the survey language\n\nSet the language in which surveys are displayed:\n\n```typescript\nimport { Formbricks } from '@capawesome/capacitor-formbricks';\n\nconst setLanguage = async () => {\n  await Formbricks.setLanguage({\n    language: 'de',\n  });\n};\n```\n\n### Track an action\n\nTrack an action that may trigger a survey:\n\n```typescript\nimport { Formbricks } from '@capawesome/capacitor-formbricks';\n\nconst track = async () => {\n  await Formbricks.track({\n    action: 'button_pressed',\n  });\n};\n```\n\n### Log out the user\n\nLog out the current user and clear all attributes:\n\n```typescript\nimport { Formbricks } from '@capawesome/capacitor-formbricks';\n\nconst logout = async () => {\n  await Formbricks.logout();\n};\n```\n\n## API\n\n<docgen-index>\n\n* [`logout()`](#logout)\n* [`setAttribute(...)`](#setattribute)\n* [`setAttributes(...)`](#setattributes)\n* [`setLanguage(...)`](#setlanguage)\n* [`setUserId(...)`](#setuserid)\n* [`setup(...)`](#setup)\n* [`track(...)`](#track)\n* [Interfaces](#interfaces)\n\n</docgen-index>\n\n<docgen-api>\n<!--Update the source file JSDoc comments and rerun docgen to update the docs below-->\n\n### logout()\n\n```typescript\nlogout() => Promise<void>\n```\n\nLog out the current user and clear all attributes.\n\n**Since:** 0.1.0\n\n--------------------\n\n\n### setAttribute(...)\n\n```typescript\nsetAttribute(options: SetAttributeOptions) => Promise<void>\n```\n\nSet a single user attribute.\n\n| Param         | Type                                                                |\n| ------------- | ------------------------------------------------------------------- |\n| **`options`** | <code><a href=\"#setattributeoptions\">SetAttributeOptions</a></code> |\n\n**Since:** 0.1.0\n\n--------------------\n\n\n### setAttributes(...)\n\n```typescript\nsetAttributes(options: SetAttributesOptions) => Promise<void>\n```\n\nSet multiple user attributes at once.\n\n| Param         | Type                                                                  |\n| ------------- | --------------------------------------------------------------------- |\n| **`options`** | <code><a href=\"#setattributesoptions\">SetAttributesOptions</a></code> |\n\n**Since:** 0.1.0\n\n--------------------\n\n\n### setLanguage(...)\n\n```typescript\nsetLanguage(options: SetLanguageOptions) => Promise<void>\n```\n\nSet the survey language.\n\n| Param         | Type                                                              |\n| ------------- | ----------------------------------------------------------------- |\n| **`options`** | <code><a href=\"#setlanguageoptions\">SetLanguageOptions</a></code> |\n\n**Since:** 0.1.0\n\n--------------------\n\n\n### setUserId(...)\n\n```typescript\nsetUserId(options: SetUserIdOptions) => Promise<void>\n```\n\nSet the user ID of the current user.\n\n| Param         | Type                                                          |\n| ------------- | ------------------------------------------------------------- |\n| **`options`** | <code><a href=\"#setuseridoptions\">SetUserIdOptions</a></code> |\n\n**Since:** 0.1.0\n\n--------------------\n\n\n### setup(...)\n\n```typescript\nsetup(options: SetupOptions) => Promise<void>\n```\n\nSetup the Formbricks SDK with the provided options.\n\n**Attention**: This method must be called before any other method.\n\n| Param         | Type                                                  |\n| ------------- | ----------------------------------------------------- |\n| **`options`** | <code><a href=\"#setupoptions\">SetupOptions</a></code> |\n\n**Since:** 0.1.0\n\n--------------------\n\n\n### track(...)\n\n```typescript\ntrack(options: TrackOptions) => Promise<void>\n```\n\nTrack an action that may trigger a survey.\n\n| Param         | Type                                                  |\n| ------------- | ----------------------------------------------------- |\n| **`options`** | <code><a href=\"#trackoptions\">TrackOptions</a></code> |\n\n**Since:** 0.1.0\n\n--------------------\n\n\n### Interfaces\n\n\n#### SetAttributeOptions\n\n| Prop        | Type                | Description                 | Since |\n| ----------- | ------------------- | --------------------------- | ----- |\n| **`key`**   | <code>string</code> | The name of the attribute.  | 0.1.0 |\n| **`value`** | <code>string</code> | The value of the attribute. | 0.1.0 |\n\n\n#### SetAttributesOptions\n\n| Prop             | Type                                    | Description            | Since |\n| ---------------- | --------------------------------------- | ---------------------- | ----- |\n| **`attributes`** | <code>{ [key: string]: string; }</code> | The attributes to set. | 0.1.0 |\n\n\n#### SetLanguageOptions\n\n| Prop           | Type                | Description                                           | Since |\n| -------------- | ------------------- | ----------------------------------------------------- | ----- |\n| **`language`** | <code>string</code> | The language code of the survey language (e.g. `de`). | 0.1.0 |\n\n\n#### SetUserIdOptions\n\n| Prop         | Type                | Description                      | Since |\n| ------------ | ------------------- | -------------------------------- | ----- |\n| **`userId`** | <code>string</code> | The user ID of the current user. | 0.1.0 |\n\n\n#### SetupOptions\n\n| Prop                | Type                | Description                                    | Since |\n| ------------------- | ------------------- | ---------------------------------------------- | ----- |\n| **`appUrl`**        | <code>string</code> | The URL of your Formbricks instance.           | 0.1.0 |\n| **`environmentId`** | <code>string</code> | The environment ID of your Formbricks project. | 0.1.0 |\n\n\n#### TrackOptions\n\n| Prop         | Type                | Description                      | Since |\n| ------------ | ------------------- | -------------------------------- | ----- |\n| **`action`** | <code>string</code> | The name of the action to track. | 0.1.0 |\n\n</docgen-api>\n\n## FAQ\n\n### Can I use this plugin with a self-hosted Formbricks instance?\n\nYes, the `appUrl` option of the `setup(...)` method takes the URL of your Formbricks instance. Simply pass the URL of your self-hosted instance instead of `https://app.formbricks.com`.\n\n### Why is no survey shown after calling `track`?\n\nMake sure that `setup(...)` has been called first, since it must be called before any other method. Also note that `track(...)` only tracks an action that *may* trigger a survey. Whether a survey is actually shown depends on how the survey is configured in your Formbricks project.\n\n### Why does my iOS build fail after installing the plugin?\n\nThe Formbricks iOS SDK requires an iOS deployment target of at least `16.6`. Make sure that your deployment target is set accordingly in your Xcode project settings or `Podfile`, as described in the [Installation](#installation) section.\n\n### Why does my Android build fail after installing the plugin?\n\nThe Formbricks Android SDK requires Data Binding to be enabled in your app's `build.gradle` file. See the [Installation](#installation) section for the required configuration.\n\n### Can I use this plugin with Ionic, React, Vue or Angular?\n\nYes, the plugin is framework-agnostic. It works in any Capacitor app regardless of the web framework, including Ionic with Angular, React, or Vue, as well as plain JavaScript projects.\n\n## Related Plugins\n\n- [App Review](https://capawesome.io/docs/sdks/capacitor/app-review/): Let users submit app store reviews and ratings.\n- [Grafana Faro](https://capawesome.io/docs/sdks/capacitor/grafana-faro/): Unofficial Capacitor plugin for Grafana Faro.\n- [Intercom](https://capawesome.io/docs/sdks/capacitor/intercom/): Unofficial Capacitor plugin for the Intercom live chat and customer support platform.\n- [PostHog](https://capawesome.io/docs/sdks/capacitor/posthog/): Unofficial Capacitor plugin for PostHog.\n\n## Newsletter\n\nStay up to date with the latest news and updates about the Capawesome, Capacitor, and Ionic ecosystem by subscribing to our [Capawesome Newsletter](https://cloud.capawesome.io/newsletter/).\n\n## Changelog\n\nSee [CHANGELOG.md](https://github.com/capawesome-team/capacitor-plugins/blob/main/packages/formbricks/CHANGELOG.md).\n\n## License\n\nSee [LICENSE](https://github.com/capawesome-team/capacitor-plugins/blob/main/packages/formbricks/LICENSE).\n\n[^1]: This project is not affiliated with, endorsed by, sponsored by, or approved by Formbricks GmbH or any of their affiliates or subsidiaries.\n","readmeFilename":"README.md"}