{"id":22,"date":"2024-05-30T09:03:40","date_gmt":"2024-05-30T07:03:40","guid":{"rendered":"https:\/\/stage.centrica.it\/?page_id=22"},"modified":"2024-05-30T10:26:38","modified_gmt":"2024-05-30T08:26:38","slug":"ricerca-sulla-documentazione-canva-per-sviluppatori","status":"publish","type":"page","link":"https:\/\/stage.centrica.it\/index.php\/ricerca-sulla-documentazione-canva-per-sviluppatori\/","title":{"rendered":"Ricerca sulla documentazione Canva per sviluppatori"},"content":{"rendered":"\n<p>Canva \u00e8 uno strumento di progettazione grafica molto usato grazie alla sua semplicit\u00e0, volendo si possono usare anche le loro API in modo tale da poter implementare le loro funzioni nelle propie applicazioni con Canva Connect o al contrario implementare le propie App su Canva usando i SDK di Canva App per migliorare l&#8217;esperienza su Canva. <\/p>\n\n\n\n<p>Canva connect offre le sue API, ma per averne l&#8217;accesso bisogna avere un&#8217;iscrizione a pagamento ai servizi di Canva, il costo dipende dai vari bisogni e richieste perci\u00f2 \u00e8 solitamente suggerito contattare Canva direttamente, ma i piani di base sono 3:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Gratuito con richieste limitate<\/li>\n\n\n\n<li>Pro a $99 con molte pi\u00f9 richieste e funzionalit\u00e0<\/li>\n\n\n\n<li>Enterprise che dipende dalle proprie necessit\u00e0 e bisogna parlarne direttamente con Canva.<\/li>\n<\/ul>\n\n\n\n<p>Per iniziare ad usare Canva connect \u00e8 necessario installare Curl sulla propia macchina, bisogna poi Autentificare i propi utenti per ottenere un&#8217;authorization code usando OAuth 2.1, un framework usato per consentire accesso limitato a risorse potette per un&#8217;applicazione, dopo averlo propiamente configuato ed integrato.<\/p>\n\n\n\n<p>Per poter ottenere l&#8217;autorizzazione per utente bisogna mandare i propi user sull&#8217;URL di autorizzazione di Canva, ci\u00f2 consente all&#8217;user di leggere ed approvare l&#8217;accesso all&#8217;integrazione di Canva, l&#8217;authorization code viene poi scambiato con un access token e un refresh token, dato che gli access token hanno una durata di 4 ore \u00e8 possibile utilizzare il refresh token per riottenere l&#8217;accesso invece di dover rifare il passaggio di autorizzazione.<\/p>\n\n\n\n<p>Dopo aver ottenuto l&#8217;API key \u00e8 possibile inviare richieste all&#8217;endpoint per utilizzare l&#8217;API di Canva. L&#8217;API usa i file di tipo JSON quindi le richieste vanno fatte usando quel formato.<\/p>\n\n\n\n<p>L&#8217;esempio seguente presenta la creazione di una cartella per poi caricarci un asset usando l&#8217;API di Canva Connect:<\/p>\n\n\n\n<p>Per creare una cartella serve usare il metodo HTTP POST e il path URL https:\/\/api.canva.com\/rest\/v1\/folders<\/p>\n\n\n\n<p>Per caricare un asset si usa lo stesso metodo POST con il seguente URL<br>https:\/\/api.canva.com\/rest\/v1\/assets\/upload<\/p>\n\n\n\n<p>Parametri del request per creare una cartella:<\/p>\n\n\n\n<p>Header parameters<br>Authorization: Bearer {token}<br>Content-Type: application\/json<\/p>\n\n\n\n<p>Body parameters<br>name string<br>(nome della cartella)<\/p>\n\n\n\n<p>paent_folder_id string?<br>(creare un folder dentro a questo folder)<\/p>\n\n\n\n<p>parametri del request per caricare dati in una cartella:<\/p>\n\n\n\n<p>Header parameters<br>Authorization: Bearer {token}<br>Content-Type: application\/json<br>Upload-Metadata: {Upload Metadata}<br>Upload-Metadata<\/p>\n\n\n\n<p>name string<br>(nome dell&#8217;asset)<\/p>\n\n\n\n<p>parent_folder_id string<br>(id della cartella dove l&#8217;asset sar\u00e0 caricato)<\/p>\n\n\n\n<p>tags string<br>(set di tags che saranno attaccati all&#8217;asset)<\/p>\n\n\n\n<p>Body parameter<br>&#8211;data-binary &#8220;@filepath&#8221;<br>(per collegare il file caricato con curl)<\/p>\n\n\n\n<p>Ora bisogna creare la curl request<br>se per esempio l&#8217;access token \u00e8 asg7ah0ss023 la curl request per creare un folder chiamato &#8220;Cartella&#8221; sar\u00e0 la seguente:<\/p>\n\n\n\n<p>curl &#8211;request POST &#8216;https:\/\/api.canva.com\/rest\/v1\/folders&#8217; \\<br>&#8211;header &#8216;Content-Type: application\/json&#8217; \\<br>&#8211;header &#8216;Authorization: Bearer asg7ah0ss023 \\<br>&#8211;data &#8216;{<br>&#8220;name&#8221;: &#8220;Cartella&#8221;,<br>&#8220;parent_folder_id&#8221;: &#8220;root&#8221;<br>}&#8217;<\/p>\n\n\n\n<p>Mentre per caricare per esempio un immagine chiamata &#8220;gatto&#8221; con il folder id &#8220;ASuo7fh42saou23i&#8221; bisogna usare la seguente CURL request:<\/p>\n\n\n\n<p>curl &#8211;request POST &#8216;https:\/\/api.canva.com\/rest\/v1\/assets\/upload&#8217; \\<br>&#8211;header &#8216;content-type: application\/octet-stream&#8217; \\<br>&#8211;header &#8216;Upload-Metadata: {<br>&#8220;name&#8221;:&#8221;gatto&#8221;,<br>&#8220;tags&#8221;:&#8221;manager&#8221;,<br>&#8220;parent_folder_id&#8221;:&#8221;ASuo7fh42saou23i&#8221;<br>}&#8217; \\<br>&#8211;header &#8216;Authorization: Bearer asg7ah0ss023&#8217; \\<br>&#8211;data &#8216;@\/Users\/username\/folder-location\/gatto.png&#8217;<\/p>\n\n\n\n<div style=\"height:140px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Canva \u00e8 uno strumento di progettazione grafica molto usato grazie alla sua semplicit\u00e0, volendo si possono usare anche le loro API in modo tale da poter implementare le loro funzioni nelle propie applicazioni con Canva Connect o al contrario implementare le propie App su Canva usando i SDK di Canva App per migliorare l&#8217;esperienza su [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-22","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/stage.centrica.it\/index.php\/wp-json\/wp\/v2\/pages\/22","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/stage.centrica.it\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/stage.centrica.it\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/stage.centrica.it\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/stage.centrica.it\/index.php\/wp-json\/wp\/v2\/comments?post=22"}],"version-history":[{"count":8,"href":"https:\/\/stage.centrica.it\/index.php\/wp-json\/wp\/v2\/pages\/22\/revisions"}],"predecessor-version":[{"id":99,"href":"https:\/\/stage.centrica.it\/index.php\/wp-json\/wp\/v2\/pages\/22\/revisions\/99"}],"wp:attachment":[{"href":"https:\/\/stage.centrica.it\/index.php\/wp-json\/wp\/v2\/media?parent=22"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}