{"id":79818,"date":"2022-07-27T11:41:24","date_gmt":"2022-07-27T09:41:24","guid":{"rendered":"https:\/\/keepcoding.io\/?p=79818"},"modified":"2024-06-11T13:24:52","modified_gmt":"2024-06-11T11:24:52","slug":"como-llamar-a-una-api","status":"publish","type":"post","link":"https:\/\/keepcoding.io\/blog\/como-llamar-a-una-api\/","title":{"rendered":"\u00bfC\u00f3mo llamar a una API Rest?"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Estamos seguros de que las API te deben sonar de algo o que han sido \u00fatiles en el desarrollo de tus programas de c\u00f3digo. \u00bfRecuerdas c\u00f3mo llamar a una <a href=\"https:\/\/keepcoding.io\/blog\/que-es-una-api-y-para-que-sirve\/\">API<\/a> desde tu <a href=\"https:\/\/keepcoding.io\/blog\/como-usar-una-consola-de-programacion\/\">consola de programaci\u00f3n<\/a>? Si la respuesta es negativa, deber\u00e1s seguir realizando ejercicios pr\u00e1cticos que involucren el uso de la <a href=\"https:\/\/keepcoding.io\/blog\/herramientas-clave-para-desarrolladores\/\">herramienta<\/a> de las <strong>API o la HTTP,<\/strong> pero si quieres saber los b\u00e1sicos, te recomendamos seguir leyendo este art\u00edculo sobre <strong>c\u00f3mo llamar a una API<\/strong>.<br><\/p>\n\n\n\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_74 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">\u00bfQu\u00e9 encontrar\u00e1s en este post?<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Alternar tabla de contenidos\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/keepcoding.io\/blog\/como-llamar-a-una-api\/#%C2%BFComo_llamar_a_una_API_Rest\" >\u00bfC\u00f3mo llamar a una API Rest?<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/keepcoding.io\/blog\/como-llamar-a-una-api\/#Establecer_el_fichero_e_importar_la_libreria\" >Establecer el fichero e importar la librer\u00eda<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/keepcoding.io\/blog\/como-llamar-a-una-api\/#Obtener_la_APIKey\" >Obtener la APIKey<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/keepcoding.io\/blog\/como-llamar-a-una-api\/#Integrar_la_variable_de_headers\" >Integrar la variable de headers<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/keepcoding.io\/blog\/como-llamar-a-una-api\/#Buscar_y_agregar_la_URL\" >Buscar y agregar la URL<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/keepcoding.io\/blog\/como-llamar-a-una-api\/#Objeto_requests_y_response\" >Objeto requests y response<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/keepcoding.io\/blog\/como-llamar-a-una-api\/#Representacion_de_como_llamar_a_una_API_Rest\" >Representaci\u00f3n de c\u00f3mo llamar a una API Rest<\/a><\/li><\/ul><\/nav><\/div>\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"%C2%BFComo_llamar_a_una_API_Rest\"><\/span>\u00bfC\u00f3mo llamar a una API Rest?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Te presentaremos los elementos necesarios que necesitas incluir en la <strong>primera llamada API<\/strong>, as\u00ed como una representaci\u00f3n gr\u00e1fica, en forma de c\u00f3digo, de este mismo proceso.<br><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Establecer_el_fichero_e_importar_la_libreria\"><\/span><strong><em>Establecer el fichero e importar la librer\u00eda<\/em><\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">En un principio, para <a href=\"https:\/\/keepcoding.io\/blog-adriana-botelho\/aprender\/\">aprender<\/a> c\u00f3mo llamar deber\u00e1s establecer un fichero para tu programa de c\u00f3digo en tu IDE o consola donde est\u00e1s escribiendo el c\u00f3digo. Este se conforma seg\u00fan el lenguaje de <a href=\"https:\/\/keepcoding.io\/blog\/que-es-la-programacion-y-para-que-sirve\/\">programaci\u00f3n<\/a> que est\u00e1s empleando. En este caso, ser\u00e1 en <a href=\"https:\/\/keepcoding.io\/blog\/que-es-input-en-python-y-como-usarlo\/\">Python<\/a>, por lo que lo llamaremos con la extensi\u00f3n .py de esta manera: <strong>primera_llamada.py<\/strong> para la <a href=\"https:\/\/keepcoding.io\/blog\/que-es-una-api-rest\/\">API Rest<\/a>.<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Despu\u00e9s de establecer el fichero y otros procesos que has debido establecer en la programaci\u00f3n, tal como el entorno virtual o el repositorio local y remoto, tendr\u00e1s que importar la librer\u00eda <em>requests<\/em>, que se utiliza para trabajar con API Rest, de la siguiente forma: <strong>import requests<\/strong>.<br><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Obtener_la_APIKey\"><\/span><strong><em>Obtener la APIKey<\/em><\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Lo primero que necesitas en el proceso de c\u00f3mo llamar a una API es tener integrado la<strong> APIKey o clave<\/strong>, que te servir\u00e1 para identificar tu programa. Para obtenerla, deber\u00e1s seguir los pasos establecidos de la p\u00e1gina o <a href=\"https:\/\/keepcoding.io\/blog\/servidor-web-guia-completa\/\">servidor web<\/a> donde localizar\u00e1s los recursos.<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">En el caso de CoinAPI.io, deber\u00e1s dar tu direcci\u00f3n de correo, donde te llegar\u00e1n todos los pasos y la clave misma para ejecutar la API en tu programa de c\u00f3digo.<br><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Integrar_la_variable_de_headers\"><\/span><strong><em>Integrar la variable de headers<\/em><\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Para que sea funcional, tambi\u00e9n tendr\u00e1s que agregar una cabecera a la llamada de la API que est\u00e1s realizando. La explicaci\u00f3n de este proceso tambi\u00e9n lo encuentras en el servidor web en el que se encuentra la API o en la documentaci\u00f3n oficial de la librer\u00eda <em>requests<\/em>.<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">En la cabecera, deber\u00e1s instalar un diccionario con la siguiente instrucci\u00f3n: headers <strong>= {&#8216;user-agent&#8217;: &#8216;my-app\/0.0.1&#8217;}<\/strong><br><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Buscar_y_agregar_la_URL\"><\/span><strong><em>Buscar y agregar la URL<\/em><\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Despu\u00e9s de integrar las variables de la herramienta <em>headers<\/em> en tu primera llamada a la API, deber\u00e1s buscar y agregar la URL de tu p\u00e1gina o servidor web. En el caso del ejemplo sobre las criptomonedas, que es un recurso para aprender c\u00f3mo llamar, tienes que dirigirte a la secci\u00f3n de <a href=\"https:\/\/docs.coinapi.io\/#md-rest-api\" data-type=\"URL\" data-id=\"https:\/\/docs.coinapi.io\/#md-rest-api\" target=\"_blank\" rel=\"noopener\">Market Data &#8211; Rest Api<\/a>, donde en la secci\u00f3n de <a href=\"https:\/\/keepcoding.io\/ciberseguridad\/que-es-una-sandbox\/\">Sandbox<\/a> encontrar\u00e1s la URL que deber\u00e1s integrar. Este deber\u00e1 formatearse si es necesario.<br><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Objeto_requests_y_response\"><\/span><strong><em>Objeto requests y response <\/em><\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">En este apartado tendr\u00e1s que hacer uso del objeto <em>requests<\/em> y <em>response<\/em> de la librer\u00eda <em>requests<\/em> para la API Rest con el m\u00e9todo <strong>requests.get<\/strong>, donde pasar\u00e1n par\u00e1metros necesarios para la llamada, como la <strong>URL <\/strong>y los <strong><em>headers<\/em> <\/strong>que hemos establecido en un paso anterior. Estos par\u00e1metros tienen un valor por defecto para la llamada API.<br><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Representacion_de_como_llamar_a_una_API_Rest\"><\/span>Representaci\u00f3n de c\u00f3mo llamar a una API Rest<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A continuaci\u00f3n, te traemos una representaci\u00f3n de c\u00f3mo llamar a una API Rest de una plataforma  y\/o servicio web llamado <a href=\"https:\/\/www.coinapi.io\/\" data-type=\"URL\" data-id=\"https:\/\/www.coinapi.io\/\" target=\"_blank\" rel=\"noopener\">CoinApi.io<\/a>, que sirve para rastrear las trayectorias de las<strong> criptomonedas alrededor del mercado en todo el mundo.<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>#llamar a una API Rest<\/em> <em>o Rest API<\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">import requests<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">apikey = \u00abn\u00famero del c\u00f3digo de la apikey\u00bb<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">headers = {<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">       \u00abX &#8211; CoinApi &#8211; Key\u00bb: apikey<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">}<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">url = f \u00aburl donde se encuentra la API\u00bb #<em>Rest API<\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">respuesta = requests.get (url,  headers = headers)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">print (respuesta.text)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">De esta manera, ya sabes c\u00f3mo llamar a una API Rest.<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Como ya sabes qu\u00e9 es y c\u00f3mo llamar a una API, est\u00e1s m\u00e1s cerca de comunicar aplicaciones por medio de un programa y no por parte de un usuario. En resumen, <strong>las API hacen eso: comunicar aplicaciones y programas. <\/strong><br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Si quieres seguir aprendiendo acerca de APIs, programaci\u00f3n y escritura de c\u00f3digo, entre otros procesos del mundo <a href=\"https:\/\/keepcoding.io\/blog\/que-es-el-sector-it-top-5-empleos\/\">IT<\/a>, te recomendamos revisar el temario del <a href=\"https:\/\/keepcoding.io\/nuestros-bootcamps\/bootcamp-aprende-a-programar\/\">Aprende a Programar desde Cero Full Stack Jr. Bootcamp<\/a>. Esta es una oportunidad perfecta para convertirte en <a href=\"https:\/\/keepcoding.io\/blog\/que-es-un-programador-informatico\/\">programador<\/a> en muy pocos meses. <strong>\u00a1An\u00edmate a escribir c\u00f3digo con <em>Rest API<\/em>!<\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Estamos seguros de que las API te deben sonar de algo o que han sido \u00fatiles en el desarrollo de tus programas de c\u00f3digo. \u00bfRecuerdas c\u00f3mo llamar a una API desde tu consola de programaci\u00f3n? Si la respuesta es negativa, deber\u00e1s seguir realizando ejercicios pr\u00e1cticos que involucren el uso de la herramienta de las API &#8230; <a title=\"\u00bfC\u00f3mo llamar a una API Rest?\" class=\"read-more\" href=\"https:\/\/keepcoding.io\/blog\/como-llamar-a-una-api\/\" aria-label=\"Leer m\u00e1s sobre \u00bfC\u00f3mo llamar a una API Rest?\">Leer m\u00e1s<\/a><\/p>\n","protected":false},"author":4,"featured_media":79879,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[19,391],"tags":[499,405],"class_list":["post-79818","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog","category-fundamentos-programacion","tag-conceptos-programacion","tag-python"],"_links":{"self":[{"href":"https:\/\/keepcoding.io\/wp-json\/wp\/v2\/posts\/79818","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/keepcoding.io\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/keepcoding.io\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/keepcoding.io\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/keepcoding.io\/wp-json\/wp\/v2\/comments?post=79818"}],"version-history":[{"count":0,"href":"https:\/\/keepcoding.io\/wp-json\/wp\/v2\/posts\/79818\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/keepcoding.io\/wp-json\/wp\/v2\/media\/79879"}],"wp:attachment":[{"href":"https:\/\/keepcoding.io\/wp-json\/wp\/v2\/media?parent=79818"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/keepcoding.io\/wp-json\/wp\/v2\/categories?post=79818"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/keepcoding.io\/wp-json\/wp\/v2\/tags?post=79818"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}