@classmethod
def _from_dict(cls, _dict):
    """Initialize a CredentialDetails object from a json dictionary."""
    args = {}
    if 'credential_type' in _dict:
        args['credential_type'] = _dict.get('credential_type')
    if 'client_id' in _dict:
        args['client_id'] = _dict.get('client_id')
    if 'enterprise_id' in _dict:
        args['enterprise_id'] = _dict.get('enterprise_id')
    if 'url' in _dict:
        args['url'] = _dict.get('url')
    if 'username' in _dict:
        args['username'] = _dict.get('username')
    if 'organization_url' in _dict:
        args['organization_url'] = _dict.get('organization_url')
    if 'site_collection.path' in _dict:
        args['site_collection_path'] = _dict.get('site_collection.path')
    if 'client_secret' in _dict:
        args['client_secret'] = _dict.get('client_secret')
    if 'public_key_id' in _dict:
        args['public_key_id'] = _dict.get('public_key_id')
    if 'private_key' in _dict:
        args['private_key'] = _dict.get('private_key')
    if 'passphrase' in _dict:
        args['passphrase'] = _dict.get('passphrase')
    if 'password' in _dict:
        args['password'] = _dict.get('password')
    if 'gateway_id' in _dict:
        args['gateway_id'] = _dict.get('gateway_id')
    if 'source_version' in _dict:
        args['source_version'] = _dict.get('source_version')
    if 'web_application_url' in _dict:
        args['web_application_url'] = _dict.get('web_application_url')
    if 'domain' in _dict:
        args['domain'] = _dict.get('domain')
    return cls(**args)
