---
title: "Update a Feature"
method: PATCH
path: "/features/{feature_id}"
tags: ["Feature"]
---

# Update a Feature

`PATCH /features/{feature_id}`

Update an existing feature and its eventSchema associations

## Path parameters

- `feature_id` string, required

## Request body

- UpdateFeatureRequest — Update a Feature properties
  - `name` string — Name of the feature
  - `billableName` string — Billable name of addon. Billable name takes precedence over name to display in invoice.
  - `schemaAssociations` EventSchemasForFeature[] — Association of a feature with event_schemas
    - `schemaName` string, required
    - `attributeName` string, required

## Response `200`

Response for Create and Get Feature requests

- Feature — Represents a Feature
  - `id` string, required
  - `name` string, required
  - `billableName` string
  - `displayName` string, required — Display name of feature. This is an auto-generated field which contains billableName of feature. If billableName is not provided, name will be used as display name.
  - `schemaAssociations` EventSchemasForFeature[], required — Association of a feature with event_schemas
    - `schemaName` string, required
    - `attributeName` string, required
  - `createdAt` string, date-time, required
  - `updatedAt` string, date-time

## Other responses

- `400` — Error response
- `401` — Error response
- `403` — Error response
- `404` — Error response
- `429` — Error response
- `default` — Error response

## Changes

- **2023-11-30** `b3351be4b462` — 1 info
  - added the required property `displayName` to the response with the `200` status
- **2023-11-03** `a6c96c5ec06e` — 1 warning, 4 info
  - the `name` request property's maxLength was set to `255`
  - added the new optional request property `billableName`
  - the request property `name` became optional
  - the request property `schemaAssociations` became optional
  - …1 more
- **2023-09-02** `6b13f6f47735` — 3 breaking, 2 warning
  - the request property `name` became required
  - the request property `schemaAssociations` became required
  - removed the required property `displayName` from the response with the `200` status
  - removed the request property `billableName`
  - …1 more

[Change history](https://skmtc.dev/togaihq/apis/togai-apis/changes/features/:feature_id/patch.md)

---

[API](https://skmtc.dev/togaihq/apis/togai-apis.md) · [All operations](https://skmtc.dev/togaihq/apis/togai-apis/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/togaihq/togai-apis/revisions/442f5d8f4aa0/schema)
