code: func (c *UserController) Show(ctx *app.ShowUserContext) error {
  	client, err := newAuthClient(ctx, c.config, c.httpOptions...)
  	if err != nil {
  		return jsonapi.JSONErrorResponse(ctx, err)
  	}
  	res, err := client.ShowUser(goasupport.ForwardContextRequestID(ctx), authservice.ShowUserPath(), ctx.IfModifiedSince, ctx.IfNoneMatch)
  	if err != nil {
  		log.Error(ctx, map[string]interface{}{
  			"err": err.Error(),
  		}, "unable to get user from the auth service")
  		return jsonapi.JSONErrorResponse(ctx, errs.Wrap(err, "unable to get user from the auth service"))
  	}
  	defer rest.CloseResponse(res)
  
  	switch res.StatusCode {
  	case 200:
  	// OK
  	case 401:
  		return jsonapi.JSONErrorResponse(ctx, errors.NewUnauthorizedError(rest.ReadBody(res.Body)))
  	default:
  		return jsonapi.JSONErrorResponse(ctx, errors.NewInternalError(ctx, errs.Errorf("status: %s, body: %s", res.Status, rest.ReadBody(res.Body))))
  	}
  
  	authUser, _ := client.DecodeUser(res)
  
  	if c.InitTenant != nil {
  		go func(ctx context.Context) {
  			c.InitTenant(ctx)
  		}(ctx)
  	}
  	return ctx.OK(convertToAppUser(authUser))
  }
docs: // Show returns the authorized user based on the provided Token