Skip to main content
POST
https://api.heyvincent.ai
/
user
/
{appId}
/
uninstall-app
curl -X POST https://api.heyvincent.ai/user/123/uninstall-app \
  -H "Content-Type: application/json" \
  -d '{
    "userControllerAddress": "0xUserWalletAddress...",
    "appVersion": 1
  }'
{
  "uninstallDataToSign": {
    "typedData": {
      "domain": { "...": "..." },
      "types": { "...": "..." },
      "message": { "...": "..." }
    }
  }
}
Initiate revocation of permissions for a specific app version. This prevents the app from taking actions on behalf of the user.
To re-enable a previously uninstalled app, simply call the install-app endpoint again. It will automatically detect the uninstalled state and re-enable the app.

Request

appId
integer
required
The unique identifier of the app
userControllerAddress
string
required
The Ethereum address of the user’s wallet
appVersion
integer
required
The app version to uninstall
sponsorGas
boolean
default:"true"
Controls the transaction submission method:
  • true (default): Returns EIP-712 typed data for gas-sponsored relay via Gelato. The user signs the typed data and submits it to the complete-uninstall endpoint.
  • false: Returns raw transaction data (to and data fields) that the user can submit directly from their EOA, paying gas themselves. Useful for development or when gas sponsorship is not desired.

Response

rawTransaction
object
Raw transaction data for direct EOA submission. Only returned when sponsorGas: false. The user submits this transaction directly from their wallet, paying gas themselves.
uninstallDataToSign
object
EIP-712 typed data that the user must sign to complete the uninstall. Only returned when sponsorGas: true (default). Pass this object to the complete-uninstall endpoint along with the signature.
curl -X POST https://api.heyvincent.ai/user/123/uninstall-app \
  -H "Content-Type: application/json" \
  -d '{
    "userControllerAddress": "0xUserWalletAddress...",
    "appVersion": 1
  }'
{
  "uninstallDataToSign": {
    "typedData": {
      "domain": { "...": "..." },
      "types": { "...": "..." },
      "message": { "...": "..." }
    }
  }
}