code: async def put(self, path=''):
          
          self.log.info("Attempt publishing to %s", path)
  
          if path == '' or path == '/':
              raise web.HTTPError(400, "Must provide a path for publishing")
  
          model = self.get_json_body()
          if model:
              await self._publish(model, path.lstrip('/'))
          else:
              raise web.HTTPError(400, "Cannot publish an empty model")
docs: Publish a notebook on a given path.
  
          The payload directly matches the contents API for PUT.