code: def get_api_root_view(self, api_urls=None):
          
          api_root_dict = OrderedDict()
          list_name = self.routes[0].name
          for prefix, viewset, basename in self.registry:
              api_root_dict[prefix] = list_name.format(basename=basename)
  
          class APIRootView(views.APIView):
              _ignore_model_permissions = True
              exclude_from_schema = True
  
              def get(self, request, *args, **kwargs):
                  # Return a plain {"name": "hyperlink"} response.
                  ret = OrderedDict()
                  namespace = request.resolver_match.namespace
                  for key, url_name in sorted(api_root_dict.items(), key=itemgetter(0)):
                      if namespace:
                          url_name = namespace + ':' + url_name
                      try:
                          ret[key] = reverse(
                              url_name,
                              args=args,
                              kwargs=kwargs,
                              request=request,
                              format=kwargs.get('format', None)
                          )
                      except NoReverseMatch:
                          # Don't bail out if eg. no list routes exist, only detail routes.
                          continue
  
                  return Response(ret)
  
          return APIRootView.as_view()
docs: Return a basic root view.