Saltar al contenido

Measure Map Online para desarrolladores

Deja que los visitantes midan en tu web, crea proyectos para tus clientes, lee sus mediciones y entérate de los cambios en el momento en que se producen. La API REST forma parte de los planes Open Guest y Enterprise.

API REST

Elige tu plan

La página Desarrollador está disponible con los planes Open Guest y Enterprise. Open Guest sirve para recibir solicitudes de presupuesto desde tu web; Enterprise, para dirigir un equipo, con miembros que gestionas a través de la API.

Comparar planes

Crea una clave de API

En la página Desarrollador, crea una clave de Producción para tus proyectos reales y otra de Pruebas para desarrollar y probar: los proyectos de pruebas se guardan aparte y los proyectos de invitado de pruebas nunca se facturan. Da a cada clave solo el acceso que necesita y limítala a tus sitios web.

Sobre las claves de API

Envíala con cada solicitud

Todas las solicitudes van a https://api.measuremaponline.com/api/v2, con tu clave en la cabecera Authorization. Mantén en tu servidor las claves que pueden modificar datos.

curl https://api.measuremaponline.com/api/v2/projects/PROJECT_ID \
  -H "Authorization: YOUR_API_KEY"

Qué puedes hacer

Área Qué puede hacer tu software Planes
Proyectos y carpetasListar, leer, crear, actualizar y eliminar; leer las mediciones, los comentarios y el archivo .mmp de un proyectoOpen Guest y Enterprise
ProductosLeer, crear, actualizar y archivar los productos con los que pones precio a tu trabajoOpen Guest y Enterprise
Proyectos de invitadoIniciar un proyecto de invitado para un visitante, con sus datos ya rellenadosOpen Guest
MiembrosCrear, leer, actualizar y quitar miembros de tu organización, y hacer que entren con la sesión ya iniciadaEnterprise
Mapas incrustadosMostrar un proyecto como mapa en vivo en tu webEnterprise
WebhooksRecibir un mensaje firmado en tu servidor cuando ocurre algoOpen Guest y Enterprise

Open Guest: deja que los visitantes midan en tu web

Los visitantes de tu web miden su propio trabajo sin cuenta, ven el precio mientras dibujan y te envían una solicitud de presupuesto.

Cómo funciona

  1. Pones tu enlace de invitado en tu web, como botón o como mapa dentro de una página.
  2. Un visitante lo abre y obtiene su propio proyecto, sin tener que registrarse.
  3. Dibuja su césped, su tejado o su entrada de vehículos, y ve tus precios sobre la marcha.
  4. Pulsa Solicitar presupuesto y deja su nombre, su correo y su teléfono.
  5. Recibes un correo y una notificación, y su proyecto queda en tu cuenta.

No hace falta programar: copia tu enlace de invitado, o el código del botón o del mapa, en Desarrollador > Enlace de invitado.

Cómo funciona Open Guest

Desde tu propio formulario de presupuesto

Para rellenar los datos del visitante por él, tu servidor pide un token con tu clave de producción y envía al visitante a un proyecto de invitado nuevo. La clave nunca llega al navegador.

// Node.js 18+ with Express. Your API key stays on this server.
const express = require('express');
const app = express();

app.get('/start-measuring', async (req, res) => {
  // A token lets one visitor start one project in your account.
  const reply = await fetch('https://api.measuremaponline.com/api/v2/auth/token', {
    method: 'POST',
    headers: {'Authorization': process.env.MMO_API_KEY, 'Content-Type': 'application/json'},
    body: '{}',
  });
  if (!reply.ok) {
    return res.sendStatus(502);
  }
  const {token} = await reply.json();
  const name = String(req.query.name || '');
  const email = String(req.query.email || '');
  // URLSearchParams encodes every value: "Smith & Sons" arrives whole.
  const params = new URLSearchParams({
    token,
    name,                       // the project's name in your account
    description: email,         // any text you want to search by later
    guest_name: name,           // shown in the email you receive
    guest_email: email,
    // folder_id: 'FOLDER_ID',  // optional: the folder new projects go into
  });
  res.redirect('https://app.measuremaponline.com/app/projects/guest/new?' + params.toString());
});

app.listen(3000);
// On your page: call this from the button on your quote form.
function startMeasuring(name, email) {
  const params = new URLSearchParams({name, email});
  window.open('/start-measuring?' + params.toString(), '_blank', 'noopener');
}

La página Desarrollador tiene este código preparado para tu cuenta, en Enlace de invitado > API Open Guest. Cada proyecto de invitado cuenta para tu uso de Open Guest.

Enterprise: tus miembros, desde tu propio software

Da de alta a las personas de tu organización desde tu propio sistema, asígnales proyectos y envíalas a Measure Map Online con la sesión ya iniciada.

Crea miembros

Invita a personas desde el panel de control o créalas con la API. Cada miembro ocupa una plaza y recibe el rol predeterminado de tu organización.

POST /users/new

Vincúlalos con tus registros

Guarda el ID de usuario de cada miembro (uid) junto al cliente o empleado en tu base de datos y consulta sus datos cuando los necesites.

GET /users/{uid}

Crea sus proyectos

Crea un proyecto en la cuenta de un miembro y guarda su ID junto al trabajo en tu propio sistema.

POST /users/{uid}/projects/new

Inicia su sesión

Pide un token de inicio de sesión y envía al miembro a la aplicación con él, para no tener que repartir contraseñas nunca. No disponible para administradores ni gestores, ni con una clave de pruebas.

POST /auth/{uid}/login
https://app.measuremaponline.com/dashboard?sit=TOKEN

API iFrame: un mapa en vivo en tu web

Muestra el mapa de un proyecto, con tus mediciones, dentro de tu propia página web o tu CRM. Los visitantes pueden moverse por él sin cuenta. Elige las unidades, el tipo de mapa y un aspecto claro u oscuro.

La página Desarrollador genera el código por ti: elige un proyecto, comprueba la vista previa en vivo y cópialo. Los mapas incrustados forman parte del plan Enterprise; con Open Guest, incrusta tu enlace de invitado.

Guía de la API iFrame
<iframe
  src="https://app.measuremaponline.com/iframe_api?pid=PROJECT_ID&key=YOUR_API_KEY&ms=metric&maptype=satellite&theme=auto"
  width="100%" height="500" style="border: 0"
  title="Mediciones del trabajo">
</iframe>

ms: metric o imperial · maptype: satellite, map, hybrid o terrain · theme: auto, light o dark

Ejemplo: un proyecto dentro de tu propia página

Webhooks: entérate de los cambios

Añade la dirección de tu servidor en la página Desarrollador y elige los eventos que quieras. Cada evento llega como un POST con un cuerpo JSON, firmado en la cabecera X-MMO-Signature para que puedas comprobar que viene de nosotros.

Los webhooks forman parte de los planes Open Guest y Enterprise.

Guía de webhooks
Evento Se envía cuando
project.createdSe crea un proyecto, en la aplicación, con la API o desde un mapa incrustado
project.deletedSe elimina un proyecto definitivamente (moverlo a la Papelera no cuenta)
project.comment.addedAlguien comenta en un proyecto
guest.project.createdUn visitante inicia un proyecto de invitado y se conoce su correo electrónico, por ejemplo, desde tu formulario de presupuesto (Open Guest)
guest.measurement.completedUn visitante termina de medir y deja sus datos de contacto (Open Guest)
budget.warning_reached,
budget.limit_reached
Tu gasto de Open Guest alcanza tu umbral de aviso o tu límite
enterprise.user.createdSe añade una plaza a tu organización, también mediante inicio de sesión único (Enterprise)