---
title: "HistoryReplaceValues"
method: POST
path: "/v2/history/values/replace"
tags: ["History"]
---

# HistoryReplaceValues

`POST /v2/history/values/replace`

Replace value change entries in a timeseries of the server historian. See <a href="https://reference.opcfoundation.org/Core/Part11/v104/docs/"> the relevant section of the OPC UA reference specification</a> and <a href="https://reference.opcfoundation.org/Core/Part4/v105/docs/5.10.5"> respective service documentation</a> for more information.

## Request body

- UpdateValuesDetailsModelHistoryUpdateRequestModelRequestEnvelope — Wraps a request and a connection to bind to a body more easily for api that requires a connection endpoint
  - `connection` ConnectionModel, required — Connection model
    - `endpoint` EndpointModel, required — Endpoint model
      - `url` string, required — Endpoint url to use to connect with
      - `alternativeUrls` string[] — Alternative endpoint urls that can be used for accessing and validating the server
      - `securityMode` 'Best' | 'Sign' | 'SignAndEncrypt' | 'None' | 'NotNone' — Specifies the security mode for OPC UA endpoint connections. Determines how messages are protected during transmission between the Publisher and OPC UA servers. Proper security mode selection is crucial for protecting sensitive data and credentials.
      - `securityPolicy` string — Security policy uri to use for communication. default to best.
      - `certificate` string — Endpoint certificate thumbprint
    - `user` CredentialModel — Credential model. For backwards compatibility the actual credentials to pass to the server is set through the value property.
      - `type` 'None' | 'UserName' | 'X509Certificate' | 'JwtToken' — Type of credentials to use for authentication
      - `value` UserIdentityModel — User identity model
        - `user` string — For Azure.IIoT.OpcUa.Publisher.Models.CredentialType.UserName authentication this is the name of the user. For Azure.IIoT.OpcUa.Publisher.Models.CredentialType.X509Certificate authentication this is the subject name of the certificate that has been configured. Either Azure.IIoT.OpcUa.Publisher.Models.UserIdentityModel.User or Azure.IIoT.OpcUa.Publisher.Models.UserIdentityModel.Thumbprint must be used to select the certificate in the user certificate store. Not used for the other authentication types.
        - `password` string — For Azure.IIoT.OpcUa.Publisher.Models.CredentialType.UserName authentication this is the password of the user. For Azure.IIoT.OpcUa.Publisher.Models.CredentialType.X509Certificate authentication this is the passcode to export the configured certificate's private key. Not used for the other authentication types.
        - `thumbprint` string — For Azure.IIoT.OpcUa.Publisher.Models.CredentialType.X509Certificate authentication this is the thumbprint of the configured certificate to use. Either Azure.IIoT.OpcUa.Publisher.Models.UserIdentityModel.User or Azure.IIoT.OpcUa.Publisher.Models.UserIdentityModel.Thumbprint must be used to select the certificate in the user certificate store. Not used for the other authentication types.
    - `diagnostics` DiagnosticsModel — Diagnostics configuration
      - `level` 'None' | 'Status' | 'Information' | 'Debug' | 'Verbose' — Level of diagnostics requested in responses
      - `auditId` string — Client audit log entry. (default: client generated)
      - `timeStamp` string, date-time — Timestamp of request. (default: client generated)
    - `group` string — Connection group allows splitting connections per purpose.
    - `locales` string[] — Optional list of preferred locales in preference order.
    - `options` 'None' | 'UseReverseConnect' | 'NoComplexTypeSystem' | 'NoSubscriptionTransfer' | 'DumpDiagnostics' — Options that can be applied to a connection
  - `request` UpdateValuesDetailsModelHistoryUpdateRequestModel — Request node history update
    - `nodeId` string — Node to update (mandatory without browse path)
    - `browsePath` string[] — An optional path from NodeId instance to the actual node.
    - `details` UpdateValuesDetailsModel, required — Insert, upsert, or update historic values
      - `values` HistoricValueModel[], required — Values to insert
        - `value` object — The value of data value.
        - `dataType` string — Built in data type of the updated values
        - `status` ServiceResultModel — Service result
          - `statusCode` integer — Error code - if null operation succeeded.
          - `errorMessage` string — Error message in case of error or null.
          - `symbolicId` string — Symbolic identifier
          - `locale` string — Locale of the error message
          - `additionalInfo` string — Additional information if available
          - `namespaceUri` string — Namespace uri
          - `inner` ServiceResultModel — recursive
        - `sourceTimestamp` string, date-time — The source timestamp associated with the value.
        - `sourcePicoseconds` integer — Additional resolution for the source timestamp.
        - `serverTimestamp` string, date-time — The server timestamp associated with the value.
        - `serverPicoseconds` integer — Additional resolution for the server timestamp.
        - `dataLocation` 'Raw' | 'Calculated' | 'Interpolated' — Indicate the data location
        - `modificationInfo` ModificationInfoModel — Modification information
          - `modificationTime` string, date-time — Modification time
          - `updateType` 'Insert' | 'Replace' | 'Update' | 'Delete' — History update type
          - `userName` string — User who made the change
        - `additionalData` 'None' | 'Partial' | 'ExtraData' | 'MultipleValues' — Flags that are set by the historian when returning archived values.
    - `header` RequestHeaderModel — Request header model
      - `elevation` CredentialModel — Credential model. For backwards compatibility the actual credentials to pass to the server is set through the value property.
        - `type` 'None' | 'UserName' | 'X509Certificate' | 'JwtToken' — Type of credentials to use for authentication
        - `value` UserIdentityModel — User identity model
          - `user` string — For Azure.IIoT.OpcUa.Publisher.Models.CredentialType.UserName authentication this is the name of the user. For Azure.IIoT.OpcUa.Publisher.Models.CredentialType.X509Certificate authentication this is the subject name of the certificate that has been configured. Either Azure.IIoT.OpcUa.Publisher.Models.UserIdentityModel.User or Azure.IIoT.OpcUa.Publisher.Models.UserIdentityModel.Thumbprint must be used to select the certificate in the user certificate store. Not used for the other authentication types.
          - `password` string — For Azure.IIoT.OpcUa.Publisher.Models.CredentialType.UserName authentication this is the password of the user. For Azure.IIoT.OpcUa.Publisher.Models.CredentialType.X509Certificate authentication this is the passcode to export the configured certificate's private key. Not used for the other authentication types.
          - `thumbprint` string — For Azure.IIoT.OpcUa.Publisher.Models.CredentialType.X509Certificate authentication this is the thumbprint of the configured certificate to use. Either Azure.IIoT.OpcUa.Publisher.Models.UserIdentityModel.User or Azure.IIoT.OpcUa.Publisher.Models.UserIdentityModel.Thumbprint must be used to select the certificate in the user certificate store. Not used for the other authentication types.
      - `locales` string[] — Optional list of preferred locales in preference order to be used during connecting the session. We suggest to use the connection object to set the locales
      - `diagnostics` DiagnosticsModel — Diagnostics configuration
        - `level` 'None' | 'Status' | 'Information' | 'Debug' | 'Verbose' — Level of diagnostics requested in responses
        - `auditId` string — Client audit log entry. (default: client generated)
        - `timeStamp` string, date-time — Timestamp of request. (default: client generated)
      - `namespaceFormat` 'Uri' | 'Index' | 'Expanded' | 'ExpandedWithNamespace0' — Namespace serialization format for node ids and qualified names.
      - `operationTimeout` integer — Operation timeout in ms. This applies to every operation that is invoked, not to the entire transaction and overrides the configured operation timeout.
      - `serviceCallTimeout` integer — Service call timeout in ms. As opposed to the operation timeout this terminates the entire transaction if it takes longer than the timeout to complete. Note that a connect and reconnect during the service call is gated by the connect timeout setting. If a connect timeout is not specified this timeout is used also for connect timeout.
      - `connectTimeout` integer — Connect timeout in ms. As opposed to the service call timeout this terminates the entire transaction if it takes longer than the timeout to connect a session A connect and reconnect during the service call resets the timeout therefore the overall time for the call to complete can be longer than specified.

## Response `200`

The operation was successful or the response payload contains relevant error information.

- HistoryUpdateResponseModel — History update results
  - `results` ServiceResultModel[] — List of results from the update operation
    - `statusCode` integer — Error code - if null operation succeeded.
    - `errorMessage` string — Error message in case of error or null.
    - `symbolicId` string — Symbolic identifier
    - `locale` string — Locale of the error message
    - `additionalInfo` string — Additional information if available
    - `namespaceUri` string — Namespace uri
    - `inner` ServiceResultModel — recursive
  - `errorInfo` ServiceResultModel — Service result
    - `statusCode` integer — Error code - if null operation succeeded.
    - `errorMessage` string — Error message in case of error or null.
    - `symbolicId` string — Symbolic identifier
    - `locale` string — Locale of the error message
    - `additionalInfo` string — Additional information if available
    - `namespaceUri` string — Namespace uri
    - `inner` ServiceResultModel — recursive

## Other responses

- `400` — The passed in information is invalid
- `408` — The operation timed out.
- `500` — An unexpected error occurred

---

[API](https://skmtc.net/azure/apis/opcpublisher.md) · [All operations](https://skmtc.net/azure/apis/opcpublisher/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/azure/opcpublisher/versions/8eac19a554d6/schema)
