-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/


-- | Google Enterprise License Manager SDK.
--   
--   Licensing API to view and manage license for your domain.
--   
--   <i>Warning:</i> This is an experimental prototype/preview release
--   which is still under exploratory development and not intended for
--   public use, caveat emptor!
--   
--   This library is compatible with version <tt>v1</tt> of the API.
@package gogol-apps-licensing
@version 0.3.0


module Network.Google.AppsLicensing.Types

-- | Default request referring to version <tt>v1</tt> of the Enterprise
--   License Manager API. This contains the host and root path used as a
--   starting point for constructing service requests.
appsLicensingService :: ServiceConfig

-- | View and manage Google Apps licenses for your domain
appsLicensingScope :: Proxy '["https://www.googleapis.com/auth/apps.licensing"]

-- | Template for LicenseAssignment Insert request
--   
--   <i>See:</i> <a>licenseAssignmentInsert</a> smart constructor.
data LicenseAssignmentInsert

-- | Creates a value of <a>LicenseAssignmentInsert</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>laiUserId</a></li>
--   </ul>
licenseAssignmentInsert :: LicenseAssignmentInsert

-- | Email id of the user
laiUserId :: Lens' LicenseAssignmentInsert (Maybe Text)

-- | LicesnseAssignment List for a given product/sku for a customer.
--   
--   <i>See:</i> <a>licenseAssignmentList</a> smart constructor.
data LicenseAssignmentList

-- | Creates a value of <a>LicenseAssignmentList</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>lalEtag</a></li>
--   <li><a>lalNextPageToken</a></li>
--   <li><a>lalKind</a></li>
--   <li><a>lalItems</a></li>
--   </ul>
licenseAssignmentList :: LicenseAssignmentList

-- | ETag of the resource.
lalEtag :: Lens' LicenseAssignmentList (Maybe Text)

-- | The continuation token, used to page through large result sets.
--   Provide this value in a subsequent request to return the next page of
--   results.
lalNextPageToken :: Lens' LicenseAssignmentList (Maybe Text)

-- | Identifies the resource as a collection of LicenseAssignments.
lalKind :: Lens' LicenseAssignmentList Text

-- | The LicenseAssignments in this page of results.
lalItems :: Lens' LicenseAssignmentList [LicenseAssignment]

-- | Template for LiscenseAssignment Resource
--   
--   <i>See:</i> <a>licenseAssignment</a> smart constructor.
data LicenseAssignment

-- | Creates a value of <a>LicenseAssignment</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>laEtags</a></li>
--   <li><a>laKind</a></li>
--   <li><a>laSKUId</a></li>
--   <li><a>laUserId</a></li>
--   <li><a>laSelfLink</a></li>
--   <li><a>laProductId</a></li>
--   </ul>
licenseAssignment :: LicenseAssignment

-- | ETag of the resource.
laEtags :: Lens' LicenseAssignment (Maybe Text)

-- | Identifies the resource as a LicenseAssignment.
laKind :: Lens' LicenseAssignment Text

-- | Name of the sku of the product.
laSKUId :: Lens' LicenseAssignment (Maybe Text)

-- | Email id of the user.
laUserId :: Lens' LicenseAssignment (Maybe Text)

-- | Link to this page.
laSelfLink :: Lens' LicenseAssignment (Maybe Text)

-- | Name of the product.
laProductId :: Lens' LicenseAssignment (Maybe Text)


-- | Revoke License.
--   
--   <i>See:</i> <a>Enterprise License Manager API Reference</a> for
--   <tt>licensing.licenseAssignments.delete</tt>.
module Network.Google.Resource.Licensing.LicenseAssignments.Delete

-- | A resource alias for <tt>licensing.licenseAssignments.delete</tt>
--   method which the <a>LicenseAssignmentsDelete</a> request conforms to.
type LicenseAssignmentsDeleteResource = "apps" :> ("licensing" :> ("v1" :> ("product" :> (Capture "productId" Text :> ("sku" :> (Capture "skuId" Text :> ("user" :> (Capture "userId" Text :> (QueryParam "alt" AltJSON :> Delete '[JSON] ())))))))))

-- | Creates a value of <a>LicenseAssignmentsDelete</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>ladSKUId</a></li>
--   <li><a>ladUserId</a></li>
--   <li><a>ladProductId</a></li>
--   </ul>
licenseAssignmentsDelete :: Text -> Text -> Text -> LicenseAssignmentsDelete

-- | Revoke License.
--   
--   <i>See:</i> <a>licenseAssignmentsDelete</a> smart constructor.
data LicenseAssignmentsDelete

-- | Name for sku
ladSKUId :: Lens' LicenseAssignmentsDelete Text

-- | email id or unique Id of the user
ladUserId :: Lens' LicenseAssignmentsDelete Text

-- | Name for product
ladProductId :: Lens' LicenseAssignmentsDelete Text
instance GHC.Generics.Generic Network.Google.Resource.Licensing.LicenseAssignments.Delete.LicenseAssignmentsDelete
instance Data.Data.Data Network.Google.Resource.Licensing.LicenseAssignments.Delete.LicenseAssignmentsDelete
instance GHC.Show.Show Network.Google.Resource.Licensing.LicenseAssignments.Delete.LicenseAssignmentsDelete
instance GHC.Classes.Eq Network.Google.Resource.Licensing.LicenseAssignments.Delete.LicenseAssignmentsDelete
instance Network.Google.Types.GoogleRequest Network.Google.Resource.Licensing.LicenseAssignments.Delete.LicenseAssignmentsDelete


-- | Get license assignment of a particular product and sku for a user
--   
--   <i>See:</i> <a>Enterprise License Manager API Reference</a> for
--   <tt>licensing.licenseAssignments.get</tt>.
module Network.Google.Resource.Licensing.LicenseAssignments.Get

-- | A resource alias for <tt>licensing.licenseAssignments.get</tt> method
--   which the <a>LicenseAssignmentsGet</a> request conforms to.
type LicenseAssignmentsGetResource = "apps" :> ("licensing" :> ("v1" :> ("product" :> (Capture "productId" Text :> ("sku" :> (Capture "skuId" Text :> ("user" :> (Capture "userId" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] LicenseAssignment)))))))))

-- | Creates a value of <a>LicenseAssignmentsGet</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>lagSKUId</a></li>
--   <li><a>lagUserId</a></li>
--   <li><a>lagProductId</a></li>
--   </ul>
licenseAssignmentsGet :: Text -> Text -> Text -> LicenseAssignmentsGet

-- | Get license assignment of a particular product and sku for a user
--   
--   <i>See:</i> <a>licenseAssignmentsGet</a> smart constructor.
data LicenseAssignmentsGet

-- | Name for sku
lagSKUId :: Lens' LicenseAssignmentsGet Text

-- | email id or unique Id of the user
lagUserId :: Lens' LicenseAssignmentsGet Text

-- | Name for product
lagProductId :: Lens' LicenseAssignmentsGet Text
instance GHC.Generics.Generic Network.Google.Resource.Licensing.LicenseAssignments.Get.LicenseAssignmentsGet
instance Data.Data.Data Network.Google.Resource.Licensing.LicenseAssignments.Get.LicenseAssignmentsGet
instance GHC.Show.Show Network.Google.Resource.Licensing.LicenseAssignments.Get.LicenseAssignmentsGet
instance GHC.Classes.Eq Network.Google.Resource.Licensing.LicenseAssignments.Get.LicenseAssignmentsGet
instance Network.Google.Types.GoogleRequest Network.Google.Resource.Licensing.LicenseAssignments.Get.LicenseAssignmentsGet


-- | Assign License.
--   
--   <i>See:</i> <a>Enterprise License Manager API Reference</a> for
--   <tt>licensing.licenseAssignments.insert</tt>.
module Network.Google.Resource.Licensing.LicenseAssignments.Insert

-- | A resource alias for <tt>licensing.licenseAssignments.insert</tt>
--   method which the <a>LicenseAssignmentsInsert</a> request conforms to.
type LicenseAssignmentsInsertResource = "apps" :> ("licensing" :> ("v1" :> ("product" :> (Capture "productId" Text :> ("sku" :> (Capture "skuId" Text :> ("user" :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] LicenseAssignmentInsert :> Post '[JSON] LicenseAssignment)))))))))

-- | Creates a value of <a>LicenseAssignmentsInsert</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>laiSKUId</a></li>
--   <li><a>laiPayload</a></li>
--   <li><a>laiProductId</a></li>
--   </ul>
licenseAssignmentsInsert :: Text -> LicenseAssignmentInsert -> Text -> LicenseAssignmentsInsert

-- | Assign License.
--   
--   <i>See:</i> <a>licenseAssignmentsInsert</a> smart constructor.
data LicenseAssignmentsInsert

-- | Name for sku
laiSKUId :: Lens' LicenseAssignmentsInsert Text

-- | Multipart request metadata.
laiPayload :: Lens' LicenseAssignmentsInsert LicenseAssignmentInsert

-- | Name for product
laiProductId :: Lens' LicenseAssignmentsInsert Text
instance GHC.Generics.Generic Network.Google.Resource.Licensing.LicenseAssignments.Insert.LicenseAssignmentsInsert
instance Data.Data.Data Network.Google.Resource.Licensing.LicenseAssignments.Insert.LicenseAssignmentsInsert
instance GHC.Show.Show Network.Google.Resource.Licensing.LicenseAssignments.Insert.LicenseAssignmentsInsert
instance GHC.Classes.Eq Network.Google.Resource.Licensing.LicenseAssignments.Insert.LicenseAssignmentsInsert
instance Network.Google.Types.GoogleRequest Network.Google.Resource.Licensing.LicenseAssignments.Insert.LicenseAssignmentsInsert


-- | List license assignments for given product of the customer.
--   
--   <i>See:</i> <a>Enterprise License Manager API Reference</a> for
--   <tt>licensing.licenseAssignments.listForProduct</tt>.
module Network.Google.Resource.Licensing.LicenseAssignments.ListForProduct

-- | A resource alias for
--   <tt>licensing.licenseAssignments.listForProduct</tt> method which the
--   <a>LicenseAssignmentsListForProduct</a> request conforms to.
type LicenseAssignmentsListForProductResource = "apps" :> ("licensing" :> ("v1" :> ("product" :> (Capture "productId" Text :> ("users" :> (QueryParam "customerId" Text :> (QueryParam "pageToken" Text :> (QueryParam "maxResults" (Textual Word32) :> (QueryParam "alt" AltJSON :> Get '[JSON] LicenseAssignmentList)))))))))

-- | Creates a value of <a>LicenseAssignmentsListForProduct</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>lalfpCustomerId</a></li>
--   <li><a>lalfpPageToken</a></li>
--   <li><a>lalfpProductId</a></li>
--   <li><a>lalfpMaxResults</a></li>
--   </ul>
licenseAssignmentsListForProduct :: Text -> Text -> LicenseAssignmentsListForProduct

-- | List license assignments for given product of the customer.
--   
--   <i>See:</i> <a>licenseAssignmentsListForProduct</a> smart constructor.
data LicenseAssignmentsListForProduct

-- | CustomerId represents the customer for whom licenseassignments are
--   queried
lalfpCustomerId :: Lens' LicenseAssignmentsListForProduct Text

-- | Token to fetch the next page.Optional. By default server will return
--   first page
lalfpPageToken :: Lens' LicenseAssignmentsListForProduct Text

-- | Name for product
lalfpProductId :: Lens' LicenseAssignmentsListForProduct Text

-- | Maximum number of campaigns to return at one time. Must be positive.
--   Optional. Default value is 100.
lalfpMaxResults :: Lens' LicenseAssignmentsListForProduct Word32
instance GHC.Generics.Generic Network.Google.Resource.Licensing.LicenseAssignments.ListForProduct.LicenseAssignmentsListForProduct
instance Data.Data.Data Network.Google.Resource.Licensing.LicenseAssignments.ListForProduct.LicenseAssignmentsListForProduct
instance GHC.Show.Show Network.Google.Resource.Licensing.LicenseAssignments.ListForProduct.LicenseAssignmentsListForProduct
instance GHC.Classes.Eq Network.Google.Resource.Licensing.LicenseAssignments.ListForProduct.LicenseAssignmentsListForProduct
instance Network.Google.Types.GoogleRequest Network.Google.Resource.Licensing.LicenseAssignments.ListForProduct.LicenseAssignmentsListForProduct


-- | List license assignments for given product and sku of the customer.
--   
--   <i>See:</i> <a>Enterprise License Manager API Reference</a> for
--   <tt>licensing.licenseAssignments.listForProductAndSku</tt>.
module Network.Google.Resource.Licensing.LicenseAssignments.ListForProductAndSKU

-- | A resource alias for
--   <tt>licensing.licenseAssignments.listForProductAndSku</tt> method
--   which the <a>LicenseAssignmentsListForProductAndSKU</a> request
--   conforms to.
type LicenseAssignmentsListForProductAndSKUResource = "apps" :> ("licensing" :> ("v1" :> ("product" :> (Capture "productId" Text :> ("sku" :> (Capture "skuId" Text :> ("users" :> (QueryParam "customerId" Text :> (QueryParam "pageToken" Text :> (QueryParam "maxResults" (Textual Word32) :> (QueryParam "alt" AltJSON :> Get '[JSON] LicenseAssignmentList)))))))))))

-- | Creates a value of <a>LicenseAssignmentsListForProductAndSKU</a> with
--   the minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>lalfpaskuSKUId</a></li>
--   <li><a>lalfpaskuCustomerId</a></li>
--   <li><a>lalfpaskuPageToken</a></li>
--   <li><a>lalfpaskuProductId</a></li>
--   <li><a>lalfpaskuMaxResults</a></li>
--   </ul>
licenseAssignmentsListForProductAndSKU :: Text -> Text -> Text -> LicenseAssignmentsListForProductAndSKU

-- | List license assignments for given product and sku of the customer.
--   
--   <i>See:</i> <a>licenseAssignmentsListForProductAndSKU</a> smart
--   constructor.
data LicenseAssignmentsListForProductAndSKU

-- | Name for sku
lalfpaskuSKUId :: Lens' LicenseAssignmentsListForProductAndSKU Text

-- | CustomerId represents the customer for whom licenseassignments are
--   queried
lalfpaskuCustomerId :: Lens' LicenseAssignmentsListForProductAndSKU Text

-- | Token to fetch the next page.Optional. By default server will return
--   first page
lalfpaskuPageToken :: Lens' LicenseAssignmentsListForProductAndSKU Text

-- | Name for product
lalfpaskuProductId :: Lens' LicenseAssignmentsListForProductAndSKU Text

-- | Maximum number of campaigns to return at one time. Must be positive.
--   Optional. Default value is 100.
lalfpaskuMaxResults :: Lens' LicenseAssignmentsListForProductAndSKU Word32
instance GHC.Generics.Generic Network.Google.Resource.Licensing.LicenseAssignments.ListForProductAndSKU.LicenseAssignmentsListForProductAndSKU
instance Data.Data.Data Network.Google.Resource.Licensing.LicenseAssignments.ListForProductAndSKU.LicenseAssignmentsListForProductAndSKU
instance GHC.Show.Show Network.Google.Resource.Licensing.LicenseAssignments.ListForProductAndSKU.LicenseAssignmentsListForProductAndSKU
instance GHC.Classes.Eq Network.Google.Resource.Licensing.LicenseAssignments.ListForProductAndSKU.LicenseAssignmentsListForProductAndSKU
instance Network.Google.Types.GoogleRequest Network.Google.Resource.Licensing.LicenseAssignments.ListForProductAndSKU.LicenseAssignmentsListForProductAndSKU


-- | Assign License. This method supports patch semantics.
--   
--   <i>See:</i> <a>Enterprise License Manager API Reference</a> for
--   <tt>licensing.licenseAssignments.patch</tt>.
module Network.Google.Resource.Licensing.LicenseAssignments.Patch

-- | A resource alias for <tt>licensing.licenseAssignments.patch</tt>
--   method which the <a>LicenseAssignmentsPatch</a> request conforms to.
type LicenseAssignmentsPatchResource = "apps" :> ("licensing" :> ("v1" :> ("product" :> (Capture "productId" Text :> ("sku" :> (Capture "skuId" Text :> ("user" :> (Capture "userId" Text :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] LicenseAssignment :> Patch '[JSON] LicenseAssignment))))))))))

-- | Creates a value of <a>LicenseAssignmentsPatch</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>lapSKUId</a></li>
--   <li><a>lapPayload</a></li>
--   <li><a>lapUserId</a></li>
--   <li><a>lapProductId</a></li>
--   </ul>
licenseAssignmentsPatch :: Text -> LicenseAssignment -> Text -> Text -> LicenseAssignmentsPatch

-- | Assign License. This method supports patch semantics.
--   
--   <i>See:</i> <a>licenseAssignmentsPatch</a> smart constructor.
data LicenseAssignmentsPatch

-- | Name for sku for which license would be revoked
lapSKUId :: Lens' LicenseAssignmentsPatch Text

-- | Multipart request metadata.
lapPayload :: Lens' LicenseAssignmentsPatch LicenseAssignment

-- | email id or unique Id of the user
lapUserId :: Lens' LicenseAssignmentsPatch Text

-- | Name for product
lapProductId :: Lens' LicenseAssignmentsPatch Text
instance GHC.Generics.Generic Network.Google.Resource.Licensing.LicenseAssignments.Patch.LicenseAssignmentsPatch
instance Data.Data.Data Network.Google.Resource.Licensing.LicenseAssignments.Patch.LicenseAssignmentsPatch
instance GHC.Show.Show Network.Google.Resource.Licensing.LicenseAssignments.Patch.LicenseAssignmentsPatch
instance GHC.Classes.Eq Network.Google.Resource.Licensing.LicenseAssignments.Patch.LicenseAssignmentsPatch
instance Network.Google.Types.GoogleRequest Network.Google.Resource.Licensing.LicenseAssignments.Patch.LicenseAssignmentsPatch


-- | Assign License.
--   
--   <i>See:</i> <a>Enterprise License Manager API Reference</a> for
--   <tt>licensing.licenseAssignments.update</tt>.
module Network.Google.Resource.Licensing.LicenseAssignments.Update

-- | A resource alias for <tt>licensing.licenseAssignments.update</tt>
--   method which the <a>LicenseAssignmentsUpdate</a> request conforms to.
type LicenseAssignmentsUpdateResource = "apps" :> ("licensing" :> ("v1" :> ("product" :> (Capture "productId" Text :> ("sku" :> (Capture "skuId" Text :> ("user" :> (Capture "userId" Text :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] LicenseAssignment :> Put '[JSON] LicenseAssignment))))))))))

-- | Creates a value of <a>LicenseAssignmentsUpdate</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>lauSKUId</a></li>
--   <li><a>lauPayload</a></li>
--   <li><a>lauUserId</a></li>
--   <li><a>lauProductId</a></li>
--   </ul>
licenseAssignmentsUpdate :: Text -> LicenseAssignment -> Text -> Text -> LicenseAssignmentsUpdate

-- | Assign License.
--   
--   <i>See:</i> <a>licenseAssignmentsUpdate</a> smart constructor.
data LicenseAssignmentsUpdate

-- | Name for sku for which license would be revoked
lauSKUId :: Lens' LicenseAssignmentsUpdate Text

-- | Multipart request metadata.
lauPayload :: Lens' LicenseAssignmentsUpdate LicenseAssignment

-- | email id or unique Id of the user
lauUserId :: Lens' LicenseAssignmentsUpdate Text

-- | Name for product
lauProductId :: Lens' LicenseAssignmentsUpdate Text
instance GHC.Generics.Generic Network.Google.Resource.Licensing.LicenseAssignments.Update.LicenseAssignmentsUpdate
instance Data.Data.Data Network.Google.Resource.Licensing.LicenseAssignments.Update.LicenseAssignmentsUpdate
instance GHC.Show.Show Network.Google.Resource.Licensing.LicenseAssignments.Update.LicenseAssignmentsUpdate
instance GHC.Classes.Eq Network.Google.Resource.Licensing.LicenseAssignments.Update.LicenseAssignmentsUpdate
instance Network.Google.Types.GoogleRequest Network.Google.Resource.Licensing.LicenseAssignments.Update.LicenseAssignmentsUpdate


-- | Licensing API to view and manage license for your domain.
--   
--   <i>See:</i> <a>Enterprise License Manager API Reference</a>
module Network.Google.AppsLicensing

-- | Default request referring to version <tt>v1</tt> of the Enterprise
--   License Manager API. This contains the host and root path used as a
--   starting point for constructing service requests.
appsLicensingService :: ServiceConfig

-- | View and manage Google Apps licenses for your domain
appsLicensingScope :: Proxy '["https://www.googleapis.com/auth/apps.licensing"]

-- | Represents the entirety of the methods and resources available for the
--   Enterprise License Manager API service.
type AppsLicensingAPI = LicenseAssignmentsInsertResource :<|> (LicenseAssignmentsPatchResource :<|> (LicenseAssignmentsGetResource :<|> (LicenseAssignmentsListForProductAndSKUResource :<|> (LicenseAssignmentsListForProductResource :<|> (LicenseAssignmentsDeleteResource :<|> LicenseAssignmentsUpdateResource)))))

-- | Template for LicenseAssignment Insert request
--   
--   <i>See:</i> <a>licenseAssignmentInsert</a> smart constructor.
data LicenseAssignmentInsert

-- | Creates a value of <a>LicenseAssignmentInsert</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>laiUserId</a></li>
--   </ul>
licenseAssignmentInsert :: LicenseAssignmentInsert

-- | Email id of the user
laiUserId :: Lens' LicenseAssignmentInsert (Maybe Text)

-- | LicesnseAssignment List for a given product/sku for a customer.
--   
--   <i>See:</i> <a>licenseAssignmentList</a> smart constructor.
data LicenseAssignmentList

-- | Creates a value of <a>LicenseAssignmentList</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>lalEtag</a></li>
--   <li><a>lalNextPageToken</a></li>
--   <li><a>lalKind</a></li>
--   <li><a>lalItems</a></li>
--   </ul>
licenseAssignmentList :: LicenseAssignmentList

-- | ETag of the resource.
lalEtag :: Lens' LicenseAssignmentList (Maybe Text)

-- | The continuation token, used to page through large result sets.
--   Provide this value in a subsequent request to return the next page of
--   results.
lalNextPageToken :: Lens' LicenseAssignmentList (Maybe Text)

-- | Identifies the resource as a collection of LicenseAssignments.
lalKind :: Lens' LicenseAssignmentList Text

-- | The LicenseAssignments in this page of results.
lalItems :: Lens' LicenseAssignmentList [LicenseAssignment]

-- | Template for LiscenseAssignment Resource
--   
--   <i>See:</i> <a>licenseAssignment</a> smart constructor.
data LicenseAssignment

-- | Creates a value of <a>LicenseAssignment</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>laEtags</a></li>
--   <li><a>laKind</a></li>
--   <li><a>laSKUId</a></li>
--   <li><a>laUserId</a></li>
--   <li><a>laSelfLink</a></li>
--   <li><a>laProductId</a></li>
--   </ul>
licenseAssignment :: LicenseAssignment

-- | ETag of the resource.
laEtags :: Lens' LicenseAssignment (Maybe Text)

-- | Identifies the resource as a LicenseAssignment.
laKind :: Lens' LicenseAssignment Text

-- | Name of the sku of the product.
laSKUId :: Lens' LicenseAssignment (Maybe Text)

-- | Email id of the user.
laUserId :: Lens' LicenseAssignment (Maybe Text)

-- | Link to this page.
laSelfLink :: Lens' LicenseAssignment (Maybe Text)

-- | Name of the product.
laProductId :: Lens' LicenseAssignment (Maybe Text)
