Skip to content

Commit ac87980

Browse files
[EPMTIOOPS-20538] Document Feature update and delete endpoints
Documents the new PUT and DELETE endpoints added in test-IO/app#12438.
1 parent db09a31 commit ac87980

1 file changed

Lines changed: 77 additions & 1 deletion

File tree

src/pages/docs/api/features.md

Lines changed: 77 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
title: Features
3-
description: List, create, and copy features
3+
description: List, create, update, delete, and copy features
44
---
55

66
Manage features for your products.
@@ -231,6 +231,82 @@ curl -X POST "https://api.test.io/customer/v2/features" \
231231

232232
{% /code %}
233233

234+
## Update feature
235+
236+
Updates the top-level fields of a feature. All fields are optional — only the fields you provide are updated.
237+
238+
**Endpoint:** `PUT /features/{feature_id}`
239+
240+
**Parameters:**
241+
242+
- `feature_id` (number, required) - ID of the Feature
243+
244+
All attributes must be provided inside the root object `feature`.
245+
246+
**Request Body:**
247+
248+
- `section_ids` (array[number], optional) - Array of section IDs to assign the feature to, replacing its current sections
249+
- `feature` (object, optional) - Feature object
250+
- `title` (string, optional) - Feature title
251+
- `description` (string, optional) - Feature description
252+
- `howtofind` (string, optional) - Instructions on how to find the feature
253+
- `target_idx` (string, optional) - Target index
254+
- `use_markdown` (boolean, optional) - Whether to use markdown formatting
255+
256+
**Query Parameters:**
257+
258+
| Parameter | Type | Required | Description |
259+
| ------------ | ----- | -------- | ------------------------------------------------------------------------------------------------------------------ |
260+
| `includes[]` | array | No | Optional associations to expand. Supported value: `user_stories`. See [List features](#list-features) for details. |
261+
262+
**Example Request:**
263+
264+
{% code language="bash" showLineNumbers=true %}
265+
266+
```bash
267+
curl -X PUT "https://api.test.io/customer/v2/features/15" \
268+
-H "Authorization: Token YOUR_API_TOKEN" \
269+
-H "Content-Type: application/json" \
270+
-d '{
271+
"feature": {
272+
"title": "Account Management (updated)"
273+
}
274+
}'
275+
```
276+
277+
{% /code %}
278+
279+
**Response:** `200 OK`
280+
281+
Returns the updated feature object. See the response shape in [Create feature](#create-feature) above.
282+
283+
## Delete feature
284+
285+
Deletes the specified feature.
286+
287+
**Endpoint:** `DELETE /features/{feature_id}`
288+
289+
**Parameters:**
290+
291+
- `feature_id` (number, required) - ID of the Feature
292+
293+
{% callout type="note" %}
294+
If the feature is already in use by a test cycle, it is not permanently deleted — it is hidden instead so historical test results remain intact. Hidden features no longer appear in [List features](#list-features).
295+
{% /callout %}
296+
297+
**Example Request:**
298+
299+
{% code language="bash" showLineNumbers=true %}
300+
301+
```bash
302+
curl -X DELETE "https://api.test.io/customer/v2/features/15" \
303+
-H "Authorization: Token YOUR_API_TOKEN"
304+
```
305+
306+
{% /code %}
307+
308+
**Response:** `204 No Content`
309+
234310
## Copy features
235311

236312
Copy all features (including their user stories) from one product to another. The features are duplicated into the destination product.

0 commit comments

Comments
 (0)