Beta APIs

[beta] Update a place

Updates a place. Provide exactly one of query parameter placeId (Samsara id) or externalId (key:value). Only fields present in the JSON body are changed; omit a field to leave it unchanged.

<b>Rate limit:</b> 100 requests/min (learn more about rate limits <a href="https://developers.samsara.com/docs/rate-limits" target="_blank">here</a>).

To use this endpoint, select Write Places under the Places category when creating or editing an API token. <a href="https://developers.samsara.com/docs/authentication#scopes-for-api-tokens" target="_blank">Learn More.</a>

Submit Feedback: Likes, dislikes, and API feature requests should be filed as feedback in our <a href="https://forms.gle/zkD4NCH7HjKb7mm69" target="_blank">API feedback form</a>. If you encountered an issue or noticed inaccuracies in the API documentation, please <a href="https://www.samsara.com/help" target="_blank">submit a case</a> to our support team.

patch/places

Request

  • Base URL
    https://api.samsara.com
  • Auth
    HTTP bearer

Query parameters

placeIdinteger

Samsara place id to update. Mutually exclusive with externalId; provide exactly one.

externalIdstring

External id token in key:value form (e.g. crmId:warehouse-east). Mutually exclusive with placeId; provide exactly one.

Request body

addressstring

Single-line address string.

addressLatitudenumber double

Latitude of the place pin (map marker), stored independently of the geofence. When supplied, updates the pin; omitting it leaves the existing pin unchanged. Provide together with addressLongitude.

addressLongitudenumber double

Longitude of the place pin (map marker), stored independently of the geofence. When supplied, updates the pin; omitting it leaves the existing pin unchanged. Provide together with addressLatitude.

cameraRecordingModeType'fullRecording' | 'driverPrivacy' | 'completePrivacy' | 'inherit' | 'unknown' | 'unspecified'

Camera recording mode: fullRecording, driverPrivacy, completePrivacy, or inherit. Valid values: fullRecording, driverPrivacy, completePrivacy, inherit, unknown, unspecified

externalIdsobject

When present, replaces external ids for the place.

iftaExemptionTypesstring[]

When present, replaces IFTA exemption types for the place.

isShowAddressesEnabledboolean

When true, show addresses inside the geofence on the map.

namestring

Place name.

notesstring

Notes.

placeTypesstring[]

When present, replaces address-type categories via address metadata. Metadata-derived types (hubLocation, navigation, iftaExemption) must match routing, navigation, and IFTA metadata after this request; conflicting combinations return InvalidArgument.

safetyEventExclusionsstring[]

When present, replaces safety event exclusions for the place.

Example request

{
  "address": "123 Main St, Oakland, CA",
  "addressLatitude": 37.7749,
  "addressLongitude": -122.4194,
  "businessContacts": {
    "contacts": [
      {
        "email": "bob@example.com",
        "name": "Bob Smith",
        "phoneNumber": "+14155555678"
      }
    ],
    "email": [
      "warehouse@example.com"
    ],
    "phoneNumbers": [
      "+14155551234"
    ]
  },
  "cameraRecordingModeType": "fullRecording",
  "externalIds": {
    "crmId": "warehouse-east"
  },
  "geofence": {
    "auto": {
      "fallbackBehavior": {
        "behaviorType": "fail",
        "circle": {
          "radiusMeters": 200
        }
      },
      "latitude": 37.8044,
      "longitude": -122.2712,
      "maxAreaSquareMeters": 500000,
      "maxSourceVertices": 1000,
      "maxVertices": 39,
      "searchBounds": {
        "maxLatitude": 37.84,
        "maxLongitude": -122.35,
        "minLatitude": 37.7,
        "minLongitude": -122.52
      },
      "sizeOrder": "smallestFirst",
      "suggestionTypes": [
        "building",
        "parcel",
        "landUse",
        "boundary"
      ]
    },
    "circle": {
      "latitude": 37.7749,
      "longitude": -122.4194,
      "radiusMeters": 150
    },
    "polygon": {
      "vertices": [
        {
          "latitude": 37.7749,
          "longitude": -122.4194
        }
      ]
    },
    "type": "circle"
  },
  "iftaExemptionTypes": [
    "privateRoad"
  ],
  "isShowAddressesEnabled": true,
  "name": "Oakland Yard",
  "navigation": {
    "locations": [
      {
        "driverInstructions": "Check in at the guard booth.",
        "latitude": 37.7749,
        "locationType": "entrance",
        "longitude": -122.4194,
        "name": "Main gate"
      }
    ]
  },
  "notes": "Receiving hours 6am-2pm",
  "placeTypes": [
    "yard"
  ],
  "routing": {
    "removeHubIds": [
      "de28b51e-20c2-4804-9f70-4d677454bc49"
    ],
    "upsert": [
      {
        "hubId": "550e8400-e29b-41d4-a716-446655440000",
        "routingExternalId": "store-A-updated"
      }
    ]
  },
  "safetyEventExclusions": [
    "harshAcceleration",
    "distractedDriving"
  ],
  "streetView": {
    "headingDegrees": 90,
    "isEnabled": true,
    "latitude": 37.7749,
    "longitude": -122.4194,
    "zoom": 1
  },
  "tags": [
    {
      "id": "1001"
    }
  ]
}

Response

OK response.

Example response

{
  "data": {
    "address": "123 Main St",
    "addressLatitude": 37.7749,
    "addressLongitude": -122.4194,
    "businessContacts": {
      "contacts": [
        {
          "email": "bob@example.com",
          "name": "Bob Smith",
          "phoneNumber": "+14155555678"
        }
      ],
      "email": [
        "warehouse@example.com"
      ],
      "phoneNumbers": [
        "+14155551234"
      ]
    },
    "cameraRecordingModeType": "inherit",
    "createdAtTime": "2019-06-13T19:08:25Z",
    "externalIds": {
      "Exercitationem non.": "Autem est laboriosam corrupti et voluptatibus sapiente."
    },
    "geofence": {
      "circle": {
        "latitude": 37.7749,
        "longitude": -122.4194,
        "radiusMeters": 150
      },
      "polygon": {
        "vertices": [
          {
            "latitude": 37.7749,
            "longitude": -122.4194
          }
        ]
      },
      "type": "circle"
    },
    "id": "12345",
    "iftaExemptionTypes": [
      "Eum sapiente cum.",
      "Aut asperiores blanditiis quas nihil dolor.",
      "Eum maiores eos maiores.",
      "Provident ut."
    ],
    "isShowAddressesEnabled": true,
    "name": "Oakland Yard",
    "navigation": {
      "locations": [
        {
          "driverInstructions": "Check in at booth.",
          "latitude": 37.7749,
          "locationType": "entrance",
          "longitude": -122.4194,
          "name": "Main gate"
        }
      ]
    },
    "notes": "Receiving 6-2",
    "placeTypes": [
      "Alias repellat ut commodi velit.",
      "Animi qui.",
      "Ea voluptatem voluptas et architecto sapiente suscipit.",
      "Porro ipsum quo enim alias error."
    ],
    "routing": [
      {
        "driverInstructions": "Use lane 2",
        "hubId": "550e8400-e29b-41d4-a716-446655440003",
        "hubNotes": "Zone A preferred",
        "orderServiceTime": {
          "capacityServiceTime": {
            "capacityId": "550e8400-e29b-41d4-a716-446655440001",
            "quantityPerServiceTime": 0.5,
            "serviceTimeSeconds": 60
          },
          "fixedServiceTimeSeconds": 300,
          "isEnabled": true,
          "modeType": "variable"
        },
        "position": "first",
        "priority": 3,
        "requiredSkills": [
          {
            "id": "550e8400-e29b-41d4-a716-446655440000",
            "name": "Refrigerated"
          }
        ],
        "routingExternalId": "store-A",
        "serviceTime": {
          "isEnabled": true,
          "serviceTimeMinutes": 5
        },
        "serviceWindows": [
          {
            "days": [
              "Illum alias perspiciatis.",
              "Iste dolores cupiditate delectus corrupti."
            ],
            "endTime": "17:00:01",
            "startTime": "09:00:00"
          }
        ]
      }
    ],
    "safetyEventExclusions": [
      "Quas nemo.",
      "Error tenetur sunt."
    ],
    "streetView": {
      "headingDegrees": 90,
      "isEnabled": true,
      "latitude": 37.7749,
      "longitude": -122.4194,
      "zoom": 1
    },
    "tags": [
      {
        "id": "1001",
        "name": "Yard",
        "parentTagId": "500"
      }
    ],
    "updatedAtTime": "2019-06-13T19:08:25Z"
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.