microsoftgraph / microsoftgraph/msgraph-sdk-python

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

Aperta
#820 6 commenti 0 reazioni 1 assegnatario Vedi su GitHub

Nessuno ha ancora preso questa issue.

dependency:metadata type:bug
Lingua principale
Python
Stelle
630
Fork
96
Merge medio
15h 20m
PR unite (30g)
3

Descrizione

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_

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.