code: def get_callback_url(self, **kwargs):
      
      # TODO: Support positional parameters.
      if not self.async:
        raise UnexpectedPipelineError(
            'May only call get_callback_url() method for asynchronous pipelines.')
      kwargs['pipeline_id'] = self._pipeline_key.name()
      params = urllib.urlencode(sorted(kwargs.items()))
      return '%s/callback?%s' % (self.base_path, params)
docs: Returns a relative URL for invoking this Pipeline's callback method.
  
      Args:
        kwargs: Dictionary mapping keyword argument names to single values that
          should be passed to the callback when it is invoked.
  
      Raises:
        UnexpectedPipelineError if this is invoked on pipeline that is not async.