{"id":18347,"date":"2022-06-23T15:49:50","date_gmt":"2022-06-23T14:49:50","guid":{"rendered":"https:\/\/www.puship.com\/?page_id=18347"},"modified":"2022-06-30T10:25:15","modified_gmt":"2022-06-30T09:25:15","slug":"web-api","status":"publish","type":"page","link":"http:\/\/www.puship.com\/it\/documentazione\/guida-accesso-api\/web-api\/","title":{"rendered":"Web Api"},"content":{"rendered":"\n<p>Utilizzando questa nuova modalit\u00e0 \u00e8 possibile integrarsi con Puship con una maggiore sicurezza, utilizzando il nuovo standard OpenID.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p>Puship supporta due modalit\u00e0 di autenticazione alle API:<\/p>\n\n\n\n<div style=\"height:18px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<ul class=\"has-medium-font-size\" style=\"font-style:normal;font-weight:600\"><li>Machine 2 Machine<\/li><li>WebApp<\/li><\/ul>\n\n\n\n<div style=\"height:18px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>La prima viene utilizzata quando si effettua una connessione direttamente da un&#8217;altro server, la seconda viene utilizzata quando l&#8217;accesso viene effettuato da un sito web o da un&#8217;app mobile.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p>Di seguito proponiamo un esempio di chiamata utilizzando la modalit\u00e0 Machine 2 machine:<\/p>\n\n\n\n<p>Dalla dashboard Puship, sezione Client Secrets creaiamo una nuova chiave di accesso di tipo <strong>Machine 2 Machine<\/strong>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/1_ClientId_Creation.jpg\"><img loading=\"lazy\" width=\"1024\" height=\"830\" src=\"https:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/1_ClientId_Creation-1024x830.jpg\" alt=\"\" class=\"wp-image-18364\" srcset=\"http:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/1_ClientId_Creation-1024x830.jpg 1024w, http:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/1_ClientId_Creation-300x243.jpg 300w, http:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/1_ClientId_Creation-768x623.jpg 768w, http:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/1_ClientId_Creation-700x568.jpg 700w, http:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/1_ClientId_Creation.jpg 1243w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<p>Utilizzando Postman effettuiamo una chiamata al servizio delle autorizzazioni per generare il token di accesso<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/2_Postman_Token.jpg\"><img loading=\"lazy\" width=\"1024\" height=\"654\" src=\"https:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/2_Postman_Token-1024x654.jpg\" alt=\"\" class=\"wp-image-18367\" srcset=\"http:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/2_Postman_Token-1024x654.jpg 1024w, http:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/2_Postman_Token-300x192.jpg 300w, http:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/2_Postman_Token-768x491.jpg 768w, http:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/2_Postman_Token-1536x982.jpg 1536w, http:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/2_Postman_Token-700x447.jpg 700w, http:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/2_Postman_Token.jpg 1762w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<p>copiamo il token generato e andiamo su <a rel=\"noreferrer noopener\" href=\"http:\/\/api.puship.com\" target=\"_blank\">swagger<\/a> per effettuare un test di chiamata alle API, prima di effettuare la chiamata clicchiamo su <strong>Authorize <\/strong>e inseriamo il token generato con il prefisso &#8220;Bearer &#8220;<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/3_Swagger_Token.jpg\"><img loading=\"lazy\" width=\"1024\" height=\"755\" src=\"https:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/3_Swagger_Token-1024x755.jpg\" alt=\"\" class=\"wp-image-18370\" srcset=\"http:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/3_Swagger_Token-1024x755.jpg 1024w, http:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/3_Swagger_Token-300x221.jpg 300w, http:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/3_Swagger_Token-768x567.jpg 768w, http:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/3_Swagger_Token-1536x1133.jpg 1536w, http:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/3_Swagger_Token-700x516.jpg 700w, http:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/3_Swagger_Token.jpg 1624w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<p>A questo punto siamo loggati e possiamo effettuare le chiamate alle API, nell&#8217;esempio seguente viene chiamato il metodo GetApps per estrarre la lista delle app dell&#8217;utente<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/4_Swagger_Call.jpg\"><img loading=\"lazy\" width=\"927\" height=\"1024\" src=\"https:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/4_Swagger_Call-927x1024.jpg\" alt=\"\" class=\"wp-image-18373\" srcset=\"http:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/4_Swagger_Call-927x1024.jpg 927w, http:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/4_Swagger_Call-272x300.jpg 272w, http:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/4_Swagger_Call-768x848.jpg 768w, http:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/4_Swagger_Call-1391x1536.jpg 1391w, http:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/4_Swagger_Call-700x773.jpg 700w, http:\/\/www.puship.com\/wp-content\/uploads\/2022\/06\/4_Swagger_Call.jpg 1633w\" sizes=\"(max-width: 927px) 100vw, 927px\" \/><\/a><\/figure>\n\n\n\n<div style=\"height:11px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Essendo le Api Puship delle API rest \u00e8 possibile integrarle con qualsiasi sistema, a <a rel=\"noreferrer noopener\" href=\"https:\/\/github.com\/Puship\/api-samples\" target=\"_blank\">questo link <\/a>trovate degli esempi approfonditi usando la tecnologia aso.net mvc.<\/p>\n\n\n\n<div style=\"height:18px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Per l&#8217;accesso alle Api in mocalit\u00e0 WebApp (ovvero usando il flusso Authorization Code Flow) \u00e8 consigliabile usare una libreria di appoggio, nell&#8217;esempio online \u00e8 stato utilizzato <a href=\"https:\/\/documentation.openiddict.com\/\" data-type=\"URL\" data-id=\"https:\/\/documentation.openiddict.com\/\">openIdDict<\/a>.<\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Utilizzando questa nuova modalit\u00e0 \u00e8 possibile integrarsi con Puship con una maggiore sicurezza, utilizzando il nuovo standard OpenID. Puship supporta due modalit\u00e0 di autenticazione alle API: Machine 2 Machine WebApp La prima viene utilizzata quando si effettua una connessione direttamente da un&#8217;altro server, la seconda&#8230;<\/p>\n","protected":false},"author":3,"featured_media":0,"parent":15927,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":[],"_links":{"self":[{"href":"http:\/\/www.puship.com\/it\/wp-json\/wp\/v2\/pages\/18347\/"}],"collection":[{"href":"http:\/\/www.puship.com\/it\/wp-json\/wp\/v2\/pages\/"}],"about":[{"href":"http:\/\/www.puship.com\/it\/wp-json\/wp\/v2\/types\/page\/"}],"author":[{"embeddable":true,"href":"http:\/\/www.puship.com\/it\/wp-json\/wp\/v2\/users\/3\/"}],"replies":[{"embeddable":true,"href":"http:\/\/www.puship.com\/it\/wp-json\/wp\/v2\/comments\/?post=18347"}],"version-history":[{"count":18,"href":"http:\/\/www.puship.com\/it\/wp-json\/wp\/v2\/pages\/18347\/revisions\/"}],"predecessor-version":[{"id":18384,"href":"http:\/\/www.puship.com\/it\/wp-json\/wp\/v2\/pages\/18347\/revisions\/18384\/"}],"up":[{"embeddable":true,"href":"http:\/\/www.puship.com\/it\/wp-json\/wp\/v2\/pages\/15927\/"}],"wp:attachment":[{"href":"http:\/\/www.puship.com\/it\/wp-json\/wp\/v2\/media\/?parent=18347"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}