Amazon Developer

as

Settings
Sign out
Notifications
Alexa
Amazon Appstore
Ring
AWS
Documentation
Support
Contact Us
My Cases
Get Started
Design and Develop
Publish
Reference
Support
Skip to main content
The ProductNameFormat API provides methods to format a string with product name substitution. An argument pattern $(pn) is used as the placeholder for the product name in a format string resource. Multiple product name types are available to use with format methods. Below is an example of Amazon Echo Show 5 product names in different types, A Default type is also available and maps to Medium type.

Example

Constructors

new ProductNameFormat()

new ProductNameFormat(): ProductNameFormat

Returns

ProductNameFormat

Methods

format()

static format(pattern, productNameType, args?): null | string Formats the specified pattern with product name substitution for the default locale. Optionally, the pattern may also be a MessageFormatClassic pattern with named arguments. The pattern is expected to contain one or more ”$(pn)” substrings as placeholders for the product name. In addition, this method supports “pngender” for product name gender message selection. To use it, just specify “pngender” in place of the IMessageFormatClassic select-format argument, and write select-format clauses based on the possible genders of other, feminine, masculine, neuter, female, male. For example,

Parameters

pattern
string The pattern to format.
productNameType
ProductNameType = ProductNameType.DEFAULT Type of product name to use.
args?
Map<string, string | number | Date> Optional map of argument names to their values.

Returns

null | string Formatted message with the specified product name replaced in place of ”$(pn)” on success, null on failure.

Example

If the current product gender is feminine and the product name is “Echo Show”, this method will return “Echo Show displays a notification on her screen.”
[!IMPORTANT] Do not use the name “pngender” as a named argument, as it is a reserved key by ProductNameFormat. If a “pngender” named argument is passed in the argument map, this method will fail.

formatPositional()

static formatPositional(pattern, productNameType, …args): null | string Formats the specified pattern with product name substitution for the default locale. Optionally, the pattern may also be a MessageFormatClassic pattern with numbered arguments. The pattern is expected to contain one or more ”$(pn)” substrings as placeholders for the product name. See format() method regarding support for “pngender” product name gender message selection.

Parameters

pattern
string The pattern to format.
productNameType
ProductNameType = ProductNameType.DEFAULT Type of product name to use.
args
…(string | number | Date)[] Optional array of argument values

Returns

null | string Formatted message with the specified product name replaced in place of ”$(pn)” on success, null on failure.

getMajorVersion()

static getMajorVersion(): number Gets the major version number.

Returns

number Major version number.

getMinorVersion()

static getMinorVersion(): number Gets the minor version number.

Returns

number Minor version number.

getPatchVersion()

static getPatchVersion(): number Gets the patch version number.

Returns

number Patch version number.
Last modified on September 29, 2025