---
title: "Creates or updates the pending operational dataset"
method: PUT
path: "/node/dataset/pending"
tags: ["node"]
---

# Creates or updates the pending operational dataset

`PUT /node/dataset/pending`

Creates or updates the the pending operational dataset on the current node. Delay needs to be set to let
the pending dataset apply as active dataset in the near future.

## Request body

- PendingDataset
  - `ActiveDataset` union
    - ActiveDataset
      - `ActiveTimestamp` Timestamp
        - `Seconds` integer — Timestamp seconds
        - `Ticks` integer — Timestamp ticks
        - `Authoritative` boolean
      - `NetworkKey` string — Network key, 16 bytes long, formatted as a hexadecimal string
      - `NetworkName` string — Network name, 16 bytes long
      - `ExtPanId` string — Extended PAN ID, 8 bytes long, formatted as a hexadecimal string
      - `MeshLocalPrefix` string — Mesh local IPv6 prefix
      - `PanId` integer — IEEE 802.15.4 PAN ID of the Thread network
      - `Channel` integer — IEEE 802.15.4 channel of the Thread network
      - `PSKc` string — The pre-shared commissioner key
      - `SecurityPolicy` SecurityPolicy
        - `RotationTime` integer — Thread key rotation time in hours
        - `ObtainNetworkKey` boolean — Obtaining the Network Key for out-of-band commissioning is enabled
        - `NativeCommissioning` boolean — Native Commissioning using PSKc is allowed
        - `Routers` boolean — Thread 1.0/1.1.x Routers are enabled
        - `ExternalCommissioning` boolean — External Commissioner authentication is allowed
        - `CommercialCommissioning` boolean — Commercial Commissioning is enabled
        - `AutonomousEnrollment` boolean — Autonomous Enrollment is enabled
        - `NetworkKeyProvisioning` boolean — Network Key Provisioning is enabled
        - `TobleLink` boolean — ToBLE link is enabled
        - `NonCcmRouters` boolean — Non-CCM Routers enabled
      - `ChannelMask` integer — Channel mask
    - string — Operational dataset as hex-encoded TLVs.
  - `PendingTimestamp` Timestamp
    - `Seconds` integer — Timestamp seconds
    - `Ticks` integer — Timestamp ticks
    - `Authoritative` boolean
  - `Delay` integer — Delay timer in milliseconds

## Response `200`

Successfully updated the pending operational dataset.

## Other responses

- `201` — Successfully created the pending operational dataset.
- `400` — Invalid request body.

---

[API](https://skmtc.dev/espressif/apis/swagger-esp-thread-border-router-rest-api.md) · [All operations](https://skmtc.dev/espressif/apis/swagger-esp-thread-border-router-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/espressif/swagger-esp-thread-border-router-rest-api/revisions/8e96e3b3f8d3/schema)
