from odoo import models, fields, api from odoo.addons.iap import jsonrpc class PrintifyIntegration(models.Model): _name = 'printify.integration' _description = 'Printify Integration via IAP' @api.model def fetch_printify_products(self): # Configuration IAP endpoint = 'https://iap.odoo.com/iap/printify.api' params = { 'api_key': 'eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIzN2Q0YmQzMDM1ZmUxMWU5YTgwM2FiN2VlYjNjY2M5NyIsImp0aSI6IjNjMmMxYzFjODIwNzU2ZDRkMzcxYWFlNWYwMTNjYTZkNDk5ZDc1NDZjZjE2N2VhNGIwM2JkN2ZhMDBhNmVjYzk5ZTZiNjI5NWI1NWEyNjdjIiwiaWF0IjoxNzMwOTkwNDcxLjUxMTAzMywibmJmIjoxNzMwOTkwNDcxLjUxMTAzNSwiZXhwIjoxNzYyNTI2NDcxLjUwMjY4OCwic3ViIjoiMTUxMjg5MzciLCJzY29wZXMiOlsic2hvcHMubWFuYWdlIiwic2hvcHMucmVhZCIsImNhdGFsb2cucmVhZCIsIm9yZGVycy5yZWFkIiwib3JkZXJzLndyaXRlIiwicHJvZHVjdHMucmVhZCIsInByb2R1Y3RzLndyaXRlIiwid2ViaG9va3MucmVhZCIsIndlYmhvb2tzLndyaXRlIiwidXBsb2Fkcy5yZWFkIiwidXBsb2Fkcy53cml0ZSIsInByaW50X3Byb3ZpZGVycy5yZWFkIiwidXNlci5pbmZvIl19.AHfJHp62zOQXez6isRS-ATccJ3bLqyPLOoK3F5JdJfuj7hBxORT_eHZqLBlfC1z5v12GcKG4dPdUOkAGOms', 'endpoint': 'catalog/blueprints.json', 'method': 'GET', } # Envoi de la requête via IAP response = jsonrpc(endpoint, params=params) if response.get('status') == 'success': products = response.get('data', []) # Utiliser `products` pour alimenter ton site Odoo return products else: _logger.error('Erreur lors de la connexion à Printify : %s', response) return []