La API del DENUE te permite consultar datos de identificación, ubicación, actividad económica y tamaño de más de 5 millones de establecimientos a nivel nacional, por entidad federativa y municipio. Puedes utilizar la API para crear aplicaciones que muestren la información directamente de las bases de datos del INEGI en el preciso momento en que se actualiza.
El INEGI pone a tu disposición la siguiente información de más de 5 millones de establecimientos.
Bienvenido a la documentación para desarrolladores de la API del DENUE. El INEGI se une a la iniciativa de datos de libre acceso con el objetivo de ampliar la disponibilidad de la información para los usuarios.
Esta documentación está dirigida a los desarrolladores familiarizados con la programación JavaScript y con conocimientos de programación orientada a objetos.
Realiza una consulta de todos los establecimientos que cumplan las condiciones definidas.
Parámetros de entrada:
Obtiene la información de un establecimiento en específico.
Parámetros de entrada:
Realiza una consulta de todos los establecimientos por nombre o razón social y puede ser acotado por entidad federativa.
Parámetros de entrada:
Realiza una consulta de todos los establecimientos y puede ser acotada por entidad federativa.
Parámetros de entrada:
Realiza una consulta de todos los establecimientos con la opción de acotar la búsqueda por área geográfica, actividad económica, nombre y clave del establecimiento.
Parámetros de entrada:
Realiza una consulta de todos los establecimientos con la opción de acotar la búsqueda por área geográfica, actividad económica, nombre,clave del establecimiento y estrato.
Parámetros de entrada:
Realiza un conteo de todos los establecimientos con la opción de acotar la búsqueda por área geográfica, actividad económica y estrato.
Parámetros de entrada:
Para consultar la API se envían los parámetros directamente en la URL, por ejemplo para el método de Buscar se hace de la siguiente manera:
Estos son los datos que regresa la URL anterior:
A continuación se explica el orden de los valores devueltos:
Campo 1: Clave CLEE
Campo 2: Id de establecimiento
Campo 3: Nombre del establecimiento
Campo 4: Razón social
Campo 5: Clase de la actividad
Campo 6: Estrato (Personal ocupado)
Campo 7: Tipo de la vialidad
Campo 8: Calle
Campo 9: Número exterior
Campo 10: Número interior
Campo 11: Colonia
Campo 12: Código postal
Campo 13: Localidad, municipio y entidad federativa
Campo 14: Teléfono
Campo 15: Correo electrónico
Campo 16: Página de internet
Campo 17: Tipo de establecimiento
Campo 18 Longitud
Campo 19: Latitud
Campo 20: Centro comercial
Campo 21: Tipo de centro comercial
Campo 22: Número de local
Para el método de Ficha se hace de la siguiente manera:
Estos son los datos que regresa la URL anterior:
A continuación se explica el orden de los valores devueltos:
Campo 1: Clave CLEE
Campo 2: Id de establecimiento
Campo 3: Nombre del establecimiento
Campo 4: Razón social
Campo 5: Clase de la actividad económica
Campo 6: Estrato (Personal ocupado)
Campo 7: Tipo de la vialidad
Campo 8: Calle
Campo 9: Número exterior
Campo 10: Número interior
Campo 11: Colonia
Campo 12: Código postal
Campo 13: Localidad, municipio y entidad federativa
Campo 14: Teléfono
Campo 15: Correo electrónico
Campo 16: Página de internet
Campo 17: Tipo de establecimiento
Campo 18: Longitud
Campo 19: Latitud
Campo 20: Centro comercial
Campo 21: Tipo de centro comercial
Campo 22: Número de local
Para el método de Nombre se hace de la siguiente manera:
Estos son los datos que regresa la URL anterior:
A continuación se explica el orden de los valores devueltos:
Campo 1: Clave CLEE
Campo 2: Id de establecimiento
Campo 3: Nombre del establecimiento
Campo 4: Razón social
Campo 5: Clase de la actividad económica
Campo 6: Estrato (Personal ocupado)
Campo 7: Tipo de la vialidad
Campo 8: Calle
Campo 9: Número exterior
Campo 10: Número interior
Campo 11: Colonia
Campo 12: Código postal
Campo 13: Localidad, municipio y entidad federativa
Campo 14: Teléfono
Campo 15: Correo electrónico
Campo 16: Página de internet
Campo 17: Tipo de establecimiento
Campo 18: Longitud
Campo 19: Latitud
Campo 20: Tipo de corredor industrial
Campo 21: Nombre del corredor industrial
Campo 22: Número de local
Para el método de BuscarEntidad se hace de la siguiente manera:
Estos son los datos que regresa la URL anterior:
A continuación se explica el orden de los valores devueltos:
Campo 1: Clave CLEE
Campo 2: Id de establecimiento
Campo 3: Nombre del establecimiento
Campo 4: Razón social
Campo 5: Clase de la actividad
Campo 6: Estrato (Personal ocupado)
Campo 7: Tipo de la vialidad
Campo 8: Calle
Campo 9: Número exterior
Campo 10: Número interior
Campo 11: Colonia
Campo 12: Código postal
Campo 13: Localidad, municipio y entidad federativa
Campo 14: Teléfono
Campo 15: Correo electrónico
Campo 16: Página de internet
Campo 17: Tipo de establecimiento
Campo 18: Longitud
Campo 19: Latitud
Para el método de BuscarAreaAct se hace de la siguiente manera:
Estos son los datos que regresa la URL anterior:
A continuación se lista el orden de los valores devueltos:
Campo 1: Clave CLEE
Campo 2: Id de establecimiento
Campo 3: Nombre del establecimiento
Campo 4: Razón social
Campo 5: Clase de la actividad económica
Campo 6: Estrato (Personal ocupado)
Campo 7: Tipo de la vialidad
Campo 8: Calle
Campo 9: Número exterior
Campo 10: Número interior
Campo 11: Colonia
Campo 12: Código postal
Campo 13: Localidad, municipio y entidad federativa
Campo 14: Teléfono
Campo 15: Correo electrónico
Campo 16: Página de internet
Campo 17: Tipo de establecimiento
Campo 18: Longitud
Campo 19: Latitud
Campo 20: Tipo de corredor industrial
Campo 21: Nombre del corredor industrial
Campo 22: Número de local
Campo 23: AGEB
Campo 24: Manzana
Campo 25: Edificio
Campo 26: Id clase de la actividad económica
Campo 27: Id sector de la actividad económica
Campo 28: Id subsector de la actividad económica
Campo 29: Id rama de la actividad económica
Para el método de BuscarAreaAct se hace de la siguiente manera:
Estos son los datos que regresa la URL anterior:
A continuación se lista el orden de los valores devueltos:
Campo 1: Clave CLEE
Campo 2: Id de establecimiento
Campo 3: Nombre del establecimiento
Campo 4: Razón social
Campo 5: Clase de la actividad económica
Campo 6: Estrato (Personal ocupado)
Campo 7: Tipo de la vialidad
Campo 8: Calle
Campo 9: Número exterior
Campo 10: Número interior
Campo 11: Colonia
Campo 12: Código postal
Campo 13: Localidad, municipio y entidad federativa
Campo 14: Teléfono
Campo 15: Correo electrónico
Campo 16: Página de internet
Campo 17: Tipo de establecimiento
Campo 18: Longitud
Campo 19: Latitud
Campo 20: Tipo de corredor industrial
Campo 21: Nombre del corredor industrial
Campo 22: Número de local
Campo 23: AGEB
Campo 24: Manzana
Campo 25: Id clase de la actividad económica
Campo 26: Número de piso del edificio
Campo 27: Id sector de la actividad económica
Campo 28: Id subsector de la actividad económica
Campo 29: Id rama de la actividad económica
Campo 30: Id subrama de la actividad económica
Campo 31: Edificio
Campo 32: Tipo de asentamiento
Campo 33: Fecha de alta del establecimiento
Campo 34: Clave del área geográfica
Para el método de Cuantificar se hace de la siguiente manera:
Estos son los datos que regresa la URL anterior:
A continuación se lista el orden de los valores devueltos:
Campo 1: Id de la actividad económica
Campo 2: Clave del área geográfica
Campo 3: Total de establecimientos por área geográfica, actividad económica y estrato especificado
<html>
<head>
<title>Ejemplo </title>
<link> href="/estilos/sitio/con_sitio.min.css" rel="stylesheet" </link>
<link> rel="stylesheet" href="/estilos/sitio/plantillas.min.css" </link>
<link> href="/componentes/espacio/v2/estilos/ol.css" rel="stylesheet" </link>
<link> href="/componentes/espacio/v2/estilos/ol.popup.css" rel="stylesheet" </link>
<link> href="/componentes/espacio/v2/estilos/ol3-contextmenu.min.css" rel="stylesheet" </link>
<link> href="/componentes/espacio/v2/estilos/style.css" rel="stylesheet" </link>
<script> src="/componentes/espacio/v2/scripts/jquery.js"> </script>
<script> src="/componentes/encabezado/js/recursos.min.js"> </script>
<script> src="/componentes/espacio/v2/scripts/Loadjs.js"> </script>
<script> src="js/apiDenue.js"> </script>
<script> src="js/apiDenue.js"></script>
</head>
<body>
<div> id="disabledScreen" style="display: none;"></div>
<div> class="container con_principal" id="contM">
<div> class="row">
<div> class="col-md-12" id="columna-1">
<div> class="row">
<div> class="col-xs-12">
<div> class="row con_desf_inf">
<div> id="pestana" style="display:none;">
<script> src="/componentes/pestana/js/pestana.min.js?v=1.0"> </script>
</div>
<div> id="popup" class="ol-popup"> </div>
</div>
</div>
</div>
</div>
</div>
</div>
<div>
<div id="tabDenue"></div>
<label for="condi">Condición: </label><input style="max-width:120px;" type="text" id="condi" aria-label="Condición" value="restaurantes" tabindex="515" />
<label for="lat">Latitud: </label><input style="max-width:120px;" type="text" id="lat" aria-label="Latitud" value="21.85717833" tabindex="516" />
<label for="lon">Longitud: </label><input style="max-width:120px;" type="text" id="lon" aria-label="Longitud" value="-102.28487238" tabindex="517" />
<label for="mts">Metros: </label><input style="max-width:120px;" type="text" id="mts" aria-label="Metros" value="300" tabindex="518" />
<input type="button" onclick="llamarApiDenueBus();" value="Ver listado" tabindex="519" aria-label="Ver listado" />
<div>
</body>
</html>
// Cuando ya tengas tu token reemplaza el texto 'AQUÍ_VA_TU_TOKEN' de la siguiente variable con él.
var token = 'AQUÍ_VA_TU_TOKEN';
var urlApiBusqueda = 'https://www.inegi.org.mx/app/api/denue/v1/consulta/buscar/#condicion/#latitud,#longitud/#metros/#token;'
var vecNombres = [
'id de establecimiento',
'Nombre de la unidad económica:',
'Razón social:',
'Nombre de la clase de actividad:',
'Personal ocupado (estrato):',
'Tipo de vialidad:',
'Nombre de la vialidad:',
'Número exterior o km:',
'Número o letra interior:',
'Nombre del asentamiento humano:',
'Código postal:',
'Entidad,Municipio,Localidad:',
'Número de teléfono:',
'Correo electrónico:',
'Sitio en Internet:',
'Tipo de unidad económica:',
'Latitud:',
'Longitud:',
'Centro comercial:',
'Tipo de centro comercial:',
'Número de local:'];
function llamarApiDenueBus(){
var condicion = $('#condi').val();
var longitud = $('#lon').val();
var latitud = $('#lat').val();
var metros = $('#mts').val();
var urlApiBusquedaTmp = urlApiBusqueda.replace('#condicion',condicion);
urlApiBusquedaTmp = urlApiBusquedaTmp.replace('#latitud',latitud);
urlApiBusquedaTmp = urlApiBusquedaTmp.replace('#longitud',longitud);
urlApiBusquedaTmp = urlApiBusquedaTmp.replace('#metros',metros);
urlApiBusquedaTmp = urlApiBusquedaTmp.replace('#token',token);
$.getJSON( urlApiBusquedaTmp, function( json ) {
var codHtml = '';
for(var i = 0; i < json.length; i++){
codHtml += '<table style="width:50%;">';
codHtml += '<tr><th colspan="2">Establecimiento ' + (i + 1) + '</th></tr>';
codHtml += '<tr><td style="width:50%;" >' + vecNombres[0] + '</td><td style="width:50%;">' + json[i].Id + '</td></tr>'+
'<tr><td style="width:50%;" >' + vecNombres[1] + '</td><td style="width:50%;">' + json[i].Nombre + '</td></tr>'+
'<tr><td style="width:50%;" >' + vecNombres[2] + '</td><td style="width:50%;">' + json[i].Razon_social + '</td></tr>'+
'<tr><td style="width:50%;" >' + vecNombres[3] + '</td><td style="width:50%;">' + json[i].Clase_actividad + '</td></tr>'+
'<tr><td style="width:50%;" >' + vecNombres[4] + '</td><td style="width:50%;">' + json[i].Estrato + '</td></tr>'+
'<tr><td style="width:50%;" >' + vecNombres[5] + '</td><td style="width:50%;">' + json[i].Tipo_vialidad + '</td></tr>'+
'<tr><td style="width:50%;" >' + vecNombres[6] + '</td><td style="width:50%;">' + json[i].Calle + '</td></tr>'+
'<tr><td style="width:50%;" >' + vecNombres[7] + '</td><td style="width:50%;">' + json[i].Num_Exterior + '</td></tr>'+
'<tr><td style="width:50%;" >' + vecNombres[8] + '</td><td style="width:50%;">' + json[i].Num_Interior + '</td></tr>'+
'<tr><td style="width:50%;" >' + vecNombres[9] + '</td><td style="width:50%;">' + json[i].Colonia + '</td></tr>'+
'<tr><td style="width:50%;" >' + vecNombres[10] + '</td><td style="width:50%;">' + json[i].CP + '</td></tr>'+
'<tr><td style="width:50%;" >' + vecNombres[11] + '</td><td style="width:50%;">' + json[i].Ubicacion + '</td></tr>'+
'<tr><td style="width:50%;" >' + vecNombres[12] + '</td><td style="width:50%;">' + json[i].Telefono + '</td></tr>'+
'<tr><td style="width:50%;" >' + vecNombres[13] + '</td><td style="width:50%;">' + json[i].Correo_e + '</td></tr>'+
'<tr><td style="width:50%;" >' + vecNombres[14] + '</td><td style="width:50%;">' + json[i].Sitio_internet + '</td></tr>'+
'<tr><td style="width:50%;" >' + vecNombres[15] + '</td><td style="width:50%;">' + json[i].Tipo + '</td></tr>'+
'<tr><td style="width:50%;" >' + vecNombres[16] + '</td><td style="width:50%;">' + json[i].Latitud + '</td></tr>'+
'<tr><td style="width:50%;" >' + vecNombres[17] + '</td><td style="width:50%;">' + json[i].Longitud +
'</td></tr>'+
'<tr><td style="width:50%;" >' + vecNombres[18] + '</td><td style="width:50%;">' + json[i].CentroComercial + '</td></tr>'+
'<tr><td style="width:50%;" >' + vecNombres[19] + '</td><td style="width:50%;">' + json[i].TipoCentroComercial + '</td></tr>'+
'<tr><td style="width:50%;" >' +vecNombres[20] + '</td><td style="width:50%;">' + json[i].NumLocal +
'</td></tr>'
codHtml += '<tr><td></td></tr></table><br><br>';
}
$('#tabDenue').html(codHtml);
});
}