{"id":71407,"date":"2023-07-20T10:51:02","date_gmt":"2023-07-20T09:51:02","guid":{"rendered":"https:\/\/kinqsta.com\/it\/?p=71407&#038;preview=true&#038;preview_id=71407"},"modified":"2023-07-31T10:52:47","modified_gmt":"2023-07-31T09:52:47","slug":"pianificare-manutenzione-con-kinsta-api","status":"publish","type":"post","link":"https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/","title":{"rendered":"Pianificare le Attivit\u00e0 di Manutenzione con l&#8217;API di Kinsta (Cancellare la Cache, Riavviare il Motore PHP)"},"content":{"rendered":"<p>Nel corso degli anni, Kinsta ha compiuto notevoli progressi nel semplificare la gestione dei siti web attraverso il cruscotto <a href=\"https:\/\/my.kinqsta.com\/?lang=it\">MyKinsta<\/a>. La nostra potente dashboard consente agli utenti di gestire i propri siti e di eseguire varie operazioni di manutenzione, tra cui il <a href=\"https:\/\/kinqsta.com\/it\/docs\/hosting-wordpress\/php\/#restart-php\">riavvio del motore PHP<\/a> e la <a href=\"https:\/\/kinqsta.com\/it\/docs\/hosting-wordpress\/cache\/cache-del-sito\/#manage-and-clear-cache-in-your-wordpress-dashboard\">cancellazione della cache del sito<\/a>.<\/p>\n<p>L&#8217;introduzione dell&#8217;<a href=\"https:\/\/kinqsta.com\/it\/docs\/kinsta-api\/\">API di Kinsta<\/a> porta la gestione dei siti web su un livello completamente nuovo. Gli <a href=\"https:\/\/kinqsta.com\/it\/blog\/tipi-di-developer\/\">sviluppatori<\/a> ora possono sfruttare la potenza dell&#8217;API di Kinsta per migliorare le attivit\u00e0 di gestione, <a href=\"https:\/\/kinqsta.com\/it\/blog\/wordpress-api\/\">creare interfacce personalizzate<\/a> e persino realizzare applicazioni per pianificare e automatizzare le attivit\u00e0 essenziali.<\/p>\n<p>Questo tutorial vi accompagna nel mondo dell&#8217;API di Kinsta e vi spiega come costruire un&#8217;applicazione <a href=\"https:\/\/kinqsta.com\/it\/blog\/react-js\/\">React<\/a> per pianificare attivit\u00e0 di manutenzione essenziali come il riavvio del motore PHP e la cancellazione della cache con l&#8217;API di Kinsta.<\/p>\n<p>Ecco una demo live dell&#8217;<a href=\"https:\/\/site-tools-scheduler-6u1a5.kinsta.app\/\" target=\"_blank\" rel=\"noopener noreferrer\">applicazione per la pianificazione degli strumenti del sito<\/a>.<\/p>\n<figure style=\"width: 1600px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2023\/07\/maintenance-tasks-app.gif\" alt=\"Demo dell'applicazione di pianificazione degli strumenti del sito.\" width=\"1600\" height=\"225\"><figcaption class=\"wp-caption-text\">Demo dell&#8217;applicazione per la pianificazione degli strumenti del sito.<\/figcaption><\/figure>\n<aside role=\"note\" class=\"wp-block-kinsta-notice is-style-info\">\n            <h3>Info<\/h3>\n        <p>Se volete testare questa applicazione con il vostro hosting WordPress gestito, potete utilizzare <a href=\"https:\/\/github.com\/kinsta\/site-tools-scheduler\">questo template GitHub<\/a>, distribuirlo e aggiungere l&#8217;ID della vostra azienda e la vostra chiave API come variabili d&#8217;ambiente. Per i dettagli, si veda il <a href=\"https:\/\/github.com\/kinsta\/site-tools-scheduler\/blob\/main\/README.md\" target=\"_blank\" rel=\"noopener noreferrer\">file Readme.md<\/a>.<\/p>\n<\/aside>\n\n<div><\/div><kinsta-auto-toc heading=\"Table of Contents\" exclude=\"last\" list-style=\"arrow\" selector=\"h2\" count-number=\"-1\"><\/kinsta-auto-toc>\n<h2>L&#8217;API di Kinsta<\/h2>\n<p>L&#8217;<a href=\"https:\/\/kinqsta.com\/it\/changelog\/kinsta-api\/\">API di Kinsta<\/a> \u00e8 un potente strumento che permette di interagire con la piattaforma di <a href=\"https:\/\/kinqsta.com\/it\/hosting-wordpress\/\">hosting WordPress gestito<\/a> di Kinsta in modo programmatico. Pu\u00f2 aiutarvi ad automatizzare diverse attivit\u00e0 relative ai servizi di Kinsta, tra cui la creazione di un sito, il recupero di informazioni sul sito, lo <a href=\"https:\/\/kinqsta.com\/it\/blog\/chiave-api-kinsta\/#how-to-use-kinsta-api-to-build-a-status-checker\">stato di un sito<\/a> e molto altro.<\/p>\n<p>Per utilizzare l&#8217;API di Kinsta, \u00e8 necessario avere un account con almeno un sito, un&#8217;<a href=\"https:\/\/sevalla.com\/application-hosting\/\">applicazione<\/a> o un <a href=\"https:\/\/sevalla.com\/database-hosting\/\">database<\/a> WordPress in MyKinsta. Sar\u00e0 inoltre necessario generare una chiave API per autenticarsi e accedere al proprio account tramite l&#8217;API.<\/p>\n<p>Ecco i passaggi necessari per generare una chiave API:<\/p>\n<ol start=\"1\">\n<li>Andare alla dashboard di MyKinsta.<\/li>\n<li>Andare alla pagina delle <strong>chiavi API<\/strong> (<strong>Nome<\/strong> &gt; <strong>Impostazioni azienda<\/strong> &gt; <strong>Chiavi API<\/strong>).<\/li>\n<li>Cliccare su <strong>Crea chiave API<\/strong>.<\/li>\n<li>Scegliere una scadenza o impostare una data di inizio personalizzata e un numero di ore alla scadenza della chiave.<\/li>\n<li>Assegnare alla chiave un nome univoco.<\/li>\n<li>Cliccare su <strong>Genera<\/strong>.<\/li>\n<\/ol>\n<figure style=\"width: 1600px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2023\/07\/create-api-key-on-mykinsta-1.jpg\" alt=\"Creare una chiave API in MyKinsta\" width=\"1600\" height=\"225\"><figcaption class=\"wp-caption-text\">Creare una chiave API in MyKinsta.<\/figcaption><\/figure>\n<p>Dopo aver creato una chiave API, copiatela e conservatela in un luogo sicuro (potete usare un <a href=\"https:\/\/kinqsta.com\/it\/blog\/password-manager\/\">gestore di password<\/a>), perch\u00e9 questa \u00e8 l&#8217;<strong>unica volta<\/strong> che viene mostrata all&#8217;interno di MyKinsta. \u00c8 possibile generare pi\u00f9 chiavi API: sono elencate nella pagina delle <strong>chiavi API<\/strong>. Se avete bisogno di revocare una chiave API, cliccate su <strong>Revoca<\/strong> accanto al nome della chiave che volete revocare.<\/p>\n<h2>Come utilizzare gli strumenti per il sito di Kinsta con l&#8217;API di Kinsta<\/h2>\n<p>La pagina <a href=\"https:\/\/kinqsta.com\/it\/docs\/hosting-wordpress\/strumenti-mykinsta\/\">strumenti per il sito di Kinsta<\/a> \u00e8 un insieme di strumenti a disposizione degli utenti di Kinsta per gestire e mantenere i siti WordPress. Questi strumenti sono disponibili in MyKinsta (<strong>Siti WordPress<\/strong> &gt; <strong>nome sito<\/strong> &gt; <strong>Strumenti<\/strong>), ma al momento non tutti sono supportati dalle API di Kinsta. Il nostro team \u00e8 costantemente al lavoro per aggiungere nuove funzionalit\u00e0, e lo fa tenendo sotto controllo e ascoltando i feedback, come spiega Kristof Siket, Development Team Lead dell&#8217;API di Kinsta:<\/p>\n<blockquote><p><em>Il feedback degli utenti guida la definizione delle priorit\u00e0 di esposizione delle funzionalit\u00e0. Il piano attuale non copre completamente la pagina degli strumenti; le funzionalit\u00e0 si basano invece sulle richieste degli utenti e sui feedback raccolti. Se ritenete che uno strumento o un endpoint specifico debba essere incluso nell&#8217;API di Kinsta, <a href=\"https:\/\/kinqsta.com\/it\/docs\/informazioni-sul-servizio\/programma-di-ricerca-kinsta\/#how-to-join\">inviate il vostro feedback<\/a><\/em>.<\/p><\/blockquote>\n<p>Per utilizzare gli strumenti per il sito forniti da Kinsta, \u00e8 necessario ottenere l&#8217;ID dell&#8217;ambiente del proprio sito. Ogni sito in MyKinsta ha almeno un ambiente, ciascuno con un ID univoco. Per recuperare l&#8217;ID dell&#8217;ambiente, \u00e8 possibile sfruttare l&#8217;API di Kinsta ottenendo prima l&#8217;ID del sito e poi utilizzandolo come parametro per accedere ai dati dell&#8217;ambiente corrispondente.<\/p>\n<p>Per recuperare l&#8217;ID del sito, potete utilizzare l&#8217;endpoint <code><a href=\"https:\/\/api-docs.kinqsta.com\/tag\/WordPress-Sites#operation\/getSites\" target=\"_blank\" rel=\"noopener noreferrer\">\/sites<\/a><\/code> che restituisce l&#8217;elenco dei vostri siti. Una volta ottenuto l&#8217;ID del sito, \u00e8 possibile recuperare l&#8217;ID dell&#8217;ambiente facendo una richiesta GET all&#8217;endpoint <code>\/sites<\/code>, specificando l&#8217;ID e aggiungendo l&#8217;endpoint <code><a href=\"https:\/\/api-docs.kinqsta.com\/tag\/WordPress-Sites#operation\/getSiteEnvironments\" target=\"_blank\" rel=\"noopener noreferrer\">\/environments<\/a><\/code>.<\/p>\n<p>Ecco un esempio di codice che dimostra come ottenere questo risultato utilizzando la <a href=\"https:\/\/kinqsta.com\/it\/blog\/richieste-http-javascript\/#4-how-to-make-an-http-request-in-javascript-using-the-fetch-api\">Fetch API di JavaScript<\/a>:<\/p>\n<pre><code class=\"language-js\">const siteId = 'YOUR_site_id_PARAMETER'; \/\/ Replace with your actual site ID\nconst resp = await fetch(\n    `https:\/\/api.kinqsta.com\/v2\/sites\/${siteId}\/environments`,\n    {\n        method: 'GET',\n        headers: {\n            Authorization: 'Bearer &lt;YOUR_TOKEN_HERE&gt;' \/\/ Replace with your actual API key\/token\n        }\n    }\n);\nconst data = await resp.json();\nconsole.log(data);<\/code><\/pre>\n<p>Nel codice sopra riportato, definite la variabile <code>siteId<\/code> con l&#8217;ID del vostro sito. Poi fate una richiesta fetch all&#8217;endpoint dell&#8217;API di Kinsta per recuperare gli ambienti del sito specificato. Ricordatevi di inserire la chiave API nell&#8217;intestazione Authorization.<\/p>\n<p>Dopo aver ricevuto la risposta, i dati vengono registrati nella console, che contiene i dettagli del vostro ambiente, compreso l&#8217;ID:<\/p>\n<pre><code class=\"language-json\">{\n    \"site\": {\n        \"environments\": [\n            {\n                \"id\": \"54fb80af-576c-4fdc-ba4f-b596c83f15a1\",\n                \"name\": \"first-site\",\n                \"display_name\": \"First site\",\n                \"is_blocked\": false,\n                \"id_edge_cache\": \"54fb80af-576c-4fdc-ba4f-b596c83f15a1\",\n                \"is_premium\": false,\n                \"domains\": [],\n                \"primaryDomain\": {},\n                \"ssh_connection\": {}\n            }\n        ]\n    }\n}<\/code><\/pre>\n<p>Ora che sapete come accedere all&#8217;ID del vostro ambiente, usiamo gli strumenti del sito di Kinsta in modo programmatico.<\/p>\n<h3>Come cancellare la cache del sito con l&#8217;API di Kinsta<\/h3>\n<p>Per svuotare la cache del sito con l&#8217;API di Kinsta, basta inviare una richiesta post all&#8217;endpoint <code><a href=\"https:\/\/api-docs.kinqsta.com\/tag\/Site-Tools#operation\/clearSiteCache\" target=\"_blank\" rel=\"noopener noreferrer\">\/sites\/tools\/clear-cache<\/a><\/code>. Per questo \u00e8 necessario passare l&#8217;ID dell&#8217;ambiente come corpo della richiesta.<\/p>\n<p>Il codice che segue mostra come realizzare questa operazione utilizzando JavaScript e la Fetch API:<\/p>\n<pre><code class=\"language-js\">const clearSiteCache = async () =&gt; {\n  const resp = await fetch(\n    `https:\/\/api.kinqsta.com\/v2\/sites\/tools\/clear-cache`,\n    {\n      method: \"POST\",\n      headers: {\n        \"Content-Type\": \"application\/json\",\n        Authorization: \"Bearer &lt;YOUR_TOKEN_HERE&gt;\"\n      },\n      body: JSON.stringify({\n        environment_id: \"e.g. 54fb80af-576c-4fdc-ba4f-b596c83f15a1\"\n      })\n    }\n  );\n\n  \/\/ Parse the response as JSON\n  const data = await resp.json();\n  console.log(data);\n};<\/code><\/pre>\n<p>Nel codice qui sopra, viene definita una funzione <code>clearSiteCache<\/code> che accetta due parametri: l&#8217;URL dell&#8217;endpoint dell&#8217;API e un oggetto contenente la configurazione per la richiesta fetch. La configurazione comprende i campi <code>method<\/code>, <code>headers<\/code> e <code>body<\/code>.<\/p>\n<p>Il campo <code>body<\/code> contiene il payload della richiesta, ovvero l&#8217;ID dell&#8217;ambiente. Utilizza <code>JSON.stringify<\/code> per convertire l&#8217;oggetto in una stringa JSON. Sostituite il valore <code>environment_id<\/code> con l&#8217;ID effettivo dell&#8217;ambiente che volete riavviare. Una volta inviata la richiesta, i dati della risposta vengono registrati nella console.<\/p>\n<aside role=\"note\" class=\"wp-block-kinsta-notice is-style-info\">\n            <h3>Info<\/h3>\n        <p>In modo molto simile a come si cancella la cache del sito, \u00e8 possibile riavviare il motore PHP del sito con l&#8217;API di Kinsta. L&#8217;unica differenza \u00e8 l&#8217;endpoint, che non \u00e8 pi\u00f9 <code>\/clear-cache<\/code> bens\u00ec <code><a href=\"https:\/\/api-docs.kinqsta.com\/tag\/Site-Tools#operation\/restartPhpEngine\" target=\"_blank\" rel=\"noopener noreferrer\">\/restart-php<\/a><\/code> &#8211; https:\/\/api.kinqsta.com\/v2\/sites\/tools\/restart-php. Tutti gli altri parametri e le query sono gli stessi.<\/p>\n<\/aside>\n\n<h2>Creare un&#8217;applicazione React per programmare le attivit\u00e0 di manutenzione con l&#8217;API di Kinsta<\/h2>\n<p>Con l&#8217;introduzione delle API di Kinsta, ora \u00e8 possibile costruire interfacce personalizzate che offrono una flessibilit\u00e0 senza precedenti. Un esempio \u00e8 un&#8217;applicazione che permette di programmare le attivit\u00e0 di manutenzione del proprio sito. Immaginate di programmare lo svuotamento della cache o il riavvio del motore PHP del vostro sito in modo che avvenga automaticamente a mezzanotte in un luogo specifico. Questo pu\u00f2 aiutarvi a garantire prestazioni ottimali senza difficolt\u00e0.<\/p>\n<h3>Come iniziare<\/h3>\n<p>Per seguire questo tutorial, \u00e8 richiesta una conoscenza di base di <a href=\"https:\/\/kinqsta.com\/it\/blog\/html\/\">HTML<\/a>, <a href=\"https:\/\/kinqsta.com\/it\/blog\/best-practice-css\/\">CSS<\/a> e <a href=\"https:\/\/kinqsta.com\/javascript\/\">JavaScript<\/a> e una certa familiarit\u00e0 con React. L&#8217;obiettivo principale di questo progetto \u00e8 dimostrare l&#8217;utilizzo dell&#8217;API di Kinsta, quindi questo articolo non entra nel dettaglio della creazione o dello stile dell&#8217;interfaccia utente.<\/p>\n<p>Per rendere pi\u00f9 semplice la configurazione del progetto, \u00e8 stato preparato un progetto iniziale. Seguite questi passaggi:<\/p>\n<p>1. Create un repository <a href=\"https:\/\/kinqsta.com\/it\/argomenti\/git\/\">Git<\/a> utilizzando <a href=\"https:\/\/github.com\/kinsta\/site-tools-scheduler\" target=\"_blank\" rel=\"noopener noreferrer\">questo modello su GitHub<\/a>. Selezionate <strong>Use this template<\/strong> &gt; <strong>Create new repository<\/strong> per copiare il codice di partenza in un nuovo repository all&#8217;interno dell&#8217;account GitHub e selezionate la casella per <strong>includere tutti i branch<\/strong>.<\/p>\n<p>2. Estraete il repository sul vostro computer locale e passate al branch <a href=\"https:\/\/github.com\/kinsta\/site-tools-scheduler\/tree\/starter-files\" target=\"_blank\" rel=\"noopener noreferrer\">starter-files<\/a> utilizzando il seguente comando:<\/p>\n<pre><code class=\"language-bash\">git checkout starter-files<\/code><\/pre>\n<p>3. Installate le dipendenze necessarie eseguendo il comando <code>npm install<\/code>. Una volta completata l&#8217;installazione, potrete lanciare il progetto sul vostro computer locale con <code>npm run start<\/code>. In questo modo si apre il progetto all&#8217;indirizzo <a href=\"http:\/\/localhost:3000\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/localhost:3000\/<\/a>.<\/p>\n<h3>I file del progetto<\/h3>\n<p>All&#8217;interno della <strong>cartella src<\/strong> di questo progetto ci sono due sottocartelle principali: <strong>components<\/strong> e <strong>pages<\/strong>. La cartella components contiene componenti riutilizzabili, come l&#8217;<strong>header<\/strong> e il <strong>footer<\/strong>, utilizzati in tutte le pagine (<strong>Home<\/strong>, <strong>Operations<\/strong>, <strong>Tools<\/strong>, <strong>Schedule<\/strong>).<\/p>\n<p>In questo progetto, l&#8217;obiettivo principale \u00e8 quello di implementare la logica delle pagine <strong>Home<\/strong> e <strong>Tools<\/strong>, in quanto lo stile, il routing e altre logiche sono gi\u00e0 state realizzate.<\/p>\n<p>La <strong>pagina Home<\/strong> contiene un modulo che elenca tutti i siti dell&#8217;account MyKinsta. Ogni volta che questa pagina viene visualizzata, l&#8217;<a href=\"https:\/\/kinqsta.com\/it\/blog\/react-useeffect\/\">hook useEffect<\/a> <a href=\"https:\/\/kinqsta.com\/it\/blog\/chiave-api-kinsta\/#fetch-list-of-sites-with-kinsta-api\">recupera immediatamente un elenco di tutti i siti<\/a> e li inserisce in un campo di selezione del modulo. L&#8217;ID di ogni sito viene utilizzato come valore per l&#8217;opzione corrispondente.<\/p>\n<pre><code class=\"language-jsx\">&lt;select className=\"form-control\" value={selectedSiteId} onChange={(e) =&gt; setSelectedSiteId(e.target.value)}&gt;\n    &lt;option value=\"\"&gt;&lt;\/option&gt;\n    {sites && (\n        sites.map((site) =&gt; {\n            return (\n                &lt;option&gt; key={site.id} value={site.id}&gt;{site.display_name}&lt;\/option&gt;\n            )\n        })\n    )}\n&lt;\/select&gt;<\/code><\/pre>\n<figure style=\"width: 1600px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2023\/07\/custom-react-app-for-kinsta-site-tools-management.jpg\" alt=\"Applicazione React per la gestione degli strumenti per siti Kinsta\" width=\"1600\" height=\"225\"><figcaption class=\"wp-caption-text\">Applicazione React per la gestione degli strumenti per siti Kinsta.<\/figcaption><\/figure>\n<p>Quando si seleziona un sito e si clicca sul pulsante &#8220;Proceed&#8221;, viene attivata la funzione <code>handleSubmission<\/code>. In questa funzione, l&#8217;API di Kinsta viene utilizzata per recuperare l&#8217;ID dell&#8217;ambiente del sito. Quindi, passate questo ID come parametro di percorso alla <strong>pagina Tools<\/strong>.<\/p>\n<p>Nella <strong>pagina Tools<\/strong> potete eseguire e programmare attivit\u00e0 di manutenzione per il sito selezionato, come la cancellazione della cache del sito o il riavvio del motore PHP. Per eseguire una di queste azioni nella <strong>pagina Tools<\/strong>, \u00e8 necessario l&#8217;ID dell&#8217;ambiente, che viene passato come parametro di percorso a questa pagina.<\/p>\n<figure style=\"width: 1600px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2023\/07\/schedule-tasks-kinsta-api.jpg\" alt=\"Gestione degli strumenti per il sito Kinsta\" width=\"1600\" height=\"225\"><figcaption class=\"wp-caption-text\">Gestione degli strumenti per il sito Kinsta.<\/figcaption><\/figure>\n<p>Quando iniziate azioni come la cancellazione della cache del sito o il riavvio del motore PHP, venite automaticamente indirizzati alla <strong>pagina Operations<\/strong>. Qui potete seguire l&#8217;avanzamento dell&#8217;operazione utilizzando l&#8217;ID assegnato.<\/p>\n<figure style=\"width: 1600px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2023\/07\/kinsta-site-tools-operation-status.jpg\" alt=\"Stato delle operazioni degli strumenti per il sito Kinsta\" width=\"1600\" height=\"225\"><figcaption class=\"wp-caption-text\">Stato delle operazioni degli strumenti per il sito Kinsta.<\/figcaption><\/figure>\n<p>Quando pianificate un&#8217;attivit\u00e0, venite indirizzati alla <strong>pagina Schedule<\/strong>, che mostra informazioni dettagliate sull&#8217;attivit\u00e0 pianificata.<\/p>\n<figure style=\"width: 1600px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2023\/07\/kinsta-site-tools-schedule-information-page.jpg\" alt=\"Pagina di informazioni sulla pianificazione degli strumenti per il sito Kinsta\" width=\"1600\" height=\"225\"><figcaption class=\"wp-caption-text\">Pagina delle informazioni sulla pianificazione degli strumenti per il sito Kinsta.<\/figcaption><\/figure>\n<p>Una volta raggiunto l&#8217;orario previsto, l&#8217;operazione specifica inizia e vi reindirizza automaticamente alla <strong>pagina Operations<\/strong>, dove potete monitorare l&#8217;avanzamento dell&#8217;operazione.<\/p>\n<h2>Interagire con l&#8217;API di Kinsta in React<\/h2>\n<p>Una volta realizzata l&#8217;interfaccia utente, il passo successivo sar\u00e0 quello di gestire l&#8217;invio del modulo nella <strong>pagina iniziale<\/strong> e di recuperare l&#8217;ID dell&#8217;ambiente del sito selezionato tramite l&#8217;API di Kinsta, prima di indirizzare l&#8217;utente alla <strong>pagina Tools<\/strong> con l&#8217;ID come parametro del percorso.<\/p>\n<p>Per interagire con l&#8217;API di Kinsta, avrete bisogno del vostro <strong>ID azienda<\/strong> e della vostra <strong>Chiave API<\/strong>. Quando effettuate chiamate API in un progetto che sar\u00e0 ospitato sul cloud, le vostre credenziali, come la chiave API, devono essere conservate in modo sicuro per evitare qualsiasi forma di compromissione.<\/p>\n<p>Potete memorizzarle in modo sicuro come variabili d&#8217;ambiente nella vostra applicazione React creando un <strong>file .env<\/strong> nella cartella principale del progetto. In questo file, aggiungete le seguenti righe:<\/p>\n<pre><code class=\"language-bash\">REACT_APP_KINSTA_COMPANY_ID = 'YOUR_COMPANY_ID' \nREACT_APP_KINSTA_API_KEY = 'YOUR_API_KEY'<\/code><\/pre>\n<p>Per accedere a queste variabili d&#8217;ambiente all&#8217;interno del vostro progetto, potete utilizzare la sintassi <code>process.env.THE_VARIABLE<\/code>. Ad esempio, per accedere a <code>REACT_APP_KINSTA_COMPANY_ID<\/code>, userete <code>process.env.REACT_APP_KINSTA_COMPANY_ID<\/code>.<\/p>\n<aside role=\"note\" class=\"wp-block-kinsta-notice is-style-info\">\n            <h3>Info<\/h3>\n        <p>\u00c8 importante aggiungere il <strong>file .env<\/strong> al vostro <a href=\"https:\/\/kinqsta.com\/it\/blog\/gitignore-non-funziona\/\">file .gitignore<\/a> per evitare che il file venga inviato a GitHub. In questo modo le vostre informazioni sensibili, come le chiavi API, rimarranno private e sicure.<\/p>\n<\/aside>\n\n<h3>Recuperare l&#8217;ID dell&#8217;ambiente con l&#8217;API di Kinsta in React<\/h3>\n<p>Nella <strong>pagina iniziale<\/strong>, quando si seleziona un sito e si clicca sul pulsante di invio, viene attivata la funzione <code>handleSubmission<\/code>. Questa funzione utilizza l&#8217;API Fetch (o il metodo di richiesta HTTP che preferite) per effettuare una richiesta GET all&#8217;API di Kinsta.<\/p>\n<p>Per evitare di ripetere le intestazioni e l&#8217;URL dell&#8217;API di Kinsta in ogni chiamata API, memorizziamo <code>headers<\/code> e <code>KinstaAPIUrl<\/code> come costanti.<\/p>\n<pre><code class=\"language-jsx\">const KinstaAPIUrl = 'https:\/\/api.kinqsta.com\/v2';\nconst headers = useMemo(() =&gt; {\n    return {\n        Authorization: `Bearer ${process.env.REACT_APP_KINSTA_API_KEY}`\n    }\n}, [])<\/code><\/pre>\n<p>La variabile <code>KinstaAPIUrl<\/code> memorizza l&#8217;URL di base dell&#8217;API di Kinsta. La costante <code>headers<\/code> viene creata utilizzando l&#8217;<a href=\"https:\/\/kinqsta.com\/it\/blog\/usecallback-react\/#reacts-usecallback-vs-usememo\">hook useMemo<\/a> per garantire che l&#8217;oggetto headers venga creato una sola volta e non cambi tra un rendering e l&#8217;altro. Questo include l&#8217;intestazione Authorization, che contiene la chiave API di Kinsta recuperata dalle variabili d&#8217;ambiente.<\/p>\n<pre><code class=\"language-jsx\">const handleSubmission = (e) =&gt; {\n    e.preventDefault();\n\n    const fetchEnvironmentId = async (siteId) =&gt; {\n        const resp = await fetch(\n            `${KinstaAPIUrl}\/sites\/${siteId}\/environments`,\n            {\n                method: 'GET',\n                headers\n            }\n        );\n\n        const data = await resp.json();\n        let envId = data.site.environments[0].id;\n        navigate(`\/tools\/${envId}`)\n    }\n    fetchEnvironmentId(selectedSiteId);\n}<\/code><\/pre>\n<p>Nel codice qui sopra, viene creata una funzione asincrona (<code>fetchEnvironmentId<\/code>) che prende il <code>siteId<\/code> ottenuto dal sito selezionato e lo passa all&#8217;<a href=\"https:\/\/kinqsta.com\/it\/blog\/api-endpoint\/\">endpoint dell&#8217;API<\/a> per recuperare i dati dell&#8217;ambiente.<\/p>\n<p>Una volta ricevuta la risposta, estraete l&#8217;ID dell&#8217;ambiente dai dati (potreste avere pi\u00f9 di un ambiente: staging o live, quindi sono tutti memorizzati in un array; per questa demo utilizziamo l&#8217;ambiente live) e usate la funzione navigate (gi\u00e0 importata e istanziata per voi) per reindirizzare l&#8217;utente alla <strong>pagina Tools<\/strong> con l&#8217;ID dell&#8217;ambiente come parametro del percorso.<\/p>\n<p><strong>Nota:<\/strong> tutti questi percorsi sono gi\u00e0 configurati nel <strong>file App.js<\/strong>.<\/p>\n<h3>Eseguire operazioni di manutenzione con l&#8217;API di Kinsta in React<\/h3>\n<p>Nella pagina Tools, ci sono due strumenti che possono essere utilizzati per la manutenzione del sito, ognuno dei quali ha due pulsanti che permettono di eseguire l&#8217;operazione immediatamente o di programmarla (le funzioni sono state create e gli eventi <code>onClick<\/code> sono stati collegati a tutti i pulsanti). Questo tutorial spiegher\u00e0 solo come riavviare il motore PHP del sito perch\u00e9 il codice \u00e8 molto simile a quello che permette di svuotare la cache del sito: l&#8217;unica differenza \u00e8 l&#8217;endpoint.<\/p>\n<p>Per riavviare il motore PHP o per eseguire una qualsiasi operazione sugli strumenti del sito, avrete bisogno dell&#8217;ID dell&#8217;ambiente, che viene gi\u00e0 passato alla <strong>pagina Tools<\/strong> come parametro del percorso. Il passo successivo sar\u00e0 quello di recuperare questo parametro, memorizzarlo in una variabile e quindi inviare una richiesta all&#8217;API di Kinsta.<\/p>\n<pre><code class=\"language-jsx\">const { envId } = useParams();<\/code><\/pre>\n<aside role=\"note\" class=\"wp-block-kinsta-notice is-style-info\">\n            <h3>Info<\/h3>\n        <p>Questo \u00e8 stato gestito nei file di partenza. Tutto ci\u00f2 che dovete fare \u00e8 eseguire la richiesta all&#8217;API di Kinsta nella funzione <code>restartEngine<\/code>.<\/p>\n<\/aside>\n\n<p>Memorizzate le intestazioni della richiesta e l&#8217;URL dell&#8217;API come variabili costanti, dato che non cambiano. Le intestazioni di una richiesta POST sono diverse da quelle di una richiesta GET perch\u00e9 hanno il valore <code>Content-Type<\/code>.<\/p>\n<pre><code class=\"language-jsx\">const KinstaAPIUrl = 'https:\/\/api.kinqsta.com\/v2';\nconst headers = useMemo(() =&gt; {\n    return {\n        'Content-Type': 'application\/json',\n        Authorization: `Bearer ${process.env.REACT_APP_KINSTA_API_KEY}`\n    }\n}, [])<\/code><\/pre>\n<p>Facendo clic sul pulsante <strong>Restart<\/strong>, viene invocata la funzione <code>restartEngine<\/code>. In questa funzione, inviamo una richiesta POST all&#8217;API di Kinsta, che prende l&#8217;ID dell&#8217;ambiente come payload:<\/p>\n<pre><code class=\"language-jsx\">const restartEngine = async () =&gt; {\n    const resp = await fetch(\n        `${KinstaAPIUrl}\/sites\/tools\/restart-php`,\n        {\n            method: 'POST',\n            headers,\n            body: JSON.stringify({\n                environment_id: envId\n            })\n        }\n    );\n    const data = await resp.json();\n    navigate(`\/operations\/${data.operation_id}`);\n}<\/code><\/pre>\n<p>Ogni volta che questo codice viene eseguito, si attiver\u00e0 automaticamente un riavvio del motore PHP sul sito. Se controllate immediatamente la dashboard MyKinsta del sito, noterete questa notifica nella parte superiore della pagina:<\/p>\n<figure style=\"width: 1600px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2023\/07\/php-restart-on-mykinsta.jpg\" alt=\"Riavvio PHP su MyKinsta\" width=\"1600\" height=\"225\"><figcaption class=\"wp-caption-text\">Riavvio PHP su MyKinsta.<\/figcaption><\/figure>\n<p>Potete verificarlo in modo programmatico utilizzando l&#8217;endpoint <code><a href=\"https:\/\/api-docs.kinqsta.com\/tag\/Operations#operation\/getOperationStatus\" target=\"_blank\" rel=\"noopener noreferrer\">\/operations<\/a><\/code> dell&#8217;API di Kinsta. Nel codice qui sopra, una volta che la richiesta \u00e8 andata a buon fine, verrete automaticamente indirizzati alla <strong>pagina Operations<\/strong> con l&#8217;ID dell&#8217;operazione come parametro del percorso, dove potrete verificare lo stato dell&#8217;operazione. Controllate la <a href=\"https:\/\/github.com\/kinsta\/site-tools-scheduler\/blob\/starter-files\/src\/pages\/Operations.jsx\" target=\"_blank\" rel=\"noopener noreferrer\">pagina Operations<\/a> per vedere come viene gestita.<\/p>\n<h3>Come programmare un&#8217;attivit\u00e0 con l&#8217;API di Kinsta in React<\/h3>\n<p>Programmare un&#8217;attivit\u00e0 con JavaScript significa calcolare il tempo stimato per l&#8217;esecuzione dell&#8217;attivit\u00e0 in millisecondi e quindi utilizzare la funzione <code>setTimeout<\/code>.<\/p>\n<p>Nella <strong>pagina Tools<\/strong>, facendo clic sul pulsante Schedule, appare una finestra con due campi del modulo. Questi campi permettono di selezionare la <strong>data<\/strong> e l&#8217;<strong>ora<\/strong> desiderate per l&#8217;operazione. I dati inseriti vengono utilizzati per calcolare il tempo totale, in millisecondi, che intercorre tra il momento attuale e l&#8217;inizio dell&#8217;operazione.<\/p>\n<figure style=\"width: 1600px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2023\/07\/schedule-tasks-ui.jpg\" alt=\"Interfaccia della pianificazione degli strumenti per il sito\" width=\"1600\" height=\"225\"><figcaption class=\"wp-caption-text\">Interfaccia della pianificazione degli strumenti per il sito.<\/figcaption><\/figure>\n<p>Per ottenere questo risultato, estraete il giorno, il mese e l&#8217;anno dal campo data passando la data in un oggetto <code>new Date<\/code> e poi memorizzateli in variabili separate.<\/p>\n<pre><code class=\"language-jsx\">let year = new Date(scheduleDate).getFullYear();\nlet month = new Date(scheduleDate).getMonth();\nlet day = new Date(scheduleDate).getDate();<\/code><\/pre>\n<p>Poi estraete l&#8217;ora e i minuti dal campo time:<\/p>\n<pre><code class=\"language-jsx\">let timeArray = scheduleTime.split(\":\");\nlet hour = parseInt(timeArray[0]);\nlet minute = parseInt(timeArray[1]);<\/code><\/pre>\n<p>Con questi valori, potete calcolare il tempo previsto in millisecondi:<\/p>\n<pre><code class=\"language-jsx\">const now = new Date();\nlet eta_ms = new Date(year, month, day, hour, minute, 0, 0).getTime() - now;<\/code><\/pre>\n<p>A questo punto, avete il tempo previsto in millisecondi. Ora potete creare una funzione <code>setTimeout<\/code> che si attiva alla data e all&#8217;ora specificate:<\/p>\n<pre><code class=\"language-jsx\">setTimeout(function () {\n    restartEngine();\n}, eta_ms);<\/code><\/pre>\n<p>Nel codice qui sopra, quando viene raggiunto l&#8217;orario specificato, viene invocata la funzione <code>restartEngine()<\/code> per riavviare il motore PHP.<\/p>\n<p>Ecco come apparir\u00e0 il codice completo:<\/p>\n<pre><code class=\"language-jsx\">const schedulePhpEngineRestart = async (e) =&gt; {\n    e.preventDefault();\n\n    let year = new Date(scheduleDate).getFullYear();\n    let month = new Date(scheduleDate).getMonth();\n    let day = new Date(scheduleDate).getDate();\n\n    let timeArray = scheduleTime.split(\":\");\n    let hour = parseInt(timeArray[0]);\n    let minute = parseInt(timeArray[1]);\n\n    const now = new Date();\n    let eta_ms = new Date(year, month, day, hour, minute, 0, 0).getTime() - now;\n\n    setTimeout(function () {\n        restartEngine();\n    }, eta_ms);\n\n    let date = `${day}-${month + 1}-${year}`;\n    let time = `${hour}:${minute}`;\n    navigate(`\/schedule\/${date}\/${time}`);\n}<\/code><\/pre>\n<p>Quando pianificate un&#8217;attivit\u00e0, verrete indirizzati alla <strong>pagina Schedule<\/strong> dove potrete visualizzare i dettagli della pianificazione. Quando viene raggiunto l&#8217;orario previsto, verr\u00e0 richiamata la funzione <code>setTimeout<\/code>, che vi porter\u00e0 automaticamente alla <strong>pagina Operations<\/strong> per monitorare lo stato dell&#8217;operazione.<\/p>\n<p>A questo punto, avete implementato la funzionalit\u00e0 di pianificazione e avete attivato l&#8217;API di Kinsta per riavviare il motore PHP del sito. Potete fare lo stesso per svuotare la cache del sito.<\/p>\n<aside role=\"note\" class=\"wp-block-kinsta-notice is-style-info\">\n            <h3>Info<\/h3>\n        <p>Supponiamo che vogliate programmare l&#8217;attivit\u00e0 in modo che si ripeta ogni 24 ore, 72 ore o altro. Tutto ci\u00f2 che dovete fare \u00e8 convertire il tempo in millisecondi e creare un&#8217;istruzione if, ad esempio:<\/p>\n<pre><code class=\"language-jsx\">const twentyFourHours = 86400000;\nif (eta_ms &lt; 0) {\n    eta_ms += twentyFourHours;\n}<\/code><\/pre>\n<p><\/p>\n<\/aside>\n\n<h2>Come distribuire un&#8217;applicazione React con Kinsta<\/h2>\n<p>Per distribuire il vostro progetto React sull&#8217;<a href=\"https:\/\/sevalla.com\/application-hosting\/\">Hosting di Applicazioni<\/a> di Kinsta, dovete inviare il progetto al vostro <a href=\"https:\/\/docs.sevalla.com\/applications\/get-started\/add-an-application#adding-an-application\">provider Git preferito<\/a>. Una volta che il progetto sar\u00e0 ospitato su <a href=\"https:\/\/kinqsta.com\/it\/blog\/cosa-e-github\/\">GitHub<\/a>, <a href=\"https:\/\/kinqsta.com\/it\/blog\/gitlab-vs-github\/\">GitLab<\/a> o <a href=\"https:\/\/kinqsta.com\/it\/blog\/bitbucket-e-github\/\">Bitbucket<\/a>, potrete procedere al deploy su Kinsta.<\/p>\n<p>Ecco i passaggi da seguire per distribuire il repository su Kinsta:<\/p>\n<ol start=\"1\">\n<li>Accedere o creare un account Kinsta nella dashboard MyKinsta.<\/li>\n<li>Nella barra laterale di sinistra, cliccare su &#8220;Applicazioni&#8221; e poi su &#8220;Aggiungi servizio&#8221;.<\/li>\n<li>Selezionare &#8220;Applicazione&#8221; dal menu a tendina per distribuire un&#8217;applicazione React su Kinsta.<\/li>\n<li>Nella finestra di dialogo, scegliere il repository che si vuole distribuire. Se avete pi\u00f9 branch, potete selezionare il branch desiderato e dare un nome all&#8217;applicazione.<\/li>\n<li>Selezionare uno dei data center disponibili nell&#8217;elenco delle opzioni di 24. Kinsta rileva automaticamente il comando di avvio dell&#8217;applicazione.<\/li>\n<\/ol>\n<p>Infine, non \u00e8 sicuro inviare le chiavi API a host pubblici come un provider Git. Potete aggiungerle come <a href=\"https:\/\/docs.sevalla.com\/applications\/environment-variables\">variabili d&#8217;ambiente<\/a> utilizzando lo stesso nome e valore della variabile specificata nel <strong>file .env<\/strong>.<\/p>\n<figure style=\"width: 1600px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2023\/07\/set-environment-variables-on-mykinsta-when-deploying.jpg\" alt=\"Impostare le variabili d'ambiente su MyKinsta durante la distribuzione\" width=\"1600\" height=\"225\"><figcaption class=\"wp-caption-text\">Impostare le variabili d&#8217;ambiente su MyKinsta durante la distribuzione.<\/figcaption><\/figure>\n<p>Una volta avviata la distribuzione dell&#8217;applicazione, il processo inizia e in genere si conclude in pochi minuti. Una distribuzione riuscita genera un link all&#8217;applicazione, come <strong>http:\/\/site-tools-scheduler-6u1a5.kinsta.app\/<\/strong>.<\/p>\n<aside role=\"note\" class=\"wp-block-kinsta-notice is-style-info\">\n            <h3>Info<\/h3>\n        <p>\u00c8 possibile attivare la distribuzione automatica, in modo che Kinsta possa redistribuire l&#8217;applicazione ogni volta che viene modificata e inviata la base di codice all&#8217;host Git.<\/p>\n<\/aside>\n\n<h2>Riepilogo<\/h2>\n<p>Con le API di Kinsta \u00e8 possibile occuparsi delle attivit\u00e0 ricorrenti per i siti WordPress in modo ancora pi\u00f9 efficiente. E nel prossimo futuro sar\u00e0 possibile fare ancora di pi\u00f9.<\/p>\n<p>In questo articolo abbiamo visto come utilizzare le API di Kinsta costruendo da zero un&#8217;applicazione React &#8211; anch&#8217;essa ospitata su Kinsta &#8211; che permette di programmare il riavvio di PHP e di cancellare la cache del sito attraverso una bella dashboard che potrete anche clonare e personalizzare in base alle vostre necessit\u00e0.<\/p>\n<p><em>Come utilizzate le API di Kinsta? Quali funzioni vorreste che aggiungessimo in futuro?<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Nel corso degli anni, Kinsta ha compiuto notevoli progressi nel semplificare la gestione dei siti web attraverso il cruscotto MyKinsta. La nostra potente dashboard consente agli &#8230;<\/p>\n","protected":false},"author":287,"featured_media":71408,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kinsta_gated_content":false,"_kinsta_gated_content_redirect":"","footnotes":""},"tags":[],"topic":[26232],"class_list":["post-71407","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","topic-api"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v24.6 (Yoast SEO v24.6) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Pianifica le Attivit\u00e0 di Manutenzione con l&#039;API di Kinsta (Cancellare la cache, Riavviare il motore PHP)- Kinsta\u00ae<\/title>\n<meta name=\"description\" content=\"Scopri come costruire un&#039;applicazione React per pianificare attivit\u00e0 di manutenzione, come la cancellazione della cache e il riavvio del motore PHP con l&#039;API di Kinsta.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/\" \/>\n<meta property=\"og:locale\" content=\"it_IT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Pianificare le Attivit\u00e0 di Manutenzione con l&#039;API di Kinsta (Cancellare la Cache, Riavviare il Motore PHP)\" \/>\n<meta property=\"og:description\" content=\"Scopri come costruire un&#039;applicazione React per pianificare attivit\u00e0 di manutenzione, come la cancellazione della cache e il riavvio del motore PHP con l&#039;API di Kinsta.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/\" \/>\n<meta property=\"og:site_name\" content=\"Kinsta\u00ae\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/kinstaitalia\/\" \/>\n<meta property=\"article:published_time\" content=\"2023-07-20T09:51:02+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-07-31T09:52:47+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/07\/restart-php-api.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1460\" \/>\n\t<meta property=\"og:image:height\" content=\"730\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Joel Olawanle\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:description\" content=\"Scopri come costruire un&#039;applicazione React per pianificare attivit\u00e0 di manutenzione, come la cancellazione della cache e il riavvio del motore PHP con l&#039;API di Kinsta.\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/07\/restart-php-api.png\" \/>\n<meta name=\"twitter:creator\" content=\"@olawanle_joel\" \/>\n<meta name=\"twitter:site\" content=\"@Kinsta_IT\" \/>\n<meta name=\"twitter:label1\" content=\"Scritto da\" \/>\n\t<meta name=\"twitter:data1\" content=\"Joel Olawanle\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tempo di lettura stimato\" \/>\n\t<meta name=\"twitter:data2\" content=\"17 minuti\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/\"},\"author\":{\"name\":\"Joel Olawanle\",\"@id\":\"https:\/\/kinqsta.com\/it\/#\/schema\/person\/efa7de30245ca15be5ce1dcacff89c07\"},\"headline\":\"Pianificare le Attivit\u00e0 di Manutenzione con l&#8217;API di Kinsta (Cancellare la Cache, Riavviare il Motore PHP)\",\"datePublished\":\"2023-07-20T09:51:02+00:00\",\"dateModified\":\"2023-07-31T09:52:47+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/\"},\"wordCount\":3017,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/kinqsta.com\/it\/#organization\"},\"image\":{\"@id\":\"https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/07\/restart-php-api.png\",\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/\",\"url\":\"https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/\",\"name\":\"Pianifica le Attivit\u00e0 di Manutenzione con l'API di Kinsta (Cancellare la cache, Riavviare il motore PHP)- Kinsta\u00ae\",\"isPartOf\":{\"@id\":\"https:\/\/kinqsta.com\/it\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/07\/restart-php-api.png\",\"datePublished\":\"2023-07-20T09:51:02+00:00\",\"dateModified\":\"2023-07-31T09:52:47+00:00\",\"description\":\"Scopri come costruire un'applicazione React per pianificare attivit\u00e0 di manutenzione, come la cancellazione della cache e il riavvio del motore PHP con l'API di Kinsta.\",\"breadcrumb\":{\"@id\":\"https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/#breadcrumb\"},\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/#primaryimage\",\"url\":\"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/07\/restart-php-api.png\",\"contentUrl\":\"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/07\/restart-php-api.png\",\"width\":1460,\"height\":730},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/kinqsta.com\/it\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"API\",\"item\":\"https:\/\/kinqsta.com\/it\/argomenti\/api\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Pianificare le Attivit\u00e0 di Manutenzione con l&#8217;API di Kinsta (Cancellare la Cache, Riavviare il Motore PHP)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/kinqsta.com\/it\/#website\",\"url\":\"https:\/\/kinqsta.com\/it\/\",\"name\":\"Kinsta\u00ae\",\"description\":\"Soluzioni di hosting premium, veloci e sicure\",\"publisher\":{\"@id\":\"https:\/\/kinqsta.com\/it\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/kinqsta.com\/it\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"it-IT\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/kinqsta.com\/it\/#organization\",\"name\":\"Kinsta\",\"url\":\"https:\/\/kinqsta.com\/it\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\/\/kinqsta.com\/it\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/kinsta-logo.jpeg\",\"contentUrl\":\"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/kinsta-logo.jpeg\",\"width\":500,\"height\":500,\"caption\":\"Kinsta\"},\"image\":{\"@id\":\"https:\/\/kinqsta.com\/it\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/kinstaitalia\/\",\"https:\/\/x.com\/Kinsta_IT\",\"https:\/\/www.instagram.com\/kinstahosting\/\",\"https:\/\/www.linkedin.com\/company\/kinsta\/\",\"https:\/\/www.pinterest.com\/kinstahosting\/\",\"https:\/\/www.youtube.com\/c\/Kinsta\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/kinqsta.com\/it\/#\/schema\/person\/efa7de30245ca15be5ce1dcacff89c07\",\"name\":\"Joel Olawanle\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\/\/kinqsta.com\/it\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/051bf577ce2c837846a1db9eef184758?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/051bf577ce2c837846a1db9eef184758?s=96&d=mm&r=g\",\"caption\":\"Joel Olawanle\"},\"description\":\"Joel is a Frontend developer working at Kinsta as a Technical Editor. He is a passionate teacher with love for open source and has written over 300 technical articles majorly around JavaScript and it's frameworks.\",\"sameAs\":[\"https:\/\/joelolawanle.com\/\",\"https:\/\/www.linkedin.com\/in\/olawanlejoel\/\",\"https:\/\/x.com\/olawanle_joel\",\"https:\/\/www.youtube.com\/@joelolawanle\"],\"gender\":\"male\",\"knowsAbout\":[\"JavaScript\",\"React\",\"Next.js\"],\"knowsLanguage\":[\"English\"],\"jobTitle\":\"Technical Editor\",\"worksFor\":\"Kinsta\",\"url\":\"https:\/\/kinqsta.com\/it\/blog\/author\/joelolawanle\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Pianifica le Attivit\u00e0 di Manutenzione con l'API di Kinsta (Cancellare la cache, Riavviare il motore PHP)- Kinsta\u00ae","description":"Scopri come costruire un'applicazione React per pianificare attivit\u00e0 di manutenzione, come la cancellazione della cache e il riavvio del motore PHP con l'API di Kinsta.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/","og_locale":"it_IT","og_type":"article","og_title":"Pianificare le Attivit\u00e0 di Manutenzione con l'API di Kinsta (Cancellare la Cache, Riavviare il Motore PHP)","og_description":"Scopri come costruire un'applicazione React per pianificare attivit\u00e0 di manutenzione, come la cancellazione della cache e il riavvio del motore PHP con l'API di Kinsta.","og_url":"https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/","og_site_name":"Kinsta\u00ae","article_publisher":"https:\/\/www.facebook.com\/kinstaitalia\/","article_published_time":"2023-07-20T09:51:02+00:00","article_modified_time":"2023-07-31T09:52:47+00:00","og_image":[{"width":1460,"height":730,"url":"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/07\/restart-php-api.png","type":"image\/png"}],"author":"Joel Olawanle","twitter_card":"summary_large_image","twitter_description":"Scopri come costruire un'applicazione React per pianificare attivit\u00e0 di manutenzione, come la cancellazione della cache e il riavvio del motore PHP con l'API di Kinsta.","twitter_image":"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/07\/restart-php-api.png","twitter_creator":"@olawanle_joel","twitter_site":"@Kinsta_IT","twitter_misc":{"Scritto da":"Joel Olawanle","Tempo di lettura stimato":"17 minuti"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/#article","isPartOf":{"@id":"https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/"},"author":{"name":"Joel Olawanle","@id":"https:\/\/kinqsta.com\/it\/#\/schema\/person\/efa7de30245ca15be5ce1dcacff89c07"},"headline":"Pianificare le Attivit\u00e0 di Manutenzione con l&#8217;API di Kinsta (Cancellare la Cache, Riavviare il Motore PHP)","datePublished":"2023-07-20T09:51:02+00:00","dateModified":"2023-07-31T09:52:47+00:00","mainEntityOfPage":{"@id":"https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/"},"wordCount":3017,"commentCount":0,"publisher":{"@id":"https:\/\/kinqsta.com\/it\/#organization"},"image":{"@id":"https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/#primaryimage"},"thumbnailUrl":"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/07\/restart-php-api.png","inLanguage":"it-IT","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/","url":"https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/","name":"Pianifica le Attivit\u00e0 di Manutenzione con l'API di Kinsta (Cancellare la cache, Riavviare il motore PHP)- Kinsta\u00ae","isPartOf":{"@id":"https:\/\/kinqsta.com\/it\/#website"},"primaryImageOfPage":{"@id":"https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/#primaryimage"},"image":{"@id":"https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/#primaryimage"},"thumbnailUrl":"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/07\/restart-php-api.png","datePublished":"2023-07-20T09:51:02+00:00","dateModified":"2023-07-31T09:52:47+00:00","description":"Scopri come costruire un'applicazione React per pianificare attivit\u00e0 di manutenzione, come la cancellazione della cache e il riavvio del motore PHP con l'API di Kinsta.","breadcrumb":{"@id":"https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/#breadcrumb"},"inLanguage":"it-IT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/"]}]},{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/#primaryimage","url":"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/07\/restart-php-api.png","contentUrl":"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/07\/restart-php-api.png","width":1460,"height":730},{"@type":"BreadcrumbList","@id":"https:\/\/kinqsta.com\/it\/blog\/pianificare-manutenzione-con-kinsta-api\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/kinqsta.com\/it\/"},{"@type":"ListItem","position":2,"name":"API","item":"https:\/\/kinqsta.com\/it\/argomenti\/api\/"},{"@type":"ListItem","position":3,"name":"Pianificare le Attivit\u00e0 di Manutenzione con l&#8217;API di Kinsta (Cancellare la Cache, Riavviare il Motore PHP)"}]},{"@type":"WebSite","@id":"https:\/\/kinqsta.com\/it\/#website","url":"https:\/\/kinqsta.com\/it\/","name":"Kinsta\u00ae","description":"Soluzioni di hosting premium, veloci e sicure","publisher":{"@id":"https:\/\/kinqsta.com\/it\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/kinqsta.com\/it\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"it-IT"},{"@type":"Organization","@id":"https:\/\/kinqsta.com\/it\/#organization","name":"Kinsta","url":"https:\/\/kinqsta.com\/it\/","logo":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/kinqsta.com\/it\/#\/schema\/logo\/image\/","url":"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/kinsta-logo.jpeg","contentUrl":"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/kinsta-logo.jpeg","width":500,"height":500,"caption":"Kinsta"},"image":{"@id":"https:\/\/kinqsta.com\/it\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/kinstaitalia\/","https:\/\/x.com\/Kinsta_IT","https:\/\/www.instagram.com\/kinstahosting\/","https:\/\/www.linkedin.com\/company\/kinsta\/","https:\/\/www.pinterest.com\/kinstahosting\/","https:\/\/www.youtube.com\/c\/Kinsta"]},{"@type":"Person","@id":"https:\/\/kinqsta.com\/it\/#\/schema\/person\/efa7de30245ca15be5ce1dcacff89c07","name":"Joel Olawanle","image":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/kinqsta.com\/it\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/051bf577ce2c837846a1db9eef184758?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/051bf577ce2c837846a1db9eef184758?s=96&d=mm&r=g","caption":"Joel Olawanle"},"description":"Joel is a Frontend developer working at Kinsta as a Technical Editor. He is a passionate teacher with love for open source and has written over 300 technical articles majorly around JavaScript and it's frameworks.","sameAs":["https:\/\/joelolawanle.com\/","https:\/\/www.linkedin.com\/in\/olawanlejoel\/","https:\/\/x.com\/olawanle_joel","https:\/\/www.youtube.com\/@joelolawanle"],"gender":"male","knowsAbout":["JavaScript","React","Next.js"],"knowsLanguage":["English"],"jobTitle":"Technical Editor","worksFor":"Kinsta","url":"https:\/\/kinqsta.com\/it\/blog\/author\/joelolawanle\/"}]}},"acf":[],"_links":{"self":[{"href":"https:\/\/kinqsta.com\/it\/wp-json\/wp\/v2\/posts\/71407","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kinqsta.com\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kinqsta.com\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kinqsta.com\/it\/wp-json\/wp\/v2\/users\/287"}],"replies":[{"embeddable":true,"href":"https:\/\/kinqsta.com\/it\/wp-json\/wp\/v2\/comments?post=71407"}],"version-history":[{"count":9,"href":"https:\/\/kinqsta.com\/it\/wp-json\/wp\/v2\/posts\/71407\/revisions"}],"predecessor-version":[{"id":71751,"href":"https:\/\/kinqsta.com\/it\/wp-json\/wp\/v2\/posts\/71407\/revisions\/71751"}],"alternate":[{"embeddable":true,"hreflang":"en","title":"English","href":"https:\/\/kinqsta.com\/it\/wp-json\/kinsta\/v1\/posts\/71407\/translations\/en"},{"embeddable":true,"hreflang":"it","title":"Italian","href":"https:\/\/kinqsta.com\/it\/wp-json\/kinsta\/v1\/posts\/71407\/translations\/it"},{"embeddable":true,"hreflang":"pt","title":"Portuguese","href":"https:\/\/kinqsta.com\/it\/wp-json\/kinsta\/v1\/posts\/71407\/translations\/pt"},{"embeddable":true,"hreflang":"fr","title":"French","href":"https:\/\/kinqsta.com\/it\/wp-json\/kinsta\/v1\/posts\/71407\/translations\/fr"},{"embeddable":true,"hreflang":"de","title":"German","href":"https:\/\/kinqsta.com\/it\/wp-json\/kinsta\/v1\/posts\/71407\/translations\/de"},{"embeddable":true,"hreflang":"ja","title":"Japanese","href":"https:\/\/kinqsta.com\/it\/wp-json\/kinsta\/v1\/posts\/71407\/translations\/jp"},{"embeddable":true,"hreflang":"nl","title":"Dutch","href":"https:\/\/kinqsta.com\/it\/wp-json\/kinsta\/v1\/posts\/71407\/translations\/nl"},{"embeddable":true,"hreflang":"es","title":"Spanish","href":"https:\/\/kinqsta.com\/it\/wp-json\/kinsta\/v1\/posts\/71407\/translations\/es"},{"href":"https:\/\/kinqsta.com\/it\/wp-json\/kinsta\/v1\/posts\/71407\/tree"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kinqsta.com\/it\/wp-json\/wp\/v2\/media\/71408"}],"wp:attachment":[{"href":"https:\/\/kinqsta.com\/it\/wp-json\/wp\/v2\/media?parent=71407"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kinqsta.com\/it\/wp-json\/wp\/v2\/tags?post=71407"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/kinqsta.com\/it\/wp-json\/wp\/v2\/topic?post=71407"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}