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

schema.patch SynchronizationSchema : 404 No HTTP resource was found that matches the request URI #820

Open
dominique-lambert-OBS opened this issue Jul 18, 2024 · 6 comments
Assignees
Labels
dependency:metadata Awaiting fix from core dependency project module type:bug A broken experience

Comments

@dominique-lambert-OBS
Copy link

dominique-lambert-OBS commented Jul 18, 2024

Describe the bug

I'm trying to update one Attribut Mapping from a Synchronisation Job. For information, the provisioning job is created on template_id “gsuite”.
When I launch the schema.patch() method I have the API Error.

APIError
Code: 404
message: None
error: MainError(additional_data={}, code='UnknownError', details=None, inner_error=InnerError(additional_data={}, client_request_id='0bbde296-b67b-4dcd-a4fb-35fcd5fa98f5', date=DateTime(2024, 7, 18, 7, 14, 15, tzinfo=Timezone('UTC')), odata_type=None, request_id='c86232e3-3a57-458c-8c44-3f2874146620'), message='{"Message":"No HTTP resource was found that matches the request URI 'https://syncfabric.windowsazure.com/api/servicePrincipals(\'acc560a1-67df-4d8d-abd0-7cf74a1d7211\')/synchronization/jobs(\'gsuite.b126ececd749434c915e443764450031.8f782d8a-7b79-4417-aab7-f96538801e92\')/schema?api-version=2.0\'."}', target=None)

Expected behavior

All I do now is read the shema and then patch the shema as is without modifying it.
I expect the schema to be patched without modification.
I'll then have to update the Objects Mapping.

How to reproduce

async def patch_synchronizationSchema_case(service_principal_id: str):
    # Read Service Principal
    servicePrincipal = await client.service_principals.by_service_principal_id(service_principal_id).get()
    print(f'=================')
    print(f'app_display_name : {servicePrincipal.app_display_name}')

    # Read Job
    jobs = await client.service_principals.by_service_principal_id(service_principal_id).synchronization.jobs.get()

    if len(jobs.value) == 0:
        print(f'There is no synchronisation job')
        return
    
    job=jobs.value[0]
    synchronizationJob_id=jobs.value[0].id
    print(f'job template id : {job.template_id}')
    print(f'job id : {synchronizationJob_id}')
 
    # Read schema
    schema = await client.service_principals.by_service_principal_id(service_principal_id).synchronization.jobs.by_synchronization_job_id(synchronizationJob_id).schema.get()

    # Modifie Object Mapping
    # TODO

    # Patch schema
    await client.service_principals.by_service_principal_id(service_principal_id).synchronization.jobs.by_synchronization_job_id(synchronizationJob_id).schema.patch(schema)

asyncio.run(patch_synchronizationSchema_case(GCP_DEV2_servicePrincipal_id))

SDK Version

1.5.3

Latest version known to work for scenario above?

No response

Known Workarounds

No response

Debug output

Click to expand log ```
    APIError
    Code: 404
    message: None
    error: MainError(additional_data={}, code='UnknownError', details=None, inner_error=InnerError(additional_data={}, client_request_id='3006e706-78d4-4a17-bf17-0a02ff65b55c', date=DateTime(2024, 7, 18, 7, 26, 24, tzinfo=Timezone('UTC')), odata_type=None, request_id='fb6b307f-6a84-41f0-aeae-52d8b9d4cd00'), message='{"Message":"No HTTP resource was found that matches the request URI \'https://syncfabric.windowsazure.com/api/servicePrincipals(\'acc560a1-67df-4d8d-abd0-7cf74a1d7211\')/synchronization/jobs(\'gsuite.b126ececd749434c915e443764450031.8f782d8a-7b79-4417-aab7-f96538801e92\')/schema?api-version=2.0\'."}', target=None)
</details>


### Configuration

_No response_

### Other information

_No response_
@dominique-lambert-OBS dominique-lambert-OBS added status:waiting-for-triage An issue that is yet to be reviewed or assigned type:bug A broken experience labels Jul 18, 2024
@shemogumbe
Copy link
Collaborator

shemogumbe commented Aug 6, 2024

Hello @dominique-lambert-OBS , Thanks for using the python SDK and for raising this.

In In order to help us reproduce and help fix this, are there active synchronization jobs?

For instance, len(jobs.value) a number greater than 0, considering you are seeing a 404 when patching, could this be the reason, same for synchronization jobs and schema.

@shemogumbe shemogumbe added status:waiting-for-author-feedback Issue that we've responded but needs author feedback to close and removed status:waiting-for-triage An issue that is yet to be reviewed or assigned labels Aug 6, 2024
@dominique-lambert-OBS
Copy link
Author

Hello,
Yes I can confirm that len(jobs.value) egals 1

=================
app_display_name : GCP DEV2
Jobs len : 1
job template id : gsuite
job id : gsuite.b126ececd749434c915e443764450031.1c0969ff-f1fd-440a-852c-bf0943750273

@dominique-lambert-OBS
Copy link
Author

dominique-lambert-OBS commented Aug 19, 2024

Hello,
@baywet, can we re-open this case ?
Best regards,
Dominique

@baywet baywet reopened this Aug 21, 2024
@baywet
Copy link
Member

baywet commented Aug 21, 2024

Hi @dominique-lambert-OBS
Thanks for the nudge here.
@shemogumbe it seems the metadata for this API is incorrect, the API is expecting a PUT, not a PATCH can you either open an ICM on the team asking them to add an update restriction to their metadata, or open an issue in the metadata repo to do so please?

@dominique-lambert-OBS
Copy link
Author

Hello @shemogumbe
Can you take a look before the bot closes the case?
Best regards
Dominique

@shemogumbe
Copy link
Collaborator

Blocked by microsoftgraph/msgraph-metadata#676

@shemogumbe shemogumbe added dependency:metadata Awaiting fix from core dependency project module and removed status:waiting-for-author-feedback Issue that we've responded but needs author feedback to close labels Sep 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependency:metadata Awaiting fix from core dependency project module type:bug A broken experience
Projects
None yet
Development

No branches or pull requests

3 participants