# coding=utf-8
# --------------------------------------------------------------------------
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------

from msrest.serialization import Model


class MicrosoftgraphwebAccount(Model):
    """MicrosoftgraphwebAccount.

    :param id:
    :type id: str
    :param allowed_audiences: Possible values include: 'me', 'family',
     'contacts', 'groupMembers', 'organization', 'federatedOrganizations',
     'everyone', 'unknownFutureValue'
    :type allowed_audiences: str or ~users.models.enum
    :param inference:
    :type inference: ~users.models.MicrosoftgraphinferenceData
    :param created_date_time:
    :type created_date_time: datetime
    :param created_by:
    :type created_by: ~users.models.MicrosoftgraphidentitySet
    :param last_modified_date_time:
    :type last_modified_date_time: datetime
    :param last_modified_by:
    :type last_modified_by: ~users.models.MicrosoftgraphidentitySet
    :param description:
    :type description: str
    :param user_id:
    :type user_id: str
    :param service:
    :type service: ~users.models.MicrosoftgraphserviceInformation
    :param status_message:
    :type status_message: str
    :param web_url:
    :type web_url: str
    """

    _attribute_map = {
        'id': {'key': 'id', 'type': 'str'},
        'allowed_audiences': {'key': 'allowedAudiences', 'type': 'str'},
        'inference': {'key': 'inference', 'type': 'MicrosoftgraphinferenceData'},
        'created_date_time': {'key': 'createdDateTime', 'type': 'iso-8601'},
        'created_by': {'key': 'createdBy', 'type': 'MicrosoftgraphidentitySet'},
        'last_modified_date_time': {'key': 'lastModifiedDateTime', 'type': 'iso-8601'},
        'last_modified_by': {'key': 'lastModifiedBy', 'type': 'MicrosoftgraphidentitySet'},
        'description': {'key': 'description', 'type': 'str'},
        'user_id': {'key': 'userId', 'type': 'str'},
        'service': {'key': 'service', 'type': 'MicrosoftgraphserviceInformation'},
        'status_message': {'key': 'statusMessage', 'type': 'str'},
        'web_url': {'key': 'webUrl', 'type': 'str'},
    }

    def __init__(self, id=None, allowed_audiences=None, inference=None, created_date_time=None, created_by=None, last_modified_date_time=None, last_modified_by=None, description=None, user_id=None, service=None, status_message=None, web_url=None):
        super(MicrosoftgraphwebAccount, self).__init__()
        self.id = id
        self.allowed_audiences = allowed_audiences
        self.inference = inference
        self.created_date_time = created_date_time
        self.created_by = created_by
        self.last_modified_date_time = last_modified_date_time
        self.last_modified_by = last_modified_by
        self.description = description
        self.user_id = user_id
        self.service = service
        self.status_message = status_message
        self.web_url = web_url
