Инструмент: list_pass_classes
Получает полный список всех классов пропусков, зарегистрированных в бизнес-консоли Google Wallet и связанных с авторизованным пользователем. Этот инструмент предоставляет разработчикам важную информацию для управления пропусками Wallet, такими как карты лояльности, подарочные карты или авиабилеты.
Приведённый ниже пример кода демонстрирует, как использовать curl для вызова инструмента MCP list_pass_classes .
| Запрос Curl |
|---|
curl --location 'https://paydeveloper.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "list_pass_classes", "arguments": { // Provide these details according to the MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
Схема ввода
Запрос на отображение списка классов пропусков эмитента.
ListPassClassesRequest
| JSON-представление |
|---|
{ "issuerId": string, "passType": enum ( |
| Поля | |
|---|---|
issuerId | Обязательно. Уникальный идентификатор эмитента, для которого необходимо перечислить классы пропусков. |
passType | Необязательный параметр. Тип пропуска для отображения. Если не указан, будут возвращены все типы пропусков. |
view | Необязательный параметр. Указывает уровень детализации, который должен быть возвращен для каждого класса проходного балла. |
PassType
Тип зачетной категории.
| Перечисления | |
|---|---|
PASS_TYPE_UNSPECIFIED | Тип пароля не указан. |
LOYALTY | Тип пропуска — Программа лояльности. |
GIFT_CARD | Тип пропуска — подарочная карта. |
OFFER | Тип пропуска — Предложение. |
EVENT_TICKET | Тип пропуска — Билет на мероприятие. |
FLIGHT | Тип проездного — Перелет. |
TRANSIT | Тип проездного — Транзитный. |
GENERIC | Тип пароля — Generic. |
PassClassView
Уровень детализации, который должен быть предоставлен для каждого класса пропусков.
| Перечисления | |
|---|---|
PASS_CLASS_VIEW_UNSPECIFIED | Значение по умолчанию / не задано. API по умолчанию будет использовать базовый режим просмотра (BASIC). |
PASS_CLASS_VIEW_BASIC | Укажите основную информацию о категории зачета. |
PASS_CLASS_VIEW_FULL | Укажите все подробности о классе сдачи экзамена. |
Схема вывода
Ответное сообщение для отображения классов пропусков эмитента.
ListPassClassesResponse
| JSON-представление |
|---|
{
"passClasses": [
{
object ( |
| Поля | |
|---|---|
passClasses[] | Классы пропусков эмитента. |
PassClass
| JSON-представление |
|---|
{ // Union field |
| Поля | |
|---|---|
| |
loyaltyClass | Необязательно. Класс лояльности эмитента. |
giftCardClass | Необязательно. Класс подарочной карты эмитента. |
offerClass | Необязательно. Класс предложения эмитента. |
eventTicketClass | Необязательно. Класс билета на мероприятие, указанный эмитентом. |
flightClass | Необязательно. Класс полета эмитента. |
transitClass | Необязательно. Транзитный класс эмитента. |
genericClass | Необязательный параметр. Общий класс эмитента. |
LoyaltyClass
| JSON-представление |
|---|
{ "id": string, "issuerName": string, "localizedIssuerName": { object ( |
| Поля | |
|---|---|
id | Необязательный параметр. Идентификатор класса лояльности. |
issuerName | Необязательно. Название эмитента класса лояльности. |
localizedIssuerName | Необязательно. Локализованное название эмитента класса лояльности. |
programName | Необязательно. Название программы лояльности. |
localizedProgramName | Необязательно. Локализованное название программы лояльности для соответствующего класса. |
programLogoUri | (Необязательно) Логотип программы лояльности. |
hexBackgroundColor | Необязательный параметр. Цвет фона класса лояльности. Формат — шестнадцатеричная строка цвета, например, "#RRGGBB". |
heroImageUri | Необязательно. Изображение баннера, отображаемое на лицевой стороне страницы программы лояльности. |
discoverableProgram | Необязательно. Информация о том, как можно обнаружить и создать экземпляр класса лояльности в Google Wallet. |
classTemplateInfo | Необязательно. Информация о шаблоне, определяющая способ отображения класса лояльности. |
LocalizedString
| JSON-представление |
|---|
{ "translatedValues": [ { object ( |
| Поля | |
|---|---|
translatedValues[] | Необязательно. Переведённые строки для данной строки. |
defaultValue | Необязательный параметр. Строка, которая будет отображаться, если подходящий перевод недоступен. |
TranslatedString
| JSON-представление |
|---|
{ "languageCode": string, "value": string } |
| Поля | |
|---|---|
languageCode | Необязательный параметр. Языковой тег BCP 47. Примеры значений: "en-US", "en-GB", "de" или "de-AT". |
value | Необязательно. Переведённая строка в кодировке UTF-8. |
Программа, которую можно обнаружить
| JSON-представление |
|---|
{ "merchantSignupInfo": { object ( |
| Поля | |
|---|---|
merchantSignupInfo | Необязательно. Информация о возможности регистрации и добавления ценных данных для этой программы, которую можно найти на сайте продавца. |
merchantSigninInfo | Необязательно. Информация о возможности входа в систему и добавления ценных данных для этой программы, которую можно найти на сайте продавца. |
state | Только вывод. Состояние обнаруживаемой программы. |
Информация о регистрации продавца
| JSON-представление |
|---|
{ "signupWebsite": { object ( |
| Поля | |
|---|---|
signupWebsite | Необязательно. Веб-сайт для регистрации в программе Discoverable. |
signupSharedDatas[] | Необязательно. Данные пользователя, отправляемые в POST-запросе на URL-адрес сайта регистрации. Эта информация кодируется и затем передается, чтобы веб-сайт продавца мог предварительно заполнить поля, используемые для регистрации пользователя в программе, которую можно найти. |
Ури
| JSON-представление |
|---|
{
"uri": string,
"description": string,
"localizedDescription": {
object ( |
| Поля | |
|---|---|
uri | Необязательно. URI. |
description | Необязательно. Заголовок URI, отображаемый в Google Wallet в виде текста. |
localizedDescription | Необязательно. Переведённые строки заголовка URI, отображаемые в Google Wallet в виде текста. |
Информация для входа в систему продавца
| JSON-представление |
|---|
{
"signinWebsite": {
object ( |
| Поля | |
|---|---|
signinWebsite | Необязательно. Веб-сайт для регистрации в программе поиска. |
ClassTemplateInfo
| JSON-представление |
|---|
{ "cardBarcodeSectionDetails": { object ( |
| Поля | |
|---|---|
cardBarcodeSectionDetails | Необязательно. Дополнительная информация, которая будет отображаться над и под штрихкодом. |
cardTemplateOverride | Необязательно. Переопределение шаблона для представления карточек. |
detailsTemplateOverride | Необязательно. Переопределение шаблона для отображения подробной информации. |
listTemplateOverride | Необязательно. Переопределение шаблона для представления списка пропусков. |
CardBarcodeSectionDetails
| JSON-представление |
|---|
{ "firstTopDetail": { object ( |
| Поля | |
|---|---|
firstTopDetail | Необязательно. Дополнительная информация, которая будет отображаться над штрихкодом. Если задан параметр secondTopDetail, эта информация будет отображаться в начале данного раздела с подробными сведениями. |
firstBottomDetail | Необязательно. Дополнительная информация, которая будет отображаться под штрихкодом. |
secondTopDetail | Необязательно. Необязательный второй фрагмент информации, который будет отображаться над штрихкодом. Если задан параметр firstTopDetail, он будет отображаться в конце этого раздела с подробной информацией. |
BarcodeSectionDetail
| JSON-представление |
|---|
{
"fieldSelector": {
object ( |
| Поля | |
|---|---|
fieldSelector | Необязательно. Ссылка на существующее текстовое или графическое поле для отображения. |
FieldSelector
| JSON-представление |
|---|
{
"fields": [
{
object ( |
| Поля | |
|---|---|
fields[] | Необязательно. Ссылки на поля, используемые при переопределении полей. Если указано несколько ссылок, будет отображена первая, ссылающаяся на непустое поле. |
FieldReference
| JSON-представление |
|---|
{
"fieldPath": string,
"dateFormat": enum ( |
| Поля | |
|---|---|
fieldPath | Необязательно. Путь к полю, на которое делается ссылка, с префиксом "object" или "class" и разделённый точками. |
dateFormat | Необязательный параметр. Формат даты для отображения полей даты/времени. |
CardTemplateOverride
| JSON-представление |
|---|
{
"cardRowTemplateInfos": [
{
object ( |
| Поля | |
|---|---|
cardRowTemplateInfos[] | Необязательно. Информация о шаблоне строк в карточном представлении. Можно указать не более трех строк. |
CardRowTemplateInfo
| JSON-представление |
|---|
{ // Union field |
| Поля | |
|---|---|
Поле объединения row_template . Шаблон для строки, содержащей один, два или три элемента. row_template может принимать только одно из следующих значений: | |
oneItem | Необязательный параметр. Шаблон для строки, содержащей один элемент. |
twoItems | Необязательный параметр. Шаблон для строки, содержащей два элемента. |
threeItems | Необязательный параметр. Шаблон для строки, содержащей три элемента. |
CardRowOneItem
| JSON-представление |
|---|
{
"item": {
object ( |
| Поля | |
|---|---|
item | Необязательный параметр. Элемент, который будет отображаться в строке. Этот элемент будет центрирован. |
TemplateItem
| JSON-представление |
|---|
{ "firstValue": { object ( |
| Поля | |
|---|---|
firstValue | Необязательно. Ссылка на первое отображаемое поле. |
secondValue | Необязательно. Ссылка на второе поле для отображения. |
predefinedItem | Необязательный параметр. Предопределенный элемент для отображения. |
CardRowTwoItems
| JSON-представление |
|---|
{ "startItem": { object ( |
| Поля | |
|---|---|
startItem | Необязательный параметр. Элемент, который будет отображаться в начале строки. Этот элемент будет выровнен по левому краю. |
endItem | Необязательно. Элемент, который будет отображаться в конце строки. Этот элемент будет выровнен по правому краю. |
CardRowThreeItems
| JSON-представление |
|---|
{ "startItem": { object ( |
| Поля | |
|---|---|
startItem | Необязательный параметр. Элемент, который будет отображаться в начале строки. Этот элемент будет выровнен по левому краю. |
middleItem | Необязательный параметр. Элемент, который будет отображаться посередине строки. Этот элемент будет расположен по центру между начальным и конечным элементами. |
endItem | Необязательно. Элемент, который будет отображаться в конце строки. Этот элемент будет выровнен по правому краю. |
DetailsTemplateOverride
| JSON-представление |
|---|
{
"detailsItemInfos": [
{
object ( |
| Поля | |
|---|---|
detailsItemInfos[] | Необязательно. Информация о шаблоне, содержащаяся в списке подробных сведений. |
ПодробностиИнформацияо товаре
| JSON-представление |
|---|
{
"item": {
object ( |
| Поля | |
|---|---|
item | Необязательно. Элемент, который будет отображаться в списке с подробными сведениями. |
ListTemplateOverride
| JSON-представление |
|---|
{ "firstRowOption": { object ( |
| Поля | |
|---|---|
firstRowOption | Необязательно. Ссылка на поле, которое будет отображаться в первой строке. |
secondRowOption | Необязательно. Ссылка на поле, которое будет отображаться во второй строке. |
FirstRowOption
| JSON-представление |
|---|
{ "transitOption": enum ( |
| Поля | |
|---|---|
transitOption | Необязательно. Вариант проезда, который будет отображаться в первой строке. |
fieldOption | Необязательно. Ссылка на поле, которое будет отображаться в первой строке. |
GiftCardClass
| JSON-представление |
|---|
{ "id": string, "issuerName": string, "localizedIssuerName": { object ( |
| Поля | |
|---|---|
id | Необязательный параметр. Идентификатор класса подарочной карты. |
issuerName | Необязательно. Название эмитента подарочной карты соответствующего класса. |
localizedIssuerName | Необязательно. Локализованное название эмитента класса подарочных карт. |
merchantName | Необязательно. Название продавца для класса подарочных карт. |
localizedMerchantName | Необязательно. Локализованное название продавца для класса подарочных карт. |
programLogoUri | (Необязательно) Логотип программы для класса подарочных карт. |
hexBackgroundColor | Необязательный параметр. Цвет фона класса подарочной карты. Формат — шестнадцатеричная строка цвета, например, "#RRGGBB". |
heroImageUri | Необязательно. Изображение баннера, отображаемое на лицевой стороне подарочной карты. |
homePageUri | Необязательно. Веб-сайт, на котором размещена главная страница приложения. |
classTemplateInfo | Необязательно. Информация о шаблоне, определяющая способ отображения класса подарочной карты. |
OfferClass
| JSON-представление |
|---|
{ "id": string, "issuerName": string, "localizedIssuerName": { object ( |
| Поля | |
|---|---|
id | Необязательный параметр. Идентификатор класса предложения. |
issuerName | Необязательно. Название эмитента класса предложений. |
localizedIssuerName | Необязательно. Локализованное название эмитента класса предложений. |
provider | Необязательно. Поставщик класса предложений. |
localizedProvider | Необязательно. Локализованный поставщик класса предложений. |
title | Необязательно. Название класса предложения. |
localizedTitle | Необязательно. Локализованное название класса предложений. |
titleImageUri | Необязательно. Изображение заголовка предложения. |
hexBackgroundColor | Необязательный параметр. Цвет фона класса предложения. Формат — шестнадцатеричная строка цвета, например, "#RRGGBB". |
heroImageUri | Необязательно. Изображение баннера, отображаемое на лицевой стороне предложения. |
redemptionChannel | Необязательно. Канал погашения для данного класса предложений. |
classTemplateInfo | Необязательно. Информация о шаблоне, определяющая способ отображения класса предложения. |
EventTicketClass
| JSON-представление |
|---|
{ "id": string, "issuerName": string, "localizedIssuerName": { object ( |
| Поля | |
|---|---|
id | Необязательный параметр. Идентификатор класса билета на мероприятие. |
issuerName | Необязательно. Название эмитента класса билетов на мероприятие. |
localizedIssuerName | Необязательно. Локализованное название эмитента класса билета на мероприятие. |
logoUri | Необязательно. Логотип класса билетов на мероприятие. |
eventName | Необязательно. Название мероприятия. |
venue | Необязательно. Место проведения мероприятия. |
dateTime | Необязательно. Информация о дате и времени мероприятия. |
hexBackgroundColor | Необязательный параметр. Цвет фона для класса билетов на мероприятие. Формат — шестнадцатеричная строка цвета, например, "#RRGGBB". |
heroImageUri | Необязательно. Изображение баннера, отображаемое на лицевой стороне билета на мероприятие. |
classTemplateInfo | Необязательно. Информация о шаблоне, определяющая способ отображения класса билета на мероприятие. |
Место проведения мероприятия
| JSON-представление |
|---|
{ "name": { object ( |
| Поля | |
|---|---|
name | Необязательно. Название места проведения. |
address | Необязательно. Адрес места проведения мероприятия. |
Дата и время события
| JSON-представление |
|---|
{ "start": string, "end": string } |
| Поля | |
|---|---|
start | Необязательно. Дата/время начала события. Если событие длится несколько дней, следует указать дату/время начала первого дня. Формат — расширенный формат даты/времени ISO 8601 без смещения, время может быть указано с точностью до миллисекунды, например, 2027-03-05T06:30:00. |
end | Необязательно. Дата/время окончания события. Если событие длится несколько дней, следует указать дату/время окончания в последний день. Формат — расширенный формат даты/времени ISO 8601 без смещения, время может быть указано с точностью до миллисекунды, например, 2027-03-05T06:30:00. |
FlightClass
| JSON-представление |
|---|
{ "id": string, "issuerName": string, "localizedIssuerName": { object ( |
| Поля | |
|---|---|
id | Необязательно. Идентификатор класса полета. |
issuerName | Необязательно. Название учебного заведения, выдавшего билет на определенный класс полета. |
localizedIssuerName | Необязательно. Локализованное название эмитента авиабилета соответствующего класса. |
flightHeader | Необязательно. Информация о авиакомпании и номере рейса. |
origin | Необязательно. Информация об аэропорте отправления. |
destination | Необязательно. Информация об аэропорте назначения. |
localScheduledDepartureDateTime | Необязательно. Запланированная дата и время вылета самолета из гейта (а не со взлетно-посадочной полосы). Формат — расширенный формат даты/времени ISO 8601 без смещения, время может быть указано с точностью до миллисекунды, например, 2027-03-05T06:30:00. Это должно быть местное время в аэропорту (а не время UTC). |
hexBackgroundColor | Необязательно. Цвет фона класса полета. Формат — шестнадцатеричная строка цвета, например, "#RRGGBB". |
heroImageUri | Необязательно. Изображение баннера, размещенное на передней части купона на полет. |
classTemplateInfo | Необязательно. Информация о шаблоне, определяющая способ отображения класса полета. |
Заголовок рейса
| JSON-представление |
|---|
{
"carrier": {
object ( |
| Поля | |
|---|---|
carrier | Необязательно. Информация о авиакомпании. |
flightNumber | Необязательно. Номер рейса без кода IATA перевозчика. Поле содержит только цифры, например, "123". |
Авианосец
| JSON-представление |
|---|
{ "carrierIataCode": string, "carrierIcaoCode": string, "airlineLogoUri": string } |
| Поля | |
|---|---|
carrierIataCode | Необязательно. Двухсимвольный код авиакомпании IATA. |
carrierIcaoCode | Необязательно. Трехсимвольный код авиакомпании ИКАО. |
airlineLogoUri | (Необязательно) Логотип авиакомпании, соответствующий коду IATA. |
AirportInfo
| JSON-представление |
|---|
{ "airportIataCode": string, "terminal": string, "gate": string } |
| Поля | |
|---|---|
airportIataCode | Необязательно. Трехсимвольный код аэропорта IATA, например, "SFO". |
terminal | Необязательно. Название терминала, например, "I". |
gate | Необязательно. Название ворот, например, "B59". |
TransitClass
| JSON-представление |
|---|
{ "id": string, "issuerName": string, "localizedIssuerName": { object ( |
| Поля | |
|---|---|
id | Необязательный параметр. Идентификатор транспортного класса. |
issuerName | Необязательно. Название эмитента транспортного класса. |
localizedIssuerName | Необязательно. Локализованное название эмитента для класса транзита. |
hexBackgroundColor | Необязательный параметр. Цвет фона для выбранного класса транспорта. Формат — шестнадцатеричная строка с указанием цвета, например, "#RRGGBB". |
heroImageUri | Дополнительно. Изображение баннера, отображаемое на лицевой стороне билета в транспортный класс. |
transitType | Необязательно. Тип транспорта, соответствующий классу транспорта. |
classTemplateInfo | Необязательно. Информация о шаблоне, определяющая способ отображения класса транспортного средства. |
GenericClass
| JSON-представление |
|---|
{
"id": string,
"classTemplateInfo": {
object ( |
| Поля | |
|---|---|
id | Необязательный параметр. Идентификатор обобщенного класса. |
classTemplateInfo | Необязательно. Информация о шаблоне, определяющая способ отображения обобщенного класса. |
Тип пользовательских данных, которые будут переданы продавцу при регистрации.
| Перечисления | |
|---|---|
SHARED_DATA_TYPE_UNSPECIFIED | Неуказанный общий тип данных. |
FIRST_NAME | Имя пользователя. |
LAST_NAME | Фамилия пользователя. |
STREET_ADDRESS | Однострочный адрес пользователя. |
ADDRESS_LINE_ONE | Адрес пользователя, строка 1. |
ADDRESS_LINE_TWO | Вторая строка адреса пользователя. |
ADDRESS_LINE_THREE | Адрес пользователя, строка три. |
CITY | Город пользователя. |
STATE | Состояние пользователя. |
ZIPCODE | Почтовый индекс пользователя. |
COUNTRY | Страна пользователя. |
EMAIL | Адрес электронной почты пользователя. |
PHONE | Номер телефона пользователя. |
Состояние
Состояние обнаруживаемой программы.
| Перечисления | |
|---|---|
STATE_UNSPECIFIED | Штат не указан. |
TRUSTED_TESTERS | Программа доступна только тестировщикам, имеющим доступ к учетной записи эмитента. |
LIVE | Программа доступна всем пользователям. |
DISABLED | Программа не видна. |
Формат даты
Формат даты для отображения полей даты/времени.
| Перечисления | |
|---|---|
DATE_FORMAT_UNSPECIFIED | Формат даты не указан. |
DATE_TIME | Например, дата 2018-12-14T13:00:00 отображается как 14 декабря, 13:00 в формате en_US. |
DATE_ONLY | Например, в en_US дата 2018-12-14T13:00:00 отображается как Dec 14. |
TIME_ONLY | Например, дата 2018-12-14T13:00:00 отображается как 13:00 в формате en_US. |
DATE_TIME_YEAR | Например, дата 2018-12-14T13:00:00 отображается как 14 декабря 2018 г., 13:00 в формате en_US. |
DATE_YEAR | Например, в en_US дата 2018-12-14T13:00:00 отображается как 14 декабря 2018 года. |
YEAR_MONTH | Например, в en_US дата 2018-12-14T13:00:00 отображается как 2018-12. |
YEAR_MONTH_DAY | Например, в en_US дата 2018-12-14T13:00:00 отображается как 2018-12-14. |
Предопределенный элемент
Предопределенный элемент для отображения.
| Перечисления | |
|---|---|
PREDEFINED_ITEM_UNSPECIFIED | Предопределенный элемент не указан. |
FREQUENT_FLYER_PROGRAM_NAME_AND_NUMBER | Предварительно заданный элемент — это название и номер участника программы лояльности для часто летающих пассажиров. |
FLIGHT_NUMBER_AND_OPERATING_FLIGHT_NUMBER | Предварительно заданными данными являются номер рейса и номер выполняемого рейса. |
ТранзитВариант
Вариант проезда, который будет отображен.
| Перечисления | |
|---|---|
TRANSIT_OPTION_UNSPECIFIED | Вариант транзита не указан. |
ORIGIN_AND_DESTINATION_NAMES | В качестве варианта транзита указываются названия пункта отправления и пункта назначения. |
ORIGIN_AND_DESTINATION_CODES | В качестве варианта транзита используются коды пункта отправления и пункта назначения. |
ORIGIN_NAME | В качестве параметра транзита используется название пункта отправления. |
Канал погашения
Способы получения бонусов, применимые к данному предложению.
| Перечисления | |
|---|---|
REDEMPTION_CHANNEL_UNSPECIFIED | Способ получения приза не указан. |
IN_STORE | Предложение действительно только в магазине. |
ONLINE | Предложением можно воспользоваться только онлайн. |
BOTH | Предложением можно воспользоваться в магазине или онлайн. |
TEMPORARY_PRICE_REDUCTION | Предложение представляет собой временное снижение цены. |
Тип транзита
Тип транспортного средства, соответствующий классу транспортного средства.
| Перечисления | |
|---|---|
TRANSIT_TYPE_UNSPECIFIED | Тип перевозки не указан. |
BUS | Вид транспорта — автобус. |
RAIL | Вид транспорта — железнодорожный. |
TRAM | Вид транспорта — трамвай. |
FERRY | Вид транспорта — паром. |
FLIGHT | Вид транспорта — авиаперевозки. |
OTHER | Тип транспорта – другой. |
Аннотации инструментов
Аннотации к инструментам отправляются клиентам MCP для описания основных рисков, связанных с данным инструментом. Большинство клиентов считают эти подсказки недостоверными, но они могут использоваться для определения момента отправки пользователю запроса на подтверждение.
Наряду со строкой заголовка, определены следующие логические подсказки:
-
readOnlyHint: Если true, инструмент не изменяет свою среду. По умолчанию: false. -
destructiveHint: Если true, то инструмент может выполнять деструктивные действия. Если false, то инструмент может выполнять только аддитивные действия. По умолчанию: true. -
idempotentHint: Если true, то многократный вызов инструмента с одними и теми же аргументами не окажет дополнительного влияния на его окружение. По умолчанию: false. -
openWorldHint: Если true, то инструмент может взаимодействовать с «открытым миром» внешних объектов. Если false, то инструмент может взаимодействовать только с внутренними объектами. Например, инструмент веб-поиска будет представлять собой открытый мир, а инструмент для работы с памятью — нет.
Подсказка о разрушительном эффекте: ❌ | Подсказка об идемпотентности: ✅ | Подсказка только для чтения: ✅ | Подсказка об открытом мире: ❌