Ir al contenido

Recopilaciones · POST /v1/exports

Exportaciones

Convierte los lugares de una recopilación en un archivo csv, json o xlsx, con un enlace de descarga que funciona sin clave.

Crea una exportación

Envía el id de la recopilación y un format: csv, json o xlsx. Si omites el formato, obtienes csv. Crear una exportación es gratis, y la recopilación puede seguir en curso: el archivo trae los lugares que tenía en ese momento.

curl -X POST https://api.gmaps.dev/v1/exports \
  -H "Authorization: Bearer $GMAPS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "collectionId": "8c1f5e2a-7b3d-4f60-9e14-2a6d0b9c7f31",
    "format": "csv"
  }'

La respuesta llega con el estado 201:

{
  "data": {
    "id": "e41d7c90-3a5b-4f28-8c61-0b9e2d4a7f15",
    "collectionId": "8c1f5e2a-7b3d-4f60-9e14-2a6d0b9c7f31",
    "format": "csv",
    "locale": "es",
    "rows": 140,
    "url": "https://api.gmaps.dev/v1/exports/e41d7c90-3a5b-4f28-8c61-0b9e2d4a7f15/download?token=q3Xr0bVh6YkL2mN8pT4sW1zA9cE5dF7g",
    "createdAt": "2026-09-24T15:30:00.000Z",
    "expiresAt": "2026-09-25T15:30:00.000Z"
  }
}
  • url: abre el archivo, sin clave, hasta expiresAt. Cualquiera que tenga el enlace puede abrirlo, así que trátalo como una contraseña.
  • expiresAt: 24 horas después de crear la exportación.
  • rows: cuántos lugares tenía la recopilación cuando creaste la exportación. El archivo puede tener menos si, desde entonces, un negocio pidió quedar fuera.

Descarga el archivo

Abre el enlace en un navegador, en una hoja de cálculo o desde tu código, tantas veces como quieras hasta que expire. Eso también es gratis:

curl -o places.csv "https://api.gmaps.dev/v1/exports/e41d7c90-3a5b-4f28-8c61-0b9e2d4a7f15/download?token=q3Xr0bVh6YkL2mN8pT4sW1zA9cE5dF7g"

Armamos el archivo cada vez que se abre el enlace, con los lugares que la recopilación tenía cuando creaste la exportación. Un lugar cuyo negocio pidió quedar fuera después no aparece.

Para ver la exportación otra vez, con su enlace, llama a GET /v1/exports/{id}. Cuando el enlace expira, o se borran los lugares de la recopilación, ambos responden 404 EXPORT_NOT_FOUND: crea una exportación nueva a partir de la recopilación.

Formatos

  • csv: una fila por lugar, sin límite de tamaño. Va en UTF-8, con la marca que Excel necesita para mostrar bien los acentos. Una lista, como varios teléfonos, va en una sola celda, separada por comas. Una celda que empieza como una fórmula lleva un ' delante, para que la hoja de cálculo la muestre como texto en lugar de ejecutarla.
  • json: un arreglo con un objeto por lugar. Las claves son las de la tabla de abajo, iguales en cualquier idioma. Las listas siguen siendo listas, y un valor que falta llega como null.
  • xlsx: una hoja, una fila por lugar, hasta 50.000 lugares. Una recopilación más grande se rechaza con 400 VALIDATION_ERROR: expórtala como csv.

locale define el idioma de los nombres de columna en csv y xlsx: en, es o pt-BR. Si lo omites, se usa el idioma de tu cuenta. No traduce los lugares: cada uno queda en el idioma de la última búsqueda que lo recopiló.

Columnas

Todos los formatos tienen las mismas columnas, en este orden. La extensión gratuita de Chrome también las escribe, así que el código que lee un archivo lee el otro:

Clave en el jsonEncabezado en inglésEncabezado en portuguésEncabezado en español
nameNameNomeNombre
phonesPhonesTelefonesTeléfonos
emailsEmailsE-mailsCorreos electrónicos
statusStatusStatusSituación
cityCityCidadeCiudad
stateStateEstadoEstado
sectorSectorSetorSector
websiteWebsiteSiteSitio web
addressAddressEndereçoDirección
ratingGoogle ratingNota no GoogleCalificación en Google
reviewCountGoogle reviewsAvaliações no GoogleReseñas en Google
cidGoogle CIDCID do GoogleCID de Google
placeIdGoogle place IDID do lugar no GoogleID del lugar en Google
mapsUrlGoogle Maps URLURL do Google MapsURL de Google Maps
latitudeLatitudeLatitudeLatitud
longitudeLongitudeLongitudeLongitud
plusCodePlus codePlus codePlus code
scrapedAtCollected atData da coletaFecha de recopilación
  • emails queda vacía si tu cuenta no podía leer correos electrónicos cuando creaste la exportación. También queda vacía en un lugar del que no tenemos ninguna dirección. Consulta Correos electrónicos.
  • En xlsx, el cid se guarda como texto. Si abres el csv en una hoja de cálculo, importa esa columna como texto, o sus últimos dígitos se redondean.
  • sector es el identity.category del lugar, como Panadería.
  • scrapedAt indica cuándo recopilamos el lugar por última vez.

Cuando se rechaza una exportación

RespuestaQué pasó y qué hacer
409 CONFLICTLa recopilación todavía no ha encontrado ningún lugar. Espera a que lleguen los primeros e intenta de nuevo.
409 CONFLICTLa recopilación terminó sin lugares, así que no hay nada que exportar. Prueba con una zona más grande u otros términos.
409 CONFLICTLos lugares de la recopilación se borraron, 30 días después de que empezó. Sus conteos siguen ahí. Inicia la misma recopilación otra vez y exporta la nueva.
400 VALIDATION_ERRORLa recopilación tiene más de 50.000 lugares, el máximo que cabe en un xlsx. Expórtala como csv.
404 COLLECTION_NOT_FOUNDEl id es incorrecto o pertenece a otra cuenta.