---
title: "Segments presets"
description: Manage user created segments presets (filters).
---


Manage user created segments presets (filters).

import NpmLogo from '@site/static/img/npm-logo.png';

<div class="row margin-bottom--md">
  <div class="col">
    <a href="https://www.npmjs.com/package/@dynatrace-sdk/segments-presets" target="_blank" rel="noopener noreferrer"> <span class="margin-right--xs">@dynatrace-sdk/segments-presets</span> <img className="no-zoom" width="20px" src={NpmLogo} /> </a>
  </div>
  <div class="col" style={{textAlign: 'right'}}>
    <a href="https://www.npmjs.com/package/@dynatrace-sdk/segments-presets/v/1.2.0" target="_blank" rel="noopener noreferrer">v1.2.0</a>
  </div>
</div>

```bash
npm install @dynatrace-sdk/segments-presets
```


## Functions



### addRecentSegmentsPreset

<div class="padding-bottom--md">
<strong>addRecentSegmentsPreset(segments): Promise&lt;[UserSegmentsPresets](#usersegmentspresets)&gt;</strong>

<div class="padding-left--md">

Adds a new segments preset to the recently used in the current environment scope.



</div>


#### Parameters

| Name | Type | Description |
| --- | --- | --- |
|segments<sup>*required</sup>|Array&lt;[FilterSegment](#filtersegment)&gt;|List of segments to create a new preset. |




#### Returns

| Return type | Description |
|---|---|
|[UserSegmentsPresets](#usersegmentspresets) | User created segments presets in the current environment.|





</div>





### getSegmentVariables

<div class="padding-bottom--md">
<strong>getSegmentVariables(segmentId): Promise&lt;SegmentVariablesResponse&gt;</strong>

<div class="padding-left--md">

Retrieves variables for a segment.



</div>


#### Parameters

| Name | Type |
| --- | --- |
|segmentId<sup>*required</sup>|[string](https://developer.mozilla.org/en-US/docs/Glossary/String)| 




#### Returns

| Return type | Description |
|---|---|
|[SegmentVariablesResponse](#segmentvariablesresponse) | Variables for the given segment, or a fallback when the runtime is unavailable.|





</div>





### getSegmentsPresets

<div class="padding-bottom--md">
<strong>getSegmentsPresets(): Promise&lt;[UserSegmentsPresets](#usersegmentspresets)&gt;</strong>

<div class="padding-left--md">

Retrieves user created segments presets.



</div>



#### Returns

| Return type | Description |
|---|---|
|[UserSegmentsPresets](#usersegmentspresets) | User created segments presets in the current environment.|





</div>





### pinSegmentsPreset

<div class="padding-bottom--md">
<strong>pinSegmentsPreset(segments): Promise&lt;[UserSegmentsPresets](#usersegmentspresets)&gt;</strong>

<div class="padding-left--md">

Pins a new segments preset in the current app scope.



</div>


#### Parameters

| Name | Type | Description |
| --- | --- | --- |
|segments<sup>*required</sup>|Array&lt;[FilterSegment](#filtersegment)&gt;|List of segments to create a new preset. |




#### Returns

| Return type | Description |
|---|---|
|[UserSegmentsPresets](#usersegmentspresets) | User created segments presets in the current environment.|





</div>





### reorderPinnedSegmentsPreset

<div class="padding-bottom--md">
<strong>reorderPinnedSegmentsPreset(id,index): Promise&lt;[UserSegmentsPresets](#usersegmentspresets)&gt;</strong>

<div class="padding-left--md">

Reorder the segments presets in the current app scope.



</div>


#### Parameters

| Name | Type | Description |
| --- | --- | --- |
|id<sup>*required</sup>|[string](https://developer.mozilla.org/en-US/docs/Glossary/String)|ID of the segments preset to reorder. |
|index<sup>*required</sup>|[number](https://developer.mozilla.org/en-US/docs/Glossary/Number)|New index of the segments preset after reordering. |




#### Returns

| Return type | Description |
|---|---|
|[UserSegmentsPresets](#usersegmentspresets) | User created segments presets in the current environment.|





</div>





### unpinSegmentsPreset

<div class="padding-bottom--md">
<strong>unpinSegmentsPreset(id): Promise&lt;[UserSegmentsPresets](#usersegmentspresets)&gt;</strong>

<div class="padding-left--md">

Unpins the segments preset in the current app scope.



</div>


#### Parameters

| Name | Type | Description |
| --- | --- | --- |
|id<sup>*required</sup>|[string](https://developer.mozilla.org/en-US/docs/Glossary/String)|ID of the segments preset to unpin. |




#### Returns

| Return type | Description |
|---|---|
|[UserSegmentsPresets](#usersegmentspresets) | User created segments presets in the current environment.|





</div>



## Types

### FilterSegment
Configuration of a single segment.

The segment is identified by ID. The configuration may include a set of variables.


#### Properties

| Name | Type |
| --- | --- |
|id<sup>*required</sup>|[string](https://developer.mozilla.org/en-US/docs/Glossary/String)| 
|variables|Array&lt;FilterSegmentVariableDefinition&gt;| 


### SegmentsPreset
Preset containing a configuration of one or more segments.

The preset is identified by ID that&apos;s not stable in the long term.
It means, consumers can&apos;t rely on it to identify presets created during previous sessions.


#### Properties

| Name | Type |
| --- | --- |
|id<sup>*required</sup>|[string](https://developer.mozilla.org/en-US/docs/Glossary/String)| 
|segments<sup>*required</sup>|Array&lt;[FilterSegment](#filtersegment)&gt;| 


### UserSegmentsPresets
Collection of user segments presets.

It contains recently used and pinned segments presets.


#### Properties

| Name | Type |
| --- | --- |
|pinnedPresets<sup>*required</sup>|Array&lt;[SegmentsPreset](#segmentspreset)&gt;| 
|recentPresets<sup>*required</sup>|Array&lt;[SegmentsPreset](#segmentspreset)&gt;| 


