# Interface PopupInfoJson

Defines the look and feel of pop-up windows when users click or query a feature.

See https://developers.arcgis.com/web-map-specification/objects/popupInfo/ and https://developers.arcgis.com/web-scene-specification/objects/popupInfo/.

interface PopupInfoJson {
description?: string;
expressionInfos?: PopupExpressionInfoJson[];
fieldInfos?: FieldInfoJson[];
mediaInfos?: MediaInfoJson[];
popupElements?: PopupElementJson[];
relatedRecordsInfo?: RelatedRecordsInfoJson;
showAttachments?: boolean;
title?: string;
}

#####
Index

### Properties

description?
expressionInfos?
fieldInfos?
mediaInfos?
popupElements?
relatedRecordsInfo?
showAttachments?
title?

##
Properties

### `Optional` description

description?: string

A string that appears in the body of the pop-up window as a description. This can contain a field name enclosed in `{}`, such as `{DETAILS}`.

### `Optional` expressionInfos

expressionInfos?: PopupExpressionInfoJson[]

List of Arcade expressions added to the pop-up.

### `Optional` fieldInfos

fieldInfos?: FieldInfoJson[]

An array of FieldInfoJson objects defining how each field in the dataset participates (or does not participate) in the pop-up window. The order of the array is the order that fields are shown in the pop-up window.

### `Optional` mediaInfos

mediaInfos?: MediaInfoJson[]

Array of various mediaInfo to display. Can be of type image, piechart, barchart, columnchart, or linechart. The order given is the order in which is displays.

### `Optional` popupElements

popupElements?: PopupElementJson[]

An array of popupElement objects that represent an ordered list of popup elements.

### `Optional` relatedRecordsInfo

relatedRecordsInfo?: RelatedRecordsInfoJson

Indicates whether to enable related records if they exist on a layer.

### `Optional` showAttachments

showAttachments?: boolean

Determines whether attachments will be loaded for feature layers that have attachments.

### `Optional` title

title?: string

Appears at the top of the pop-up window as a title. This can contain a field name enclosed in `{}`, such as `{NAME}`.