> ## Documentation Index
> Fetch the complete documentation index at: https://altostrat.io/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Update ARP Entry

> Updates metadata for a specific ARP entry, such as assigning it to a group or setting a custom alias.



## OpenAPI

````yaml /api/en/monitoring-metrics.yaml put /metrics/arps/{siteId}/{arpEntryId}
openapi: 3.0.3
info:
  title: Altostrat Monitoring & Metrics API
  version: 1.0.0
  description: >-
    Retrieve portal-facing metrics through the public `/metrics` gateway path,
    including dashboards, WAN tunnels, interfaces, ARP entries, syslogs, BGP,
    and DNS reports.
servers:
  - url: https://v1.api.altostrat.io
security:
  - bearerAuth: []
tags:
  - name: Dashboard
    description: High-level, aggregated metrics for network performance and data usage.
  - name: WAN Tunnels & Performance
    description: >-
      Endpoints for managing and retrieving performance data from SD-WAN
      tunnels.
  - name: Site Interfaces & Metrics
    description: >-
      Endpoints for listing network interfaces at a site and fetching their
      traffic metrics.
  - name: Device Health & Status
    description: Endpoints for monitoring the health and status of network devices.
  - name: ARP Inventory
    description: >-
      Endpoints for querying and managing the Address Resolution Protocol (ARP)
      table to discover devices on the network.
  - name: Network Logs
    description: Access to system, DNS, and BGP logs for diagnostics and security analysis.
  - name: Grafana Dashboards
    description: List Grafana dashboards, query dashboard panels, and export panel data.
  - name: Prometheus Querying
    description: >-
      Discover available metrics and labels, then execute Prometheus queries
      scoped to your workspace.
paths:
  /metrics/arps/{siteId}/{arpEntryId}:
    put:
      tags:
        - ARP Inventory
      summary: Update ARP Entry
      description: >-
        Updates metadata for a specific ARP entry, such as assigning it to a
        group or setting a custom alias.
      parameters:
        - $ref: '#/components/parameters/SiteId'
        - name: arpEntryId
          in: path
          required: true
          description: >-
            The unique identifier for the ARP entry (a SHA1 hash of site ID and
            MAC address).
          schema:
            type: string
            example: 0c8526584284b025f3c328904724cf48a1a3848b
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                group:
                  type: string
                  description: The UUID of an existing ARP group to assign this entry to.
                  format: uuid
                  nullable: true
                alias:
                  type: string
                  description: A custom, human-readable name for the device.
                  example: Living Room TV
                  nullable: true
      responses:
        '200':
          description: The updated ARP entry object.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ArpEntry'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '410':
          description: >-
            Gone - The specified site or ARP entry ID is incorrect or no longer
            exists.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          $ref: '#/components/responses/ServerError'
components:
  parameters:
    SiteId:
      name: siteId
      in: path
      required: true
      description: The unique identifier for the site.
      schema:
        type: string
        format: uuid
        example: d8f8f8f8-f8f8-f8f8-f8f8-f8f8f8f8f8f8
  schemas:
    ArpEntry:
      type: object
      properties:
        id:
          type: string
          description: >-
            The unique identifier for the ARP entry (a SHA1 hash of site ID and
            MAC address).
          example: 0c8526584284b025f3c328904724cf48a1a3848b
        mac:
          type: string
          description: The MAC address of the device.
          example: 00:1A:2B:3C:4D:5E
        ip_address:
          type: string
          format: ipv4
          description: The IP address of the device.
          example: 192.168.88.254
        interface:
          type: string
          description: The network interface on which the device was seen.
          example: bridge
        last_seen:
          type: string
          description: Human-readable string indicating when the device was last seen.
          example: 5 minutes ago
        group:
          type: string
          description: The ARP group this device belongs to, if any.
          nullable: true
        hostname:
          type: string
          description: The device's hostname, if discovered.
          example: my-laptop.local
        manufacturer:
          type: string
          description: The manufacturer of the device, derived from the MAC address.
          example: Apple, Inc.
        site_id:
          type: string
          format: uuid
          description: The site where this device was discovered.
          example: d8f8f8f8-f8f8-f8f8-f8f8-f8f8f8f8f8f8
        range:
          type: string
          description: The IP subnet range the device belongs to.
          example: 192.168.88.0/24
          nullable: true
        alias:
          type: string
          description: A user-defined alias for the device.
          example: Main Server
          nullable: true
        serial:
          type: string
          description: The serial number of the device, if discovered via SNMP.
          nullable: true
    ErrorResponse:
      type: object
      properties:
        type:
          type: string
          description: A broad category for the error (e.g., 'invalid_request_error').
          example: invalid_request_error
        code:
          type: string
          description: A short, unique string identifying the specific error.
          example: parameter_invalid
        message:
          type: string
          description: A human-readable description of what went wrong.
          example: The provided 'siteId' is not a valid UUID.
        doc_url:
          type: string
          description: >-
            A direct link to the documentation page for this specific error
            code.
          example: https://docs.altostrat.io/errors/parameter_invalid
  responses:
    BadRequest:
      description: Bad Request - The request was malformed or invalid.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    Unauthorized:
      description: Unauthorized - The request lacks valid authentication credentials.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    ServerError:
      description: Internal Server Error - An unexpected error occurred on the server.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````