No, API no significa Apple Pie Inside. ?? API significa Interfaz de programación de aplicaciones. Las API permiten que dos aplicaciones interactúen (o interactúen) entre sí.
Una API un conjunto de instrucciones y funciones de programación que se utilizan para acceder a un sitio web o una aplicación de software basada en la web. Una API permite a otros desarrolladores utilizar los datos y la funcionalidad de su aplicación. Permite que su producto interactúe con otros productos.
Las API se utilizaron por primera vez en el desarrollo de software y hardware en la década de 1980. Pero ahora, cuando la gente habla de API, generalmente se refiere a API web, o más específicamente a API RESTful. Se ha convertido en una práctica común utilizar las API RESTful al desarrollar aplicaciones basadas en web.
Una API web es básicamente un programa con el que interactúas completamente a través de URL. Normalmente, cuando envía una solicitud a una URL con su navegador, un servidor envía una respuesta que se muestra para que la vea. Las cosas son diferentes cuando envía una solicitud a una URL de una API. El servidor devuelve algo que está destinado a ser útil solo para la computadora. Una API devuelve datos que se pueden utilizar en un sitio web o programa diferente.
¿Para qué se utilizan las API?
Las API no están diseñadas para ser utilizadas por un usuario final. Se utilizan para que el software interactúe con otro software. Por ejemplo, un sitio web puede realizar una llamada a la API de Open Weather para obtener información meteorológica para mostrar en el sitio web.
A veces, las API también se utilizan internamente dentro de una sola empresa. Se pueden utilizar para crear sitios web y sistemas internos que interactúan entre sí fácilmente.
¿Cómo funciona una API?
Una API generalmente les da a otros acceso a una gran cantidad de datos organizados. El guardián de esos datos da permiso al desarrollador (en forma de clave API ) para solicitar información a un servidor. Si la solicitud tiene éxito, el servidor responde con un mensaje, generalmente en formato JSON o XML.
Por lo general, habrá documentación para una API que desee utilizar llamada especificación de API. Aquí se explican los controles y cómo utilizar la API.
A continuación, se muestra un ejemplo de la especificación de la API para la API de OpenWeather que le permite obtener el clima actual en una ubicación específica: //openweathermap.org/current
Las especificaciones de la API contienen una lista de URL que puede utilizar para recuperar datos. El uso de una de las URL se denomina solicitud de API o llamada de API . A menudo, la especificación mostrará los parámetros y la respuesta para cada URL que forma parte de la API.
Parámetros
Los parámetros son lo que agrega al final de una URL para especificar qué información desea que devuelva la API. Los parámetros son básicamente variables que pasas a la API.
La URL para obtener información meteorológica de la API de OpenWeather es:
api.openweathermap.org/data/2.5/weather
.
Sin embargo, debe agregar una ciudad como parámetro para especificar para qué ubicación devolver los datos meteorológicos. Aquí está la URL con el parámetro de la ciudad:
api.openweathermap.org/data/2.5/weather?q=London
A veces, se requieren parámetros para obtener una respuesta. A veces, los parámetros son opcionales. En la API de OpenWeather, es necesario proporcionar una ubicación, pero hay otras formas de especificar la ubicación además del nombre de la ciudad. Todas las formas se dan en la especificación API.
Los parámetros también pueden especificar cosas como:
- ¿Cómo se deben clasificar los resultados?
- ¿Cuántos resultados se deben devolver?
- ¿En qué formato deberían estar los resultados?
- ¿Para qué rango de fechas quieres resultados?
La respuesta
Cuando envía una solicitud a una API, recibirá una respuesta. Recibirá los datos que solicitó o el motivo por el que falló la solicitud.
A continuación se muestra un ejemplo de la respuesta que se obtiene cuando se envía la petición siguiente: api.openweathermap.org/data/2.5/weather?q=London
. Es una respuesta JSON.
{ "coord": { "lon": -0.13, "lat": 51.51 }, "weather": [ { "id": 300, "main": "Drizzle", "description": "light intensity drizzle", "icon": "09d" } ], "base": "stations", "main": { "temp": 280.32, "pressure": 1012, "humidity": 81, "temp_min": 279.15, "temp_max": 281.15 }, "visibility": 10000, "wind": { "speed": 4.1, "deg": 80 }, "clouds": { "all": 90 }, "dt": 1485789600, "sys": { "type": 1, "id": 5091, "message": 0.0103, "country": "GB", "sunrise": 1485762037, "sunset": 1485794875 }, "id": 2643743, "name": "London", "cod": 200 }
Es posible que una respuesta de API no tenga el formato de este ejemplo. Todo el texto suele estar en una sola línea. Dado que está destinado principalmente a ser leído por una computadora y no por una persona, el formato no importa.
Claves API
Si prueba la URL anterior usted mismo, no obtendrá la respuesta anterior. Probablemente se verá más como:
{ "cod": 401, "message": "Invalid API key. Please see //openweathermap.org/faq#error401 for more info." }
La mayoría de las API requieren algún tipo de autenticación antes de devolver datos. Suele tener la forma de una clave API . Estas claves son como una contraseña. Son una larga cadena de letras y números que debe enviar con su solicitud de API para que el servidor sepa que tiene permiso para acceder a la información.
Para la API de OpenWeather, y con muchas otras API, puede obtener una clave API de forma gratuita después de crear una cuenta. Muchas empresas usan claves API en API gratuitas para asegurarse de que las personas no realicen muchas solicitudes en un día. Realmente podría atascar un servidor si una sola persona realizara miles de solicitudes por minuto.
Algunas API son públicas sin una clave de API. A continuación se muestra una API que le permite encontrar palabras que riman. Haga clic en el enlace, luego intente cambiar la palabra final en la URL para buscar diferentes palabras que riman.
//api.datamuse.com/words?rel_rhy=camp
¿Querer aprender más?
Si desea obtener más información sobre el uso de las API, consulte el video a continuación en el canal de YouTube freeCodeCamp.org.