Перейти до вмісту

Measure Map Online для розробників

Дозвольте відвідувачам вимірювати на вашому сайті, створюйте проєкти для клієнтів, читайте їхні вимірювання й дізнавайтеся про зміни в ту ж мить. REST API входить до тарифів Open Guest і Enterprise.

REST API

Оберіть тариф

Сторінка розробника доступна в тарифах Open Guest і Enterprise. Open Guest призначений для прийому запитів на кошторис із вашого сайту; Enterprise — для роботи команди, учасниками якої ви керуєте через API.

Порівняти тарифи

Створіть ключ API

На сторінці розробника створіть ключ Live для реальних проєктів і ключ Sandbox для розробки й тестування: пісочничні проєкти існують окремо, а пісочничні гостьові проєкти ніколи не тарифікуються. Давайте кожному ключу лише потрібний доступ і обмежте його вашими сайтами.

Про ключі API

Надсилайте його з кожним запитом

Кожен запит надсилається на https://api.measuremaponline.com/api/v2, а ключ передається в заголовку Authorization. Ключі, що можуть змінювати дані, зберігайте на своєму сервері.

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

Що можна робити

Розділ Що може робити ваше програмне забезпечення Тарифи
Проєкти та папкиПереглядати список, читати, створювати, оновлювати й видаляти їх; читати вимірювання, коментарі та файл .mmp проєктуOpen Guest і Enterprise
ПродуктиЧитати, створювати, оновлювати й архівувати продукти, за цінами яких ви рахуєте роботиOpen Guest і Enterprise
Гостьові проєктиСтворювати гостьовий проєкт для відвідувача із заповненими данимиOpen Guest
УчасникиСтворювати, читати, оновлювати й видаляти учасників вашої організації та входити від їхнього іменіEnterprise
ВбудовуванняПоказувати проєкт на вашому сайті як живу картуEnterprise
ВебхукиОтримувати на сервері підписане повідомлення, коли щось відбуваєтьсяOpen Guest і Enterprise

Open Guest: відвідувачі вашого сайту самі вимірюють свій об'єкт

Відвідувачі вашого сайту вимірюють свій об'єкт без облікового запису, бачать його вартість під час малювання й надсилають вам запит на кошторис.

Як це працює

  1. Ви розміщуєте гостьове посилання на сайті: кнопкою або картою всередині сторінки.
  2. Відвідувач відкриває його або знаходить свою адресу на карті на вашій сторінці й отримує власний проєкт у новій вкладці, без жодної реєстрації.
  3. Він малює свій газон, дах чи під'їзну доріжку й одразу бачить ваші ціни.
  4. Він натискає Запросити кошторис і залишає ім'я, електронну пошту та телефон.
  5. Ви отримуєте лист і сповіщення, а його проєкт з'являється у вашому обліковому записі.

Без коду: скопіюйте гостьове посилання або код кнопки чи карти в розділі Розробник > Гостьове посилання.

Як працює Open Guest

З вашої власної форми запиту

Щоб заповнити дані відвідувача замість нього, ваш сервер запитує токен за допомогою live-ключа й перенаправляє відвідувача до нового гостьового проєкту. Ключ ніколи не потрапляє в браузер.

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

На сторінці розробника цей код уже підготовлено для вашого облікового запису, в розділі Гостьове посилання > Open Guest API. Кожен гостьовий проєкт враховується у використанні Open Guest.

Enterprise: ваші учасники з вашого власного ПЗ

Створюйте співробітників організації зі своєї системи, передавайте їм проєкти й відправляйте їх у Measure Map Online вже авторизованими.

Створення учасників

Запрошуйте людей із панелі керування або створюйте їх через API. Кожен учасник займає одне місце й отримує типову роль вашої організації.

POST /users/new

Зв'яжіть їх зі своїми записами

Зберігайте ідентифікатор користувача (uid) кожного учасника разом із клієнтом чи співробітником у своїй базі даних і читайте його дані, коли потрібно.

GET /users/{uid}

Створюйте їхні проєкти

Створіть проєкт в обліковому записі учасника й зберігайте його ідентифікатор біля відповідної роботи у вашій системі.

POST /users/{uid}/projects/new

Авторизуйте їх

Запросіть токен для входу й надішліть учасника в застосунок із ним, щоб ніколи не передавати паролі. Недоступно для Admin і Manager та з ключем Sandbox.

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

iFrame API: жива карта на вашому сайті

Показуйте карту проєкту з вашими вимірюваннями на власній вебсторінці або в CRM. Відвідувачі можуть переміщатися по ній без облікового запису. Оберіть одиниці виміру, тип карти та світлий або темний вигляд.

Сторінка розробника сама створює код: оберіть проєкт, перевірте попередній перегляд і скопіюйте його. Вбудовування входить до тарифу Enterprise; в Open Guest вбудовуйте своє гостьове посилання.

Посібник з 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="Вимірювання об'єкта">
</iframe>

ms: metric або imperial · maptype: satellite, map, hybrid або terrain · theme: auto, light або dark

Приклад: проєкт на вашій сторінці

Вебхуки: дізнавайтеся про зміни

Додайте адресу свого сервера на сторінці розробника й оберіть потрібні події. Кожна подія надходить як POST з тілом JSON, підписаним у заголовку X-MMO-Signature, тож ви можете перевірити, що вона від нас.

Вебхуки входять до тарифів Open Guest і Enterprise.

Посібник з вебхуків
Подія Надсилається, коли
project.createdСтворено проєкт: у застосунку, через API або з вбудованої карти
project.deletedПроєкт видалено остаточно (переміщення до кошика не враховується)
project.comment.addedХтось коментує проєкт
guest.project.createdВідвідувач починає гостьовий проєкт, і його електронну адресу відомо, наприклад із вашої форми запиту (Open Guest)
guest.measurement.completedВідвідувач завершує вимірювання й залишає контактні дані (Open Guest)
budget.warning_reached,
budget.limit_reached
Витрати на Open Guest досягають попередження або ліміту
enterprise.user.createdДо вашої організації додано місце, зокрема через єдиний вхід (Enterprise)