Blog

Azure API Management

It is a cloud API Manager that can connect to public and private endpoints. It is provided by Microsoft and cannot be installed as on premise service (but they are open to suggestions about this point and it is under review: “There is no on-premises deployment option available at this time but you can vote on uservoice if you’d like this capability. However, you can certainly use Azure-based API management with on-premises systems and data.”).

At this moment it does not provide a monetization standard (but it is under review: ”We’ll monitor continued feedback on this item”).

It is planned to provide a standard way to have testing and live environments (Sandbox Environment – SBE).

Set Up

Follow a two steps wizard is the only need to set up an Azure API Management instance.

Azure APIM 1

Azure APIM 2

Advanced configuration can be provided in order to personalize security, rate limits or monitoring capabilities.

Use

A publisher can add a new API manually or import it using WADL or Swagger definition files.

Azure APIM 3

A subscriber can discover and subscribe to an API throw developer portal.

Soy un Yuzz

“I’m a Yuzz” grita la camiseta que llevo ahora mismo puesta. Soy un Yuzz. Es seguro que lo fuí y realmente espero seguir siéndolo.

Seguir leyendo en El Faradio.

Reverse Geocoding: Nominatim

Provider: OpenStreetMaps
Url: http://wiki.openstreetmap.org/wiki/Nominatim#Reverse_Geocoding
Provider Client Libraries:
Multiple Languages: Yes
Limitations: 1 request per second (86400 per day)
Price: Free

 

You can use thid party providers or install your own instance

 

Example request:

http://nominatim.openstreetmap.org/reverse?format=xml&lat=52.5487429714954&lon=-1.81602098644987&zoom=18&addressdetails=1

Example response:

<reversegeocode timestamp="Fri, 06 Nov 09 16:33:54 +0000" querystring="...">
   <result place_id="1620612" osm_type="node" osm_id="452010817">
     135, Pilkington Avenue, Wylde Green, City of Birmingham, West Midlands (county), B72, United Kingdom
   </result>
   <addressparts>
     <house_number>135</house_number>
     <road>Pilkington Avenue</road>
     <village>Wylde Green</village>
     <town>Sutton Coldfield</town>
     <city>City of Birmingham</city>
     <county>West Midlands (county)</county>
     <postcode>B72</postcode>
     <country>United Kingdom</country>
     <country_code>gb</country_code>
   </addressparts>
</reversegeocode>

Abrir los ojos

Antes de las últimas elecciones ya, había varios que me decían (y siguen manteniendo): “las cosas no van mal ¿acaso ves a alguien pasarlo mal? ¿Conoces a alguien que le falte algo?”. Es un mensaje que me lanzan en discusiones amigos intentando justificar su intención de voto, y me da igual tú orientación, lo que cuenta es como miras el mundo.

Seguir leyendo en El Faradio.

WSO2 API Manager

It can be installed on premise or it can be used in its cloud version. The cloud is a beta version. We will only consider the on premise versio. Thinking about an on premise solution you are responsible of deploy an environment that provides availability, scale capabilities, and low latency for all subscribers.

Set up

In order to create a preproduction environment all the components can be installed, configured and run in the same machine.

In order to create a production environment the different components (API Publisher, Gateway, Store, Key Manager, and 3 MySQL Databases) should be installed in separate servers. Multiple instances of these components should be set up behind a load balancer in order to provide high availability.

WSO2 APIM 1

Additionally, a monitoring component could be included. Different configurations must be applied to each component.

Use

A publisher can publish an API manually, using a WSDL in a SOAP Endpoint or other API definition file for another type of service.

A subscriber can discover and subscribe to an API throw Store component. After that she can invoke the API using SOAP or REST clients.

WSO2 APIM 2

Microsoft Flow

La semana pasada tuvimos la noticia de que Microsoft lanzaba un competidor de IFTTT (If This Then That) para que los usuarios puedan automatizar las tareas que hacen en el día a día de un modo sencillo.

Seguir leyendo en CantabriaTIC.

Reverse Geocoding: Google Maps API

Provider: Google Inc.
Url: https://developers.google.com/maps/documentation/geocoding/intro#ReverseGeocoding
Provider Client Libraries: Javascript, Java, Python, Android, iOS
Multiple Languages: Yes
Limitations: 2,500 free requests per day, 10 per second
Price: Free: 2,500 requests per day

 

Pay as you go: $0.50 USD / 1000 additional requests, up to 100,000 daily.

 

Google Maps API for Work: it depends on the purchased quota https://developers.google.com/maps/documentation/business/

Example request:

https://maps.googleapis.com/maps/api/geocode/json?latlng=40.714224,-73.961452&key=APP_SPECIFIC_API_KEY

Example response:

{
	"results" : [
		{
		"address_components" : [
			{
				"long_name" : "277",
				"short_name" : "277",
				"types" : [ "street_number" ]
			},
			{
				"long_name" : "Bedford Avenue",
				"short_name" : "Bedford Ave",
				"types" : [ "route" ]
			},
			{
				"long_name" : "Williamsburg",
				"short_name" : "Williamsburg",
				"types" : [ "neighborhood", "political" ]
			},
			{
				"long_name" : "Brooklyn",
				"short_name" : "Brooklyn",
				"types" : [ "sublocality", "political" ]
			},
			{
				"long_name" : "Kings",
				"short_name" : "Kings",
				"types" : [ "administrative_area_level_2", "political" ]
			},
			{
				"long_name" : "New York",
				"short_name" : "NY",
				"types" : [ "administrative_area_level_1", "political" ]
			},
			{
				"long_name" : "United States",
				"short_name" : "US",
				"types" : [ "country", "political" ]
			},
			{
				"long_name" : "11211",
				"short_name" : "11211",
				"types" : [ "postal_code" ]
			}
		],
		"formatted_address" : "277 Bedford Avenue, Brooklyn, NY 11211, USA",
		"geometry" : {
			"location" : {
				"lat" : 40.714232,
				"lng" : -73.9612889
			},
			"location_type" : "ROOFTOP",
			"viewport" : {
				"northeast" : {
					"lat" : 40.7155809802915,
					"lng" : -73.9599399197085
				},
				"southwest" : {
					"lat" : 40.7128830197085,
					"lng" : -73.96263788029151
				}
			}
		},
		"place_id" : "ChIJd8BlQ2BZwokRAFUEcm_qrcA",
		"types" : [ "street_address" ]
		},
		
		... Additional results[] ...