diff --git a/lnbits/core/extensions/api.py b/lnbits/core/extensions/api.py index a3f4b397c..cc6269dfa 100644 --- a/lnbits/core/extensions/api.py +++ b/lnbits/core/extensions/api.py @@ -407,12 +407,19 @@ class ExtensionAPI: sdk_name="request", description="Make an outbound HTTP request to an allowed host.", required_permission="http.request", - require_auth=True, + require_auth=False, ) async def http_request(self, request: HttpRequest) -> HttpResponse: from .http_client import send_extension_http_request policy = self.permission_policies.get("http.request") or {} + if ( + not self.has_authenticated_context() + and policy.get("allow_public") is not True + ): + raise PermissionError( + "Extension API method 'http.request' requires authentication." + ) return await send_extension_http_request(self.extension_id, policy, request) @extension_api_method(