Gå til indholdet

Measure Map Online til udviklere

Lad besøgende måle på din hjemmeside, opret projekter til dine kunder, læs deres målinger, og hør om ændringer i det øjeblik, de sker. REST API er en del af planerne Open Guest og Enterprise.

REST API

Vælg din plan

Udviklersiden åbner med planerne Open Guest og Enterprise. Open Guest er til at modtage tilbudsforespørgsler fra din hjemmeside; Enterprise er til at drive et team, med medlemmer, du administrerer via API'et.

Sammenlign planer

Opret en API-nøgle

På udviklersiden opretter du en Live-nøgle til dine rigtige projekter og en Sandbox-nøgle til at bygge og teste: sandbox-projekter holdes adskilt, og sandbox-gæsteprojekter faktureres aldrig. Giv hver nøgle kun den adgang, den har brug for, og begræns den til dine hjemmesider.

Om API-nøgler

Send den med hver forespørgsel

Hver forespørgsel går til https://api.measuremaponline.com/api/v2, med din nøgle i headeren Authorization. Opbevar nøgler, der kan ændre data, på din server.

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

Hvad du kan

Område Hvad din software kan Planer
Projekter og mapperVis, læs, opret, opdater og slet dem; læs et projekts målinger, kommentarer og .mmp-filOpen Guest og Enterprise
ProdukterLæs, opret, opdater og arkivér de produkter, du prissætter dit arbejde medOpen Guest og Enterprise
GæsteprojekterStart et gæsteprojekt for en besøgende, med vedkommendes oplysninger udfyldtOpen Guest
MedlemmerOpret, læs, opdater og fjern medlemmerne af din organisation, og log dem indEnterprise
IndlejringerVis et projekt som et levende kort på din hjemmesideEnterprise
WebhooksFå en signeret besked på din server, når der sker nogetOpen Guest og Enterprise

Open Guest: din hjemmesides besøgende måler deres egen opgave

Din hjemmesides besøgende måler deres egen opgave uden en konto, ser prisen, mens de tegner, og sender dig en forespørgsel på et tilbud.

Sådan virker det

  1. Du lægger dit gæstelink på din hjemmeside, som en knap eller som et kort inde i en side.
  2. En besøgende åbner det, eller finder sin adresse på kortet på din side, og får et projekt helt for sig selv i en ny fane, uden noget at tilmelde sig.
  3. Vedkommende tegner sin plæne, sit tag eller sin indkørsel og ser dine priser undervejs.
  4. Vedkommende trykker på Anmod om et tilbud og efterlader navn, e-mail og telefonnummer.
  5. Du får en e-mail og en notifikation, og vedkommendes projekt ligger på din konto.

Ingen kode nødvendig: kopiér dit gæstelink, eller knap- eller kortkoden til det, fra Udvikler > Gæstelink.

Sådan virker Open Guest

Fra din egen tilbudsformular

For at udfylde den besøgendes oplysninger for vedkommende beder din server om et token med din live-nøgle og sender den besøgende til et nyt gæsteprojekt. Nøglen når aldrig browseren.

// 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');
}

Udviklersiden har denne kode klar til din konto, under Gæstelink > Open Guest API. Hvert gæsteprojekt tæller med i dit Open Guest-forbrug.

Enterprise: dine medlemmer, fra din egen software

Opret organisationens personer fra dit eget system, giv dem projekter, og send dem ind i Measure Map Online allerede logget ind.

Opret medlemmer

Inviter personer fra dashboardet, eller opret dem med API'et. Hvert medlem bruger en plads og får din organisations standardrolle.

POST /users/new

Knyt dem til dine data

Gem hvert medlems bruger-id (uid) sammen med kunden eller medarbejderen i din database, og læs deres oplysninger, når du har brug for dem.

GET /users/{uid}

Opret deres projekter

Opret et projekt på et medlems konto, og behold dets id sammen med opgaven i dit eget system.

POST /users/{uid}/projects/new

Log dem ind

Bed om et login-token, og send medlemmet til appen med det, så du aldrig behøver at dele adgangskoder ud. Ikke tilgængeligt for Admins og Managers eller med en sandbox-nøgle.

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

iFrame API: et levende kort på din hjemmeside

Vis et projekts kort, med dine målinger, inde i din egen webside eller dit CRM. Besøgende kan bevæge sig rundt på det uden en konto. Vælg enheder, korttype og et lyst eller mørkt udseende.

Udviklersiden bygger koden for dig: vælg et projekt, tjek det levende eksempel, og kopiér det. Indlejringer er en del af Enterprise-planen; med Open Guest indlejrer du i stedet dit gæstelink.

Guide til iFrame API
<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="Opgavens målinger">
</iframe>

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

Eksempel: et projekt inde i din egen side

Webhooks: hør om ændringer

Tilføj din servers adresse på udviklersiden, og vælg de hændelser, du vil have. Hver hændelse kommer som en POST med en JSON-body, signeret i headeren X-MMO-Signature, så du kan kontrollere, at den kommer fra os.

Webhooks er en del af planerne Open Guest og Enterprise.

Guide til webhooks
Hændelse Sendes når
project.createdEt projekt oprettes, i appen, via API'et eller fra en indlejring
project.deletedEt projekt slettes for altid (at flytte det til Papirkurven tæller ikke)
project.comment.addedNogen kommenterer et projekt
guest.project.createdEn besøgende starter et gæsteprojekt, og vedkommendes e-mailadresse er kendt, for eksempel fra din tilbudsformular (Open Guest)
guest.measurement.completedEn besøgende er færdig med at måle og efterlader sine kontaktoplysninger (Open Guest)
budget.warning_reached,
budget.limit_reached
Dit Open Guest-forbrug når din advarsel eller din grænse
enterprise.user.createdEn plads tilføjes din organisation, også via single sign-on (Enterprise)