code: func GetPackageByType(
  	sess *session.Session,
  	packageType string,
  	mask ...string,
  ) (datatypes.Product_Package, error) {
  
  	objectMask := "id,name,description,isActive,type[keyName]"
  	if len(mask) > 0 {
  		objectMask = mask[0]
  	}
  
  	service := services.GetProductPackageService(sess)
  
  	// Get package id
  	packages, err := service.
  		Mask(objectMask).
  		Filter(
  			filter.Build(
  				filter.Path("type.keyName").Eq(packageType),
  			),
  		).
  		Limit(1).
  		GetAllObjects()
  	if err != nil {
  		return datatypes.Product_Package{}, err
  	}
  
  	packages = rejectOutletPackages(packages)
  
  	if len(packages) == 0 {
  		return datatypes.Product_Package{}, fmt.Errorf("No product packages found for %s", packageType)
  	}
  
  	return packages[0], nil
  }
docs: // GetPackageByType Get the Product_Package which matches the specified
  // package type