canAccessEndpoint($user, $webhookRequest); } public function create(?User $user): bool { return false; } public function update(?User $user, WebhookRequest $webhookRequest): bool { return false; } public function delete(?User $user, WebhookRequest $webhookRequest): bool { return $this->canAccessEndpoint($user, $webhookRequest); } private function canAccessEndpoint(?User $user, WebhookRequest $webhookRequest): bool { $webhookRequest->loadMissing('endpoint'); return (new WebhookEndpointPolicy)->view($user, $webhookRequest->endpoint); } }