Source: https://developers.woosmap.com/products/geofencing-sdk/beacon/

> For clean Markdown of any page, append `.md` to the page URL.

> For a complete documentation index, see https://developers.woosmap.com/llms.txt

# Monitor point of interest with beacon fencing



## Indoor beacon-fencing

Beacon fencing is designed to monitor a user's proximity to indoor points of interest using unique beacon identifiers. In the context of the Woosmap Geofencing SDK, beacon fencing involves identifying specific points of interest within a building through the use of unique beacon identifiers.

This feature allows you to trigger events or actions when they come into proximity of a particular beacon. Whether it's a shop, a conference room, or any other indoor area, beacon fencing enables you to provide tailored interactions and services to users based on their proximity to these points of interest.

![Beacon-fencing](/assets/images/geofencing-sdk/beacon_doc.jpg)

### Based on Woosmap Indoor

You need a [Private API key](/api-reference/authentication/#registering-a-woosmap-private-api-key) to request the Woosmap Indoor Search API. This private key has to be linked to a project with Indoor product enabled.

The Geofencing SDK leverages Woosmap Indoor to manage beacons. This system relies on a set of geographic elements referred to as "features," which are collectively defined within a geoJSON file.

Beacons are also considered features but have four additional mandatory properties:

- `woosmap:category` must be set to "beacon".
- `beacon:uuid` denotes the beacon's unique identifier.
- `beacon:major` indicates the beacon's major value.
- `beacon:minor` specifies the beacon's minor value.

Find below an example of geoJson file with beacon identifiers:

```json
{
  "type": "FeatureCollection",
  "generator": "JOSM",
  "features": [
    {
      "type": "Feature",
      "properties": {
        "beacon:minor": "40",
        "level": "3",
        "beacon:major": "30",
        "beacon:uuid": "85919392-D1D3-4C2F-9773-36A60419BDCB",
        "name": "Beacon A",
        "woosmap:category": "beacon",
        "indoor": "yes"
      },
      "geometry": {
        "type": "Point",
        "coordinates": [3.92173088559, 43.60667535571]
      }
    },
    {
      "type": "Feature",
      "properties": {
        "beacon:major": "0083",
        "level": "3",
        "beacon:uuid": "85919392-D1D3-4C2F-9773-C497CE6C8744",
        "name": "Beacon B",
        "woosmap:category": "beacon",
        "beacon:minor": "0083",
        "indoor": "yes"
      },
      "geometry": {
        "type": "Point",
        "coordinates": [3.92196208373, 43.60655328722]
      }
    },
    {
      "type": "Feature",
      "properties": {
        "beacon:minor": "40",
        "level": "3",
        "name": "Beacon C",
        "beacon:major": "30",
        "beacon:uuid": "AE0D9E34-A1CD-49F8-B4F8-C497CE6C8744",
        "woosmap:category": "beacon",
        "indoor": "yes"
      },
      "geometry": {
        "type": "Point",
        "coordinates": [3.92185810655, 43.60644743928]
      }
    },
    {
      "type": "Feature",
      "properties": {
        "name": "Beacon D",
        "beacon:major": "20",
        "level": "3",
        "beacon:uuid": "AE0D9E34-D1D3-4C2F-9773-36A60419BDCB",
        "beacon:minor": "10",
        "woosmap:category": "beacon",
        "indoor": "yes"
      },
      "geometry": {
        "type": "Point",
        "coordinates": [3.92180309705, 43.60669676597]
      }
    }
  ]
}
```
