trigger_type === 'webhook', 404); $secret = (string) ($automation->trigger_config['secret'] ?? ''); if ($secret !== '') { abort_unless(hash_equals($secret, (string) $request->header('X-Automation-Secret')), 401, 'Invalid automation secret.'); } $run = $runner->dispatch($automation, $request->all(), 'webhook'); return response()->json(['data' => ['execution_id' => $run->execution_id, 'status' => $run->status]], 202); } }