diff --git a/readthedocs/core/signals.py b/readthedocs/core/signals.py index 23c0ac65d9f..76f33fb3305 100644 --- a/readthedocs/core/signals.py +++ b/readthedocs/core/signals.py @@ -21,6 +21,7 @@ '/api/v2/search', '/api/v2/docsearch', '/api/v2/embed', + '/api/v3/embed', ] webhook_github = Signal(providing_args=['project', 'data', 'event']) @@ -76,6 +77,12 @@ def decide_if_cors(sender, request, **kwargs): # pylint: disable=unused-argumen url = request.GET.get('url') if url: unresolved = unresolve(url) + if unresolved is None: + # NOTE: Embed APIv3 now supports external sites. In that case + # ``unresolve()`` will return None and we want to allow it + # since the target is a public project. + return True + project = unresolved.project version_slug = unresolved.version_slug else: