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 planesCrea 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 APIEnví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 carpetas | Listar, leer, crear, actualizar y eliminar; leer las mediciones, los comentarios y el archivo .mmp de un proyecto | Open Guest y Enterprise |
| Productos | Leer, crear, actualizar y archivar los productos con los que pones precio a tu trabajo | Open Guest y Enterprise |
| Proyectos de invitado | Iniciar un proyecto de invitado para un visitante, con sus datos ya rellenados | Open Guest |
| Miembros | Crear, leer, actualizar y quitar miembros de tu organización, y hacer que entren con la sesión ya iniciada | Enterprise |
| Mapas incrustados | Mostrar un proyecto como mapa en vivo en tu web | Enterprise |
| Webhooks | Recibir un mensaje firmado en tu servidor cuando ocurre algo | Open 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
- Pones tu enlace de invitado en tu web, como botón o como mapa dentro de una página.
- Un visitante lo abre y obtiene su propio proyecto, sin tener que registrarse.
- Dibuja su césped, su tejado o su entrada de vehículos, y ve tus precios sobre la marcha.
- Pulsa Solicitar presupuesto y deja su nombre, su correo y su teléfono.
- 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 GuestDesde 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/newVincú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/newInicia 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=TOKENAPI 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
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.created | Se crea un proyecto, en la aplicación, con la API o desde un mapa incrustado |
project.deleted | Se elimina un proyecto definitivamente (moverlo a la Papelera no cuenta) |
project.comment.added | Alguien comenta en un proyecto |
guest.project.created | Un visitante inicia un proyecto de invitado y se conoce su correo electrónico, por ejemplo, desde tu formulario de presupuesto (Open Guest) |
guest.measurement.completed | Un 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.created | Se añade una plaza a tu organización, también mediante inicio de sesión único (Enterprise) |