code: func (m *AuthzResourceManager) CreateSpace(ctx context.Context, request *http.Request, spaceID string) error {
  	if !m.configuration.IsAuthorizationEnabled() {
  		// Keycloak authorization is disabled by default in Developer Mode
  		log.Warn(ctx, map[string]interface{}{
  			"space_id": spaceID,
  		}, "Authorization is disabled. Keycloak space resource won't be created")
  		return nil
  	}
  
  	c, err := CreateClient(ctx, m.configuration)
  	if err != nil {
  		return err
  	}
  	sUD, err := goauuid.FromString(spaceID)
  	if err != nil {
  		return err
  	}
  	res, err := c.CreateSpace(goasupport.ForwardContextRequestID(ctx), authservice.CreateSpacePath(sUD))
  	if err != nil {
  		log.Error(ctx, map[string]interface{}{
  			"space_id": spaceID,
  			"err":      err.Error(),
  		}, "unable to create a space resource via auth service")
  		return errs.Wrap(err, "unable to create a space resource via auth service")
  	}
  	defer rest.CloseResponse(res)
  
  	if res.StatusCode != http.StatusOK {
  		responseBody := rest.ReadBody(res.Body)
  		log.Error(ctx, map[string]interface{}{
  			"space_id":        spaceID,
  			"response_status": res.Status,
  			"response_body":   responseBody,
  		}, "unable to create a space resource via auth service")
  		// Proxy-back back the response as is -
  		// WIT acts as a gateway to Auth, who would send the appropriate response.
  		return proxy.ConvertHTTPErrorCode(res.StatusCode, responseBody)
  	}
  
  	return nil
  }
docs: // CreateSpace calls auth service to create a keycloak resource associated with the space