1NCE · Capability

1NCE OS — Device Locator

1NCE OS — Device Locator. 8 operations. Lead operation: Get Device Positions. Self-contained Naftiko capability covering one 1NCE business surface.

1NCE OS — Device Locator is a Naftiko capability published by 1NCE, one of 16 capabilities the APIs.io network indexes for this provider. It bundles 8 operations across the GET, POST, DELETE, and PATCH methods rooted at /v1/v1/locate.

The capability includes 5 read-only operations and 3 state-changing operations. Lead operation: Get Device Positions. Can be deployed as a REST endpoint, MCP tool, or Agent Skill via Naftiko.

Tagged areas include 1NCE, IoT, Locator, and Geofence.

Run with Naftiko 1NCEIoTLocatorGeofence

What You Can Do

GET
Get positions — Get Device Positions
/v1/v1/locate/devices/{deviceId}/positions
GET
Get latest — Get Latest Devices Positions
/v1/v1/locate/positions/latest
GET
Get activity — Get Device Celltower location resolutions
/v1/v1/locate/devices/{deviceId}/activity
GET
Get geofences — Get all geofences
/v1/v1/locate/geofences
POST
Create geofences — Create geofence
/v1/v1/locate/geofences
DELETE
Delete geofences — Delete geofence
/v1/v1/locate/geofences/{geofenceId}
GET
Get geofences — Get a geofence
/v1/v1/locate/geofences/{geofenceId}
PATCH
Patch geofences — Patch a geofence
/v1/v1/locate/geofences/{geofenceId}

MCP Tools

1nce-get-positions

Get Device Positions

read-only idempotent
1nce-get-latest

Get Latest Devices Positions

read-only idempotent
1nce-get-activity

Get Device Celltower location resolutions

read-only idempotent
1nce-get-geofences

Get all geofences

read-only idempotent
1nce-create-geofences

Create geofence

1nce-delete-geofences

Delete geofence

idempotent
1nce-get-geofences

Get a geofence

read-only idempotent
1nce-patch-geofences

Patch a geofence

Capability Spec

os-locate.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: "1NCE OS \u2014 Device Locator"
  description: "1NCE OS \u2014 Device Locator. 8 operations. Lead operation: Get Device Positions. Self-contained Naftiko\
    \ capability covering one 1NCE business surface."
  tags:
    - 1NCE
    - IoT
    - Locator
    - Geofence
  created: '2026-05-25'
  modified: '2026-05-25'
binds:
  - namespace: env
    keys:
      ONE_NCE_ACCESS_TOKEN: ONE_NCE_ACCESS_TOKEN
capability:
  consumes:
    - type: http
      namespace: os-locate
      baseUri: https://api.1nce.com/management-api
      description: "1NCE OS \u2014 Device Locator business capability. Self-contained, no shared references."
      resources:
        - name: v1-locate-devices-deviceid-positions
          path: /v1/locate/devices/{deviceId}/positions
          operations:
            - name: get-positions
              method: GET
              description: Get Device Positions
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
              inputParameters:
                - name: body
                  in: body
                  type: object
                  description: Request body (JSON).
                  required: false
        - name: v1-locate-positions-latest
          path: /v1/locate/positions/latest
          operations:
            - name: get-latest
              method: GET
              description: Get Latest Devices Positions
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
              inputParameters:
                - name: body
                  in: body
                  type: object
                  description: Request body (JSON).
                  required: false
        - name: v1-locate-devices-deviceid-activity
          path: /v1/locate/devices/{deviceId}/activity
          operations:
            - name: get-activity
              method: GET
              description: Get Device Celltower location resolutions
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
              inputParameters:
                - name: body
                  in: body
                  type: object
                  description: Request body (JSON).
                  required: false
        - name: v1-locate-geofences
          path: /v1/locate/geofences
          operations:
            - name: get-geofences
              method: GET
              description: Get all geofences
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
              inputParameters:
                - name: body
                  in: body
                  type: object
                  description: Request body (JSON).
                  required: false
            - name: create-geofences
              method: POST
              description: Create geofence
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
              inputParameters:
                - name: body
                  in: body
                  type: object
                  description: Request body (JSON).
                  required: true
        - name: v1-locate-geofences-geofenceid
          path: /v1/locate/geofences/{geofenceId}
          operations:
            - name: delete-geofences
              method: DELETE
              description: Delete geofence
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
              inputParameters:
                - name: body
                  in: body
                  type: object
                  description: Request body (JSON).
                  required: false
            - name: get-geofences
              method: GET
              description: Get a geofence
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
              inputParameters:
                - name: body
                  in: body
                  type: object
                  description: Request body (JSON).
                  required: false
            - name: patch-geofences
              method: PATCH
              description: Patch a geofence
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
              inputParameters:
                - name: body
                  in: body
                  type: object
                  description: Request body (JSON).
                  required: true
      authentication:
        type: bearer
        token: '{{env.ONE_NCE_ACCESS_TOKEN}}'
  exposes:
    - type: rest
      namespace: os-locate-rest
      port: 8080
      description: "REST adapter for 1NCE OS \u2014 Device Locator. One Spectral-compliant resource per consumed operation,\
        \ prefixed with /v1."
      resources:
        - path: /v1/v1/locate/devices/{deviceId}/positions
          name: v1-locate-devices-deviceid-positions
          description: REST surface for v1-locate-devices-deviceid-positions.
          operations:
            - method: GET
              name: get-positions
              description: Get Device Positions
              call: os-locate.get-positions
              with:
                body: rest.body
              outputParameters:
                - type: object
                  mapping: $.
        - path: /v1/v1/locate/positions/latest
          name: v1-locate-positions-latest
          description: REST surface for v1-locate-positions-latest.
          operations:
            - method: GET
              name: get-latest
              description: Get Latest Devices Positions
              call: os-locate.get-latest
              with:
                body: rest.body
              outputParameters:
                - type: object
                  mapping: $.
        - path: /v1/v1/locate/devices/{deviceId}/activity
          name: v1-locate-devices-deviceid-activity
          description: REST surface for v1-locate-devices-deviceid-activity.
          operations:
            - method: GET
              name: get-activity
              description: Get Device Celltower location resolutions
              call: os-locate.get-activity
              with:
                body: rest.body
              outputParameters:
                - type: object
                  mapping: $.
        - path: /v1/v1/locate/geofences
          name: v1-locate-geofences
          description: REST surface for v1-locate-geofences.
          operations:
            - method: GET
              name: get-geofences
              description: Get all geofences
              call: os-locate.get-geofences
              with:
                body: rest.body
              outputParameters:
                - type: object
                  mapping: $.
            - method: POST
              name: create-geofences
              description: Create geofence
              call: os-locate.create-geofences
              with:
                body: rest.body
              outputParameters:
                - type: object
                  mapping: $.
        - path: /v1/v1/locate/geofences/{geofenceId}
          name: v1-locate-geofences-geofenceid
          description: REST surface for v1-locate-geofences-geofenceid.
          operations:
            - method: DELETE
              name: delete-geofences
              description: Delete geofence
              call: os-locate.delete-geofences
              with:
                body: rest.body
              outputParameters:
                - type: object
                  mapping: $.
            - method: GET
              name: get-geofences
              description: Get a geofence
              call: os-locate.get-geofences
              with:
                body: rest.body
              outputParameters:
                - type: object
                  mapping: $.
            - method: PATCH
              name: patch-geofences
              description: Patch a geofence
              call: os-locate.patch-geofences
              with:
                body: rest.body
              outputParameters:
                - type: object
                  mapping: $.
    - type: mcp
      namespace: os-locate-mcp
      port: 9090
      transport: http
      description: "MCP adapter for 1NCE OS \u2014 Device Locator. One tool per consumed operation, routed inline through\
        \ this capability consumes block."
      tools:
        - name: 1nce-get-positions
          description: Get Device Positions
          hints:
            readOnly: true
            destructive: false
            idempotent: true
          call: os-locate.get-positions
          with:
            body: tools.body
          outputParameters:
            - type: object
              mapping: $.
        - name: 1nce-get-latest
          description: Get Latest Devices Positions
          hints:
            readOnly: true
            destructive: false
            idempotent: true
          call: os-locate.get-latest
          with:
            body: tools.body
          outputParameters:
            - type: object
              mapping: $.
        - name: 1nce-get-activity
          description: Get Device Celltower location resolutions
          hints:
            readOnly: true
            destructive: false
            idempotent: true
          call: os-locate.get-activity
          with:
            body: tools.body
          outputParameters:
            - type: object
              mapping: $.
        - name: 1nce-get-geofences
          description: Get all geofences
          hints:
            readOnly: true
            destructive: false
            idempotent: true
          call: os-locate.get-geofences
          with:
            body: tools.body
          outputParameters:
            - type: object
              mapping: $.
        - name: 1nce-create-geofences
          description: Create geofence
          hints:
            readOnly: false
            destructive: false
            idempotent: false
          call: os-locate.create-geofences
          with:
            body: tools.body
          outputParameters:
            - type: object
              mapping: $.
        - name: 1nce-delete-geofences
          description: Delete geofence
          hints:
            readOnly: false
            destructive: true
            idempotent: true
          call: os-locate.delete-geofences
          with:
            body: tools.body
          outputParameters:
            - type: object
              mapping: $.
        - name: 1nce-get-geofences
          description: Get a geofence
          hints:
            readOnly: true
            destructive: false
            idempotent: true
          call: os-locate.get-geofences
          with:
            body: tools.body
          outputParameters:
            - type: object
              mapping: $.
        - name: 1nce-patch-geofences
          description: Patch a geofence
          hints:
            readOnly: false
            destructive: false
            idempotent: false
          call: os-locate.patch-geofences
          with:
            body: tools.body
          outputParameters:
            - type: object
              mapping: $.