MatterPak Upload API

The VPS Map Creation API accepts a POST request to /v1/vps/map with a JSON payload containing map metadata and Matterport authentication.

Create a VPS Map using MatterPak

post

Creates a new VPS map from a Matterport space using MatterPak.

Authentication Options: You can authenticate with Matterport using one of two methods:

  1. OAuth Token: Use oauthToken in the metadata

  2. Client Credentials: Use both clientId and clientSecret in the metadata

Process Flow:

  1. Submit map creation request with Matterport space ID and credentials

  2. System fetches the MatterPak from Matterport using provided credentials

  3. Map is processed in the cloud (no file upload required)

  4. Map becomes available for VPS queries when processing completes

Note: The map name will be automatically truncated to 30 characters if longer.

Authorizations
Body
mapNamestring · min: 3 · max: 255Required

Name of the VPS map (will be truncated to 30 characters if longer). Should be descriptive and unique to help identify the map.

Example: Office Building - Floor 1
headingnumber · double · max: 360Optional

Optional heading/orientation in degrees (0-360)

Example: 90
Responses
201

Map creation request submitted successfully

application/json
post
POST /v1/vps/map HTTP/1.1
Host: api.multiset.ai
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 354

{
  "mapName": "Office Building - Floor 1",
  "coordinates": {
    "latitude": 37.7749,
    "longitude": -122.4194,
    "altitude": 10.5
  },
  "heading": 90,
  "source": {
    "provider": "matterport",
    "fileType": "matterpak",
    "coordinateSystem": "RHS",
    "processType": "cloud",
    "metadata": {
      "spaceId": "abc123def456",
      "clientId": "your-matterport-client-id",
      "clientSecret": "your-matterport-client-secret"
    }
  }
}
{
  "message": "Map created successfully",
  "mapId": "67a5b08736cb3f76aaf3a416",
  "status": "processing",
  "mapName": "Office Building - Floor 1",
  "estimatedProcessingTime": "10-30 minutes"
}

Last updated

Was this helpful?