---
title: "Replace network map content"
method: PUT
path: "/v1/objects/{object-id}/map"
tags: ["Objects"]
---

# Replace network map content

`PUT /v1/objects/{object-id}/map`

Replace the content of a network map object. The `elements` and `links` arrays, when
present, fully replace the map layout. Only network map content fields are applied —
other object properties are left untouched. Requires modify access and applies only to
objects of class `NetworkMap`.

## Path parameters

- `object-id` integer, required

## Request body

- NetworkMapContent — Content of a network map object - layout settings, link defaults, background, and element/link layout.
  - `mapType` integer — Map type (custom, layer-2 topology, IP topology, etc.).
  - `layout` integer — Automatic layout algorithm.
  - `flags` union — Map behavior/appearance flags. Returned as an object of booleans. On update it may be supplied either as such an object (only the keys present are changed; omitted keys are left unchanged) or, as a shortcut, as an integer bit mask that replaces the whole flag word.
    - object
      - `showStatusIcon` boolean
      - `showStatusFrame` boolean
      - `showStatusBackground` boolean
      - `showEndNodes` boolean
      - `calculateStatus` boolean
      - `filterObjects` boolean
      - `showLinkDirection` boolean
      - `useL1Topology` boolean
      - `centerBackgroundImage` boolean
      - `translucentLabelBackground` boolean
      - `dontUpdateLinkText` boolean
      - `fitBackgroundImage` boolean
      - `fitToScreen` boolean
      - `showAsObjectView` boolean
      - `showTraffic` boolean
      - `showWifiClients` boolean
    - integer — Raw flag bit mask (replaces the whole flag word).
  - `seedObjects` integer[] — Seed object IDs for topology maps.
  - `discoveryRadius` integer — Topology discovery radius (hops from seed).
  - `defaultLinkColor` integer — Default link color.
  - `defaultLinkColorSource` integer — Default link color source.
  - `defaultLinkRouting` integer — Default link routing algorithm.
  - `defaultLinkWidth` integer — Default link width.
  - `defaultLinkStyle` integer — Default link style.
  - `objectDisplayMode` integer — Object element display mode.
  - `backgroundColor` integer — Map background color.
  - `background` string, uuid — Background image UUID (or a special value for map/none). When set, the background geo-positioning fields below apply.
  - `backgroundLatitude` number — Background map center latitude.
  - `backgroundLongitude` number — Background map center longitude.
  - `backgroundZoom` integer — Background map zoom level.
  - `filter` string — NXSL object filter script source.
  - `linkScript` string — NXSL link styling script source.
  - `width` integer — Map canvas width.
  - `height` integer — Map canvas height.
  - `canvasType` integer — Map canvas type.
  - `initialViewMode` integer — Initial view mode when the map is opened.
  - `displayPriority` integer — Display ordering priority.
  - `elements` NetworkMapElement[] — Map elements. On update this fully replaces the element layout.
    - `id` integer — Element ID (unique within the map).
    - `type` integer, required — Element type code (e.g. object, decoration, DCI container, DCI image, text box).
    - `posX` integer — X position.
    - `posY` integer — Y position.
    - `flags` integer — Element flags.
  - `links` NetworkMapLink[] — Map links. On update this fully replaces the link layout.
    - `element1` integer — ID of the first linked element.
    - `element2` integer — ID of the second linked element.
    - `interface1` integer — Object ID of the interface at the first endpoint (0 if none).
    - `interface2` integer — Object ID of the interface at the second endpoint (0 if none).
    - `type` integer — Link type code.
    - `name` string — Link label.
    - `connectorName1` string — Connector label at the first endpoint.
    - `connectorName2` string — Connector label at the second endpoint.
    - `flags` integer — Link flags.
    - `colorSource` integer — Link color source.
    - `color` integer — Fixed link color (used when color source is "custom color").
    - `colorProvider` string — Name of the script providing the link color (used when color source is "script").
    - `config` string — Serialized JSON link configuration (e.g. referenced DCI list).

## Response `200`

Network map content updated; full updated object returned.

- ObjectDetails
  - `alias` string — Object alias
  - `category` integer — Object category ID
  - `chassisPlacementConfig` ChassisPlacement — Placement geometry of an object within a chassis. Returned both in the chassis layout and as the `chassisPlacementConfig` property of a node.
    - `image` string, uuid — GUID of the image representing the component
    - `height` integer — Component height
    - `heightUnits` integer — Units for height (0 = rack units, 1 = millimeters)
    - `width` integer — Component width
    - `widthUnits` integer — Units for width (0 = horizontal pitch, 1 = millimeters)
    - `positionHeight` integer — Vertical position of the top-left corner
    - `positionHeightUnits` integer — Units for vertical position (0 = rack units, 1 = millimeters)
    - `positionWidth` integer — Horizontal position of the top-left corner
    - `positionWidthUnits` integer — Units for horizontal position (0 = horizontal pitch, 1 = millimeters)
    - `orientation` integer — Orientation (1=front, 2=rear)
  - `class` 'AccessPoint' | 'AgentPolicyLogParser' | 'Asset' | 'AssetGroup' | 'AssetRoot' | 'BusinessService' | 'BusinessServiceProto' | 'BusinessServiceRoot' | 'Chassis' | 'Cluster' | 'Condition' | 'Container' | 'Dashboard' | 'DashboardGroup' | 'DashboardRoot' | 'Generic' | 'Interface' | 'MobileDevice' | 'Network' | 'NetworkMap' | 'NetworkMapGroup' | 'NetworkMapRoot' | 'NetworkService' | 'Node' | 'NodeLink' | 'Rack' | 'Report' | 'ReportGroup' | 'ReportRoot' | 'Sensor' | 'ServiceCheck' | 'ServiceRoot' | 'Subnet' | 'Template' | 'TemplateGroup' | 'TemplateRoot' | 'VPNConnector' | 'Zone'
  - `customAttributes` CustomAttribute[] — Custom attributes defined on the object (including those inherited from parent objects).
    - `name` string — Attribute name.
    - `value` string — Attribute value.
    - `flags` object — Attribute flags as named booleans.
      - `inheritable` boolean — Attribute is inherited by child objects.
      - `redefined` boolean — Inherited attribute is redefined on this object.
      - `conflict` boolean — Attribute is inherited from multiple parents with differing values.
    - `sourceObject` integer — ID of the object an inherited attribute originates from; 0 if defined directly on this object.
  - `effectiveRights` EffectiveRights — Access rights the calling user effectively has on the object. Rights assigned directly on the object, including those granted through a group the user belongs to, replace rights inherited from parent objects rather than adding to them - inherited rights apply only when the object has no access control entry matching the user. Same set of rights NXCP clients obtain with CMD_GET_EFFECTIVE_RIGHTS. Every right is always present as separate boolean attribute. Value is specific to the calling user rather than part of the object's stored state, and is ignored if present in a request body.
    - `read` boolean — Read object (see it in object listings and read its basic attributes)
    - `modify` boolean — Modify object configuration
    - `createChildObjects` boolean — Create child objects
    - `delete` boolean — Delete object
    - `viewAlarms` boolean — View alarms associated with the object
    - `accessControl` boolean — Read and modify object's access control list
    - `updateAlarms` boolean — Acknowledge and update alarms associated with the object
    - `sendEvents` boolean — Send events on behalf of the object
    - `control` boolean — Execute control operations on the object - agent commands, wake-on-LAN, object tools, SSH commands, and TCP proxy. Does not cover changing management status, which requires "modify".
    - `terminateAlarms` boolean — Terminate and resolve alarms associated with the object
    - `pushData` boolean — Push data collection values to the object
    - `createHelpdeskTicket` boolean — Create helpdesk tickets from alarms associated with the object
    - `downloadFiles` boolean — Download files from the node
    - `uploadFiles` boolean — Upload files to the node
    - `manageFiles` boolean — Manage files on the node (rename, move, delete)
    - `controlMaintenanceMode` boolean — Enter and leave maintenance mode
    - `readAgentData` boolean — Read data provided by NetXMS agent
    - `readSnmpData` boolean — Read data provided via SNMP
    - `takeScreenshot` boolean — Take screenshot on the node
    - `editMaintenanceJournal` boolean — Create and edit maintenance journal entries
    - `configureAgent` boolean — Change agent configuration on the node
    - `editComments` boolean — Edit object comments
    - `manageResponsibleUsers` boolean — Manage list of users responsible for the object
    - `delegatedRead` boolean — Read the object indirectly when it is reached through a dashboard or network map the user is allowed to read, without holding "read" on the object itself
    - `managePolicies` boolean — Manage agent policies (template objects only)
    - `manageIncidents` boolean — Manage incidents associated with the object
    - `readCredentials` boolean — Read object's credentials (SNMP communities, agent secrets, and similar)
    - `queryWebService` boolean — Query web services defined on the node
    - `uploadDeviceConfig` boolean — Upload configuration to network device
    - `readDeviceConfig` boolean — Read configuration of network device
    - `readDataCollectionConfig` boolean — Read data collection configuration
    - `executeScript` boolean — Execute ad-hoc scripts in the context of the object
  - `guid` string, uuid — Object GUID
  - `id` integer — Object ID
  - `name` string — Object name
  - `responsibleUsers` object[] — Users or groups responsible for the object (the object's own list; entries inherited from parent objects are not included).
    - `userId` integer — User or group ID
    - `tag` string — Responsible user tag
  - `timestamp` string, date-time — Object last change timestamp
  - `status` 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8
  - `pollStates` PollState[] — Per-poll-type state. Present only for pollable objects (e.g. nodes, sensors, interfaces); one entry per poll type the object accepts.
    - `name` string — Poll type name (e.g. "status", "configuration", "instance", "discovery", "topology", "routing-table", "icmp", "autobind", "map-update").
    - `pending` boolean — True if a poll of this type is currently queued or in flight.
    - `lastCompleted` string, date-time, nullable — Timestamp of the most recent successful completion, or null if this poll type has never completed since server start.
    - `timer` object — Poll duration statistics in milliseconds. Omitted when the poll type has never completed (lastCompleted is null).
      - `last` integer — Duration of the most recent completed poll (ms).
      - `average` integer — Rolling average poll duration (ms).
      - `min` integer — Minimum observed poll duration (ms).
      - `max` integer — Maximum observed poll duration (ms).

## Other responses

- `400` — Object is not a network map, or the request body is malformed
- `401` — Unauthorized
- `403` — User does not have modify access to the object
- `404` — Object with given ID does not exist

---

[API](https://skmtc.net/netxms/apis/netxms-api.md) · [All operations](https://skmtc.net/netxms/apis/netxms-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/netxms/netxms-api/revisions/ae3bfc65fa61/schema)
