---
title: "Update Metric Pipeline Rule"
method: PUT
path: "/metric-pipeline-rule/{id}"
tags: ["Metric Pipeline Rule"]
---

# Update Metric Pipeline Rule

`PUT /metric-pipeline-rule/{id}`

## Request

- Base URL: `https://oneuptime.com/api`
- URL: `https://oneuptime.com/api/metric-pipeline-rule/{id}`
- Auth: API key in header `APIKey`
- TypeScript: <https://skmtc.dev/oneuptime/apis/oneuptime-openapi-specification/docs/metric-pipeline-rule/:id/put.ts> (a function with typed inputs; its response is checked against the schema)

Endpoint to update an existing Metric Pipeline Rule

## Path parameters

- `id` string, uuid, required

## Request body

- object
  - `data` MetricPipelineRuleUpdateSchema, required: Update schema for MetricPipelineRule model. Update
    - `serviceId` string, uuid: Optional service ID scoping this rule. Null means the rule is project-wide. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `name` string: Friendly name for this rule. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `description` string: Description of what this rule does. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `ruleType` 'Filter' | 'Drop' | 'RenameMetric' | 'RenameAttribute' | 'AddAttribute' | 'RemoveAttribute' | 'RedactAttribute' | 'Sample': One of: Filter, Drop, RenameMetric, RenameAttribute, AddAttribute, RemoveAttribute, RedactAttribute, Sample. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `filterCondition` 'All' | 'Any': How to combine filters: 'All' requires every filter to match (AND), 'Any' requires at least one to match (OR). Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `filters` object: List of filters evaluated against each metric data point. An empty list matches every data point. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `renameFromKey` string: For RenameMetric: the existing metric name. For RenameAttribute: the existing attribute key. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `renameToKey` string: For RenameMetric: the new metric name. For RenameAttribute: the new attribute key. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `addAttributeKey` string: For AddAttribute / RemoveAttribute / RedactAttribute: the attribute key to act on. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `addAttributeValue` string: For AddAttribute: the attribute value to set. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `redactReplacement` string: For RedactAttribute: the literal string to replace the value with. Defaults to [REDACTED]. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `samplePercentage` number: For Sample: percentage of matched rows to keep (0-100). 100 keeps all. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `isEnabled` boolean: Whether this rule is active. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `sortOrder` number: Where this rule is evaluated among the project's metric pipeline rules, lowest number first. A new rule is added to the end of the list. Setting a number another one already has puts it in that place, and the ones in the way move one place along to make room. In the dashboard, drag the rows to reorder them. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]

## Response `200`

Updated successfully

- object
  - `data` MetricPipelineRuleReadSchema: Read schema for MetricPipelineRule model. Read
    - `_id` string, uuid: ID of this object. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `createdAt` object: Date and Time when the object was created. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `updatedAt` object: Date and Time when the object was updated. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `deletedAt` object: Date and Time when the object was deleted. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `projectId` string, uuid: ID of the project this metric pipeline rule belongs to. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [No access - you don't have permission for this operation]
    - `serviceId` string, uuid: Optional service ID scoping this rule. Null means the rule is project-wide. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `name` string, required: Friendly name for this rule. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `description` string: Description of what this rule does. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `ruleType` 'Filter' | 'Drop' | 'RenameMetric' | 'RenameAttribute' | 'AddAttribute' | 'RemoveAttribute' | 'RedactAttribute' | 'Sample', required: One of: Filter, Drop, RenameMetric, RenameAttribute, AddAttribute, RemoveAttribute, RedactAttribute, Sample. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `filterCondition` 'All' | 'Any': How to combine filters: 'All' requires every filter to match (AND), 'Any' requires at least one to match (OR). Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `filters` object: List of filters evaluated against each metric data point. An empty list matches every data point. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `renameFromKey` string: For RenameMetric: the existing metric name. For RenameAttribute: the existing attribute key. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `renameToKey` string: For RenameMetric: the new metric name. For RenameAttribute: the new attribute key. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `addAttributeKey` string: For AddAttribute / RemoveAttribute / RedactAttribute: the attribute key to act on. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `addAttributeValue` string: For AddAttribute: the attribute value to set. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `redactReplacement` string: For RedactAttribute: the literal string to replace the value with. Defaults to [REDACTED]. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `samplePercentage` number: For Sample: percentage of matched rows to keep (0-100). 100 keeps all. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `isEnabled` boolean: Whether this rule is active. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `sortOrder` number: Where this rule is evaluated among the project's metric pipeline rules, lowest number first. A new rule is added to the end of the list. Setting a number another one already has puts it in that place, and the ones in the way move one place along to make room. In the dashboard, drag the rows to reorder them. Permissions - Create: [Project Owner, Project Admin, Create Metric Pipeline Rule], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [Project Owner, Project Admin, Edit Metric Pipeline Rule]
    - `createdByUserId` string, uuid: ID of the user who created this rule. Permissions - Create: [No access - you don't have permission for this operation], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [No access - you don't have permission for this operation]
    - `deletedByUserId` string, uuid: ID of the user who deleted this rule. Permissions - Create: [No access - you don't have permission for this operation], Read: [Project Owner, Project Admin, Project Member, Viewer, Telemetry Admin, Telemetry Member, Telemetry Viewer, Read Metric Pipeline Rule], Update: [No access - you don't have permission for this operation]

## Other responses

- `400`: Bad request. This response indicates that the request was malformed or contained invalid data.
- `401`: Unauthorized. This response indicates that the request requires user authentication.
- `402`: Payment Required. This response indicates that the request requires payment or a valid subscription.
- `403`: Forbidden. This response indicates that the server understood the request, but refuses to authorize it.
- `404`: Not found. The record does not exist, belongs to another project, or is one you may not read - the same answer for each.
- `405`: Project not found. This response indicates that the requested project does not exist or is not accessible.
- `408`: Request Timeout. This response indicates that the server timed out waiting for the request.
- `415`: Unable to reach server. This response indicates that the server is currently unreachable or down.
- `422`: Not authorized. This response indicates that the user does not have permission to access the requested resource.
- `500`: Internal Server Error. This response indicates that the server encountered an unexpected condition that prevented it from fulfilling the request.

---

[API](https://skmtc.dev/oneuptime/apis/oneuptime-openapi-specification.md) - [All operations](https://skmtc.dev/oneuptime/apis/oneuptime-openapi-specification/llms.txt) - [OpenAPI document](https://skmtc.dev/oneuptime/apis/oneuptime-openapi-specification/revisions/ba3307d00304?raw)
