TCD avec pyhton

Bonjour à tous et à toutes !

Je suis nouvelle sur python et j’aurais besoin de votre aide svp.

Je travaille avec un fichier Google Sheet qui est renouvelé chaque semaine. Je le récupère automatiquement avec son id (qui change chaque semaine) via un drive, je fais qq traitements en back avec un dataframe, puis je l’ajoute dans un nouveau google Sheet. Jusqu’ici aucun problème.
Sur ce nouveau book, j’ai des TCD (tableaux croisés dynamiques) à réaliser, 1 par feuille. Mes TCD sont créées et fonctionnels (voir ci-dessous le schéma pour un).
Ce que j’aimerais est qu’ils se réalisent automatiquement car pour l’instant je créée une feuille et récupère son ID à la main puis l’ajoute dans la partie du code où sera créé le TCD.

Auriez-vous une idée de comment récupérer un id d’une feuille qui n’existe pas encore puis l’ajouter sur mon schéma de TCD ?

Voici le schéma du TCD :

#Pivot table -> JSON
    request_body = {

        "requests" : [

            {

                "updateCells": {

                    "rows" : {

                        "values" : [

                            {

                                "pivotTable" : {

                                    #Data Source

                                    "source" : {

                                        "sheetId": "0",

                                        "startRowIndex" : 0,

                                        "startColumnIndex" : 0,

                                    },

                                    #Row Field(s)

                                    "rows" : [ 

                                        #field 2

                                        {

                                            "sourceColumnOffset" : 5, #Type Preneur

                                            "showTotals" : False,

                                            "sortOrder" : "ASCENDING"

                                        },

                                        #field 3

                                        {

                                            "sourceColumnOffset" : 3, #Enseigne

                                            "showTotals" : False,

                                            "sortOrder" : "ASCENDING"

                                        }

                                    ],

                                    #Columns Field(s)

                                    "columns" : [

                                        #Field 1

                                        {

                                            "sourceColumnOffset" : 6, #Nature impayés

                                            "sortOrder" : "ASCENDING", 

                                            "showTotals" : False

                                        },

                                        #Field 2

                                        {

                                            "sourceColumnOffset" : 18, #Année

                                            "sortOrder" : "ASCENDING",

                                            "showTotals" : True

                                        },

                                        #Field 3

                                        {

                                            "sourceColumnOffset" : 19, #Item - Entry Type

                                            "sortOrder" : "ASCENDING",

                                            "showTotals" : False  

                                        }

                                    ],

                                    "criteria" : {

                                        6:{

                                            'visibleValues' : ['Solde Créditeur']

                                        },

                                        19:{

                                            'visibleValues' : [

                                                'DEPRD', 'DEPRE', 'ECHEA', 'FACTU'

                                            ]

                                        },

                                        5: {

                                            'visibleValues' : [

                                                "Inconnu", "Indépendant","Antenne / Wifi", "SL", "Franchisé", "Ephémère", "Copro", "Carrefour", "-"

                                            ]

                                        },

                                    },                                        

                                    #Values Field(s)

                                    "values" : [

                                        {

                                            "sourceColumnOffset" : 21, #PNS BRUT PPSO

                                            "summarizeFunction" : "SUM",

                                            "name" : ""

                                        }

                                    ],

                                    "valueLayout" : "HORIZONTAL"

                                }

                            }

                        ]

                    },

                    "start" : {

                        "sheetId" : "******", # Feuille où sera le tcd 

                        "rowIndex" : 0, 

                        "columnIndex" : 0

                    },

                    "fields" : "pivotTable"

                }

            }

        ]

    }

    #Ecriture du 1er TCD

    response = service_sheet.spreadsheets().batchUpdate(

        spreadsheetId = Id_fichier_source,

        body = request_body

    ).execute()

Merci beaucoup !

Salut,

je pense que tu pourrais créer ta sheet avec pygsheets et en récupérer l’id pour mettre à jour ton TCD: