--payload allows you to invoke the action with specified parameters. This enables your action to receive and handle dynamic inputs at runtime. For example:
Copy
Ask AI
kernel invoke <app_name> <action_name> --payload '{"tshirt_size": "small", "color": "black", "shipping_address": "2 Mint Plz, San Francisco CA 94103"}'
See developing to learn how to access the payload in your action method.
You can also run your app by making a POST request to Kernel’s API. For automations and agents that take longer than 100 seconds, use async invocations.
Synchronous invocations time out after 100 seconds.
For long running jobs, use asynchronous invocations to trigger Kernel actions without waiting for the result. You can then poll its status for the result.
Copy
Ask AI
const response = await fetch(`https://api.onkernel.com/invocations`, { method: 'POST', headers: { 'Authorization': `Bearer ${process.env.KERNEL_API_KEY}`, 'Content-Type': 'application/json' }, body: { JSON.stringify({ app_name: "app_name", action_name: "action_name", version: "latest", async: true, // Set this flag to specify asynchronous }) }});const { id, status } = await response.json(); // status will be QUEUED
Or, invoke the function using Kernel’s SDK:
Copy
Ask AI
import { Kernel } from '@onkernel/sdk';const { id, status, // status will be QUEUED} = await Kernel.invocations.create({ app_name: app_name, action_name: action_name, version: "latest", async: true,});