1NCE Device Locator API

Get device positions and manage geofences

Operations 8

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

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/1nce-device-locator-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

1nce-device-locator-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Authorization Administration Logs Device Locator API
  description: Documentation of the authentication used for the 1NCE APIs.
  contact:
    name: 1NCE GmbH
    url: https://1nce.com
    email: info@1nce.com
  version: v2.1.1
servers:
- url: https://api.1nce.com/management-api
tags:
- description: Get device positions and manage geofences
  name: Device Locator
paths:
  /v1/locate/devices/{deviceId}/positions:
    get:
      description: 'Get positions of a specific device (maximum of last 7 days).

        ![Creative Commons License](https://mirrors.creativecommons.org/presskit/buttons/80x15/svg/by-sa.svg) [OpenCelliD Project](https://opencellid.org/) is licensed under a [Creative Commons Attribution-ShareAlike 4.0 International License](https://creativecommons.org/licenses/by-sa/4.0/)

        '
      parameters:
      - description: The unique device ID which identifies each 1NCE SIM. Can be obtained from the Get All Devices API query. For 1NCE SIMS the device ID is equal to its iccid.
        explode: false
        in: path
        name: deviceId
        required: true
        schema:
          example: <device_id>
          type: string
        style: simple
      - description: Number of the requested page. Use this parameter to iterate through all items on the different pages. The total amount of pages is listed in the response body (pageAmount).
        explode: true
        in: query
        name: page
        required: false
        schema:
          default: 1
          maximum: 50
          minimum: 1
          type: integer
        style: form
      - description: Comma seperated list of device property keys in order. Prefix key with `-` to sort descending.
        explode: false
        in: query
        name: sort
        required: false
        schema:
          items:
            default: -sampleTime
            type: string
          type: array
        style: form
      - description: Source of the position.
        explode: true
        in: query
        name: source
        required: false
        schema:
          enum:
          - GPS
          - CellTower
          type: string
        style: form
      - explode: true
        in: query
        name: startDateTime
        required: false
        schema:
          example: '2022-01-01T01:01:01.000Z'
          type: string
        style: form
      - explode: true
        in: query
        name: endDateTime
        required: false
        schema:
          example: '2022-01-01T01:01:02Z'
          type: string
        style: form
      - description: Parameter for specifying the queried items per page.
        explode: true
        in: query
        name: pageSize
        required: false
        schema:
          default: 100
          example: 10
          maximum: 100
          minimum: 1
          type: integer
        style: form
      - description: Use ALL for a paginated list of all positions and SUMMARY to get the first, last and some positions inbetween.
        explode: true
        in: query
        name: mode
        required: false
        schema:
          default: ALL
          enum:
          - ALL
          - SUMMARY
          type: string
        style: form
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/getResponseschema_8'
          description: OK
        '400':
          $ref: '#/components/responses/BadRequestError'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '403':
          $ref: '#/components/responses/ForbiddenError'
        '500':
          $ref: '#/components/responses/InternalServerError'
      security:
      - BearerAuthentication: []
      summary: Get Device Positions
      tags:
      - Device Locator
  /v1/locate/positions/latest:
    get:
      description: 'Get latest positions of customer devices (maximum of last 7 days). Only one latest position is possible for a single device independent of source: either Celltower or GPS. This means that `source` query parameter selection can lead to no latest position returned for some devices.

        ![Creative Commons License](https://mirrors.creativecommons.org/presskit/buttons/80x15/svg/by-sa.svg) [OpenCelliD Project](https://opencellid.org/) is licensed under a [Creative Commons Attribution-ShareAlike 4.0 International License](https://creativecommons.org/licenses/by-sa/4.0/)

        '
      parameters:
      - description: The unique device ID which identifies each 1NCE SIM. Can be obtained from the Get All Devices API query. For 1NCE SIMS the device ID is equal to its iccid.
        explode: true
        in: query
        name: deviceId
        required: false
        schema:
          example: <device_id>
          type: string
        style: form
      - description: Number of the requested page. Use this parameter to iterate through all items on the different pages. The total amount of pages is listed in the response body (pageAmount).
        explode: true
        in: query
        name: page
        required: false
        schema:
          default: 1
          maximum: 50
          minimum: 1
          type: integer
        style: form
      - description: Comma seperated list of device property keys in order. Prefix key with `-` to sort descending.
        explode: false
        in: query
        name: sort
        required: false
        schema:
          items:
            default: -sampleTime
            type: string
          type: array
        style: form
      - description: Source of the position.
        explode: true
        in: query
        name: source
        required: false
        schema:
          enum:
          - GPS
          - CellTower
          type: string
        style: form
      - explode: true
        in: query
        name: startDateTime
        required: false
        schema:
          example: '2022-01-01T01:01:01.000Z'
          type: string
        style: form
      - explode: true
        in: query
        name: endDateTime
        required: false
        schema:
          example: '2022-01-01T01:01:02Z'
          type: string
        style: form
      - explode: true
        in: query
        name: longitudeFrom
        required: false
        schema:
          example: -10
          maximum: 180
          minimum: -180
          type: number
        style: form
      - explode: true
        in: query
        name: longitudeTo
        required: false
        schema:
          example: 10
          maximum: 180
          minimum: -180
          type: number
        style: form
      - explode: true
        in: query
        name: latitudeFrom
        required: false
        schema:
          example: -10
          maximum: 90
          minimum: -90
          type: number
        style: form
      - explode: true
        in: query
        name: latitudeTo
        required: false
        schema:
          example: 10
          maximum: 90
          minimum: -90
          type: number
        style: form
      - description: Parameter for specifying the queried items per page.
        explode: true
        in: query
        name: pageSize
        required: false
        schema:
          default: 100
          example: 10
          maximum: 100
          minimum: 1
          type: integer
        style: form
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/getLatestResponseschema'
          description: OK
        '400':
          $ref: '#/components/responses/BadRequestError'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '403':
          $ref: '#/components/responses/ForbiddenError'
        '500':
          $ref: '#/components/responses/InternalServerError'
      security:
      - BearerAuthentication: []
      summary: Get Latest Devices Positions
      tags:
      - Device Locator
  /v1/locate/devices/{deviceId}/activity:
    get:
      description: 'Get Cell location resolutions for one device (maximum of last 7 days).

        ![Creative Commons License](https://mirrors.creativecommons.org/presskit/buttons/80x15/svg/by-sa.svg) [OpenCelliD Project](https://opencellid.org/) is licensed under a [Creative Commons Attribution-ShareAlike 4.0 International License](https://creativecommons.org/licenses/by-sa/4.0/)

        '
      parameters:
      - description: The unique device ID which identifies each 1NCE SIM. Can be obtained from the Get All Devices API query. For 1NCE SIMS the device ID is equal to its iccid.
        explode: false
        in: path
        name: deviceId
        required: true
        schema:
          example: <device_id>
          type: string
        style: simple
      - description: Timestamp from where onwards the historic data should be queried. If not provided while "endDateTime" is provided defaults to 1 day before "endDateTime" timestamp, otherwise defaults to 1 day from now
        explode: true
        in: query
        name: startDateTime
        required: false
        schema:
          example: '2022-01-01T01:01:01.000Z'
          type: string
        style: form
      - description: Timestamp up to where the historic data should be queried. If not provided while "startDateTime" is provided defaults to 1 day after "startDateTime" timestamp, otherwise defaults to now
        explode: true
        in: query
        name: endDateTime
        required: false
        schema:
          example: '2022-01-01T01:01:02.000Z'
          type: string
        style: form
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/getResponseschema_9'
          description: OK
        '400':
          $ref: '#/components/responses/BadRequestError'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '403':
          $ref: '#/components/responses/ForbiddenError'
        '500':
          $ref: '#/components/responses/InternalServerError'
      security:
      - BearerAuthentication: []
      summary: Get Device Celltower location resolutions
      tags:
      - Device Locator
  /v1/locate/geofences:
    get:
      description: 'Get an overview of all geofences.

        Rate limits apply for this endpoint. See [Rate Limit Policy](https://help.1nce.com/api/api-rate-limits/).

        '
      parameters:
      - description: Parameter for specifying the queried items per page.
        explode: true
        in: query
        name: pageSize
        required: false
        schema:
          default: 10
          example: 10
          minimum: 1
          type: integer
        style: form
      - description: Number of the requested page. Use this parameter to iterate through all items on the different pages. The total amount of pages is listed in the response body (pageAmount).
        explode: true
        in: query
        name: page
        required: false
        schema:
          default: 1
          maximum: 50
          minimum: 1
          type: integer
        style: form
      - description: Name or Prefix of Geofence
        explode: true
        in: query
        name: name
        required: false
        schema:
          type: string
        style: form
      - description: The unique device ID which identifies each 1NCE SIM. Can be obtained from the Get All Devices API query. For 1NCE SIMS the device ID is equal to its iccid.
        explode: true
        in: query
        name: deviceId
        required: false
        schema:
          example: <device_id>
          type: string
        style: form
      - description: scope of geofences
        explode: true
        in: query
        name: scope
        required: false
        schema:
          enum:
          - global
          - device
          type: string
        style: form
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/getAllGeofenceResponseschema'
          description: OK
        '400':
          $ref: '#/components/responses/BadRequestError'
        '500':
          $ref: '#/components/responses/InternalServerError'
      security:
      - BearerAuthentication: []
      summary: Get all geofences
      tags:
      - Device Locator
    post:
      description: Create a new geofence.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/postschema_5'
        required: true
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/postGeofenceResponseschema'
          description: Created
        '400':
          $ref: '#/components/responses/BadRequestError'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '403':
          $ref: '#/components/responses/ForbiddenError'
        '500':
          $ref: '#/components/responses/InternalServerError'
      security:
      - BearerAuthentication: []
      summary: Create geofence
      tags:
      - Device Locator
  /v1/locate/geofences/{geofenceId}:
    delete:
      description: Delete a geofence.
      parameters:
      - description: unique geofence ID
        explode: false
        in: path
        name: geofenceId
        required: true
        schema:
          type: string
        style: simple
      responses:
        '204':
          description: Deleted
        '404':
          $ref: '#/components/responses/NotFoundError'
        '500':
          $ref: '#/components/responses/InternalServerError'
      security:
      - BearerAuthentication: []
      summary: Delete geofence
      tags:
      - Device Locator
    get:
      description: Get details of a geofence.
      parameters:
      - description: unique geofence ID
        explode: false
        in: path
        name: geofenceId
        required: true
        schema:
          type: string
        style: simple
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/getGeofenceResponseschema'
          description: OK
        '404':
          $ref: '#/components/responses/NotFoundError'
        '500':
          $ref: '#/components/responses/InternalServerError'
      security:
      - BearerAuthentication: []
      summary: Get a geofence
      tags:
      - Device Locator
    patch:
      description: Update an existing geofence
      parameters:
      - description: unique geofence ID
        explode: false
        in: path
        name: geofenceId
        required: true
        schema:
          type: string
        style: simple
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/patchschema_1'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/patchGeofenceResponseschema'
          description: OK
        '400':
          $ref: '#/components/responses/BadRequestError'
        '404':
          $ref: '#/components/responses/NotFoundError'
        '500':
          $ref: '#/components/responses/InternalServerError'
      security:
      - BearerAuthentication: []
      summary: Patch a geofence
      tags:
      - Device Locator
components:
  schemas:
    getLatestResponseschema:
      description: Get latest positions of customer devices.
      properties:
        page:
          description: The current page number of the positions.
          example: 1
          type: number
        pageAmount:
          description: The total amount of pages needed to show all positions.
          example: 10
          type: number
        coordinates:
          description: Latest positions of each customer device
          items:
            $ref: '#/components/schemas/getLatestResponseschema_coordinates_inner'
          type: array
      required:
      - coordinates
      - page
      - pageAmount
      title: Latest Devices Positions response
      type: object
    getResponseschema_8:
      description: Get positions of a specific device.
      properties:
        page:
          description: The current page number of the positions.
          example: 1
          type: number
        pageAmount:
          description: The total amount of pages needed to show all positions.
          example: 10
          type: number
        coordinates:
          description: Positions of the device
          items:
            $ref: '#/components/schemas/getResponseschema_8_coordinates_inner'
          type: array
      required:
      - coordinates
      - page
      - pageAmount
      title: Device Positions response
      type: object
    getResponseschema_9_items_inner_towerLocation:
      description: Coordinates of the specific celltower
      properties:
        longitude:
          type: number
        latitude:
          type: number
      type: object
    badRequestResponse:
      description: An API error response in case of an HTTP Bad Request.
      properties:
        statusCode:
          description: HTTP Response Code
          example: 400
          type: integer
        statusText:
          description: HTTP Status Text
          enum:
          - Bad Request
          type: string
        errors:
          description: Detailed error information.
          items:
            type: object
          type: array
      title: Bad Request
      type: object
    Name:
      description: The name of the geofence
      maxLength: 50
      type: string
    patchschema_1:
      additionalProperties: false
      description: Request to update a geofence.
      properties:
        name:
          $ref: '#/components/schemas/Name'
        eventTypes:
          $ref: '#/components/schemas/EventTypes'
        eventSources:
          $ref: '#/components/schemas/EventSources'
      title: Patch Geofence Request
      type: object
    getLatestResponseschema_coordinates_inner:
      additionalProperties: false
      properties:
        deviceId:
          description: The unique ID of the device.
          example: <device_id>
          type: string
        coordinate:
          description: Coordinates of the specific position, in the following format [long, lat]
          items:
            type: number
          maxItems: 2
          minItems: 2
          type: array
        sampleTime:
          description: Sample time of the position
          example: '2022-03-07T08:51:29.015Z'
          format: date-time
          type: string
        source:
          description: Source of the Position
          enum:
          - GPS
          - CellTower
          type: string
        metadata:
          description: Metadata of the Position
          type: object
      required:
      - coordinate
      - deviceId
      - sampleTime
      - source
      type: object
    unauthorizedRequestResponse:
      description: An API error response in case of an HTTP Unauthorized Request.
      properties:
        statusCode:
          description: HTTP Response Code
          example: 401
          type: integer
        statusText:
          description: HTTP Status Text
          enum:
          - Unauthorized
          type: string
        errors:
          description: Detailed error information.
          items:
            type: object
          type: array
      title: Unauthorized Request
      type: object
    patchGeofenceResponseschema_oneOf_1:
      additionalProperties: false
      properties:
        id:
          $ref: '#/components/schemas/Id'
        name:
          $ref: '#/components/schemas/Name'
        eventTypes:
          $ref: '#/components/schemas/EventTypes'
        eventSources:
          $ref: '#/components/schemas/EventSources'
        type:
          description: The type of geofence
          type: string
        radius:
          $ref: '#/components/schemas/Radius'
        center:
          $ref: '#/components/schemas/Center'
        deviceId:
          $ref: '#/components/schemas/DeviceId'
        created:
          $ref: '#/components/schemas/Created'
        updated:
          $ref: '#/components/schemas/Updated'
      required:
      - center
      - created
      - deviceId
      - eventSources
      - eventTypes
      - id
      - name
      - radius
      - updated
      type: object
    CreatePolygonGeofence:
      additionalProperties: false
      properties:
        name:
          $ref: '#/components/schemas/Name'
        eventTypes:
          $ref: '#/components/schemas/EventTypes'
        eventSources:
          $ref: '#/components/schemas/EventSources'
        deviceId:
          $ref: '#/components/schemas/DeviceId'
        type:
          description: The type of geofence
          type: string
        coordinates:
          $ref: '#/components/schemas/Coordinates'
      required:
      - coordinates
      - name
      - type
      type: object
    DeviceId:
      description: The device for which this Geofence is bound to
    CreateCircleGeofence:
      additionalProperties: false
      properties:
        name:
          $ref: '#/components/schemas/Name'
        eventTypes:
          $ref: '#/components/schemas/EventTypes'
        eventSources:
          $ref: '#/components/schemas/EventSources'
        deviceId:
          $ref: '#/components/schemas/DeviceId'
        type:
          description: The type of geofence
          type: string
        radius:
          $ref: '#/components/schemas/Radius'
        center:
          $ref: '#/components/schemas/Center'
      required:
      - name
      - radius
      - type
      type: object
    Type:
      description: The type of Geofence
      enum:
      - polygon
      - circle
      type: string
    patchGeofenceResponseschema_oneOf:
      additionalProperties: false
      properties:
        id:
          $ref: '#/components/schemas/Id'
        name:
          $ref: '#/components/schemas/Name'
        eventTypes:
          $ref: '#/components/schemas/EventTypes'
        eventSources:
          $ref: '#/components/schemas/EventSources'
        type:
          description: The type of geofence
          type: string
        coordinates:
          $ref: '#/components/schemas/Coordinates'
        deviceId:
          $ref: '#/components/schemas/DeviceId'
        created:
          $ref: '#/components/schemas/Created'
        updated:
          $ref: '#/components/schemas/Updated'
      required:
      - coordinates
      - created
      - deviceId
      - eventSources
      - eventTypes
      - id
      - name
      - updated
      type: object
    Created:
      description: When the Geofence was created
      format: date-time
      type: string
    getResponseschema_9:
      description: Get Cell location resolutions for one device (maximum of last 7 days).
      properties:
        items:
          description: Location resolutions of the device
          items:
            $ref: '#/components/schemas/getResponseschema_9_items_inner'
          type: array
      required:
      - items
      title: Device Celltower Location Resolutions response
      type: object
    Id:
      description: Identifier of the geofence
      type: string
    PolygonGeofenceData:
      additionalProperties: false
      properties:
        id:
          $ref: '#/components/schemas/Id'
        name:
          $ref: '#/components/schemas/Name'
        created:
          $ref: '#/components/schemas/Created'
        updated:
          $ref: '#/components/schemas/Updated'
        deviceId:
          $ref: '#/components/schemas/DeviceId'
        eventTypes:
          $ref: '#/components/schemas/EventTypes'
        eventSources:
          $ref: '#/components/schemas/EventSources'
        type:
          description: The type of geofence
          type: string
        coordinates:
          $ref: '#/components/schemas/Coordinates'
      required:
      - coordinates
      - created
      - deviceId
      - eventSources
      - eventTypes
      - id
      - name
      - type
      - updated
      type: object
    postGeofenceResponseschema_oneOf_1:
      additionalProperties: false
      properties:
        id:
          $ref: '#/components/schemas/Id'
        name:
          $ref: '#/components/schemas/Name'
        eventTypes:
          $ref: '#/components/schemas/EventTypes'
        eventSources:
          $ref: '#/components/schemas/EventSources'
        type:
          description: The type of geofence
          type: string
        radius:
          $ref: '#/components/schemas/Radius'
        center:
          $ref: '#/components/schemas/Center'
        deviceId:
          $ref: '#/components/schemas/DeviceId'
      required:
      - center
      - deviceId
      - eventSources
      - eventTypes
      - id
      - name
      - radius
      - type
      type: object
    getGeofenceResponseschema:
      description: Response to get geofence request.
      oneOf:
      - $ref: '#/components/schemas/PolygonGeofenceData'
      - $ref: '#/components/schemas/CircleGeofenceData'
      title: Get Geofence Response
    CircleGeofenceData:
      additionalProperties: false
      properties:
        id:
          $ref: '#/components/schemas/Id'
        name:
          $ref: '#/components/schemas/Name'
        created:
          $ref: '#/components/schemas/Created'
        updated:
          $ref: '#/components/schemas/Updated'
        deviceId:
          $ref: '#/components/schemas/DeviceId'
        eventTypes:
          $ref: '#/components/schemas/EventTypes'
        eventSources:
          $ref: '#/components/schemas/EventSources'
        type:
          description: The type of geofence
          type: string
        radius:
          $ref: '#/components/schemas/Radius'
        center:
          $ref: '#/components/schemas/Center'
      required:
      - center
      - created
      - deviceId
      - eventSources
      - eventTypes
      - id
      - name
      - radius
      - type
      - updated
      type: object
    getAllGeofenceResponseschema:
      description: Response to get all geofences request.
      properties:
        items:
          description: List of geofences
          items:
            $ref: '#/components/schemas/GenericGeofenceData'
          type: array
        page:
          description: Current page number
          minimum: 1
          type: number
        pageAmount:
          description: Total number of pages
          minimum: 1
          type: number
      required:
      - items
      - page
      - pageAmount
      title: Get All Geofences Response
      type: object
    EventSources:
      description: The sources of coordinates to evaluate towards geofence. Defaults to [GPS, CellTower]
      items:
        enum:
        - CellTower
        - GPS
        type: string
      maxItems: 2
      minItems: 1
      type: array
      uniqueItems: true
    EventTypes:
      description: The event types to register to. Defaults to [ENTER, EXIT]
      items:
        enum:
        - ENTER
        - EXIT
        type: string
      maxItems: 2
      minItems: 1
      type: array
      uniqueItems: true
    patchGeofenceResponseschema:
      description: Patch request geofence response.
      oneOf:
      - $ref: '#/components/schemas/patchGeofenceResponseschema_oneOf'
      - $ref: '#/components/schemas/patchGeofenceResponseschema_oneOf_1'
      title: Patch Geofence Response
    Center:
      description: The coordinates of the center of the geofence (long, lat)
      items:
        type: number
      maxItems: 2
      minItems: 2
      type: array
    notFoundResponse:
      description: An API error response when a resource is Not Found.
      properties:
        statusCode:
          description: HTTP Response Code
          example: 404
          type: integer
        statusText:
          description: HTTP Status Text
          enum:
          - Not Found
          type: string
        errors:
          description: Detailed error information
          items:
            type: object
          type: array
      title: Not Found
      type: object
    postschema_5:
      description: Request to create a geofence.
      oneOf:
      - $ref: '#/components/schemas/CreatePolygonGeofence'
      - $ref: '#/components/schemas/CreateCircleGeofence'
      title: Post Geofence Request
      type: object
    postGeofenceResponseschema_oneOf:
      additionalProperties: false
      properties:
        id:
          $ref: '#/components/schemas/Id'
        name:
          $ref: '#/components/schemas/Name'
        eventTypes:
          $ref: '#/components/schemas/EventTypes'
        eventSources:
          $ref: '#/components/schemas/EventSources'
        type:
          description: The type of geofence
          type: string
        coordinates:
          $ref: '#/components/schemas/Coordinates'
        deviceId:
          $ref: '#/components/schemas/DeviceId'
      required:
      - coordinates
      - deviceId
      - eventSources
      - eventTypes
      - id
      - name
      - type
      type: object
    forbiddenResponse:
      description: An API error response in case of an HTTP Forbidden Request.
      properties:
        statusCode:
          description: HTTP Response Code
          example: 403
          type: integer
        statusText:
          description: HTTP Status Text
          enum:
          - Forbidden
          type: string
        errors:
          description: Detailed error information.
          items:
            type: object
          type: array
      title: Forbidden Request
      type: object
    postGeofenceResponseschema:
      description: Response to post geofence request.
      oneOf:
      - $ref: '#/components/schemas/postGeofenceResponseschema_oneOf'
      - $ref: '#/components/schemas/postGeofenceResponseschema_oneOf_1'
      title: Post Geofence Response
    GenericGeofenceData:
      properties:
        id:
          $ref: '#/components/schemas/Id'
        name:
          $ref: '#/components/schemas/Name'
        created:
          $ref: '#/components/schemas/Created'
        updated:
          $ref: '#/components/schemas/Updated'
        deviceId:
          $ref: '#/components/schemas/DeviceId'
        type:
          $ref: '#/components/schemas/Type'
      required:
      - created
      - deviceId
      - id
      - name
      - type
      - updated
      type: object
    getResponseschema_9_items_inner_towerMetadata:
      description: Identifier attributes of the tower
      properties:
        MCC:
          type: string
        MNC:
          type: string
        LAC:
          type: string
        CellID:
          type: string
      type: object
    getResponseschema_8_coordinates_inner:
      additionalProperties: false
      properties:
        coordinate:
          description: Coordinates of the specific position, in the following format [long, lat]
          items:
            type: number
          maxItems: 2
          minItems: 2
          type: array
        sampleTime:
          description: Sample time of the position
          format: date-time
          type: string
        source:
          description: Source of the Position
          enum:
          - GPS
          - CellTower
          type: string
        metadata:
          description: Metadata of the Position
          type: object
      required:
      - coordinate
      - sampleTime
      - source
      type: object
    Updated:
      description: When the Geofence was last updated
      format: date-time
      type: string
    Coordinates:
      description: The polygon geofence coordinates
      items:
        items:
          description: Coordinates (long, lat)
          items:
            type: number
          maxItems: 2
          minItems: 2
          type: array
        minItems: 4
        type: array
      minItems: 1
      type: array
    serverErrorResponse:
      description: An API error response in case of a Server Side Error.
      properties:
        statusText:
          description: HTTP Status Text
          enum:
          - Unknown Error
          - Server Error
          type: string
        errors:
          description: List of errors encountered while calling the API.
          items:
            type: object
          type: array
      title: Server Error
      type: object
    Radius:
      description: Circle geofence radius in meters
      maximum: 30000
 

# --- truncated at 32 KB (34 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/1nce/refs/heads/main/openapi/1nce-device-locator-api-openapi.yml