App
Ability

Executes an ability for multiple delegators in batch

Changed on

Executes a Vincent ability for multiple delegators using a shared delegatee private key. Each delegator can have custom parameters that override the defaults. The delegatee app ID is automatically looked up from the private key.

post/app/{abilityName}/execute

Request

  • Base URL
    https://api.heyvincent.ai
  • URL
    https://api.heyvincent.ai/app/{abilityName}/execute
  • Auth
    none declared

Path parameters

abilityNamestring required

URL-friendly ability name (e.g., "relay-link")

Request body

delegateePrivateKeystring required

Private key of the delegatee (app PKP). Used to derive the app ID automatically.

defaultsobject

Default parameters for the ability execution that apply to all delegators unless overridden

Example request

{
  "delegateePrivateKey": "0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef",
  "defaults": {
    "ORIGIN_CHAIN_ID": 8453,
    "DESTINATION_CHAIN_ID": 8453,
    "ORIGIN_CURRENCY": "0x0000000000000000000000000000000000000000",
    "DESTINATION_CURRENCY": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "TRADE_TYPE": "EXACT_INPUT"
  },
  "delegators": [
    {
      "delegatorAddress": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb",
      "abilityParams": {
        "AMOUNT": "1000000000000000000"
      }
    }
  ]
}

Response

Batch execution completed (some delegators may have failed, check individual results)

resultsobject required

Map of delegator addresses to their execution results

Example response

{
  "results": {
    "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb": {
      "success": true,
      "transactionHash": "0xabc123...",
      "userOpHash": "0xdef456..."
    },
    "0x1234567890123456789012345678901234567890": {
      "success": false,
      "error": "Precheck failed: Insufficient balance"
    }
  }
}

Changes

    • breaking

      the request property / became not nullable

    • breaking

      the request property /// became not nullable

    • info

      added subschema #1 subschema #2 subschema #3 to the / request property anyOf list

    • info

      added subschema #1 subschema #2 subschema #3 to the /// request property anyOf list

    • info

      endpoint added