Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

get returns all fields, select provides values, all non selected fields returned with 'None' value #458

Open
dogrileycom opened this issue Jan 19, 2024 · 1 comment
Assignees
Labels
type:question An issue that's a question

Comments

@dogrileycom
Copy link

dogrileycom commented Jan 19, 2024

Environment

  • Python Version: 3.11.6
  • msgraph-core version: 1.0.0.a4
  • OS: MacOS 14.2.1 M2

Stack trace (if available)
Screenshot or formatted copy and paste of your stack trace.

Describe the bug
formatting a select statement

query_params = UsersRequestBuilder.UsersRequestBuilderGetQueryParameters(
    select=['id', 'accountEnabled', 'businessPhones', 'city', 'companyName', 'country', 'createdDateTime',
            'deletedDateTime', 'department', 'displayName', 'employeeId', 'givenName', 'jobTitle',
            'mail', 'mailNickname', 'mobilePhone', 'officeLocation', 'postalCode', 'preferredDataLocation',
                'preferredLanguage', 'securityIdentifier', 'state', 'streetAddress', 'surname', 'userPrincipalName',
                'userType'],
    orderby= "displayName",
    top=1
    )
    
    request_configuration = UsersRequestBuilder.UsersRequestBuilderGetRequestConfiguration(
    query_parameters=query_params
    )
    request_configuration.headers.add('ConsistencyLevel', 'eventual')
users = await client.users.get(request_configuration = request_configuration)

This returns:

UserCollectionResponse(
	additional_data={'@odata.context': 'https://graph.microsoft.com/v1.0/$metadata#users(id,accountEnabled,businessPhones,city,companyName,country,createdDateTime,deletedDateTime,department,displayName,employeeId,givenName,jobTitle,mail,mailNickname,mobilePhone,officeLocation,postalCode,preferredDataLocation,preferredLanguage,securityIdentifier,state,streetAddress,surname,userPrincipalName,userType)'}, 
	odata_count=17, 
	odata_next_link='https://graph.microsoft.com/v1.0/users?$top=1&$count=true&$orderby=displayName&$select=id%2caccountEnabled%2cbusinessPhones%2ccity%2ccompanyName%2ccountry%2ccreatedDateTime%2cdeletedDateTime%2cdepartment%2cdisplayName%2cemployeeId%2cgivenName%2cjobTitle%2cmail%2cmailNickname%2cmobilePhone%2cofficeLocation%2cpostalCode%2cpreferredDataLocation%2cpreferredLanguage%2csecurityIdentifier%2cstate%2cstreetAddress%2csurname%2cuserPrincipalName%2cuserType&$skiptoken=m~AQC4ATs7MzAwMDQ1MDAzMDAwMzIwMDMwMDA0NTAwMzEwMDQxMDAzMDAwNDUwMDMyMDAzMTAwMzAwMDQ1MDAzNDAwMzgwMDMwMDA0NTAwMzIwMDMxMDAzMDAwMzcwMDMwMDAzMjAwMzAwMDQ1MDA0MTAwMzIwMDMwMDA0NTAwMzAwMDMyMDAzMDAwNDUwMDM3MDAzMDAwMzAwMDQ1MDAzMDAwNDEwMDMwMDA0NTAwMzIwMDMxMDA7MTswOzs', 
	value=[
		User(
			additional_data={}, 
			id='4421ec16-6e81-436e-b765-8ab20ef1fdc7', 
			odata_type='#microsoft.graph.user', 
			deleted_date_time=None, 
			about_me=None, 
			account_enabled=True, 
			activities=None, 
			age_group=None, 
			agreement_acceptances=None, 
			app_role_assignments=None, 
			assigned_licenses=None, 
			assigned_plans=None, 
			authentication=None, 
			authorization_info=None, 
			birthday=None, 
			business_phones=['+1 425 555 0109'], 
			calendar=None, 
			calendar_groups=None, 
			calendar_view=None, 
			calendars=None, 
			chats=None, 
			city='Bellevue', 
			company_name=None, 
			consent_provided_for_minor=None, 
			contact_folders=None, 
			contacts=None, 
			country='United States', 
			created_date_time=DateTime(2023, 11, 7, 11, 32, 41, tzinfo=Timezone('UTC')), 
			created_objects=None, 
			creation_type=None, 
			custom_security_attributes=None, 
			department='Retail', 
			device_enrollment_limit=None, 
			device_management_troubleshooting_events=None, 
			direct_reports=None, 
			display_name='Adele Vance', 
			drive=None, 
			drives=None, 
			employee_experience=None, 
			employee_hire_date=None, 
			employee_id=None, 
			employee_leave_date_time=None, 
			employee_org_data=None, 
			employee_type=None, 
			events=None, 
			extensions=None, 
			external_user_state=None, 
			external_user_state_change_date_time=None, 
			fax_number=None, 
			followed_sites=None, 
			given_name='Adele', 
			hire_date=None, 
			identities=None, 
			im_addresses=None, 
			inference_classification=None, 
			insights=None, 
			interests=None, 
			is_resource_account=None, 
			job_title='Retail Manager', 
			joined_teams=None, 
			last_password_change_date_time=None, 
			legal_age_group_classification=None, 
			license_assignment_states=None, 
			license_details=None, 
			mail='[email protected]', 
			mail_folders=None, 
			mail_nickname='AdeleV', 
			mailbox_settings=None, 
			managed_app_registrations=None, 
			managed_devices=None, 
			manager=None, 
			member_of=None, 
			messages=None, 
			mobile_phone=None, 
			my_site=None, 
			oauth2_permission_grants=None, 
			office_location='18/2111', 
			on_premises_distinguished_name=None, 
			on_premises_domain_name=None, 
			on_premises_extension_attributes=None, 
			on_premises_immutable_id=None, 
			on_premises_last_sync_date_time=None, 
			on_premises_provisioning_errors=None, 
			on_premises_sam_account_name=None, 
			on_premises_security_identifier=None, 
			on_premises_sync_enabled=None, 
			on_premises_user_principal_name=None, 
			onenote=None, 
			online_meetings=None, 
			other_mails=None, 
			outlook=None, 
			owned_devices=None, 
			owned_objects=None, 
			password_policies=None, 
			password_profile=None, 
			past_projects=None, 
			people=None, 
			photo=None, 
			photos=None, 
			planner=None, 
			postal_code='98004', 
			preferred_data_location=None, 
			preferred_language='en-US', 
			preferred_name=None, 
			presence=None, 
			print=None, 
			provisioned_plans=None, 
			proxy_addresses=None, 
			registered_devices=None, 
			responsibilities=None, 
			schools=None, 
			scoped_role_member_of=None, 
			security_identifier='S-1-12-1-1143073814-1131410721-2995414453-3355308302', 
			service_provisioning_errors=None, 
			settings=None, 
			show_in_address_list=None, 
			sign_in_activity=None, 
			sign_in_sessions_valid_from_date_time=None, 
			skills=None, 
			state='WA', 
			street_address='205 108th Ave. NE, Suite 400', 
			surname='Vance', 
			teamwork=None, 
			todo=None, 
			transitive_member_of=None, 
			usage_location=None, 
			user_principal_name='[email protected]', 
			user_type='Member'
			)
		]
	)

To Reproduce
Use the code above, it works across every object I have used so far.

Expected behavior
I would expect to just get the 26 fields I selected.

Screenshots
If applicable, add screenshots to help explain your problem.

Additional context
Add any other context about the problem here.

@dogrileycom dogrileycom added the bug Something isn't working label Jan 19, 2024
@rkodev rkodev assigned rkodev and Ndiritu and unassigned rkodev Jul 10, 2024
@Ndiritu
Copy link
Contributor

Ndiritu commented Jul 11, 2024

Hi @dogrileycom, thanks for reaching out.
This happens because we're initialising a User object whose properties default to None. The HTTP response only returns the selected fields.

Would you mind sharing more context/a use-case where you'd prefer an object with only the 26 fields?

@Ndiritu Ndiritu added type:question An issue that's a question and removed bug Something isn't working labels Jul 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type:question An issue that's a question
Projects
None yet
Development

No branches or pull requests

3 participants