---
title: "[beta] Look up geofence suggestions"
method: GET
path: "/places/geofence"
tags: ["Beta APIs"]
---

# \[beta\] Look up geofence suggestions

`GET /places/geofence`

## Request

- Base URL: `https://api.samsara.com`
- URL: `https://api.samsara.com/places/geofence`
- Auth: HTTP bearer

Returns geofence suggestion candidates for a seed point. Does not create or update a Place. Applies the same selection rules as geofence.auto on Place write.

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

To use this endpoint, select **Read 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.

## Query parameters

- `latitude` number, double, required
- `longitude` number, double, required
- `suggestionTypes` string
- `sizeOrder` 'smallestFirst' | 'largestFirst'
- `minLatitude` number, double
- `minLongitude` number, double
- `maxLatitude` number, double
- `maxLongitude` number, double
- `maxAreaSquareMeters` number, double
- `maxSourceVertices` integer
- `maxVertices` integer
- `maxResults` integer
- `after` string

## Response `200`

OK response.

- PlacesGetPlaceGeofenceResponseBody
  - `data` PlaceGeofenceSuggestionCandidateResponseResponseBody[], required: Matching geofence candidates for this page.
    - `areaSquareMeters` number, double, required: Candidate area in square meters.
    - `geofence` PlaceGeofenceResponseResponseBody, required: Discriminated place geofence. GET returns circle, polygon, or unknown when stored geometry cannot be mapped.
      - `circle` PlaceGeofenceCircleResponseResponseBody: Circle geofence geometry.
        - `latitude` number, double, required: Circle center latitude in decimal degrees.
        - `longitude` number, double, required: Circle center longitude in decimal degrees.
        - `radiusMeters` integer, required: Radius in meters; must be positive.
      - `polygon` PlaceGeofencePolygonResponseResponseBody: Polygon geofence geometry.
        - `vertices` PlaceGeofenceVertexResponseResponseBody[], required: Polygon vertices; at least three.
          - `latitude` number, double, required: Latitude in decimal degrees.
          - `longitude` number, double, required: Longitude in decimal degrees.
      - `type` 'circle' | 'polygon' | 'unknown', required: Geofence type: circle, polygon, or unknown. Valid values: `circle`, `polygon`, `unknown`
    - `name` string, required: Candidate name from map data when available.
    - `type` 'building' | 'parcel' | 'landUse' | 'boundary' | 'facility' | 'infrastructure' | 'unknown', required: Candidate category from map data. Valid values: `building`, `parcel`, `landUse`, `boundary`, `facility`, `infrastructure`, `unknown`
  - `pagination` GoaPaginationResponseResponseBody, required: Pagination parameters.
    - `endCursor` string, required: Cursor identifier representing the last element in the response. This value should be used in conjunction with a subsequent request's 'after' query parameter. This may be an empty string if there are no more pages left to view.
    - `hasNextPage` boolean, required: True if there are more pages of results immediately available after this endCursor.
  - `recommended` PlaceGeofenceSuggestionCandidateResponseResponseBody: A geofence suggestion candidate.
    - `areaSquareMeters` number, double, required: Candidate area in square meters.
    - `geofence` PlaceGeofenceResponseResponseBody, required: Discriminated place geofence. GET returns circle, polygon, or unknown when stored geometry cannot be mapped.
      - `circle` PlaceGeofenceCircleResponseResponseBody: Circle geofence geometry.
        - `latitude` number, double, required: Circle center latitude in decimal degrees.
        - `longitude` number, double, required: Circle center longitude in decimal degrees.
        - `radiusMeters` integer, required: Radius in meters; must be positive.
      - `polygon` PlaceGeofencePolygonResponseResponseBody: Polygon geofence geometry.
        - `vertices` PlaceGeofenceVertexResponseResponseBody[], required: Polygon vertices; at least three.
          - `latitude` number, double, required: Latitude in decimal degrees.
          - `longitude` number, double, required: Longitude in decimal degrees.
      - `type` 'circle' | 'polygon' | 'unknown', required: Geofence type: circle, polygon, or unknown. Valid values: `circle`, `polygon`, `unknown`
    - `name` string, required: Candidate name from map data when available.
    - `type` 'building' | 'parcel' | 'landUse' | 'boundary' | 'facility' | 'infrastructure' | 'unknown', required: Candidate category from map data. Valid values: `building`, `parcel`, `landUse`, `boundary`, `facility`, `infrastructure`, `unknown`

## Other responses

- `401`: Unauthorized response.
- `404`: Not Found response.
- `405`: Method Not Allowed response.
- `413`: Content Too Large response.
- `429`: Too Many Requests response.
- `500`: Internal Server Error response.
- `501`: Not Implemented response.
- `502`: Bad Gateway response.
- `503`: Service Unavailable response.
- `504`: Gateway Timeout response.
- `default`: Bad Request response.

---

[API](https://skmtc.dev/samsara/apis/samsara-api.md) - [All operations](https://skmtc.dev/samsara/apis/samsara-api/llms.txt) - [OpenAPI document](https://skmtc.dev/samsara/apis/samsara-api/revisions/a9e35d4999be?raw)
