Chuyển đến nội dung

Measure Map Online dành cho nhà phát triển

Cho phép khách truy cập đo đạc trên website của bạn, tạo dự án cho khách hàng, đọc số đo của họ và biết ngay khi có thay đổi. REST API là một phần của các gói Open Guest và Enterprise.

REST API

Chọn gói của bạn

Trang Nhà phát triển có trong gói Open Guest và Enterprise. Open Guest dùng để nhận yêu cầu báo giá từ website của bạn; Enterprise dùng để vận hành một nhóm, với các thành viên bạn quản lý qua API.

So sánh các gói

Tạo khóa API

Trên trang Nhà phát triển, tạo khóa Live cho dự án thật và khóa Sandbox để xây dựng và thử nghiệm: dự án sandbox nằm tách biệt, và dự án khách trong sandbox không bao giờ bị tính phí. Chỉ cấp cho mỗi khóa quyền truy cập cần thiết và giới hạn nó cho các website của bạn.

Về khóa API

Gửi kèm trong mọi yêu cầu

Mọi yêu cầu được gửi đến https://api.measuremaponline.com/api/v2, với khóa của bạn trong tiêu đề Authorization. Hãy giữ các khóa có thể thay đổi dữ liệu trên máy chủ của bạn.

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

Bạn có thể làm gì

Mục Phần mềm của bạn có thể làm gì Gói
Dự án và thư mụcLiệt kê, đọc, tạo, cập nhật và xóa chúng; đọc số đo, bình luận và tệp .mmp của dự ánOpen Guest và Enterprise
Sản phẩmĐọc, tạo, cập nhật và lưu trữ các sản phẩm bạn dùng để tính giá công việcOpen Guest và Enterprise
Dự án kháchTạo dự án khách cho một khách truy cập, với thông tin của họ đã điền sẵnOpen Guest
Thành viênTạo, đọc, cập nhật và xóa thành viên trong tổ chức của bạn, và đăng nhập cho họEnterprise
Nhúng bản đồHiển thị dự án dưới dạng bản đồ trực tiếp trên website của bạnEnterprise
WebhookNhận một thông báo có chữ ký trên máy chủ của bạn khi có sự kiện xảy raOpen Guest và Enterprise

Open Guest: khách truy cập website của bạn tự đo công việc của họ

Khách truy cập website của bạn tự đo công việc của họ mà không cần tài khoản, thấy giá ngay khi vẽ và gửi cho bạn yêu cầu báo giá.

Cách hoạt động

  1. Bạn đặt liên kết khách lên website, dưới dạng nút bấm hoặc bản đồ nhúng trong trang.
  2. Khách truy cập mở nó, hoặc tìm địa chỉ của mình trên bản đồ trong trang của bạn, và nhận một dự án riêng trong thẻ mới, không cần đăng ký.
  3. Họ vẽ bãi cỏ, mái nhà hoặc lối vào nhà của mình và thấy giá của bạn ngay khi vẽ.
  4. Họ nhấn Yêu cầu báo giá và để lại tên, email và số điện thoại.
  5. Bạn nhận được email và thông báo, còn dự án của họ nằm trong tài khoản của bạn.

Không cần viết mã: sao chép liên kết khách, hoặc mã nút bấm hay bản đồ của nó, từ Nhà phát triển > Liên kết khách.

Open Guest hoạt động thế nào

Từ biểu mẫu báo giá của riêng bạn

Để điền sẵn thông tin của khách truy cập, máy chủ của bạn yêu cầu một token bằng khóa live và chuyển khách đến một dự án khách mới. Khóa không bao giờ đến trình duyệt.

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

Trang Nhà phát triển đã chuẩn bị sẵn đoạn mã này cho tài khoản của bạn, trong Liên kết khách > Open Guest API. Mỗi dự án khách được tính vào mức sử dụng Open Guest của bạn.

Enterprise: thành viên của bạn, từ phần mềm của riêng bạn

Tạo người dùng của tổ chức từ hệ thống của bạn, giao dự án cho họ và đưa họ vào Measure Map Online khi đã đăng nhập sẵn.

Tạo thành viên

Mời mọi người từ bảng điều khiển, hoặc tạo họ bằng API. Mỗi thành viên dùng một chỗ và nhận vai trò mặc định của tổ chức bạn.

POST /users/new

Liên kết với hồ sơ của bạn

Lưu ID người dùng (uid) của từng thành viên cùng với khách hàng hoặc nhân viên trong cơ sở dữ liệu của bạn, và đọc thông tin của họ khi cần.

GET /users/{uid}

Tạo dự án cho họ

Tạo dự án trong tài khoản của một thành viên và lưu ID của nó cùng với công việc trong hệ thống của bạn.

POST /users/{uid}/projects/new

Đăng nhập cho họ

Yêu cầu một token đăng nhập và đưa thành viên vào ứng dụng bằng token đó, nên bạn không bao giờ phải chuyển mật khẩu. Không áp dụng cho Admin và Manager, hoặc với khóa Sandbox.

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

iFrame API: bản đồ trực tiếp trên website của bạn

Hiển thị bản đồ của một dự án, cùng các số đo của bạn, ngay trong trang web hoặc CRM của bạn. Khách truy cập có thể di chuyển trên bản đồ mà không cần tài khoản. Chọn đơn vị, loại bản đồ và giao diện sáng hoặc tối.

Trang Nhà phát triển tạo mã cho bạn: chọn dự án, xem trước trực tiếp rồi sao chép. Nhúng bản đồ là một phần của gói Enterprise; với Open Guest, hãy nhúng liên kết khách của bạn.

Hướng dẫn 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="Số đo của công việc">
</iframe>

ms: metric hoặc imperial · maptype: satellite, map, hybrid hoặc terrain · theme: auto, light hoặc dark

Ví dụ: một dự án ngay trong trang của bạn

Webhook: biết ngay khi có thay đổi

Thêm địa chỉ máy chủ của bạn trên trang Nhà phát triển và chọn các sự kiện bạn muốn. Mỗi sự kiện đến dưới dạng POST với nội dung JSON, được ký trong tiêu đề X-MMO-Signature để bạn kiểm tra nó đến từ chúng tôi.

Webhook là một phần của các gói Open Guest và Enterprise.

Hướng dẫn webhook
Sự kiện Được gửi khi
project.createdMột dự án được tạo, trong ứng dụng, qua API hoặc từ bản đồ nhúng
project.deletedMột dự án bị xóa vĩnh viễn (chuyển vào Thùng rác không tính)
project.comment.addedAi đó bình luận về một dự án
guest.project.createdMột khách truy cập bắt đầu dự án khách và đã biết địa chỉ email của họ, ví dụ từ biểu mẫu báo giá của bạn (Open Guest)
guest.measurement.completedMột khách truy cập đo xong và để lại thông tin liên hệ (Open Guest)
budget.warning_reached,
budget.limit_reached
Chi phí Open Guest của bạn chạm ngưỡng cảnh báo hoặc giới hạn
enterprise.user.createdMột chỗ được thêm vào tổ chức của bạn, kể cả qua đăng nhập một lần (Enterprise)