Google Wallet API . genericclass

Instance Methods

addmessage(resourceId, body=None, x__xgafv=None)

Adds a message to the generic class referenced by the given class ID.

close()

Close httplib2 connections.

get(resourceId, x__xgafv=None)

Returns the generic class with the given class ID.

insert(body=None, x__xgafv=None)

Inserts a generic class with the given ID and properties.

list(issuerId=None, maxResults=None, token=None, x__xgafv=None)

Returns a list of all generic classes for a given issuer ID.

patch(resourceId, body=None, x__xgafv=None)

Updates the generic class referenced by the given class ID. This method supports patch semantics.

update(resourceId, body=None, x__xgafv=None)

Updates the Generic class referenced by the given class ID.

Method Details

addmessage(resourceId, body=None, x__xgafv=None)
Adds a message to the generic class referenced by the given class ID.

Args:
  resourceId: string, The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'. (required)
  body: object, The request body.
    The object takes the form of:

{ # Resource used when the AddMessage endpoints are called.
  "message": { # A message that will be displayed with a Valuable
    "body": "A String", # The message body.
    "displayInterval": { # The period of time that the message will be displayed to users. You can define both a `startTime` and `endTime` for each message. A message is displayed immediately after a Wallet Object is inserted unless a `startTime` is set. The message will appear in a list of messages indefinitely if `endTime` is not provided.
      "end": { # End time of the interval. Offset is not required. If an offset is provided and `start` time is set, `start` must also include an offset.
        "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
      },
      "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#timeInterval"`.
      "start": { # Start time of the interval. Offset is not required. If an offset is provided and `end` time is set, `end` must also include an offset.
        "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
      },
    },
    "header": "A String", # The message header.
    "id": "A String", # The ID associated with a message. This field is here to enable ease of management of messages. Notice ID values could possibly duplicate across multiple messages in the same class/instance, and care must be taken to select a reasonable ID for each message.
    "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#walletObjectMessage"`.
    "localizedBody": { # Translated strings for the message body.
      "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
        "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
        "value": "A String", # The UTF-8 encoded translated string.
      },
      "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
      "translatedValues": [ # Contains the translations for the string.
        {
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
      ],
    },
    "localizedHeader": { # Translated strings for the message header.
      "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
        "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
        "value": "A String", # The UTF-8 encoded translated string.
      },
      "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
      "translatedValues": [ # Contains the translations for the string.
        {
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
      ],
    },
    "messageType": "A String", # The message type.
  },
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Response to adding a new issuer message to the class. This contains the entire updated GenericClass.
  "resource": { # Generic Class # The updated EventTicketClass resource.
    "appLinkData": { # Optional app or website link that will be displayed as a button on the front of the pass. If AppLinkData is provided for the corresponding object that will be used instead.
      "androidAppLinkInfo": { # Optional information about the partner app link.
        "appLogoImage": { # Wrapping type for Google hosted images. Next ID: 7 # Deprecated. Image isn't supported in the app link module.
          "contentDescription": { # Description of the image used for accessibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
          "sourceUri": { # The URI for the image.
            "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
            "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
              "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
              "translatedValues": [ # Contains the translations for the string.
                {
                  "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                  "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                  "value": "A String", # The UTF-8 encoded translated string.
                },
              ],
            },
            "uri": "A String", # The location of the image. URIs must have a scheme.
          },
        },
        "appTarget": { # Target to follow when opening the app link on clients. It will be used by partners to open their app or webpage.
          "packageName": "A String", # Package name for AppTarget. For example: com.google.android.gm
          "targetUri": { # URI for AppTarget. The description on the URI must be set. Prefer setting package field instead, if this target is defined for your application.
            "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
            "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
            "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
              "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
              "translatedValues": [ # Contains the translations for the string.
                {
                  "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                  "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                  "value": "A String", # The UTF-8 encoded translated string.
                },
              ],
            },
            "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
          },
        },
        "description": { # Deprecated. Description isn't supported in the app link module.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "title": { # Deprecated. Title isn't supported in the app link module.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
      },
      "displayText": { # Optional display text for the app link button. Character limit is 30.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "iosAppLinkInfo": { # Deprecated. Links to open iOS apps are not supported.
        "appLogoImage": { # Wrapping type for Google hosted images. Next ID: 7 # Deprecated. Image isn't supported in the app link module.
          "contentDescription": { # Description of the image used for accessibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
          "sourceUri": { # The URI for the image.
            "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
            "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
              "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
              "translatedValues": [ # Contains the translations for the string.
                {
                  "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                  "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                  "value": "A String", # The UTF-8 encoded translated string.
                },
              ],
            },
            "uri": "A String", # The location of the image. URIs must have a scheme.
          },
        },
        "appTarget": { # Target to follow when opening the app link on clients. It will be used by partners to open their app or webpage.
          "packageName": "A String", # Package name for AppTarget. For example: com.google.android.gm
          "targetUri": { # URI for AppTarget. The description on the URI must be set. Prefer setting package field instead, if this target is defined for your application.
            "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
            "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
            "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
              "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
              "translatedValues": [ # Contains the translations for the string.
                {
                  "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                  "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                  "value": "A String", # The UTF-8 encoded translated string.
                },
              ],
            },
            "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
          },
        },
        "description": { # Deprecated. Description isn't supported in the app link module.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "title": { # Deprecated. Title isn't supported in the app link module.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
      },
      "webAppLinkInfo": { # Optional information about the partner web link.
        "appLogoImage": { # Wrapping type for Google hosted images. Next ID: 7 # Deprecated. Image isn't supported in the app link module.
          "contentDescription": { # Description of the image used for accessibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
          "sourceUri": { # The URI for the image.
            "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
            "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
              "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
              "translatedValues": [ # Contains the translations for the string.
                {
                  "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                  "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                  "value": "A String", # The UTF-8 encoded translated string.
                },
              ],
            },
            "uri": "A String", # The location of the image. URIs must have a scheme.
          },
        },
        "appTarget": { # Target to follow when opening the app link on clients. It will be used by partners to open their app or webpage.
          "packageName": "A String", # Package name for AppTarget. For example: com.google.android.gm
          "targetUri": { # URI for AppTarget. The description on the URI must be set. Prefer setting package field instead, if this target is defined for your application.
            "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
            "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
            "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
              "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
              "translatedValues": [ # Contains the translations for the string.
                {
                  "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                  "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                  "value": "A String", # The UTF-8 encoded translated string.
                },
              ],
            },
            "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
          },
        },
        "description": { # Deprecated. Description isn't supported in the app link module.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "title": { # Deprecated. Title isn't supported in the app link module.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
      },
    },
    "callbackOptions": { # Callback options to be used to call the issuer back for every save/delete of an object for this class by the end-user. All objects of this class are eligible for the callback.
      "updateRequestUrl": "A String", # URL for the merchant endpoint that would be called to request updates. The URL should be hosted on HTTPS and robots.txt should allow the URL path to be accessible by UserAgent:Googlebot. Deprecated.
      "url": "A String", # The HTTPS url configured by the merchant. The URL should be hosted on HTTPS and robots.txt should allow the URL path to be accessible by UserAgent:Googlebot.
    },
    "classTemplateInfo": { # Template information about how the class should be displayed. If unset, Google will fallback to a default set of fields to display.
      "cardBarcodeSectionDetails": { # Specifies extra information to be displayed above and below the barcode.
        "firstBottomDetail": { # Optional information to display below the barcode.
          "fieldSelector": { # Custom field selector to use with field overrides. # A reference to an existing text-based or image field to display.
            "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
              { # Reference definition to use with field overrides.
                "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
              },
            ],
          },
        },
        "firstTopDetail": { # Optional information to display above the barcode. If `secondTopDetail` is defined, this will be displayed to the start side of this detail section.
          "fieldSelector": { # Custom field selector to use with field overrides. # A reference to an existing text-based or image field to display.
            "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
              { # Reference definition to use with field overrides.
                "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
              },
            ],
          },
        },
        "secondTopDetail": { # Optional second piece of information to display above the barcode. If `firstTopDetail` is defined, this will be displayed to the end side of this detail section.
          "fieldSelector": { # Custom field selector to use with field overrides. # A reference to an existing text-based or image field to display.
            "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
              { # Reference definition to use with field overrides.
                "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
              },
            ],
          },
        },
      },
      "cardTemplateOverride": { # Override for the card view.
        "cardRowTemplateInfos": [ # Template information for rows in the card view. At most three rows are allowed to be specified.
          {
            "oneItem": { # Template for a row containing one item. Exactly one of "one_item", "two_items", "three_items" must be set.
              "item": { # The item to be displayed in the row. This item will be automatically centered.
                "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                  "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                    { # Reference definition to use with field overrides.
                      "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                      "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                    },
                  ],
                },
                "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
                "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                  "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                    { # Reference definition to use with field overrides.
                      "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                      "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                    },
                  ],
                },
              },
            },
            "threeItems": { # Template for a row containing three items. Exactly one of "one_item", "two_items", "three_items" must be set.
              "endItem": { # The item to be displayed at the end of the row. This item will be aligned to the right.
                "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                  "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                    { # Reference definition to use with field overrides.
                      "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                      "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                    },
                  ],
                },
                "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
                "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                  "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                    { # Reference definition to use with field overrides.
                      "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                      "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                    },
                  ],
                },
              },
              "middleItem": { # The item to be displayed in the middle of the row. This item will be centered between the start and end items.
                "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                  "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                    { # Reference definition to use with field overrides.
                      "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                      "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                    },
                  ],
                },
                "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
                "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                  "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                    { # Reference definition to use with field overrides.
                      "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                      "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                    },
                  ],
                },
              },
              "startItem": { # The item to be displayed at the start of the row. This item will be aligned to the left.
                "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                  "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                    { # Reference definition to use with field overrides.
                      "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                      "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                    },
                  ],
                },
                "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
                "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                  "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                    { # Reference definition to use with field overrides.
                      "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                      "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                    },
                  ],
                },
              },
            },
            "twoItems": { # Template for a row containing two items. Exactly one of "one_item", "two_items", "three_items" must be set.
              "endItem": { # The item to be displayed at the end of the row. This item will be aligned to the right.
                "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                  "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                    { # Reference definition to use with field overrides.
                      "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                      "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                    },
                  ],
                },
                "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
                "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                  "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                    { # Reference definition to use with field overrides.
                      "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                      "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                    },
                  ],
                },
              },
              "startItem": { # The item to be displayed at the start of the row. This item will be aligned to the left.
                "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                  "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                    { # Reference definition to use with field overrides.
                      "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                      "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                    },
                  ],
                },
                "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
                "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                  "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                    { # Reference definition to use with field overrides.
                      "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                      "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                    },
                  ],
                },
              },
            },
          },
        ],
      },
      "detailsTemplateOverride": { # Override for the details view (beneath the card view).
        "detailsItemInfos": [ # Information for the "nth" item displayed in the details list.
          {
            "item": { # The item to be displayed in the details list.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
          },
        ],
      },
      "listTemplateOverride": { # Override for the passes list view.
        "firstRowOption": { # Specifies from a predefined set of options or from a reference to the field what will be displayed in the first row. To set this override, set the FirstRowOption.fieldOption to the FieldSelector of your choice.
          "fieldOption": { # Custom field selector to use with field overrides. # A reference to the field to be displayed in the first row.
            "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
              { # Reference definition to use with field overrides.
                "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
              },
            ],
          },
          "transitOption": "A String",
        },
        "secondRowOption": { # Custom field selector to use with field overrides. # A reference to the field to be displayed in the second row. This option is only displayed if there are not multiple user objects in a group. If there is a group, the second row will always display a field shared by all objects. To set this override, please set secondRowOption to the FieldSelector of you choice.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
        "thirdRowOption": { # Custom field selector to use with field overrides. # An unused/deprecated field. Setting it will have no effect on what the user sees.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
      },
    },
    "enableSmartTap": True or False, # Available only to Smart Tap enabled partners. Contact support for additional guidance.
    "id": "A String", # Required. The unique identifier for the class. This ID must be unique across all from an issuer. This value needs to follow the format `issuerID.identifier` where `issuerID` is issued by Google and `identifier` is chosen by you. The unique identifier can only include alphanumeric characters, `.`, `_`, or `-`.
    "imageModulesData": [ # Image module data. If `imageModulesData` is also defined on the object, both will be displayed. Only one of the image from class and one from object level will be rendered when both set.
      {
        "id": "A String", # The ID associated with an image module. This field is here to enable ease of management of image modules.
        "mainImage": { # Wrapping type for Google hosted images. Next ID: 7 # A 100% width image.
          "contentDescription": { # Description of the image used for accessibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
          "sourceUri": { # The URI for the image.
            "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
            "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
              "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
              "translatedValues": [ # Contains the translations for the string.
                {
                  "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                  "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                  "value": "A String", # The UTF-8 encoded translated string.
                },
              ],
            },
            "uri": "A String", # The location of the image. URIs must have a scheme.
          },
        },
      },
    ],
    "linksModuleData": { # Links module data. If `linksModuleData` is also defined on the object, both will be displayed. The maximum number of these fields displayed is 10 from class and 10 from object.
      "uris": [ # The list of URIs.
        {
          "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
          "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
          "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
        },
      ],
    },
    "merchantLocations": [ # Merchant locations. There is a maximum of ten on the class. Any additional MerchantLocations added beyond the 10 will be rejected. These locations will trigger a notification when a user enters within a Google-set radius of the point. This field replaces the deprecated LatLongPoints.
      { # Locations of interest for this class or object. Currently, this location is used for geofenced notifications. When a user is within a set radius of this lat/long, and dwells there, Google will trigger a notification. When a user exits this radius, the notification will be hidden.
        "latitude": 3.14, # The latitude specified as any value in the range of -90.0 through +90.0, both inclusive. Values outside these bounds will be rejected.
        "longitude": 3.14, # The longitude specified in the range -180.0 through +180.0, both inclusive. Values outside these bounds will be rejected.
      },
    ],
    "messages": [ # An array of messages displayed in the app. All users of this object will receive its associated messages. The maximum number of these fields is 10.
      { # A message that will be displayed with a Valuable
        "body": "A String", # The message body.
        "displayInterval": { # The period of time that the message will be displayed to users. You can define both a `startTime` and `endTime` for each message. A message is displayed immediately after a Wallet Object is inserted unless a `startTime` is set. The message will appear in a list of messages indefinitely if `endTime` is not provided.
          "end": { # End time of the interval. Offset is not required. If an offset is provided and `start` time is set, `start` must also include an offset.
            "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#timeInterval"`.
          "start": { # Start time of the interval. Offset is not required. If an offset is provided and `end` time is set, `end` must also include an offset.
            "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
          },
        },
        "header": "A String", # The message header.
        "id": "A String", # The ID associated with a message. This field is here to enable ease of management of messages. Notice ID values could possibly duplicate across multiple messages in the same class/instance, and care must be taken to select a reasonable ID for each message.
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#walletObjectMessage"`.
        "localizedBody": { # Translated strings for the message body.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "localizedHeader": { # Translated strings for the message header.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "messageType": "A String", # The message type.
      },
    ],
    "multipleDevicesAndHoldersAllowedStatus": "A String", # Identifies whether multiple users and devices will save the same object referencing this class.
    "redemptionIssuers": [ # Identifies which redemption issuers can redeem the pass over Smart Tap. Redemption issuers are identified by their issuer ID. Redemption issuers must have at least one Smart Tap key configured. The `enableSmartTap` and object level `smartTapRedemptionLevel` fields must also be set up correctly in order for a pass to support Smart Tap.
      "A String",
    ],
    "securityAnimation": { # Optional information about the security animation. If this is set a security animation will be rendered on pass details.
      "animationType": "A String", # Type of animation.
    },
    "textModulesData": [ # Text module data. If `textModulesData` is also defined on the object, both will be displayed. The maximum number of these fields displayed is 10 from class and 10 from object.
      { # Data for Text module. All fields are optional. Header will be displayed if available, different types of bodies will be concatenated if they are defined.
        "body": "A String", # The body of the Text Module, which is defined as an uninterrupted string. Recommended maximum length is 500 characters to ensure full string is displayed on smaller screens.
        "header": "A String", # The header of the Text Module. Recommended maximum length is 35 characters to ensure full string is displayed on smaller screens.
        "id": "A String", # The ID associated with a text module. This field is here to enable ease of management of text modules and referencing them in template overrides. The ID should only include alphanumeric characters, '_', or '-'. It can not include dots, as dots are used to separate fields within FieldReference.fieldPaths in template overrides.
        "localizedBody": { # Translated strings for the body. Recommended maximum length is 500 characters to ensure full string is displayed on smaller screens.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "localizedHeader": { # Translated strings for the header. Recommended maximum length is 35 characters to ensure full string is displayed on smaller screens.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
      },
    ],
    "valueAddedModuleData": [ # Optional value added module data. Maximum of ten on the class. For a pass only ten will be displayed, prioritizing those from the object.
      { # Data for Value Added module. Required fields are header and uri.
        "body": { # Body to be displayed on the module. Character limit is 50 and longer strings will be truncated.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "header": { # Header to be displayed on the module. Character limit is 60 and longer strings will be truncated.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "image": { # Wrapping type for Google hosted images. Next ID: 7 # Image to be displayed on the module. Recommended image ratio is 1:1. Images will be resized to fit this ratio.
          "contentDescription": { # Description of the image used for accessibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
          "sourceUri": { # The URI for the image.
            "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
            "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
              "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
              "translatedValues": [ # Contains the translations for the string.
                {
                  "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                  "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                  "value": "A String", # The UTF-8 encoded translated string.
                },
              ],
            },
            "uri": "A String", # The location of the image. URIs must have a scheme.
          },
        },
        "sortIndex": 42, # The index for sorting the modules. Modules with a lower sort index are shown before modules with a higher sort index. If unspecified, the sort index is assumed to be INT_MAX. For two modules with the same index, the sorting behavior is undefined.
        "uri": "A String", # URI that the module leads to on click. This can be a web link or a deep link as mentioned in https://developer.android.com/training/app-links/deep-linking.
        "viewConstraints": { # Constraints that all must be met for the module to be shown. # Constraints that all must be met for the module to be shown.
          "displayInterval": { # The period of time that the module will be displayed to users. Can define both a `startTime` and `endTime`. The module is displayed immediately after insertion unless a `startTime` is set. The module is displayed indefinitely if `endTime` is not set.
            "end": { # End time of the interval. Offset is not required. If an offset is provided and `start` time is set, `start` must also include an offset.
              "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#timeInterval"`.
            "start": { # Start time of the interval. Offset is not required. If an offset is provided and `end` time is set, `end` must also include an offset.
              "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
            },
          },
        },
      },
    ],
    "viewUnlockRequirement": "A String", # View Unlock Requirement options for the generic pass.
  },
}
close()
Close httplib2 connections.
get(resourceId, x__xgafv=None)
Returns the generic class with the given class ID.

Args:
  resourceId: string, The unique identifier for a class. This ID must be unique across all classes from an issuer. This value needs to follow the format `issuerID.identifier` where `issuerID` is issued by Google and `identifier` is chosen by you. The unique identifier can only include alphanumeric characters, `.`, `_`, or `-`. (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Generic Class
  "appLinkData": { # Optional app or website link that will be displayed as a button on the front of the pass. If AppLinkData is provided for the corresponding object that will be used instead.
    "androidAppLinkInfo": { # Optional information about the partner app link.
      "appLogoImage": { # Wrapping type for Google hosted images. Next ID: 7 # Deprecated. Image isn't supported in the app link module.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
      "appTarget": { # Target to follow when opening the app link on clients. It will be used by partners to open their app or webpage.
        "packageName": "A String", # Package name for AppTarget. For example: com.google.android.gm
        "targetUri": { # URI for AppTarget. The description on the URI must be set. Prefer setting package field instead, if this target is defined for your application.
          "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
          "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
          "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
        },
      },
      "description": { # Deprecated. Description isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "title": { # Deprecated. Title isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
    },
    "displayText": { # Optional display text for the app link button. Character limit is 30.
      "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
        "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
        "value": "A String", # The UTF-8 encoded translated string.
      },
      "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
      "translatedValues": [ # Contains the translations for the string.
        {
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
      ],
    },
    "iosAppLinkInfo": { # Deprecated. Links to open iOS apps are not supported.
      "appLogoImage": { # Wrapping type for Google hosted images. Next ID: 7 # Deprecated. Image isn't supported in the app link module.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
      "appTarget": { # Target to follow when opening the app link on clients. It will be used by partners to open their app or webpage.
        "packageName": "A String", # Package name for AppTarget. For example: com.google.android.gm
        "targetUri": { # URI for AppTarget. The description on the URI must be set. Prefer setting package field instead, if this target is defined for your application.
          "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
          "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
          "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
        },
      },
      "description": { # Deprecated. Description isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "title": { # Deprecated. Title isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
    },
    "webAppLinkInfo": { # Optional information about the partner web link.
      "appLogoImage": { # Wrapping type for Google hosted images. Next ID: 7 # Deprecated. Image isn't supported in the app link module.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
      "appTarget": { # Target to follow when opening the app link on clients. It will be used by partners to open their app or webpage.
        "packageName": "A String", # Package name for AppTarget. For example: com.google.android.gm
        "targetUri": { # URI for AppTarget. The description on the URI must be set. Prefer setting package field instead, if this target is defined for your application.
          "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
          "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
          "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
        },
      },
      "description": { # Deprecated. Description isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "title": { # Deprecated. Title isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
    },
  },
  "callbackOptions": { # Callback options to be used to call the issuer back for every save/delete of an object for this class by the end-user. All objects of this class are eligible for the callback.
    "updateRequestUrl": "A String", # URL for the merchant endpoint that would be called to request updates. The URL should be hosted on HTTPS and robots.txt should allow the URL path to be accessible by UserAgent:Googlebot. Deprecated.
    "url": "A String", # The HTTPS url configured by the merchant. The URL should be hosted on HTTPS and robots.txt should allow the URL path to be accessible by UserAgent:Googlebot.
  },
  "classTemplateInfo": { # Template information about how the class should be displayed. If unset, Google will fallback to a default set of fields to display.
    "cardBarcodeSectionDetails": { # Specifies extra information to be displayed above and below the barcode.
      "firstBottomDetail": { # Optional information to display below the barcode.
        "fieldSelector": { # Custom field selector to use with field overrides. # A reference to an existing text-based or image field to display.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
      },
      "firstTopDetail": { # Optional information to display above the barcode. If `secondTopDetail` is defined, this will be displayed to the start side of this detail section.
        "fieldSelector": { # Custom field selector to use with field overrides. # A reference to an existing text-based or image field to display.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
      },
      "secondTopDetail": { # Optional second piece of information to display above the barcode. If `firstTopDetail` is defined, this will be displayed to the end side of this detail section.
        "fieldSelector": { # Custom field selector to use with field overrides. # A reference to an existing text-based or image field to display.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
      },
    },
    "cardTemplateOverride": { # Override for the card view.
      "cardRowTemplateInfos": [ # Template information for rows in the card view. At most three rows are allowed to be specified.
        {
          "oneItem": { # Template for a row containing one item. Exactly one of "one_item", "two_items", "three_items" must be set.
            "item": { # The item to be displayed in the row. This item will be automatically centered.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
          },
          "threeItems": { # Template for a row containing three items. Exactly one of "one_item", "two_items", "three_items" must be set.
            "endItem": { # The item to be displayed at the end of the row. This item will be aligned to the right.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
            "middleItem": { # The item to be displayed in the middle of the row. This item will be centered between the start and end items.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
            "startItem": { # The item to be displayed at the start of the row. This item will be aligned to the left.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
          },
          "twoItems": { # Template for a row containing two items. Exactly one of "one_item", "two_items", "three_items" must be set.
            "endItem": { # The item to be displayed at the end of the row. This item will be aligned to the right.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
            "startItem": { # The item to be displayed at the start of the row. This item will be aligned to the left.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
          },
        },
      ],
    },
    "detailsTemplateOverride": { # Override for the details view (beneath the card view).
      "detailsItemInfos": [ # Information for the "nth" item displayed in the details list.
        {
          "item": { # The item to be displayed in the details list.
            "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
              "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                { # Reference definition to use with field overrides.
                  "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                  "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                },
              ],
            },
            "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
            "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
              "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                { # Reference definition to use with field overrides.
                  "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                  "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                },
              ],
            },
          },
        },
      ],
    },
    "listTemplateOverride": { # Override for the passes list view.
      "firstRowOption": { # Specifies from a predefined set of options or from a reference to the field what will be displayed in the first row. To set this override, set the FirstRowOption.fieldOption to the FieldSelector of your choice.
        "fieldOption": { # Custom field selector to use with field overrides. # A reference to the field to be displayed in the first row.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
        "transitOption": "A String",
      },
      "secondRowOption": { # Custom field selector to use with field overrides. # A reference to the field to be displayed in the second row. This option is only displayed if there are not multiple user objects in a group. If there is a group, the second row will always display a field shared by all objects. To set this override, please set secondRowOption to the FieldSelector of you choice.
        "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
          { # Reference definition to use with field overrides.
            "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
            "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
          },
        ],
      },
      "thirdRowOption": { # Custom field selector to use with field overrides. # An unused/deprecated field. Setting it will have no effect on what the user sees.
        "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
          { # Reference definition to use with field overrides.
            "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
            "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
          },
        ],
      },
    },
  },
  "enableSmartTap": True or False, # Available only to Smart Tap enabled partners. Contact support for additional guidance.
  "id": "A String", # Required. The unique identifier for the class. This ID must be unique across all from an issuer. This value needs to follow the format `issuerID.identifier` where `issuerID` is issued by Google and `identifier` is chosen by you. The unique identifier can only include alphanumeric characters, `.`, `_`, or `-`.
  "imageModulesData": [ # Image module data. If `imageModulesData` is also defined on the object, both will be displayed. Only one of the image from class and one from object level will be rendered when both set.
    {
      "id": "A String", # The ID associated with an image module. This field is here to enable ease of management of image modules.
      "mainImage": { # Wrapping type for Google hosted images. Next ID: 7 # A 100% width image.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
    },
  ],
  "linksModuleData": { # Links module data. If `linksModuleData` is also defined on the object, both will be displayed. The maximum number of these fields displayed is 10 from class and 10 from object.
    "uris": [ # The list of URIs.
      {
        "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
        "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
        "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
      },
    ],
  },
  "merchantLocations": [ # Merchant locations. There is a maximum of ten on the class. Any additional MerchantLocations added beyond the 10 will be rejected. These locations will trigger a notification when a user enters within a Google-set radius of the point. This field replaces the deprecated LatLongPoints.
    { # Locations of interest for this class or object. Currently, this location is used for geofenced notifications. When a user is within a set radius of this lat/long, and dwells there, Google will trigger a notification. When a user exits this radius, the notification will be hidden.
      "latitude": 3.14, # The latitude specified as any value in the range of -90.0 through +90.0, both inclusive. Values outside these bounds will be rejected.
      "longitude": 3.14, # The longitude specified in the range -180.0 through +180.0, both inclusive. Values outside these bounds will be rejected.
    },
  ],
  "messages": [ # An array of messages displayed in the app. All users of this object will receive its associated messages. The maximum number of these fields is 10.
    { # A message that will be displayed with a Valuable
      "body": "A String", # The message body.
      "displayInterval": { # The period of time that the message will be displayed to users. You can define both a `startTime` and `endTime` for each message. A message is displayed immediately after a Wallet Object is inserted unless a `startTime` is set. The message will appear in a list of messages indefinitely if `endTime` is not provided.
        "end": { # End time of the interval. Offset is not required. If an offset is provided and `start` time is set, `start` must also include an offset.
          "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#timeInterval"`.
        "start": { # Start time of the interval. Offset is not required. If an offset is provided and `end` time is set, `end` must also include an offset.
          "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
        },
      },
      "header": "A String", # The message header.
      "id": "A String", # The ID associated with a message. This field is here to enable ease of management of messages. Notice ID values could possibly duplicate across multiple messages in the same class/instance, and care must be taken to select a reasonable ID for each message.
      "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#walletObjectMessage"`.
      "localizedBody": { # Translated strings for the message body.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "localizedHeader": { # Translated strings for the message header.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "messageType": "A String", # The message type.
    },
  ],
  "multipleDevicesAndHoldersAllowedStatus": "A String", # Identifies whether multiple users and devices will save the same object referencing this class.
  "redemptionIssuers": [ # Identifies which redemption issuers can redeem the pass over Smart Tap. Redemption issuers are identified by their issuer ID. Redemption issuers must have at least one Smart Tap key configured. The `enableSmartTap` and object level `smartTapRedemptionLevel` fields must also be set up correctly in order for a pass to support Smart Tap.
    "A String",
  ],
  "securityAnimation": { # Optional information about the security animation. If this is set a security animation will be rendered on pass details.
    "animationType": "A String", # Type of animation.
  },
  "textModulesData": [ # Text module data. If `textModulesData` is also defined on the object, both will be displayed. The maximum number of these fields displayed is 10 from class and 10 from object.
    { # Data for Text module. All fields are optional. Header will be displayed if available, different types of bodies will be concatenated if they are defined.
      "body": "A String", # The body of the Text Module, which is defined as an uninterrupted string. Recommended maximum length is 500 characters to ensure full string is displayed on smaller screens.
      "header": "A String", # The header of the Text Module. Recommended maximum length is 35 characters to ensure full string is displayed on smaller screens.
      "id": "A String", # The ID associated with a text module. This field is here to enable ease of management of text modules and referencing them in template overrides. The ID should only include alphanumeric characters, '_', or '-'. It can not include dots, as dots are used to separate fields within FieldReference.fieldPaths in template overrides.
      "localizedBody": { # Translated strings for the body. Recommended maximum length is 500 characters to ensure full string is displayed on smaller screens.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "localizedHeader": { # Translated strings for the header. Recommended maximum length is 35 characters to ensure full string is displayed on smaller screens.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
    },
  ],
  "valueAddedModuleData": [ # Optional value added module data. Maximum of ten on the class. For a pass only ten will be displayed, prioritizing those from the object.
    { # Data for Value Added module. Required fields are header and uri.
      "body": { # Body to be displayed on the module. Character limit is 50 and longer strings will be truncated.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "header": { # Header to be displayed on the module. Character limit is 60 and longer strings will be truncated.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "image": { # Wrapping type for Google hosted images. Next ID: 7 # Image to be displayed on the module. Recommended image ratio is 1:1. Images will be resized to fit this ratio.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
      "sortIndex": 42, # The index for sorting the modules. Modules with a lower sort index are shown before modules with a higher sort index. If unspecified, the sort index is assumed to be INT_MAX. For two modules with the same index, the sorting behavior is undefined.
      "uri": "A String", # URI that the module leads to on click. This can be a web link or a deep link as mentioned in https://developer.android.com/training/app-links/deep-linking.
      "viewConstraints": { # Constraints that all must be met for the module to be shown. # Constraints that all must be met for the module to be shown.
        "displayInterval": { # The period of time that the module will be displayed to users. Can define both a `startTime` and `endTime`. The module is displayed immediately after insertion unless a `startTime` is set. The module is displayed indefinitely if `endTime` is not set.
          "end": { # End time of the interval. Offset is not required. If an offset is provided and `start` time is set, `start` must also include an offset.
            "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#timeInterval"`.
          "start": { # Start time of the interval. Offset is not required. If an offset is provided and `end` time is set, `end` must also include an offset.
            "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
          },
        },
      },
    },
  ],
  "viewUnlockRequirement": "A String", # View Unlock Requirement options for the generic pass.
}
insert(body=None, x__xgafv=None)
Inserts a generic class with the given ID and properties.

Args:
  body: object, The request body.
    The object takes the form of:

{ # Generic Class
  "appLinkData": { # Optional app or website link that will be displayed as a button on the front of the pass. If AppLinkData is provided for the corresponding object that will be used instead.
    "androidAppLinkInfo": { # Optional information about the partner app link.
      "appLogoImage": { # Wrapping type for Google hosted images. Next ID: 7 # Deprecated. Image isn't supported in the app link module.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
      "appTarget": { # Target to follow when opening the app link on clients. It will be used by partners to open their app or webpage.
        "packageName": "A String", # Package name for AppTarget. For example: com.google.android.gm
        "targetUri": { # URI for AppTarget. The description on the URI must be set. Prefer setting package field instead, if this target is defined for your application.
          "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
          "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
          "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
        },
      },
      "description": { # Deprecated. Description isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "title": { # Deprecated. Title isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
    },
    "displayText": { # Optional display text for the app link button. Character limit is 30.
      "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
        "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
        "value": "A String", # The UTF-8 encoded translated string.
      },
      "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
      "translatedValues": [ # Contains the translations for the string.
        {
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
      ],
    },
    "iosAppLinkInfo": { # Deprecated. Links to open iOS apps are not supported.
      "appLogoImage": { # Wrapping type for Google hosted images. Next ID: 7 # Deprecated. Image isn't supported in the app link module.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
      "appTarget": { # Target to follow when opening the app link on clients. It will be used by partners to open their app or webpage.
        "packageName": "A String", # Package name for AppTarget. For example: com.google.android.gm
        "targetUri": { # URI for AppTarget. The description on the URI must be set. Prefer setting package field instead, if this target is defined for your application.
          "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
          "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
          "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
        },
      },
      "description": { # Deprecated. Description isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "title": { # Deprecated. Title isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
    },
    "webAppLinkInfo": { # Optional information about the partner web link.
      "appLogoImage": { # Wrapping type for Google hosted images. Next ID: 7 # Deprecated. Image isn't supported in the app link module.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
      "appTarget": { # Target to follow when opening the app link on clients. It will be used by partners to open their app or webpage.
        "packageName": "A String", # Package name for AppTarget. For example: com.google.android.gm
        "targetUri": { # URI for AppTarget. The description on the URI must be set. Prefer setting package field instead, if this target is defined for your application.
          "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
          "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
          "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
        },
      },
      "description": { # Deprecated. Description isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "title": { # Deprecated. Title isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
    },
  },
  "callbackOptions": { # Callback options to be used to call the issuer back for every save/delete of an object for this class by the end-user. All objects of this class are eligible for the callback.
    "updateRequestUrl": "A String", # URL for the merchant endpoint that would be called to request updates. The URL should be hosted on HTTPS and robots.txt should allow the URL path to be accessible by UserAgent:Googlebot. Deprecated.
    "url": "A String", # The HTTPS url configured by the merchant. The URL should be hosted on HTTPS and robots.txt should allow the URL path to be accessible by UserAgent:Googlebot.
  },
  "classTemplateInfo": { # Template information about how the class should be displayed. If unset, Google will fallback to a default set of fields to display.
    "cardBarcodeSectionDetails": { # Specifies extra information to be displayed above and below the barcode.
      "firstBottomDetail": { # Optional information to display below the barcode.
        "fieldSelector": { # Custom field selector to use with field overrides. # A reference to an existing text-based or image field to display.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
      },
      "firstTopDetail": { # Optional information to display above the barcode. If `secondTopDetail` is defined, this will be displayed to the start side of this detail section.
        "fieldSelector": { # Custom field selector to use with field overrides. # A reference to an existing text-based or image field to display.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
      },
      "secondTopDetail": { # Optional second piece of information to display above the barcode. If `firstTopDetail` is defined, this will be displayed to the end side of this detail section.
        "fieldSelector": { # Custom field selector to use with field overrides. # A reference to an existing text-based or image field to display.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
      },
    },
    "cardTemplateOverride": { # Override for the card view.
      "cardRowTemplateInfos": [ # Template information for rows in the card view. At most three rows are allowed to be specified.
        {
          "oneItem": { # Template for a row containing one item. Exactly one of "one_item", "two_items", "three_items" must be set.
            "item": { # The item to be displayed in the row. This item will be automatically centered.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
          },
          "threeItems": { # Template for a row containing three items. Exactly one of "one_item", "two_items", "three_items" must be set.
            "endItem": { # The item to be displayed at the end of the row. This item will be aligned to the right.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
            "middleItem": { # The item to be displayed in the middle of the row. This item will be centered between the start and end items.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
            "startItem": { # The item to be displayed at the start of the row. This item will be aligned to the left.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
          },
          "twoItems": { # Template for a row containing two items. Exactly one of "one_item", "two_items", "three_items" must be set.
            "endItem": { # The item to be displayed at the end of the row. This item will be aligned to the right.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
            "startItem": { # The item to be displayed at the start of the row. This item will be aligned to the left.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
          },
        },
      ],
    },
    "detailsTemplateOverride": { # Override for the details view (beneath the card view).
      "detailsItemInfos": [ # Information for the "nth" item displayed in the details list.
        {
          "item": { # The item to be displayed in the details list.
            "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
              "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                { # Reference definition to use with field overrides.
                  "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                  "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                },
              ],
            },
            "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
            "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
              "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                { # Reference definition to use with field overrides.
                  "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                  "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                },
              ],
            },
          },
        },
      ],
    },
    "listTemplateOverride": { # Override for the passes list view.
      "firstRowOption": { # Specifies from a predefined set of options or from a reference to the field what will be displayed in the first row. To set this override, set the FirstRowOption.fieldOption to the FieldSelector of your choice.
        "fieldOption": { # Custom field selector to use with field overrides. # A reference to the field to be displayed in the first row.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
        "transitOption": "A String",
      },
      "secondRowOption": { # Custom field selector to use with field overrides. # A reference to the field to be displayed in the second row. This option is only displayed if there are not multiple user objects in a group. If there is a group, the second row will always display a field shared by all objects. To set this override, please set secondRowOption to the FieldSelector of you choice.
        "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
          { # Reference definition to use with field overrides.
            "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
            "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
          },
        ],
      },
      "thirdRowOption": { # Custom field selector to use with field overrides. # An unused/deprecated field. Setting it will have no effect on what the user sees.
        "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
          { # Reference definition to use with field overrides.
            "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
            "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
          },
        ],
      },
    },
  },
  "enableSmartTap": True or False, # Available only to Smart Tap enabled partners. Contact support for additional guidance.
  "id": "A String", # Required. The unique identifier for the class. This ID must be unique across all from an issuer. This value needs to follow the format `issuerID.identifier` where `issuerID` is issued by Google and `identifier` is chosen by you. The unique identifier can only include alphanumeric characters, `.`, `_`, or `-`.
  "imageModulesData": [ # Image module data. If `imageModulesData` is also defined on the object, both will be displayed. Only one of the image from class and one from object level will be rendered when both set.
    {
      "id": "A String", # The ID associated with an image module. This field is here to enable ease of management of image modules.
      "mainImage": { # Wrapping type for Google hosted images. Next ID: 7 # A 100% width image.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
    },
  ],
  "linksModuleData": { # Links module data. If `linksModuleData` is also defined on the object, both will be displayed. The maximum number of these fields displayed is 10 from class and 10 from object.
    "uris": [ # The list of URIs.
      {
        "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
        "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
        "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
      },
    ],
  },
  "merchantLocations": [ # Merchant locations. There is a maximum of ten on the class. Any additional MerchantLocations added beyond the 10 will be rejected. These locations will trigger a notification when a user enters within a Google-set radius of the point. This field replaces the deprecated LatLongPoints.
    { # Locations of interest for this class or object. Currently, this location is used for geofenced notifications. When a user is within a set radius of this lat/long, and dwells there, Google will trigger a notification. When a user exits this radius, the notification will be hidden.
      "latitude": 3.14, # The latitude specified as any value in the range of -90.0 through +90.0, both inclusive. Values outside these bounds will be rejected.
      "longitude": 3.14, # The longitude specified in the range -180.0 through +180.0, both inclusive. Values outside these bounds will be rejected.
    },
  ],
  "messages": [ # An array of messages displayed in the app. All users of this object will receive its associated messages. The maximum number of these fields is 10.
    { # A message that will be displayed with a Valuable
      "body": "A String", # The message body.
      "displayInterval": { # The period of time that the message will be displayed to users. You can define both a `startTime` and `endTime` for each message. A message is displayed immediately after a Wallet Object is inserted unless a `startTime` is set. The message will appear in a list of messages indefinitely if `endTime` is not provided.
        "end": { # End time of the interval. Offset is not required. If an offset is provided and `start` time is set, `start` must also include an offset.
          "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#timeInterval"`.
        "start": { # Start time of the interval. Offset is not required. If an offset is provided and `end` time is set, `end` must also include an offset.
          "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
        },
      },
      "header": "A String", # The message header.
      "id": "A String", # The ID associated with a message. This field is here to enable ease of management of messages. Notice ID values could possibly duplicate across multiple messages in the same class/instance, and care must be taken to select a reasonable ID for each message.
      "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#walletObjectMessage"`.
      "localizedBody": { # Translated strings for the message body.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "localizedHeader": { # Translated strings for the message header.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "messageType": "A String", # The message type.
    },
  ],
  "multipleDevicesAndHoldersAllowedStatus": "A String", # Identifies whether multiple users and devices will save the same object referencing this class.
  "redemptionIssuers": [ # Identifies which redemption issuers can redeem the pass over Smart Tap. Redemption issuers are identified by their issuer ID. Redemption issuers must have at least one Smart Tap key configured. The `enableSmartTap` and object level `smartTapRedemptionLevel` fields must also be set up correctly in order for a pass to support Smart Tap.
    "A String",
  ],
  "securityAnimation": { # Optional information about the security animation. If this is set a security animation will be rendered on pass details.
    "animationType": "A String", # Type of animation.
  },
  "textModulesData": [ # Text module data. If `textModulesData` is also defined on the object, both will be displayed. The maximum number of these fields displayed is 10 from class and 10 from object.
    { # Data for Text module. All fields are optional. Header will be displayed if available, different types of bodies will be concatenated if they are defined.
      "body": "A String", # The body of the Text Module, which is defined as an uninterrupted string. Recommended maximum length is 500 characters to ensure full string is displayed on smaller screens.
      "header": "A String", # The header of the Text Module. Recommended maximum length is 35 characters to ensure full string is displayed on smaller screens.
      "id": "A String", # The ID associated with a text module. This field is here to enable ease of management of text modules and referencing them in template overrides. The ID should only include alphanumeric characters, '_', or '-'. It can not include dots, as dots are used to separate fields within FieldReference.fieldPaths in template overrides.
      "localizedBody": { # Translated strings for the body. Recommended maximum length is 500 characters to ensure full string is displayed on smaller screens.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "localizedHeader": { # Translated strings for the header. Recommended maximum length is 35 characters to ensure full string is displayed on smaller screens.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
    },
  ],
  "valueAddedModuleData": [ # Optional value added module data. Maximum of ten on the class. For a pass only ten will be displayed, prioritizing those from the object.
    { # Data for Value Added module. Required fields are header and uri.
      "body": { # Body to be displayed on the module. Character limit is 50 and longer strings will be truncated.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "header": { # Header to be displayed on the module. Character limit is 60 and longer strings will be truncated.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "image": { # Wrapping type for Google hosted images. Next ID: 7 # Image to be displayed on the module. Recommended image ratio is 1:1. Images will be resized to fit this ratio.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
      "sortIndex": 42, # The index for sorting the modules. Modules with a lower sort index are shown before modules with a higher sort index. If unspecified, the sort index is assumed to be INT_MAX. For two modules with the same index, the sorting behavior is undefined.
      "uri": "A String", # URI that the module leads to on click. This can be a web link or a deep link as mentioned in https://developer.android.com/training/app-links/deep-linking.
      "viewConstraints": { # Constraints that all must be met for the module to be shown. # Constraints that all must be met for the module to be shown.
        "displayInterval": { # The period of time that the module will be displayed to users. Can define both a `startTime` and `endTime`. The module is displayed immediately after insertion unless a `startTime` is set. The module is displayed indefinitely if `endTime` is not set.
          "end": { # End time of the interval. Offset is not required. If an offset is provided and `start` time is set, `start` must also include an offset.
            "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#timeInterval"`.
          "start": { # Start time of the interval. Offset is not required. If an offset is provided and `end` time is set, `end` must also include an offset.
            "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
          },
        },
      },
    },
  ],
  "viewUnlockRequirement": "A String", # View Unlock Requirement options for the generic pass.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Generic Class
  "appLinkData": { # Optional app or website link that will be displayed as a button on the front of the pass. If AppLinkData is provided for the corresponding object that will be used instead.
    "androidAppLinkInfo": { # Optional information about the partner app link.
      "appLogoImage": { # Wrapping type for Google hosted images. Next ID: 7 # Deprecated. Image isn't supported in the app link module.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
      "appTarget": { # Target to follow when opening the app link on clients. It will be used by partners to open their app or webpage.
        "packageName": "A String", # Package name for AppTarget. For example: com.google.android.gm
        "targetUri": { # URI for AppTarget. The description on the URI must be set. Prefer setting package field instead, if this target is defined for your application.
          "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
          "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
          "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
        },
      },
      "description": { # Deprecated. Description isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "title": { # Deprecated. Title isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
    },
    "displayText": { # Optional display text for the app link button. Character limit is 30.
      "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
        "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
        "value": "A String", # The UTF-8 encoded translated string.
      },
      "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
      "translatedValues": [ # Contains the translations for the string.
        {
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
      ],
    },
    "iosAppLinkInfo": { # Deprecated. Links to open iOS apps are not supported.
      "appLogoImage": { # Wrapping type for Google hosted images. Next ID: 7 # Deprecated. Image isn't supported in the app link module.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
      "appTarget": { # Target to follow when opening the app link on clients. It will be used by partners to open their app or webpage.
        "packageName": "A String", # Package name for AppTarget. For example: com.google.android.gm
        "targetUri": { # URI for AppTarget. The description on the URI must be set. Prefer setting package field instead, if this target is defined for your application.
          "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
          "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
          "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
        },
      },
      "description": { # Deprecated. Description isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "title": { # Deprecated. Title isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
    },
    "webAppLinkInfo": { # Optional information about the partner web link.
      "appLogoImage": { # Wrapping type for Google hosted images. Next ID: 7 # Deprecated. Image isn't supported in the app link module.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
      "appTarget": { # Target to follow when opening the app link on clients. It will be used by partners to open their app or webpage.
        "packageName": "A String", # Package name for AppTarget. For example: com.google.android.gm
        "targetUri": { # URI for AppTarget. The description on the URI must be set. Prefer setting package field instead, if this target is defined for your application.
          "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
          "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
          "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
        },
      },
      "description": { # Deprecated. Description isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "title": { # Deprecated. Title isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
    },
  },
  "callbackOptions": { # Callback options to be used to call the issuer back for every save/delete of an object for this class by the end-user. All objects of this class are eligible for the callback.
    "updateRequestUrl": "A String", # URL for the merchant endpoint that would be called to request updates. The URL should be hosted on HTTPS and robots.txt should allow the URL path to be accessible by UserAgent:Googlebot. Deprecated.
    "url": "A String", # The HTTPS url configured by the merchant. The URL should be hosted on HTTPS and robots.txt should allow the URL path to be accessible by UserAgent:Googlebot.
  },
  "classTemplateInfo": { # Template information about how the class should be displayed. If unset, Google will fallback to a default set of fields to display.
    "cardBarcodeSectionDetails": { # Specifies extra information to be displayed above and below the barcode.
      "firstBottomDetail": { # Optional information to display below the barcode.
        "fieldSelector": { # Custom field selector to use with field overrides. # A reference to an existing text-based or image field to display.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
      },
      "firstTopDetail": { # Optional information to display above the barcode. If `secondTopDetail` is defined, this will be displayed to the start side of this detail section.
        "fieldSelector": { # Custom field selector to use with field overrides. # A reference to an existing text-based or image field to display.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
      },
      "secondTopDetail": { # Optional second piece of information to display above the barcode. If `firstTopDetail` is defined, this will be displayed to the end side of this detail section.
        "fieldSelector": { # Custom field selector to use with field overrides. # A reference to an existing text-based or image field to display.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
      },
    },
    "cardTemplateOverride": { # Override for the card view.
      "cardRowTemplateInfos": [ # Template information for rows in the card view. At most three rows are allowed to be specified.
        {
          "oneItem": { # Template for a row containing one item. Exactly one of "one_item", "two_items", "three_items" must be set.
            "item": { # The item to be displayed in the row. This item will be automatically centered.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
          },
          "threeItems": { # Template for a row containing three items. Exactly one of "one_item", "two_items", "three_items" must be set.
            "endItem": { # The item to be displayed at the end of the row. This item will be aligned to the right.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
            "middleItem": { # The item to be displayed in the middle of the row. This item will be centered between the start and end items.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
            "startItem": { # The item to be displayed at the start of the row. This item will be aligned to the left.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
          },
          "twoItems": { # Template for a row containing two items. Exactly one of "one_item", "two_items", "three_items" must be set.
            "endItem": { # The item to be displayed at the end of the row. This item will be aligned to the right.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
            "startItem": { # The item to be displayed at the start of the row. This item will be aligned to the left.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
          },
        },
      ],
    },
    "detailsTemplateOverride": { # Override for the details view (beneath the card view).
      "detailsItemInfos": [ # Information for the "nth" item displayed in the details list.
        {
          "item": { # The item to be displayed in the details list.
            "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
              "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                { # Reference definition to use with field overrides.
                  "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                  "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                },
              ],
            },
            "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
            "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
              "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                { # Reference definition to use with field overrides.
                  "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                  "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                },
              ],
            },
          },
        },
      ],
    },
    "listTemplateOverride": { # Override for the passes list view.
      "firstRowOption": { # Specifies from a predefined set of options or from a reference to the field what will be displayed in the first row. To set this override, set the FirstRowOption.fieldOption to the FieldSelector of your choice.
        "fieldOption": { # Custom field selector to use with field overrides. # A reference to the field to be displayed in the first row.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
        "transitOption": "A String",
      },
      "secondRowOption": { # Custom field selector to use with field overrides. # A reference to the field to be displayed in the second row. This option is only displayed if there are not multiple user objects in a group. If there is a group, the second row will always display a field shared by all objects. To set this override, please set secondRowOption to the FieldSelector of you choice.
        "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
          { # Reference definition to use with field overrides.
            "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
            "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
          },
        ],
      },
      "thirdRowOption": { # Custom field selector to use with field overrides. # An unused/deprecated field. Setting it will have no effect on what the user sees.
        "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
          { # Reference definition to use with field overrides.
            "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
            "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
          },
        ],
      },
    },
  },
  "enableSmartTap": True or False, # Available only to Smart Tap enabled partners. Contact support for additional guidance.
  "id": "A String", # Required. The unique identifier for the class. This ID must be unique across all from an issuer. This value needs to follow the format `issuerID.identifier` where `issuerID` is issued by Google and `identifier` is chosen by you. The unique identifier can only include alphanumeric characters, `.`, `_`, or `-`.
  "imageModulesData": [ # Image module data. If `imageModulesData` is also defined on the object, both will be displayed. Only one of the image from class and one from object level will be rendered when both set.
    {
      "id": "A String", # The ID associated with an image module. This field is here to enable ease of management of image modules.
      "mainImage": { # Wrapping type for Google hosted images. Next ID: 7 # A 100% width image.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
    },
  ],
  "linksModuleData": { # Links module data. If `linksModuleData` is also defined on the object, both will be displayed. The maximum number of these fields displayed is 10 from class and 10 from object.
    "uris": [ # The list of URIs.
      {
        "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
        "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
        "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
      },
    ],
  },
  "merchantLocations": [ # Merchant locations. There is a maximum of ten on the class. Any additional MerchantLocations added beyond the 10 will be rejected. These locations will trigger a notification when a user enters within a Google-set radius of the point. This field replaces the deprecated LatLongPoints.
    { # Locations of interest for this class or object. Currently, this location is used for geofenced notifications. When a user is within a set radius of this lat/long, and dwells there, Google will trigger a notification. When a user exits this radius, the notification will be hidden.
      "latitude": 3.14, # The latitude specified as any value in the range of -90.0 through +90.0, both inclusive. Values outside these bounds will be rejected.
      "longitude": 3.14, # The longitude specified in the range -180.0 through +180.0, both inclusive. Values outside these bounds will be rejected.
    },
  ],
  "messages": [ # An array of messages displayed in the app. All users of this object will receive its associated messages. The maximum number of these fields is 10.
    { # A message that will be displayed with a Valuable
      "body": "A String", # The message body.
      "displayInterval": { # The period of time that the message will be displayed to users. You can define both a `startTime` and `endTime` for each message. A message is displayed immediately after a Wallet Object is inserted unless a `startTime` is set. The message will appear in a list of messages indefinitely if `endTime` is not provided.
        "end": { # End time of the interval. Offset is not required. If an offset is provided and `start` time is set, `start` must also include an offset.
          "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#timeInterval"`.
        "start": { # Start time of the interval. Offset is not required. If an offset is provided and `end` time is set, `end` must also include an offset.
          "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
        },
      },
      "header": "A String", # The message header.
      "id": "A String", # The ID associated with a message. This field is here to enable ease of management of messages. Notice ID values could possibly duplicate across multiple messages in the same class/instance, and care must be taken to select a reasonable ID for each message.
      "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#walletObjectMessage"`.
      "localizedBody": { # Translated strings for the message body.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "localizedHeader": { # Translated strings for the message header.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "messageType": "A String", # The message type.
    },
  ],
  "multipleDevicesAndHoldersAllowedStatus": "A String", # Identifies whether multiple users and devices will save the same object referencing this class.
  "redemptionIssuers": [ # Identifies which redemption issuers can redeem the pass over Smart Tap. Redemption issuers are identified by their issuer ID. Redemption issuers must have at least one Smart Tap key configured. The `enableSmartTap` and object level `smartTapRedemptionLevel` fields must also be set up correctly in order for a pass to support Smart Tap.
    "A String",
  ],
  "securityAnimation": { # Optional information about the security animation. If this is set a security animation will be rendered on pass details.
    "animationType": "A String", # Type of animation.
  },
  "textModulesData": [ # Text module data. If `textModulesData` is also defined on the object, both will be displayed. The maximum number of these fields displayed is 10 from class and 10 from object.
    { # Data for Text module. All fields are optional. Header will be displayed if available, different types of bodies will be concatenated if they are defined.
      "body": "A String", # The body of the Text Module, which is defined as an uninterrupted string. Recommended maximum length is 500 characters to ensure full string is displayed on smaller screens.
      "header": "A String", # The header of the Text Module. Recommended maximum length is 35 characters to ensure full string is displayed on smaller screens.
      "id": "A String", # The ID associated with a text module. This field is here to enable ease of management of text modules and referencing them in template overrides. The ID should only include alphanumeric characters, '_', or '-'. It can not include dots, as dots are used to separate fields within FieldReference.fieldPaths in template overrides.
      "localizedBody": { # Translated strings for the body. Recommended maximum length is 500 characters to ensure full string is displayed on smaller screens.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "localizedHeader": { # Translated strings for the header. Recommended maximum length is 35 characters to ensure full string is displayed on smaller screens.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
    },
  ],
  "valueAddedModuleData": [ # Optional value added module data. Maximum of ten on the class. For a pass only ten will be displayed, prioritizing those from the object.
    { # Data for Value Added module. Required fields are header and uri.
      "body": { # Body to be displayed on the module. Character limit is 50 and longer strings will be truncated.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "header": { # Header to be displayed on the module. Character limit is 60 and longer strings will be truncated.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "image": { # Wrapping type for Google hosted images. Next ID: 7 # Image to be displayed on the module. Recommended image ratio is 1:1. Images will be resized to fit this ratio.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
      "sortIndex": 42, # The index for sorting the modules. Modules with a lower sort index are shown before modules with a higher sort index. If unspecified, the sort index is assumed to be INT_MAX. For two modules with the same index, the sorting behavior is undefined.
      "uri": "A String", # URI that the module leads to on click. This can be a web link or a deep link as mentioned in https://developer.android.com/training/app-links/deep-linking.
      "viewConstraints": { # Constraints that all must be met for the module to be shown. # Constraints that all must be met for the module to be shown.
        "displayInterval": { # The period of time that the module will be displayed to users. Can define both a `startTime` and `endTime`. The module is displayed immediately after insertion unless a `startTime` is set. The module is displayed indefinitely if `endTime` is not set.
          "end": { # End time of the interval. Offset is not required. If an offset is provided and `start` time is set, `start` must also include an offset.
            "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#timeInterval"`.
          "start": { # Start time of the interval. Offset is not required. If an offset is provided and `end` time is set, `end` must also include an offset.
            "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
          },
        },
      },
    },
  ],
  "viewUnlockRequirement": "A String", # View Unlock Requirement options for the generic pass.
}
list(issuerId=None, maxResults=None, token=None, x__xgafv=None)
Returns a list of all generic classes for a given issuer ID.

Args:
  issuerId: string, The ID of the issuer authorized to list classes.
  maxResults: integer, Identifies the max number of results returned by a list. All results are returned if `maxResults` isn't defined.
  token: string, Used to get the next set of results if `maxResults` is specified, but more than `maxResults` classes are available in a list. For example, if you have a list of 200 classes and you call list with `maxResults` set to 20, list will return the first 20 classes and a token. Call list again with `maxResults` set to 20 and the token to get the next 20 classes.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # List response which contains the list of all generic classes for a given issuer ID.
  "pagination": { # Pagination of the response.
    "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#pagination"`.
    "nextPageToken": "A String", # Page token to send to fetch the next page.
    "resultsPerPage": 42, # Number of results returned in this page.
  },
  "resources": [ # Resources corresponding to the list request.
    { # Generic Class
      "appLinkData": { # Optional app or website link that will be displayed as a button on the front of the pass. If AppLinkData is provided for the corresponding object that will be used instead.
        "androidAppLinkInfo": { # Optional information about the partner app link.
          "appLogoImage": { # Wrapping type for Google hosted images. Next ID: 7 # Deprecated. Image isn't supported in the app link module.
            "contentDescription": { # Description of the image used for accessibility.
              "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
              "translatedValues": [ # Contains the translations for the string.
                {
                  "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                  "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                  "value": "A String", # The UTF-8 encoded translated string.
                },
              ],
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
            "sourceUri": { # The URI for the image.
              "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
              "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
                "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
                  "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                  "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                  "value": "A String", # The UTF-8 encoded translated string.
                },
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
                "translatedValues": [ # Contains the translations for the string.
                  {
                    "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                    "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                    "value": "A String", # The UTF-8 encoded translated string.
                  },
                ],
              },
              "uri": "A String", # The location of the image. URIs must have a scheme.
            },
          },
          "appTarget": { # Target to follow when opening the app link on clients. It will be used by partners to open their app or webpage.
            "packageName": "A String", # Package name for AppTarget. For example: com.google.android.gm
            "targetUri": { # URI for AppTarget. The description on the URI must be set. Prefer setting package field instead, if this target is defined for your application.
              "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
              "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
              "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
                "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
                  "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                  "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                  "value": "A String", # The UTF-8 encoded translated string.
                },
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
                "translatedValues": [ # Contains the translations for the string.
                  {
                    "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                    "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                    "value": "A String", # The UTF-8 encoded translated string.
                  },
                ],
              },
              "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
            },
          },
          "description": { # Deprecated. Description isn't supported in the app link module.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "title": { # Deprecated. Title isn't supported in the app link module.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
        },
        "displayText": { # Optional display text for the app link button. Character limit is 30.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "iosAppLinkInfo": { # Deprecated. Links to open iOS apps are not supported.
          "appLogoImage": { # Wrapping type for Google hosted images. Next ID: 7 # Deprecated. Image isn't supported in the app link module.
            "contentDescription": { # Description of the image used for accessibility.
              "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
              "translatedValues": [ # Contains the translations for the string.
                {
                  "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                  "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                  "value": "A String", # The UTF-8 encoded translated string.
                },
              ],
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
            "sourceUri": { # The URI for the image.
              "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
              "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
                "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
                  "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                  "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                  "value": "A String", # The UTF-8 encoded translated string.
                },
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
                "translatedValues": [ # Contains the translations for the string.
                  {
                    "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                    "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                    "value": "A String", # The UTF-8 encoded translated string.
                  },
                ],
              },
              "uri": "A String", # The location of the image. URIs must have a scheme.
            },
          },
          "appTarget": { # Target to follow when opening the app link on clients. It will be used by partners to open their app or webpage.
            "packageName": "A String", # Package name for AppTarget. For example: com.google.android.gm
            "targetUri": { # URI for AppTarget. The description on the URI must be set. Prefer setting package field instead, if this target is defined for your application.
              "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
              "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
              "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
                "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
                  "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                  "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                  "value": "A String", # The UTF-8 encoded translated string.
                },
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
                "translatedValues": [ # Contains the translations for the string.
                  {
                    "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                    "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                    "value": "A String", # The UTF-8 encoded translated string.
                  },
                ],
              },
              "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
            },
          },
          "description": { # Deprecated. Description isn't supported in the app link module.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "title": { # Deprecated. Title isn't supported in the app link module.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
        },
        "webAppLinkInfo": { # Optional information about the partner web link.
          "appLogoImage": { # Wrapping type for Google hosted images. Next ID: 7 # Deprecated. Image isn't supported in the app link module.
            "contentDescription": { # Description of the image used for accessibility.
              "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
              "translatedValues": [ # Contains the translations for the string.
                {
                  "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                  "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                  "value": "A String", # The UTF-8 encoded translated string.
                },
              ],
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
            "sourceUri": { # The URI for the image.
              "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
              "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
                "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
                  "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                  "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                  "value": "A String", # The UTF-8 encoded translated string.
                },
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
                "translatedValues": [ # Contains the translations for the string.
                  {
                    "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                    "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                    "value": "A String", # The UTF-8 encoded translated string.
                  },
                ],
              },
              "uri": "A String", # The location of the image. URIs must have a scheme.
            },
          },
          "appTarget": { # Target to follow when opening the app link on clients. It will be used by partners to open their app or webpage.
            "packageName": "A String", # Package name for AppTarget. For example: com.google.android.gm
            "targetUri": { # URI for AppTarget. The description on the URI must be set. Prefer setting package field instead, if this target is defined for your application.
              "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
              "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
              "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
                "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
                  "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                  "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                  "value": "A String", # The UTF-8 encoded translated string.
                },
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
                "translatedValues": [ # Contains the translations for the string.
                  {
                    "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                    "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                    "value": "A String", # The UTF-8 encoded translated string.
                  },
                ],
              },
              "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
            },
          },
          "description": { # Deprecated. Description isn't supported in the app link module.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "title": { # Deprecated. Title isn't supported in the app link module.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
        },
      },
      "callbackOptions": { # Callback options to be used to call the issuer back for every save/delete of an object for this class by the end-user. All objects of this class are eligible for the callback.
        "updateRequestUrl": "A String", # URL for the merchant endpoint that would be called to request updates. The URL should be hosted on HTTPS and robots.txt should allow the URL path to be accessible by UserAgent:Googlebot. Deprecated.
        "url": "A String", # The HTTPS url configured by the merchant. The URL should be hosted on HTTPS and robots.txt should allow the URL path to be accessible by UserAgent:Googlebot.
      },
      "classTemplateInfo": { # Template information about how the class should be displayed. If unset, Google will fallback to a default set of fields to display.
        "cardBarcodeSectionDetails": { # Specifies extra information to be displayed above and below the barcode.
          "firstBottomDetail": { # Optional information to display below the barcode.
            "fieldSelector": { # Custom field selector to use with field overrides. # A reference to an existing text-based or image field to display.
              "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                { # Reference definition to use with field overrides.
                  "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                  "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                },
              ],
            },
          },
          "firstTopDetail": { # Optional information to display above the barcode. If `secondTopDetail` is defined, this will be displayed to the start side of this detail section.
            "fieldSelector": { # Custom field selector to use with field overrides. # A reference to an existing text-based or image field to display.
              "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                { # Reference definition to use with field overrides.
                  "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                  "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                },
              ],
            },
          },
          "secondTopDetail": { # Optional second piece of information to display above the barcode. If `firstTopDetail` is defined, this will be displayed to the end side of this detail section.
            "fieldSelector": { # Custom field selector to use with field overrides. # A reference to an existing text-based or image field to display.
              "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                { # Reference definition to use with field overrides.
                  "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                  "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                },
              ],
            },
          },
        },
        "cardTemplateOverride": { # Override for the card view.
          "cardRowTemplateInfos": [ # Template information for rows in the card view. At most three rows are allowed to be specified.
            {
              "oneItem": { # Template for a row containing one item. Exactly one of "one_item", "two_items", "three_items" must be set.
                "item": { # The item to be displayed in the row. This item will be automatically centered.
                  "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                    "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                      { # Reference definition to use with field overrides.
                        "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                        "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                      },
                    ],
                  },
                  "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
                  "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                    "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                      { # Reference definition to use with field overrides.
                        "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                        "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                      },
                    ],
                  },
                },
              },
              "threeItems": { # Template for a row containing three items. Exactly one of "one_item", "two_items", "three_items" must be set.
                "endItem": { # The item to be displayed at the end of the row. This item will be aligned to the right.
                  "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                    "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                      { # Reference definition to use with field overrides.
                        "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                        "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                      },
                    ],
                  },
                  "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
                  "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                    "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                      { # Reference definition to use with field overrides.
                        "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                        "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                      },
                    ],
                  },
                },
                "middleItem": { # The item to be displayed in the middle of the row. This item will be centered between the start and end items.
                  "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                    "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                      { # Reference definition to use with field overrides.
                        "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                        "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                      },
                    ],
                  },
                  "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
                  "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                    "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                      { # Reference definition to use with field overrides.
                        "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                        "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                      },
                    ],
                  },
                },
                "startItem": { # The item to be displayed at the start of the row. This item will be aligned to the left.
                  "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                    "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                      { # Reference definition to use with field overrides.
                        "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                        "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                      },
                    ],
                  },
                  "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
                  "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                    "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                      { # Reference definition to use with field overrides.
                        "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                        "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                      },
                    ],
                  },
                },
              },
              "twoItems": { # Template for a row containing two items. Exactly one of "one_item", "two_items", "three_items" must be set.
                "endItem": { # The item to be displayed at the end of the row. This item will be aligned to the right.
                  "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                    "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                      { # Reference definition to use with field overrides.
                        "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                        "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                      },
                    ],
                  },
                  "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
                  "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                    "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                      { # Reference definition to use with field overrides.
                        "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                        "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                      },
                    ],
                  },
                },
                "startItem": { # The item to be displayed at the start of the row. This item will be aligned to the left.
                  "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                    "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                      { # Reference definition to use with field overrides.
                        "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                        "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                      },
                    ],
                  },
                  "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
                  "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                    "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                      { # Reference definition to use with field overrides.
                        "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                        "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                      },
                    ],
                  },
                },
              },
            },
          ],
        },
        "detailsTemplateOverride": { # Override for the details view (beneath the card view).
          "detailsItemInfos": [ # Information for the "nth" item displayed in the details list.
            {
              "item": { # The item to be displayed in the details list.
                "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                  "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                    { # Reference definition to use with field overrides.
                      "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                      "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                    },
                  ],
                },
                "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
                "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                  "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                    { # Reference definition to use with field overrides.
                      "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                      "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                    },
                  ],
                },
              },
            },
          ],
        },
        "listTemplateOverride": { # Override for the passes list view.
          "firstRowOption": { # Specifies from a predefined set of options or from a reference to the field what will be displayed in the first row. To set this override, set the FirstRowOption.fieldOption to the FieldSelector of your choice.
            "fieldOption": { # Custom field selector to use with field overrides. # A reference to the field to be displayed in the first row.
              "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                { # Reference definition to use with field overrides.
                  "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                  "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                },
              ],
            },
            "transitOption": "A String",
          },
          "secondRowOption": { # Custom field selector to use with field overrides. # A reference to the field to be displayed in the second row. This option is only displayed if there are not multiple user objects in a group. If there is a group, the second row will always display a field shared by all objects. To set this override, please set secondRowOption to the FieldSelector of you choice.
            "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
              { # Reference definition to use with field overrides.
                "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
              },
            ],
          },
          "thirdRowOption": { # Custom field selector to use with field overrides. # An unused/deprecated field. Setting it will have no effect on what the user sees.
            "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
              { # Reference definition to use with field overrides.
                "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
              },
            ],
          },
        },
      },
      "enableSmartTap": True or False, # Available only to Smart Tap enabled partners. Contact support for additional guidance.
      "id": "A String", # Required. The unique identifier for the class. This ID must be unique across all from an issuer. This value needs to follow the format `issuerID.identifier` where `issuerID` is issued by Google and `identifier` is chosen by you. The unique identifier can only include alphanumeric characters, `.`, `_`, or `-`.
      "imageModulesData": [ # Image module data. If `imageModulesData` is also defined on the object, both will be displayed. Only one of the image from class and one from object level will be rendered when both set.
        {
          "id": "A String", # The ID associated with an image module. This field is here to enable ease of management of image modules.
          "mainImage": { # Wrapping type for Google hosted images. Next ID: 7 # A 100% width image.
            "contentDescription": { # Description of the image used for accessibility.
              "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
              "translatedValues": [ # Contains the translations for the string.
                {
                  "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                  "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                  "value": "A String", # The UTF-8 encoded translated string.
                },
              ],
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
            "sourceUri": { # The URI for the image.
              "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
              "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
                "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
                  "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                  "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                  "value": "A String", # The UTF-8 encoded translated string.
                },
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
                "translatedValues": [ # Contains the translations for the string.
                  {
                    "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                    "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                    "value": "A String", # The UTF-8 encoded translated string.
                  },
                ],
              },
              "uri": "A String", # The location of the image. URIs must have a scheme.
            },
          },
        },
      ],
      "linksModuleData": { # Links module data. If `linksModuleData` is also defined on the object, both will be displayed. The maximum number of these fields displayed is 10 from class and 10 from object.
        "uris": [ # The list of URIs.
          {
            "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
            "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
            "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
              "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
              "translatedValues": [ # Contains the translations for the string.
                {
                  "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                  "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                  "value": "A String", # The UTF-8 encoded translated string.
                },
              ],
            },
            "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
          },
        ],
      },
      "merchantLocations": [ # Merchant locations. There is a maximum of ten on the class. Any additional MerchantLocations added beyond the 10 will be rejected. These locations will trigger a notification when a user enters within a Google-set radius of the point. This field replaces the deprecated LatLongPoints.
        { # Locations of interest for this class or object. Currently, this location is used for geofenced notifications. When a user is within a set radius of this lat/long, and dwells there, Google will trigger a notification. When a user exits this radius, the notification will be hidden.
          "latitude": 3.14, # The latitude specified as any value in the range of -90.0 through +90.0, both inclusive. Values outside these bounds will be rejected.
          "longitude": 3.14, # The longitude specified in the range -180.0 through +180.0, both inclusive. Values outside these bounds will be rejected.
        },
      ],
      "messages": [ # An array of messages displayed in the app. All users of this object will receive its associated messages. The maximum number of these fields is 10.
        { # A message that will be displayed with a Valuable
          "body": "A String", # The message body.
          "displayInterval": { # The period of time that the message will be displayed to users. You can define both a `startTime` and `endTime` for each message. A message is displayed immediately after a Wallet Object is inserted unless a `startTime` is set. The message will appear in a list of messages indefinitely if `endTime` is not provided.
            "end": { # End time of the interval. Offset is not required. If an offset is provided and `start` time is set, `start` must also include an offset.
              "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#timeInterval"`.
            "start": { # Start time of the interval. Offset is not required. If an offset is provided and `end` time is set, `end` must also include an offset.
              "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
            },
          },
          "header": "A String", # The message header.
          "id": "A String", # The ID associated with a message. This field is here to enable ease of management of messages. Notice ID values could possibly duplicate across multiple messages in the same class/instance, and care must be taken to select a reasonable ID for each message.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#walletObjectMessage"`.
          "localizedBody": { # Translated strings for the message body.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "localizedHeader": { # Translated strings for the message header.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "messageType": "A String", # The message type.
        },
      ],
      "multipleDevicesAndHoldersAllowedStatus": "A String", # Identifies whether multiple users and devices will save the same object referencing this class.
      "redemptionIssuers": [ # Identifies which redemption issuers can redeem the pass over Smart Tap. Redemption issuers are identified by their issuer ID. Redemption issuers must have at least one Smart Tap key configured. The `enableSmartTap` and object level `smartTapRedemptionLevel` fields must also be set up correctly in order for a pass to support Smart Tap.
        "A String",
      ],
      "securityAnimation": { # Optional information about the security animation. If this is set a security animation will be rendered on pass details.
        "animationType": "A String", # Type of animation.
      },
      "textModulesData": [ # Text module data. If `textModulesData` is also defined on the object, both will be displayed. The maximum number of these fields displayed is 10 from class and 10 from object.
        { # Data for Text module. All fields are optional. Header will be displayed if available, different types of bodies will be concatenated if they are defined.
          "body": "A String", # The body of the Text Module, which is defined as an uninterrupted string. Recommended maximum length is 500 characters to ensure full string is displayed on smaller screens.
          "header": "A String", # The header of the Text Module. Recommended maximum length is 35 characters to ensure full string is displayed on smaller screens.
          "id": "A String", # The ID associated with a text module. This field is here to enable ease of management of text modules and referencing them in template overrides. The ID should only include alphanumeric characters, '_', or '-'. It can not include dots, as dots are used to separate fields within FieldReference.fieldPaths in template overrides.
          "localizedBody": { # Translated strings for the body. Recommended maximum length is 500 characters to ensure full string is displayed on smaller screens.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "localizedHeader": { # Translated strings for the header. Recommended maximum length is 35 characters to ensure full string is displayed on smaller screens.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
        },
      ],
      "valueAddedModuleData": [ # Optional value added module data. Maximum of ten on the class. For a pass only ten will be displayed, prioritizing those from the object.
        { # Data for Value Added module. Required fields are header and uri.
          "body": { # Body to be displayed on the module. Character limit is 50 and longer strings will be truncated.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "header": { # Header to be displayed on the module. Character limit is 60 and longer strings will be truncated.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "image": { # Wrapping type for Google hosted images. Next ID: 7 # Image to be displayed on the module. Recommended image ratio is 1:1. Images will be resized to fit this ratio.
            "contentDescription": { # Description of the image used for accessibility.
              "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
              "translatedValues": [ # Contains the translations for the string.
                {
                  "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                  "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                  "value": "A String", # The UTF-8 encoded translated string.
                },
              ],
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
            "sourceUri": { # The URI for the image.
              "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
              "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
                "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
                  "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                  "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                  "value": "A String", # The UTF-8 encoded translated string.
                },
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
                "translatedValues": [ # Contains the translations for the string.
                  {
                    "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                    "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                    "value": "A String", # The UTF-8 encoded translated string.
                  },
                ],
              },
              "uri": "A String", # The location of the image. URIs must have a scheme.
            },
          },
          "sortIndex": 42, # The index for sorting the modules. Modules with a lower sort index are shown before modules with a higher sort index. If unspecified, the sort index is assumed to be INT_MAX. For two modules with the same index, the sorting behavior is undefined.
          "uri": "A String", # URI that the module leads to on click. This can be a web link or a deep link as mentioned in https://developer.android.com/training/app-links/deep-linking.
          "viewConstraints": { # Constraints that all must be met for the module to be shown. # Constraints that all must be met for the module to be shown.
            "displayInterval": { # The period of time that the module will be displayed to users. Can define both a `startTime` and `endTime`. The module is displayed immediately after insertion unless a `startTime` is set. The module is displayed indefinitely if `endTime` is not set.
              "end": { # End time of the interval. Offset is not required. If an offset is provided and `start` time is set, `start` must also include an offset.
                "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
              },
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#timeInterval"`.
              "start": { # Start time of the interval. Offset is not required. If an offset is provided and `end` time is set, `end` must also include an offset.
                "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
              },
            },
          },
        },
      ],
      "viewUnlockRequirement": "A String", # View Unlock Requirement options for the generic pass.
    },
  ],
}
patch(resourceId, body=None, x__xgafv=None)
Updates the generic class referenced by the given class ID. This method supports patch semantics.

Args:
  resourceId: string, The unique identifier for a class. This ID must be unique across all classes from an issuer. This value needs to follow the format `issuerID.identifier` where `issuerID` is issued by Google and `identifier` is chosen by you. The unique identifier can only include alphanumeric characters, `.`, `_`, or `-`. (required)
  body: object, The request body.
    The object takes the form of:

{ # Generic Class
  "appLinkData": { # Optional app or website link that will be displayed as a button on the front of the pass. If AppLinkData is provided for the corresponding object that will be used instead.
    "androidAppLinkInfo": { # Optional information about the partner app link.
      "appLogoImage": { # Wrapping type for Google hosted images. Next ID: 7 # Deprecated. Image isn't supported in the app link module.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
      "appTarget": { # Target to follow when opening the app link on clients. It will be used by partners to open their app or webpage.
        "packageName": "A String", # Package name for AppTarget. For example: com.google.android.gm
        "targetUri": { # URI for AppTarget. The description on the URI must be set. Prefer setting package field instead, if this target is defined for your application.
          "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
          "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
          "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
        },
      },
      "description": { # Deprecated. Description isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "title": { # Deprecated. Title isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
    },
    "displayText": { # Optional display text for the app link button. Character limit is 30.
      "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
        "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
        "value": "A String", # The UTF-8 encoded translated string.
      },
      "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
      "translatedValues": [ # Contains the translations for the string.
        {
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
      ],
    },
    "iosAppLinkInfo": { # Deprecated. Links to open iOS apps are not supported.
      "appLogoImage": { # Wrapping type for Google hosted images. Next ID: 7 # Deprecated. Image isn't supported in the app link module.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
      "appTarget": { # Target to follow when opening the app link on clients. It will be used by partners to open their app or webpage.
        "packageName": "A String", # Package name for AppTarget. For example: com.google.android.gm
        "targetUri": { # URI for AppTarget. The description on the URI must be set. Prefer setting package field instead, if this target is defined for your application.
          "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
          "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
          "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
        },
      },
      "description": { # Deprecated. Description isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "title": { # Deprecated. Title isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
    },
    "webAppLinkInfo": { # Optional information about the partner web link.
      "appLogoImage": { # Wrapping type for Google hosted images. Next ID: 7 # Deprecated. Image isn't supported in the app link module.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
      "appTarget": { # Target to follow when opening the app link on clients. It will be used by partners to open their app or webpage.
        "packageName": "A String", # Package name for AppTarget. For example: com.google.android.gm
        "targetUri": { # URI for AppTarget. The description on the URI must be set. Prefer setting package field instead, if this target is defined for your application.
          "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
          "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
          "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
        },
      },
      "description": { # Deprecated. Description isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "title": { # Deprecated. Title isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
    },
  },
  "callbackOptions": { # Callback options to be used to call the issuer back for every save/delete of an object for this class by the end-user. All objects of this class are eligible for the callback.
    "updateRequestUrl": "A String", # URL for the merchant endpoint that would be called to request updates. The URL should be hosted on HTTPS and robots.txt should allow the URL path to be accessible by UserAgent:Googlebot. Deprecated.
    "url": "A String", # The HTTPS url configured by the merchant. The URL should be hosted on HTTPS and robots.txt should allow the URL path to be accessible by UserAgent:Googlebot.
  },
  "classTemplateInfo": { # Template information about how the class should be displayed. If unset, Google will fallback to a default set of fields to display.
    "cardBarcodeSectionDetails": { # Specifies extra information to be displayed above and below the barcode.
      "firstBottomDetail": { # Optional information to display below the barcode.
        "fieldSelector": { # Custom field selector to use with field overrides. # A reference to an existing text-based or image field to display.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
      },
      "firstTopDetail": { # Optional information to display above the barcode. If `secondTopDetail` is defined, this will be displayed to the start side of this detail section.
        "fieldSelector": { # Custom field selector to use with field overrides. # A reference to an existing text-based or image field to display.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
      },
      "secondTopDetail": { # Optional second piece of information to display above the barcode. If `firstTopDetail` is defined, this will be displayed to the end side of this detail section.
        "fieldSelector": { # Custom field selector to use with field overrides. # A reference to an existing text-based or image field to display.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
      },
    },
    "cardTemplateOverride": { # Override for the card view.
      "cardRowTemplateInfos": [ # Template information for rows in the card view. At most three rows are allowed to be specified.
        {
          "oneItem": { # Template for a row containing one item. Exactly one of "one_item", "two_items", "three_items" must be set.
            "item": { # The item to be displayed in the row. This item will be automatically centered.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
          },
          "threeItems": { # Template for a row containing three items. Exactly one of "one_item", "two_items", "three_items" must be set.
            "endItem": { # The item to be displayed at the end of the row. This item will be aligned to the right.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
            "middleItem": { # The item to be displayed in the middle of the row. This item will be centered between the start and end items.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
            "startItem": { # The item to be displayed at the start of the row. This item will be aligned to the left.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
          },
          "twoItems": { # Template for a row containing two items. Exactly one of "one_item", "two_items", "three_items" must be set.
            "endItem": { # The item to be displayed at the end of the row. This item will be aligned to the right.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
            "startItem": { # The item to be displayed at the start of the row. This item will be aligned to the left.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
          },
        },
      ],
    },
    "detailsTemplateOverride": { # Override for the details view (beneath the card view).
      "detailsItemInfos": [ # Information for the "nth" item displayed in the details list.
        {
          "item": { # The item to be displayed in the details list.
            "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
              "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                { # Reference definition to use with field overrides.
                  "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                  "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                },
              ],
            },
            "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
            "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
              "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                { # Reference definition to use with field overrides.
                  "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                  "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                },
              ],
            },
          },
        },
      ],
    },
    "listTemplateOverride": { # Override for the passes list view.
      "firstRowOption": { # Specifies from a predefined set of options or from a reference to the field what will be displayed in the first row. To set this override, set the FirstRowOption.fieldOption to the FieldSelector of your choice.
        "fieldOption": { # Custom field selector to use with field overrides. # A reference to the field to be displayed in the first row.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
        "transitOption": "A String",
      },
      "secondRowOption": { # Custom field selector to use with field overrides. # A reference to the field to be displayed in the second row. This option is only displayed if there are not multiple user objects in a group. If there is a group, the second row will always display a field shared by all objects. To set this override, please set secondRowOption to the FieldSelector of you choice.
        "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
          { # Reference definition to use with field overrides.
            "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
            "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
          },
        ],
      },
      "thirdRowOption": { # Custom field selector to use with field overrides. # An unused/deprecated field. Setting it will have no effect on what the user sees.
        "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
          { # Reference definition to use with field overrides.
            "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
            "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
          },
        ],
      },
    },
  },
  "enableSmartTap": True or False, # Available only to Smart Tap enabled partners. Contact support for additional guidance.
  "id": "A String", # Required. The unique identifier for the class. This ID must be unique across all from an issuer. This value needs to follow the format `issuerID.identifier` where `issuerID` is issued by Google and `identifier` is chosen by you. The unique identifier can only include alphanumeric characters, `.`, `_`, or `-`.
  "imageModulesData": [ # Image module data. If `imageModulesData` is also defined on the object, both will be displayed. Only one of the image from class and one from object level will be rendered when both set.
    {
      "id": "A String", # The ID associated with an image module. This field is here to enable ease of management of image modules.
      "mainImage": { # Wrapping type for Google hosted images. Next ID: 7 # A 100% width image.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
    },
  ],
  "linksModuleData": { # Links module data. If `linksModuleData` is also defined on the object, both will be displayed. The maximum number of these fields displayed is 10 from class and 10 from object.
    "uris": [ # The list of URIs.
      {
        "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
        "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
        "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
      },
    ],
  },
  "merchantLocations": [ # Merchant locations. There is a maximum of ten on the class. Any additional MerchantLocations added beyond the 10 will be rejected. These locations will trigger a notification when a user enters within a Google-set radius of the point. This field replaces the deprecated LatLongPoints.
    { # Locations of interest for this class or object. Currently, this location is used for geofenced notifications. When a user is within a set radius of this lat/long, and dwells there, Google will trigger a notification. When a user exits this radius, the notification will be hidden.
      "latitude": 3.14, # The latitude specified as any value in the range of -90.0 through +90.0, both inclusive. Values outside these bounds will be rejected.
      "longitude": 3.14, # The longitude specified in the range -180.0 through +180.0, both inclusive. Values outside these bounds will be rejected.
    },
  ],
  "messages": [ # An array of messages displayed in the app. All users of this object will receive its associated messages. The maximum number of these fields is 10.
    { # A message that will be displayed with a Valuable
      "body": "A String", # The message body.
      "displayInterval": { # The period of time that the message will be displayed to users. You can define both a `startTime` and `endTime` for each message. A message is displayed immediately after a Wallet Object is inserted unless a `startTime` is set. The message will appear in a list of messages indefinitely if `endTime` is not provided.
        "end": { # End time of the interval. Offset is not required. If an offset is provided and `start` time is set, `start` must also include an offset.
          "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#timeInterval"`.
        "start": { # Start time of the interval. Offset is not required. If an offset is provided and `end` time is set, `end` must also include an offset.
          "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
        },
      },
      "header": "A String", # The message header.
      "id": "A String", # The ID associated with a message. This field is here to enable ease of management of messages. Notice ID values could possibly duplicate across multiple messages in the same class/instance, and care must be taken to select a reasonable ID for each message.
      "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#walletObjectMessage"`.
      "localizedBody": { # Translated strings for the message body.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "localizedHeader": { # Translated strings for the message header.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "messageType": "A String", # The message type.
    },
  ],
  "multipleDevicesAndHoldersAllowedStatus": "A String", # Identifies whether multiple users and devices will save the same object referencing this class.
  "redemptionIssuers": [ # Identifies which redemption issuers can redeem the pass over Smart Tap. Redemption issuers are identified by their issuer ID. Redemption issuers must have at least one Smart Tap key configured. The `enableSmartTap` and object level `smartTapRedemptionLevel` fields must also be set up correctly in order for a pass to support Smart Tap.
    "A String",
  ],
  "securityAnimation": { # Optional information about the security animation. If this is set a security animation will be rendered on pass details.
    "animationType": "A String", # Type of animation.
  },
  "textModulesData": [ # Text module data. If `textModulesData` is also defined on the object, both will be displayed. The maximum number of these fields displayed is 10 from class and 10 from object.
    { # Data for Text module. All fields are optional. Header will be displayed if available, different types of bodies will be concatenated if they are defined.
      "body": "A String", # The body of the Text Module, which is defined as an uninterrupted string. Recommended maximum length is 500 characters to ensure full string is displayed on smaller screens.
      "header": "A String", # The header of the Text Module. Recommended maximum length is 35 characters to ensure full string is displayed on smaller screens.
      "id": "A String", # The ID associated with a text module. This field is here to enable ease of management of text modules and referencing them in template overrides. The ID should only include alphanumeric characters, '_', or '-'. It can not include dots, as dots are used to separate fields within FieldReference.fieldPaths in template overrides.
      "localizedBody": { # Translated strings for the body. Recommended maximum length is 500 characters to ensure full string is displayed on smaller screens.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "localizedHeader": { # Translated strings for the header. Recommended maximum length is 35 characters to ensure full string is displayed on smaller screens.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
    },
  ],
  "valueAddedModuleData": [ # Optional value added module data. Maximum of ten on the class. For a pass only ten will be displayed, prioritizing those from the object.
    { # Data for Value Added module. Required fields are header and uri.
      "body": { # Body to be displayed on the module. Character limit is 50 and longer strings will be truncated.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "header": { # Header to be displayed on the module. Character limit is 60 and longer strings will be truncated.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "image": { # Wrapping type for Google hosted images. Next ID: 7 # Image to be displayed on the module. Recommended image ratio is 1:1. Images will be resized to fit this ratio.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
      "sortIndex": 42, # The index for sorting the modules. Modules with a lower sort index are shown before modules with a higher sort index. If unspecified, the sort index is assumed to be INT_MAX. For two modules with the same index, the sorting behavior is undefined.
      "uri": "A String", # URI that the module leads to on click. This can be a web link or a deep link as mentioned in https://developer.android.com/training/app-links/deep-linking.
      "viewConstraints": { # Constraints that all must be met for the module to be shown. # Constraints that all must be met for the module to be shown.
        "displayInterval": { # The period of time that the module will be displayed to users. Can define both a `startTime` and `endTime`. The module is displayed immediately after insertion unless a `startTime` is set. The module is displayed indefinitely if `endTime` is not set.
          "end": { # End time of the interval. Offset is not required. If an offset is provided and `start` time is set, `start` must also include an offset.
            "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#timeInterval"`.
          "start": { # Start time of the interval. Offset is not required. If an offset is provided and `end` time is set, `end` must also include an offset.
            "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
          },
        },
      },
    },
  ],
  "viewUnlockRequirement": "A String", # View Unlock Requirement options for the generic pass.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Generic Class
  "appLinkData": { # Optional app or website link that will be displayed as a button on the front of the pass. If AppLinkData is provided for the corresponding object that will be used instead.
    "androidAppLinkInfo": { # Optional information about the partner app link.
      "appLogoImage": { # Wrapping type for Google hosted images. Next ID: 7 # Deprecated. Image isn't supported in the app link module.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
      "appTarget": { # Target to follow when opening the app link on clients. It will be used by partners to open their app or webpage.
        "packageName": "A String", # Package name for AppTarget. For example: com.google.android.gm
        "targetUri": { # URI for AppTarget. The description on the URI must be set. Prefer setting package field instead, if this target is defined for your application.
          "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
          "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
          "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
        },
      },
      "description": { # Deprecated. Description isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "title": { # Deprecated. Title isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
    },
    "displayText": { # Optional display text for the app link button. Character limit is 30.
      "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
        "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
        "value": "A String", # The UTF-8 encoded translated string.
      },
      "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
      "translatedValues": [ # Contains the translations for the string.
        {
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
      ],
    },
    "iosAppLinkInfo": { # Deprecated. Links to open iOS apps are not supported.
      "appLogoImage": { # Wrapping type for Google hosted images. Next ID: 7 # Deprecated. Image isn't supported in the app link module.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
      "appTarget": { # Target to follow when opening the app link on clients. It will be used by partners to open their app or webpage.
        "packageName": "A String", # Package name for AppTarget. For example: com.google.android.gm
        "targetUri": { # URI for AppTarget. The description on the URI must be set. Prefer setting package field instead, if this target is defined for your application.
          "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
          "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
          "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
        },
      },
      "description": { # Deprecated. Description isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "title": { # Deprecated. Title isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
    },
    "webAppLinkInfo": { # Optional information about the partner web link.
      "appLogoImage": { # Wrapping type for Google hosted images. Next ID: 7 # Deprecated. Image isn't supported in the app link module.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
      "appTarget": { # Target to follow when opening the app link on clients. It will be used by partners to open their app or webpage.
        "packageName": "A String", # Package name for AppTarget. For example: com.google.android.gm
        "targetUri": { # URI for AppTarget. The description on the URI must be set. Prefer setting package field instead, if this target is defined for your application.
          "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
          "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
          "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
        },
      },
      "description": { # Deprecated. Description isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "title": { # Deprecated. Title isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
    },
  },
  "callbackOptions": { # Callback options to be used to call the issuer back for every save/delete of an object for this class by the end-user. All objects of this class are eligible for the callback.
    "updateRequestUrl": "A String", # URL for the merchant endpoint that would be called to request updates. The URL should be hosted on HTTPS and robots.txt should allow the URL path to be accessible by UserAgent:Googlebot. Deprecated.
    "url": "A String", # The HTTPS url configured by the merchant. The URL should be hosted on HTTPS and robots.txt should allow the URL path to be accessible by UserAgent:Googlebot.
  },
  "classTemplateInfo": { # Template information about how the class should be displayed. If unset, Google will fallback to a default set of fields to display.
    "cardBarcodeSectionDetails": { # Specifies extra information to be displayed above and below the barcode.
      "firstBottomDetail": { # Optional information to display below the barcode.
        "fieldSelector": { # Custom field selector to use with field overrides. # A reference to an existing text-based or image field to display.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
      },
      "firstTopDetail": { # Optional information to display above the barcode. If `secondTopDetail` is defined, this will be displayed to the start side of this detail section.
        "fieldSelector": { # Custom field selector to use with field overrides. # A reference to an existing text-based or image field to display.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
      },
      "secondTopDetail": { # Optional second piece of information to display above the barcode. If `firstTopDetail` is defined, this will be displayed to the end side of this detail section.
        "fieldSelector": { # Custom field selector to use with field overrides. # A reference to an existing text-based or image field to display.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
      },
    },
    "cardTemplateOverride": { # Override for the card view.
      "cardRowTemplateInfos": [ # Template information for rows in the card view. At most three rows are allowed to be specified.
        {
          "oneItem": { # Template for a row containing one item. Exactly one of "one_item", "two_items", "three_items" must be set.
            "item": { # The item to be displayed in the row. This item will be automatically centered.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
          },
          "threeItems": { # Template for a row containing three items. Exactly one of "one_item", "two_items", "three_items" must be set.
            "endItem": { # The item to be displayed at the end of the row. This item will be aligned to the right.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
            "middleItem": { # The item to be displayed in the middle of the row. This item will be centered between the start and end items.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
            "startItem": { # The item to be displayed at the start of the row. This item will be aligned to the left.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
          },
          "twoItems": { # Template for a row containing two items. Exactly one of "one_item", "two_items", "three_items" must be set.
            "endItem": { # The item to be displayed at the end of the row. This item will be aligned to the right.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
            "startItem": { # The item to be displayed at the start of the row. This item will be aligned to the left.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
          },
        },
      ],
    },
    "detailsTemplateOverride": { # Override for the details view (beneath the card view).
      "detailsItemInfos": [ # Information for the "nth" item displayed in the details list.
        {
          "item": { # The item to be displayed in the details list.
            "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
              "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                { # Reference definition to use with field overrides.
                  "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                  "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                },
              ],
            },
            "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
            "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
              "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                { # Reference definition to use with field overrides.
                  "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                  "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                },
              ],
            },
          },
        },
      ],
    },
    "listTemplateOverride": { # Override for the passes list view.
      "firstRowOption": { # Specifies from a predefined set of options or from a reference to the field what will be displayed in the first row. To set this override, set the FirstRowOption.fieldOption to the FieldSelector of your choice.
        "fieldOption": { # Custom field selector to use with field overrides. # A reference to the field to be displayed in the first row.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
        "transitOption": "A String",
      },
      "secondRowOption": { # Custom field selector to use with field overrides. # A reference to the field to be displayed in the second row. This option is only displayed if there are not multiple user objects in a group. If there is a group, the second row will always display a field shared by all objects. To set this override, please set secondRowOption to the FieldSelector of you choice.
        "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
          { # Reference definition to use with field overrides.
            "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
            "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
          },
        ],
      },
      "thirdRowOption": { # Custom field selector to use with field overrides. # An unused/deprecated field. Setting it will have no effect on what the user sees.
        "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
          { # Reference definition to use with field overrides.
            "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
            "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
          },
        ],
      },
    },
  },
  "enableSmartTap": True or False, # Available only to Smart Tap enabled partners. Contact support for additional guidance.
  "id": "A String", # Required. The unique identifier for the class. This ID must be unique across all from an issuer. This value needs to follow the format `issuerID.identifier` where `issuerID` is issued by Google and `identifier` is chosen by you. The unique identifier can only include alphanumeric characters, `.`, `_`, or `-`.
  "imageModulesData": [ # Image module data. If `imageModulesData` is also defined on the object, both will be displayed. Only one of the image from class and one from object level will be rendered when both set.
    {
      "id": "A String", # The ID associated with an image module. This field is here to enable ease of management of image modules.
      "mainImage": { # Wrapping type for Google hosted images. Next ID: 7 # A 100% width image.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
    },
  ],
  "linksModuleData": { # Links module data. If `linksModuleData` is also defined on the object, both will be displayed. The maximum number of these fields displayed is 10 from class and 10 from object.
    "uris": [ # The list of URIs.
      {
        "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
        "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
        "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
      },
    ],
  },
  "merchantLocations": [ # Merchant locations. There is a maximum of ten on the class. Any additional MerchantLocations added beyond the 10 will be rejected. These locations will trigger a notification when a user enters within a Google-set radius of the point. This field replaces the deprecated LatLongPoints.
    { # Locations of interest for this class or object. Currently, this location is used for geofenced notifications. When a user is within a set radius of this lat/long, and dwells there, Google will trigger a notification. When a user exits this radius, the notification will be hidden.
      "latitude": 3.14, # The latitude specified as any value in the range of -90.0 through +90.0, both inclusive. Values outside these bounds will be rejected.
      "longitude": 3.14, # The longitude specified in the range -180.0 through +180.0, both inclusive. Values outside these bounds will be rejected.
    },
  ],
  "messages": [ # An array of messages displayed in the app. All users of this object will receive its associated messages. The maximum number of these fields is 10.
    { # A message that will be displayed with a Valuable
      "body": "A String", # The message body.
      "displayInterval": { # The period of time that the message will be displayed to users. You can define both a `startTime` and `endTime` for each message. A message is displayed immediately after a Wallet Object is inserted unless a `startTime` is set. The message will appear in a list of messages indefinitely if `endTime` is not provided.
        "end": { # End time of the interval. Offset is not required. If an offset is provided and `start` time is set, `start` must also include an offset.
          "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#timeInterval"`.
        "start": { # Start time of the interval. Offset is not required. If an offset is provided and `end` time is set, `end` must also include an offset.
          "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
        },
      },
      "header": "A String", # The message header.
      "id": "A String", # The ID associated with a message. This field is here to enable ease of management of messages. Notice ID values could possibly duplicate across multiple messages in the same class/instance, and care must be taken to select a reasonable ID for each message.
      "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#walletObjectMessage"`.
      "localizedBody": { # Translated strings for the message body.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "localizedHeader": { # Translated strings for the message header.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "messageType": "A String", # The message type.
    },
  ],
  "multipleDevicesAndHoldersAllowedStatus": "A String", # Identifies whether multiple users and devices will save the same object referencing this class.
  "redemptionIssuers": [ # Identifies which redemption issuers can redeem the pass over Smart Tap. Redemption issuers are identified by their issuer ID. Redemption issuers must have at least one Smart Tap key configured. The `enableSmartTap` and object level `smartTapRedemptionLevel` fields must also be set up correctly in order for a pass to support Smart Tap.
    "A String",
  ],
  "securityAnimation": { # Optional information about the security animation. If this is set a security animation will be rendered on pass details.
    "animationType": "A String", # Type of animation.
  },
  "textModulesData": [ # Text module data. If `textModulesData` is also defined on the object, both will be displayed. The maximum number of these fields displayed is 10 from class and 10 from object.
    { # Data for Text module. All fields are optional. Header will be displayed if available, different types of bodies will be concatenated if they are defined.
      "body": "A String", # The body of the Text Module, which is defined as an uninterrupted string. Recommended maximum length is 500 characters to ensure full string is displayed on smaller screens.
      "header": "A String", # The header of the Text Module. Recommended maximum length is 35 characters to ensure full string is displayed on smaller screens.
      "id": "A String", # The ID associated with a text module. This field is here to enable ease of management of text modules and referencing them in template overrides. The ID should only include alphanumeric characters, '_', or '-'. It can not include dots, as dots are used to separate fields within FieldReference.fieldPaths in template overrides.
      "localizedBody": { # Translated strings for the body. Recommended maximum length is 500 characters to ensure full string is displayed on smaller screens.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "localizedHeader": { # Translated strings for the header. Recommended maximum length is 35 characters to ensure full string is displayed on smaller screens.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
    },
  ],
  "valueAddedModuleData": [ # Optional value added module data. Maximum of ten on the class. For a pass only ten will be displayed, prioritizing those from the object.
    { # Data for Value Added module. Required fields are header and uri.
      "body": { # Body to be displayed on the module. Character limit is 50 and longer strings will be truncated.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "header": { # Header to be displayed on the module. Character limit is 60 and longer strings will be truncated.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "image": { # Wrapping type for Google hosted images. Next ID: 7 # Image to be displayed on the module. Recommended image ratio is 1:1. Images will be resized to fit this ratio.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
      "sortIndex": 42, # The index for sorting the modules. Modules with a lower sort index are shown before modules with a higher sort index. If unspecified, the sort index is assumed to be INT_MAX. For two modules with the same index, the sorting behavior is undefined.
      "uri": "A String", # URI that the module leads to on click. This can be a web link or a deep link as mentioned in https://developer.android.com/training/app-links/deep-linking.
      "viewConstraints": { # Constraints that all must be met for the module to be shown. # Constraints that all must be met for the module to be shown.
        "displayInterval": { # The period of time that the module will be displayed to users. Can define both a `startTime` and `endTime`. The module is displayed immediately after insertion unless a `startTime` is set. The module is displayed indefinitely if `endTime` is not set.
          "end": { # End time of the interval. Offset is not required. If an offset is provided and `start` time is set, `start` must also include an offset.
            "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#timeInterval"`.
          "start": { # Start time of the interval. Offset is not required. If an offset is provided and `end` time is set, `end` must also include an offset.
            "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
          },
        },
      },
    },
  ],
  "viewUnlockRequirement": "A String", # View Unlock Requirement options for the generic pass.
}
update(resourceId, body=None, x__xgafv=None)
Updates the Generic class referenced by the given class ID.

Args:
  resourceId: string, The unique identifier for a class. This ID must be unique across all classes from an issuer. This value needs to follow the format `issuerID.identifier` where `issuerID` is issued by Google and `identifier` is chosen by you. The unique identifier can only include alphanumeric characters, `.`, `_`, or `-`. (required)
  body: object, The request body.
    The object takes the form of:

{ # Generic Class
  "appLinkData": { # Optional app or website link that will be displayed as a button on the front of the pass. If AppLinkData is provided for the corresponding object that will be used instead.
    "androidAppLinkInfo": { # Optional information about the partner app link.
      "appLogoImage": { # Wrapping type for Google hosted images. Next ID: 7 # Deprecated. Image isn't supported in the app link module.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
      "appTarget": { # Target to follow when opening the app link on clients. It will be used by partners to open their app or webpage.
        "packageName": "A String", # Package name for AppTarget. For example: com.google.android.gm
        "targetUri": { # URI for AppTarget. The description on the URI must be set. Prefer setting package field instead, if this target is defined for your application.
          "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
          "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
          "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
        },
      },
      "description": { # Deprecated. Description isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "title": { # Deprecated. Title isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
    },
    "displayText": { # Optional display text for the app link button. Character limit is 30.
      "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
        "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
        "value": "A String", # The UTF-8 encoded translated string.
      },
      "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
      "translatedValues": [ # Contains the translations for the string.
        {
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
      ],
    },
    "iosAppLinkInfo": { # Deprecated. Links to open iOS apps are not supported.
      "appLogoImage": { # Wrapping type for Google hosted images. Next ID: 7 # Deprecated. Image isn't supported in the app link module.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
      "appTarget": { # Target to follow when opening the app link on clients. It will be used by partners to open their app or webpage.
        "packageName": "A String", # Package name for AppTarget. For example: com.google.android.gm
        "targetUri": { # URI for AppTarget. The description on the URI must be set. Prefer setting package field instead, if this target is defined for your application.
          "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
          "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
          "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
        },
      },
      "description": { # Deprecated. Description isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "title": { # Deprecated. Title isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
    },
    "webAppLinkInfo": { # Optional information about the partner web link.
      "appLogoImage": { # Wrapping type for Google hosted images. Next ID: 7 # Deprecated. Image isn't supported in the app link module.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
      "appTarget": { # Target to follow when opening the app link on clients. It will be used by partners to open their app or webpage.
        "packageName": "A String", # Package name for AppTarget. For example: com.google.android.gm
        "targetUri": { # URI for AppTarget. The description on the URI must be set. Prefer setting package field instead, if this target is defined for your application.
          "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
          "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
          "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
        },
      },
      "description": { # Deprecated. Description isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "title": { # Deprecated. Title isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
    },
  },
  "callbackOptions": { # Callback options to be used to call the issuer back for every save/delete of an object for this class by the end-user. All objects of this class are eligible for the callback.
    "updateRequestUrl": "A String", # URL for the merchant endpoint that would be called to request updates. The URL should be hosted on HTTPS and robots.txt should allow the URL path to be accessible by UserAgent:Googlebot. Deprecated.
    "url": "A String", # The HTTPS url configured by the merchant. The URL should be hosted on HTTPS and robots.txt should allow the URL path to be accessible by UserAgent:Googlebot.
  },
  "classTemplateInfo": { # Template information about how the class should be displayed. If unset, Google will fallback to a default set of fields to display.
    "cardBarcodeSectionDetails": { # Specifies extra information to be displayed above and below the barcode.
      "firstBottomDetail": { # Optional information to display below the barcode.
        "fieldSelector": { # Custom field selector to use with field overrides. # A reference to an existing text-based or image field to display.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
      },
      "firstTopDetail": { # Optional information to display above the barcode. If `secondTopDetail` is defined, this will be displayed to the start side of this detail section.
        "fieldSelector": { # Custom field selector to use with field overrides. # A reference to an existing text-based or image field to display.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
      },
      "secondTopDetail": { # Optional second piece of information to display above the barcode. If `firstTopDetail` is defined, this will be displayed to the end side of this detail section.
        "fieldSelector": { # Custom field selector to use with field overrides. # A reference to an existing text-based or image field to display.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
      },
    },
    "cardTemplateOverride": { # Override for the card view.
      "cardRowTemplateInfos": [ # Template information for rows in the card view. At most three rows are allowed to be specified.
        {
          "oneItem": { # Template for a row containing one item. Exactly one of "one_item", "two_items", "three_items" must be set.
            "item": { # The item to be displayed in the row. This item will be automatically centered.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
          },
          "threeItems": { # Template for a row containing three items. Exactly one of "one_item", "two_items", "three_items" must be set.
            "endItem": { # The item to be displayed at the end of the row. This item will be aligned to the right.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
            "middleItem": { # The item to be displayed in the middle of the row. This item will be centered between the start and end items.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
            "startItem": { # The item to be displayed at the start of the row. This item will be aligned to the left.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
          },
          "twoItems": { # Template for a row containing two items. Exactly one of "one_item", "two_items", "three_items" must be set.
            "endItem": { # The item to be displayed at the end of the row. This item will be aligned to the right.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
            "startItem": { # The item to be displayed at the start of the row. This item will be aligned to the left.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
          },
        },
      ],
    },
    "detailsTemplateOverride": { # Override for the details view (beneath the card view).
      "detailsItemInfos": [ # Information for the "nth" item displayed in the details list.
        {
          "item": { # The item to be displayed in the details list.
            "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
              "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                { # Reference definition to use with field overrides.
                  "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                  "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                },
              ],
            },
            "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
            "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
              "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                { # Reference definition to use with field overrides.
                  "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                  "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                },
              ],
            },
          },
        },
      ],
    },
    "listTemplateOverride": { # Override for the passes list view.
      "firstRowOption": { # Specifies from a predefined set of options or from a reference to the field what will be displayed in the first row. To set this override, set the FirstRowOption.fieldOption to the FieldSelector of your choice.
        "fieldOption": { # Custom field selector to use with field overrides. # A reference to the field to be displayed in the first row.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
        "transitOption": "A String",
      },
      "secondRowOption": { # Custom field selector to use with field overrides. # A reference to the field to be displayed in the second row. This option is only displayed if there are not multiple user objects in a group. If there is a group, the second row will always display a field shared by all objects. To set this override, please set secondRowOption to the FieldSelector of you choice.
        "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
          { # Reference definition to use with field overrides.
            "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
            "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
          },
        ],
      },
      "thirdRowOption": { # Custom field selector to use with field overrides. # An unused/deprecated field. Setting it will have no effect on what the user sees.
        "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
          { # Reference definition to use with field overrides.
            "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
            "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
          },
        ],
      },
    },
  },
  "enableSmartTap": True or False, # Available only to Smart Tap enabled partners. Contact support for additional guidance.
  "id": "A String", # Required. The unique identifier for the class. This ID must be unique across all from an issuer. This value needs to follow the format `issuerID.identifier` where `issuerID` is issued by Google and `identifier` is chosen by you. The unique identifier can only include alphanumeric characters, `.`, `_`, or `-`.
  "imageModulesData": [ # Image module data. If `imageModulesData` is also defined on the object, both will be displayed. Only one of the image from class and one from object level will be rendered when both set.
    {
      "id": "A String", # The ID associated with an image module. This field is here to enable ease of management of image modules.
      "mainImage": { # Wrapping type for Google hosted images. Next ID: 7 # A 100% width image.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
    },
  ],
  "linksModuleData": { # Links module data. If `linksModuleData` is also defined on the object, both will be displayed. The maximum number of these fields displayed is 10 from class and 10 from object.
    "uris": [ # The list of URIs.
      {
        "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
        "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
        "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
      },
    ],
  },
  "merchantLocations": [ # Merchant locations. There is a maximum of ten on the class. Any additional MerchantLocations added beyond the 10 will be rejected. These locations will trigger a notification when a user enters within a Google-set radius of the point. This field replaces the deprecated LatLongPoints.
    { # Locations of interest for this class or object. Currently, this location is used for geofenced notifications. When a user is within a set radius of this lat/long, and dwells there, Google will trigger a notification. When a user exits this radius, the notification will be hidden.
      "latitude": 3.14, # The latitude specified as any value in the range of -90.0 through +90.0, both inclusive. Values outside these bounds will be rejected.
      "longitude": 3.14, # The longitude specified in the range -180.0 through +180.0, both inclusive. Values outside these bounds will be rejected.
    },
  ],
  "messages": [ # An array of messages displayed in the app. All users of this object will receive its associated messages. The maximum number of these fields is 10.
    { # A message that will be displayed with a Valuable
      "body": "A String", # The message body.
      "displayInterval": { # The period of time that the message will be displayed to users. You can define both a `startTime` and `endTime` for each message. A message is displayed immediately after a Wallet Object is inserted unless a `startTime` is set. The message will appear in a list of messages indefinitely if `endTime` is not provided.
        "end": { # End time of the interval. Offset is not required. If an offset is provided and `start` time is set, `start` must also include an offset.
          "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#timeInterval"`.
        "start": { # Start time of the interval. Offset is not required. If an offset is provided and `end` time is set, `end` must also include an offset.
          "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
        },
      },
      "header": "A String", # The message header.
      "id": "A String", # The ID associated with a message. This field is here to enable ease of management of messages. Notice ID values could possibly duplicate across multiple messages in the same class/instance, and care must be taken to select a reasonable ID for each message.
      "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#walletObjectMessage"`.
      "localizedBody": { # Translated strings for the message body.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "localizedHeader": { # Translated strings for the message header.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "messageType": "A String", # The message type.
    },
  ],
  "multipleDevicesAndHoldersAllowedStatus": "A String", # Identifies whether multiple users and devices will save the same object referencing this class.
  "redemptionIssuers": [ # Identifies which redemption issuers can redeem the pass over Smart Tap. Redemption issuers are identified by their issuer ID. Redemption issuers must have at least one Smart Tap key configured. The `enableSmartTap` and object level `smartTapRedemptionLevel` fields must also be set up correctly in order for a pass to support Smart Tap.
    "A String",
  ],
  "securityAnimation": { # Optional information about the security animation. If this is set a security animation will be rendered on pass details.
    "animationType": "A String", # Type of animation.
  },
  "textModulesData": [ # Text module data. If `textModulesData` is also defined on the object, both will be displayed. The maximum number of these fields displayed is 10 from class and 10 from object.
    { # Data for Text module. All fields are optional. Header will be displayed if available, different types of bodies will be concatenated if they are defined.
      "body": "A String", # The body of the Text Module, which is defined as an uninterrupted string. Recommended maximum length is 500 characters to ensure full string is displayed on smaller screens.
      "header": "A String", # The header of the Text Module. Recommended maximum length is 35 characters to ensure full string is displayed on smaller screens.
      "id": "A String", # The ID associated with a text module. This field is here to enable ease of management of text modules and referencing them in template overrides. The ID should only include alphanumeric characters, '_', or '-'. It can not include dots, as dots are used to separate fields within FieldReference.fieldPaths in template overrides.
      "localizedBody": { # Translated strings for the body. Recommended maximum length is 500 characters to ensure full string is displayed on smaller screens.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "localizedHeader": { # Translated strings for the header. Recommended maximum length is 35 characters to ensure full string is displayed on smaller screens.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
    },
  ],
  "valueAddedModuleData": [ # Optional value added module data. Maximum of ten on the class. For a pass only ten will be displayed, prioritizing those from the object.
    { # Data for Value Added module. Required fields are header and uri.
      "body": { # Body to be displayed on the module. Character limit is 50 and longer strings will be truncated.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "header": { # Header to be displayed on the module. Character limit is 60 and longer strings will be truncated.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "image": { # Wrapping type for Google hosted images. Next ID: 7 # Image to be displayed on the module. Recommended image ratio is 1:1. Images will be resized to fit this ratio.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
      "sortIndex": 42, # The index for sorting the modules. Modules with a lower sort index are shown before modules with a higher sort index. If unspecified, the sort index is assumed to be INT_MAX. For two modules with the same index, the sorting behavior is undefined.
      "uri": "A String", # URI that the module leads to on click. This can be a web link or a deep link as mentioned in https://developer.android.com/training/app-links/deep-linking.
      "viewConstraints": { # Constraints that all must be met for the module to be shown. # Constraints that all must be met for the module to be shown.
        "displayInterval": { # The period of time that the module will be displayed to users. Can define both a `startTime` and `endTime`. The module is displayed immediately after insertion unless a `startTime` is set. The module is displayed indefinitely if `endTime` is not set.
          "end": { # End time of the interval. Offset is not required. If an offset is provided and `start` time is set, `start` must also include an offset.
            "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#timeInterval"`.
          "start": { # Start time of the interval. Offset is not required. If an offset is provided and `end` time is set, `end` must also include an offset.
            "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
          },
        },
      },
    },
  ],
  "viewUnlockRequirement": "A String", # View Unlock Requirement options for the generic pass.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Generic Class
  "appLinkData": { # Optional app or website link that will be displayed as a button on the front of the pass. If AppLinkData is provided for the corresponding object that will be used instead.
    "androidAppLinkInfo": { # Optional information about the partner app link.
      "appLogoImage": { # Wrapping type for Google hosted images. Next ID: 7 # Deprecated. Image isn't supported in the app link module.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
      "appTarget": { # Target to follow when opening the app link on clients. It will be used by partners to open their app or webpage.
        "packageName": "A String", # Package name for AppTarget. For example: com.google.android.gm
        "targetUri": { # URI for AppTarget. The description on the URI must be set. Prefer setting package field instead, if this target is defined for your application.
          "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
          "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
          "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
        },
      },
      "description": { # Deprecated. Description isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "title": { # Deprecated. Title isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
    },
    "displayText": { # Optional display text for the app link button. Character limit is 30.
      "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
        "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
        "value": "A String", # The UTF-8 encoded translated string.
      },
      "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
      "translatedValues": [ # Contains the translations for the string.
        {
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
      ],
    },
    "iosAppLinkInfo": { # Deprecated. Links to open iOS apps are not supported.
      "appLogoImage": { # Wrapping type for Google hosted images. Next ID: 7 # Deprecated. Image isn't supported in the app link module.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
      "appTarget": { # Target to follow when opening the app link on clients. It will be used by partners to open their app or webpage.
        "packageName": "A String", # Package name for AppTarget. For example: com.google.android.gm
        "targetUri": { # URI for AppTarget. The description on the URI must be set. Prefer setting package field instead, if this target is defined for your application.
          "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
          "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
          "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
        },
      },
      "description": { # Deprecated. Description isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "title": { # Deprecated. Title isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
    },
    "webAppLinkInfo": { # Optional information about the partner web link.
      "appLogoImage": { # Wrapping type for Google hosted images. Next ID: 7 # Deprecated. Image isn't supported in the app link module.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
      "appTarget": { # Target to follow when opening the app link on clients. It will be used by partners to open their app or webpage.
        "packageName": "A String", # Package name for AppTarget. For example: com.google.android.gm
        "targetUri": { # URI for AppTarget. The description on the URI must be set. Prefer setting package field instead, if this target is defined for your application.
          "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
          "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
          "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
        },
      },
      "description": { # Deprecated. Description isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "title": { # Deprecated. Title isn't supported in the app link module.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
    },
  },
  "callbackOptions": { # Callback options to be used to call the issuer back for every save/delete of an object for this class by the end-user. All objects of this class are eligible for the callback.
    "updateRequestUrl": "A String", # URL for the merchant endpoint that would be called to request updates. The URL should be hosted on HTTPS and robots.txt should allow the URL path to be accessible by UserAgent:Googlebot. Deprecated.
    "url": "A String", # The HTTPS url configured by the merchant. The URL should be hosted on HTTPS and robots.txt should allow the URL path to be accessible by UserAgent:Googlebot.
  },
  "classTemplateInfo": { # Template information about how the class should be displayed. If unset, Google will fallback to a default set of fields to display.
    "cardBarcodeSectionDetails": { # Specifies extra information to be displayed above and below the barcode.
      "firstBottomDetail": { # Optional information to display below the barcode.
        "fieldSelector": { # Custom field selector to use with field overrides. # A reference to an existing text-based or image field to display.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
      },
      "firstTopDetail": { # Optional information to display above the barcode. If `secondTopDetail` is defined, this will be displayed to the start side of this detail section.
        "fieldSelector": { # Custom field selector to use with field overrides. # A reference to an existing text-based or image field to display.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
      },
      "secondTopDetail": { # Optional second piece of information to display above the barcode. If `firstTopDetail` is defined, this will be displayed to the end side of this detail section.
        "fieldSelector": { # Custom field selector to use with field overrides. # A reference to an existing text-based or image field to display.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
      },
    },
    "cardTemplateOverride": { # Override for the card view.
      "cardRowTemplateInfos": [ # Template information for rows in the card view. At most three rows are allowed to be specified.
        {
          "oneItem": { # Template for a row containing one item. Exactly one of "one_item", "two_items", "three_items" must be set.
            "item": { # The item to be displayed in the row. This item will be automatically centered.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
          },
          "threeItems": { # Template for a row containing three items. Exactly one of "one_item", "two_items", "three_items" must be set.
            "endItem": { # The item to be displayed at the end of the row. This item will be aligned to the right.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
            "middleItem": { # The item to be displayed in the middle of the row. This item will be centered between the start and end items.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
            "startItem": { # The item to be displayed at the start of the row. This item will be aligned to the left.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
          },
          "twoItems": { # Template for a row containing two items. Exactly one of "one_item", "two_items", "three_items" must be set.
            "endItem": { # The item to be displayed at the end of the row. This item will be aligned to the right.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
            "startItem": { # The item to be displayed at the start of the row. This item will be aligned to the left.
              "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
              "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
              "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
                "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                  { # Reference definition to use with field overrides.
                    "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                    "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                  },
                ],
              },
            },
          },
        },
      ],
    },
    "detailsTemplateOverride": { # Override for the details view (beneath the card view).
      "detailsItemInfos": [ # Information for the "nth" item displayed in the details list.
        {
          "item": { # The item to be displayed in the details list.
            "firstValue": { # Custom field selector to use with field overrides. # A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
              "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                { # Reference definition to use with field overrides.
                  "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                  "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                },
              ],
            },
            "predefinedItem": "A String", # A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
            "secondValue": { # Custom field selector to use with field overrides. # A reference to a field to display. This may only be populated if the `firstValue` field is populated.
              "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
                { # Reference definition to use with field overrides.
                  "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
                  "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
                },
              ],
            },
          },
        },
      ],
    },
    "listTemplateOverride": { # Override for the passes list view.
      "firstRowOption": { # Specifies from a predefined set of options or from a reference to the field what will be displayed in the first row. To set this override, set the FirstRowOption.fieldOption to the FieldSelector of your choice.
        "fieldOption": { # Custom field selector to use with field overrides. # A reference to the field to be displayed in the first row.
          "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
            { # Reference definition to use with field overrides.
              "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
              "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
            },
          ],
        },
        "transitOption": "A String",
      },
      "secondRowOption": { # Custom field selector to use with field overrides. # A reference to the field to be displayed in the second row. This option is only displayed if there are not multiple user objects in a group. If there is a group, the second row will always display a field shared by all objects. To set this override, please set secondRowOption to the FieldSelector of you choice.
        "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
          { # Reference definition to use with field overrides.
            "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
            "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
          },
        ],
      },
      "thirdRowOption": { # Custom field selector to use with field overrides. # An unused/deprecated field. Setting it will have no effect on what the user sees.
        "fields": [ # If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
          { # Reference definition to use with field overrides.
            "dateFormat": "A String", # Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
            "fieldPath": "A String", # Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
          },
        ],
      },
    },
  },
  "enableSmartTap": True or False, # Available only to Smart Tap enabled partners. Contact support for additional guidance.
  "id": "A String", # Required. The unique identifier for the class. This ID must be unique across all from an issuer. This value needs to follow the format `issuerID.identifier` where `issuerID` is issued by Google and `identifier` is chosen by you. The unique identifier can only include alphanumeric characters, `.`, `_`, or `-`.
  "imageModulesData": [ # Image module data. If `imageModulesData` is also defined on the object, both will be displayed. Only one of the image from class and one from object level will be rendered when both set.
    {
      "id": "A String", # The ID associated with an image module. This field is here to enable ease of management of image modules.
      "mainImage": { # Wrapping type for Google hosted images. Next ID: 7 # A 100% width image.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
    },
  ],
  "linksModuleData": { # Links module data. If `linksModuleData` is also defined on the object, both will be displayed. The maximum number of these fields displayed is 10 from class and 10 from object.
    "uris": [ # The list of URIs.
      {
        "description": "A String", # The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
        "id": "A String", # The ID associated with a uri. This field is here to enable ease of management of uris.
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.
        "localizedDescription": { # Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "uri": "A String", # The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
      },
    ],
  },
  "merchantLocations": [ # Merchant locations. There is a maximum of ten on the class. Any additional MerchantLocations added beyond the 10 will be rejected. These locations will trigger a notification when a user enters within a Google-set radius of the point. This field replaces the deprecated LatLongPoints.
    { # Locations of interest for this class or object. Currently, this location is used for geofenced notifications. When a user is within a set radius of this lat/long, and dwells there, Google will trigger a notification. When a user exits this radius, the notification will be hidden.
      "latitude": 3.14, # The latitude specified as any value in the range of -90.0 through +90.0, both inclusive. Values outside these bounds will be rejected.
      "longitude": 3.14, # The longitude specified in the range -180.0 through +180.0, both inclusive. Values outside these bounds will be rejected.
    },
  ],
  "messages": [ # An array of messages displayed in the app. All users of this object will receive its associated messages. The maximum number of these fields is 10.
    { # A message that will be displayed with a Valuable
      "body": "A String", # The message body.
      "displayInterval": { # The period of time that the message will be displayed to users. You can define both a `startTime` and `endTime` for each message. A message is displayed immediately after a Wallet Object is inserted unless a `startTime` is set. The message will appear in a list of messages indefinitely if `endTime` is not provided.
        "end": { # End time of the interval. Offset is not required. If an offset is provided and `start` time is set, `start` must also include an offset.
          "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#timeInterval"`.
        "start": { # Start time of the interval. Offset is not required. If an offset is provided and `end` time is set, `end` must also include an offset.
          "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
        },
      },
      "header": "A String", # The message header.
      "id": "A String", # The ID associated with a message. This field is here to enable ease of management of messages. Notice ID values could possibly duplicate across multiple messages in the same class/instance, and care must be taken to select a reasonable ID for each message.
      "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#walletObjectMessage"`.
      "localizedBody": { # Translated strings for the message body.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "localizedHeader": { # Translated strings for the message header.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "messageType": "A String", # The message type.
    },
  ],
  "multipleDevicesAndHoldersAllowedStatus": "A String", # Identifies whether multiple users and devices will save the same object referencing this class.
  "redemptionIssuers": [ # Identifies which redemption issuers can redeem the pass over Smart Tap. Redemption issuers are identified by their issuer ID. Redemption issuers must have at least one Smart Tap key configured. The `enableSmartTap` and object level `smartTapRedemptionLevel` fields must also be set up correctly in order for a pass to support Smart Tap.
    "A String",
  ],
  "securityAnimation": { # Optional information about the security animation. If this is set a security animation will be rendered on pass details.
    "animationType": "A String", # Type of animation.
  },
  "textModulesData": [ # Text module data. If `textModulesData` is also defined on the object, both will be displayed. The maximum number of these fields displayed is 10 from class and 10 from object.
    { # Data for Text module. All fields are optional. Header will be displayed if available, different types of bodies will be concatenated if they are defined.
      "body": "A String", # The body of the Text Module, which is defined as an uninterrupted string. Recommended maximum length is 500 characters to ensure full string is displayed on smaller screens.
      "header": "A String", # The header of the Text Module. Recommended maximum length is 35 characters to ensure full string is displayed on smaller screens.
      "id": "A String", # The ID associated with a text module. This field is here to enable ease of management of text modules and referencing them in template overrides. The ID should only include alphanumeric characters, '_', or '-'. It can not include dots, as dots are used to separate fields within FieldReference.fieldPaths in template overrides.
      "localizedBody": { # Translated strings for the body. Recommended maximum length is 500 characters to ensure full string is displayed on smaller screens.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "localizedHeader": { # Translated strings for the header. Recommended maximum length is 35 characters to ensure full string is displayed on smaller screens.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
    },
  ],
  "valueAddedModuleData": [ # Optional value added module data. Maximum of ten on the class. For a pass only ten will be displayed, prioritizing those from the object.
    { # Data for Value Added module. Required fields are header and uri.
      "body": { # Body to be displayed on the module. Character limit is 50 and longer strings will be truncated.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "header": { # Header to be displayed on the module. Character limit is 60 and longer strings will be truncated.
        "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
          "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          "value": "A String", # The UTF-8 encoded translated string.
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
        "translatedValues": [ # Contains the translations for the string.
          {
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
        ],
      },
      "image": { # Wrapping type for Google hosted images. Next ID: 7 # Image to be displayed on the module. Recommended image ratio is 1:1. Images will be resized to fit this ratio.
        "contentDescription": { # Description of the image used for accessibility.
          "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
            "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
            "value": "A String", # The UTF-8 encoded translated string.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
          "translatedValues": [ # Contains the translations for the string.
            {
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
          ],
        },
        "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.
        "sourceUri": { # The URI for the image.
          "description": "A String", # Additional information about the image, which is unused and retained only for backward compatibility.
          "localizedDescription": { # Translated strings for the description, which are unused and retained only for backward compatibility.
            "defaultValue": { # Contains the string to be displayed if no appropriate translation is available.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
              "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
              "value": "A String", # The UTF-8 encoded translated string.
            },
            "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.
            "translatedValues": [ # Contains the translations for the string.
              {
                "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.
                "language": "A String", # Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
                "value": "A String", # The UTF-8 encoded translated string.
              },
            ],
          },
          "uri": "A String", # The location of the image. URIs must have a scheme.
        },
      },
      "sortIndex": 42, # The index for sorting the modules. Modules with a lower sort index are shown before modules with a higher sort index. If unspecified, the sort index is assumed to be INT_MAX. For two modules with the same index, the sorting behavior is undefined.
      "uri": "A String", # URI that the module leads to on click. This can be a web link or a deep link as mentioned in https://developer.android.com/training/app-links/deep-linking.
      "viewConstraints": { # Constraints that all must be met for the module to be shown. # Constraints that all must be met for the module to be shown.
        "displayInterval": { # The period of time that the module will be displayed to users. Can define both a `startTime` and `endTime`. The module is displayed immediately after insertion unless a `startTime` is set. The module is displayed indefinitely if `endTime` is not set.
          "end": { # End time of the interval. Offset is not required. If an offset is provided and `start` time is set, `start` must also include an offset.
            "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
          },
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string `"walletobjects#timeInterval"`.
          "start": { # Start time of the interval. Offset is not required. If an offset is provided and `end` time is set, `end` must also include an offset.
            "date": "A String", # An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones.
          },
        },
      },
    },
  ],
  "viewUnlockRequirement": "A String", # View Unlock Requirement options for the generic pass.
}