Initialized Vana SDK instance
Request payload containing typed data, signature, and optional security check
Promise resolving to the transaction hash
import { handleRelayerRequest } from '@opendatalabs/vana-sdk';
// In your relayer API endpoint:
export async function POST(request: NextRequest) {
try {
const body = await request.json();
const vana = await createRelayerVana();
const txHash = await handleRelayerRequest(vana, {
typedData: body.typedData,
signature: body.signature,
expectedUserAddress: body.expectedUserAddress
});
return NextResponse.json({
success: true,
transactionHash: txHash
});
} catch (error) {
return NextResponse.json({
success: false,
error: error.message
}, { status: 500 });
}
}
Unified server-side handler for processing relayed transactions.
This function encapsulates the complete relayer workflow:
Supported transaction types: