---
schema_version: "1"
id: 55eb446e7017126f4f277ab6272a7497e813647710d4c97fee67b6761fc9d25b
title: Parameter | Tableau Embedding API
collection: tableau
version: next
locale: en-us
portal_url: https://docs.salesforce.com/tableau/next/en-us/api/embedding_api/reference/interfaces/Parameter.md
canonical_url: https://help.tableau.com/v0.0/api/embedding_api/en-us/reference/interfaces/Parameter.html
source_site: help.tableau.com
content_type: documentation
content_hash: 7a81f03fb0fb1e3d07541e60c4e9a90d2d0ef8c8658e0348765790ae5dcef059
description: Documentation for Tableau Embedding API
---
- Parameter

# Interface Parameter

Represents a parameter in Tableau and provides ways to introspect the parameter and change its values.

interface Parameter {  
    [allowableValues](#allowablevalues): [ParameterDomainRestriction](https://help.tableau.com/v0.0/api/embedding_api/en-us/reference/interfaces/ParameterDomainRestriction.html);  
    [currentValue](#currentvalue): [DataValue](https://help.tableau.com/v0.0/api/embedding_api/en-us/reference/interfaces/DataValue.html);  
    [dataType](#datatype): [DataType](https://help.tableau.com/v0.0/api/embedding_api/en-us/reference/enums/DataType.html);  
    [id](#id): string;  
    [name](#name): string;  
    [changeValueAsync](#changevalueasync-1)(  
        newValue: string | number | boolean | Date,  
    ): Promise<[DataValue](https://help.tableau.com/v0.0/api/embedding_api/en-us/reference/interfaces/DataValue.html)\>;  
}

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/ParameterInterfaces.ts:7

##### Index

### Methods

[changeValueAsync](#changevalueasync)

### Properties

[allowableValues](#allowablevalues) [currentValue](#currentvalue) [dataType](#datatype) [id](#id) [name](#name)

## Methods

### changeValueAsync[](#changevalueasync)

- changeValueAsync(newValue: string | number | boolean | Date): Promise<[DataValue](https://help.tableau.com/v0.0/api/embedding_api/en-us/reference/interfaces/DataValue.html)\>[](#changevalueasync-1)
    
    Modifies this parameter and assigns it a new value. The new value must fall within the domain restrictions defined by `allowableValues`. If the domain restriction is `ParameterValueType.Range`, be sure to check the `allowableValues` before assigning a new value. If the new value is out of range, the updated value will be set to either the `minValue` or the `maxValue` of the allowable range. If a step size is also specified and the new value does not fall on the step intervals, the updated value will be set to the closest, lower step, or closest, earlier date. If the domain restriction is type `ParameterValueType.List`, and there are aliases defined for the list, the aliased value should be passed to the method.
    
    #### Parameters
    
    - newValue: string | number | boolean | Date
        
        The new value to assign to this parameter.
        
        Note
        
        For changing `Date` parameters, UTC Date objects are expected.
    
    #### Returns Promise<[DataValue](https://help.tableau.com/v0.0/api/embedding_api/en-us/reference/interfaces/DataValue.html)\>
    
    The updated `DataValue`. The promise is rejected if `newValue` is invalid. However, if the domain restriction is type `AllowableValuesType.Range`, and the `newValue` is out of the range bounds, the parameter gets set to the `minValue` or the `maxValue` of the range (whichever is closer). If the range has a `stepSize` or `dateStepPeriod`, the parameter gets set to the closest, lower step, or the closest, earlier date.
    
    - Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/ParameterInterfaces.ts:45

## Properties

### `Readonly`allowableValues[](#allowablevalues)

allowableValues: [ParameterDomainRestriction](https://help.tableau.com/v0.0/api/embedding_api/en-us/reference/interfaces/ParameterDomainRestriction.html)

#### Returns[](#returns)

The allowable set of values this parameter can take.

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/ParameterInterfaces.ts:23

### `Readonly`currentValue[](#currentvalue)

currentValue: [DataValue](https://help.tableau.com/v0.0/api/embedding_api/en-us/reference/interfaces/DataValue.html)

#### Returns[](#returns-1)

DataValue representing the current value of the parameter.

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/ParameterInterfaces.ts:15

### `Readonly`dataType[](#datatype)

dataType: [DataType](https://help.tableau.com/v0.0/api/embedding_api/en-us/reference/enums/DataType.html)

#### Returns[](#returns-2)

The type of data this parameter holds.

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/ParameterInterfaces.ts:19

### `Readonly`id[](#id)

id: string

#### Returns[](#returns-3)

A unique identifier for this Parameter.

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/ParameterInterfaces.ts:27

### `Readonly`name[](#name)

name: string

#### Returns[](#returns-4)

The display name of this parameter.

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/ParameterInterfaces.ts:11

### Settings

Member Visibility

- Protected
- Inherited
- External

ThemeOSLightDark

### On This Page

Methods

[changeValueAsync](#changevalueasync)

Properties

[allowableValues](#allowablevalues)[currentValue](#currentvalue)[dataType](#datatype)[id](#id)[name](#name)