Cards v2

āĻ•āĻžāĻ°ā§āĻĄ

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻŽā§‡āϏ⧇āϜ āĻŦāĻž āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύ⧇ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻāĻ•āϟāĻŋ āĻ•āĻžāĻ°ā§āĻĄ āχāĻ¨ā§āϟāĻžāϰāĻĢ⧇āϏāĨ¤

āĻ•āĻžāĻ°ā§āĻĄ āĻāĻ•āϟāĻŋ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āϞ⧇āφāωāϟ, āĻŦāĻžāϟāύ⧇āϰ āĻŽāϤ⧋ āχāĻ¨ā§āϟāĻžāϰ⧇āĻ•ā§āϟāĻŋāĻ­ UI āĻāϞāĻŋāĻŽā§‡āĻ¨ā§āϟ āĻāĻŦāĻ‚ āĻ›āĻŦāĻŋāϰ āĻŽāϤ⧋ āϰāĻŋāϚ āĻŽāĻŋāĻĄāĻŋāϝāĻŧāĻž āϏāĻŽāĻ°ā§āĻĨāύ āĻ•āϰ⧇āĨ¤ āĻŦāĻŋāĻ¸ā§āϤāĻžāϰāĻŋāϤ āϤāĻĨā§āϝ āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύ āĻ•āϰāϤ⧇, āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āĻĻ⧇āϰ āĻ•āĻžāĻ› āĻĨ⧇āϕ⧇ āϤāĻĨā§āϝ āϏāĻ‚āĻ—ā§āϰāĻš āĻ•āϰāϤ⧇ āĻāĻŦāĻ‚ āĻĒāϰāĻŦāĻ°ā§āϤ⧀ āĻĒāĻĻāĻ•ā§āώ⧇āĻĒ āύāĻŋāϤ⧇ āϤāĻžāĻĻ⧇āϰ āύāĻŋāĻ°ā§āĻĻ⧇āĻļāύāĻž āĻĻāĻŋāϤ⧇ āĻ•āĻžāĻ°ā§āĻĄ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧁āύāĨ¤

āĻ•āĻžāĻ°ā§āĻĄ āĻŦāĻŋāĻ˛ā§āĻĄāĻžāϰ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āĻ•āĻžāĻ°ā§āĻĄ āĻĄāĻŋāϜāĻžāχāύ āĻ•āϰ⧁āύ āĻāĻŦāĻ‚ āĻĒā§āϰāĻŋāĻ­āĻŋāω āĻĻ⧇āϖ⧁āύāĨ¤

āĻ•āĻžāĻ°ā§āĻĄ āĻŦāĻŋāĻ˛ā§āĻĄāĻžāϰāϟāĻŋ āϖ⧁āϞ⧁āύ

āĻ•āĻžāĻ°ā§āĻĄ āϤ⧈āϰāĻŋ āĻ•āϰāĻžāϰ āĻĒāĻĻā§āϧāϤāĻŋ āϜāĻžāύāϤ⧇, āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤ āĻĄāϕ⧁āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻļāύ āĻĻ⧇āϖ⧁āύ:

āĻĻā§āϰāĻˇā§āϟāĻŦā§āϝ: āφāĻĒāύāĻŋ āĻĒā§āϰāϤāĻŋ āĻ•āĻžāĻ°ā§āĻĄā§‡ āϏāĻ°ā§āĻŦā§‹āĻšā§āϚ ā§§ā§Ļā§ĻāϟāĻŋ āωāχāĻœā§‡āϟ āϝ⧋āĻ— āĻ•āϰāϤ⧇ āĻĒāĻžāϰāĻŦ⧇āύāĨ¤ āϝāĻĻāĻŋ āϕ⧋āύ⧋ āϏ⧇āĻ•āĻļāύ⧇āϰ āωāχāĻœā§‡āĻŸā§‡āϰ āϏāĻ‚āĻ–ā§āϝāĻž āĻŦ⧇āĻĄāĻŧ⧇ āĻŽā§‹āϟ āϏāĻ‚āĻ–ā§āϝāĻž ā§§ā§Ļā§Ļ āĻ›āĻžāĻĄāĻŧāĻŋāϝāĻŧ⧇ āϝāĻžāϝāĻŧ, āϤāĻžāĻšāϞ⧇ āϏ⧇āχ āϏāĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āϏ⧇āĻ•āĻļāύ āĻāĻŦāĻ‚ āϤāĻžāϰ āĻĒāϰāĻŦāĻ°ā§āϤ⧀ āϏāĻŽāĻ¸ā§āϤ āϏ⧇āĻ•āĻļāύ āωāĻĒ⧇āĻ•ā§āώāĻž āĻ•āϰāĻž āĻšāĻŦ⧇āĨ¤ āĻāχ āϏ⧀āĻŽāĻžāϟāĻŋ āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ⧇āϰ āĻ•āĻžāĻ°ā§āĻĄ āĻŽā§‡āϏ⧇āϜ āĻ“ āĻĄāĻžāϝāĻŧāĻžāϞāĻ— āĻāĻŦāĻ‚ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύ⧇āϰ āĻ•āĻžāĻ°ā§āĻĄâ€”āωāĻ­āϝāĻŧ⧇āϰ āĻ•ā§āώ⧇āĻ¤ā§āϰ⧇āχ āĻĒā§āϰāϝ⧋āĻœā§āϝāĨ¤

āωāĻĻāĻžāĻšāϰāĻŖ: āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ⧇āϰ āϜāĻ¨ā§āϝ āĻ•āĻžāĻ°ā§āĻĄ āĻŦāĻžāĻ°ā§āϤāĻž

āϝ⧋āĻ—āĻžāϝ⧋āϗ⧇āϰ āĻ•āĻžāĻ°ā§āĻĄā§‡āϰ āωāĻĻāĻžāĻšāϰāĻŖ

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāĻŸā§‡ āύāĻŽā§āύāĻž āĻ•āĻžāĻ°ā§āĻĄ āĻŦāĻžāĻ°ā§āϤāĻž āϤ⧈āϰāĻŋ āĻ•āϰāϤ⧇, āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤ JSON āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧁āύ:

{
  "cardsV2": [
    {
      "cardId": "unique-card-id",
      "card": {
        "header": {
           "title": "Sasha",
           "subtitle": "Software Engineer",
           "imageUrl":
           "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png",
           "imageType": "CIRCLE",
           "imageAltText": "Avatar for Sasha"
         },
         "sections": [
           {
             "header": "Contact Info",
             "collapsible": true,
             "uncollapsibleWidgetsCount": 1,
             "widgets": [
               {
                 "decoratedText": {
                   "startIcon": {
                     "knownIcon": "EMAIL"
                   },
                   "text": "sasha@example.com"
                 }
               },
               {
                 "decoratedText": {
                   "startIcon": {
                     "knownIcon": "PERSON"
                   },
                   "text": "<font color=\"#80e27e\">Online</font>"
                 }
               },
               {
                 "decoratedText": {
                   "startIcon": {
                     "knownIcon": "PHONE"
                   },
                   "text": "+1 (555) 555-1234"
                 }
               },
               {
                 "buttonList": {
                   "buttons": [
                     {
                       "text": "Share",
                       "onClick": {
                        "openLink": {
                           "url": "https://example.com/share"
                         }
                       }
                     },
                     {
                       "text": "Edit",
                       "onClick": {
                         "action": {
                           "function": "goToView",
                           "parameters": [
                             {
                               "key": "viewType",
                               "value": "EDIT"
                             }
                           ]
                         }
                       }
                     }
                   ]
                 }
               }
             ]
           }
         ]
       }
    }
  ]
}
JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "header": {
    object (CardHeader)
  },
  "sections": [
    {
      object (Section)
    }
  ],
  "sectionDividerStyle": enum (DividerStyle),
  "cardActions": [
    {
      object (CardAction)
    }
  ],
  "name": string,
  "fixedFooter": {
    object (CardFixedFooter)
  },
  "displayStyle": enum (DisplayStyle),
  "peekCardHeader": {
    object (CardHeader)
  },
  "expressionData": [
    {
      object (ExpressionData)
    }
  ]
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
header

object ( CardHeader )

āĻ•āĻžāĻ°ā§āĻĄā§‡āϰ āĻšā§‡āĻĄāĻžāϰāĨ¤ āĻāĻ•āϟāĻŋ āĻšā§‡āĻĄāĻžāϰ⧇ āϏāĻžāϧāĻžāϰāĻŖāϤ āĻāĻ•āϟāĻŋ āĻĒā§āϰāϧāĻžāύ āĻ›āĻŦāĻŋ āĻāĻŦāĻ‚ āĻāĻ•āϟāĻŋ āĻļāĻŋāϰ⧋āύāĻžāĻŽ āĻĨāĻžāϕ⧇āĨ¤ āĻšā§‡āĻĄāĻžāϰ āϏāĻŦāϏāĻŽāϝāĻŧ āĻ•āĻžāĻ°ā§āĻĄā§‡āϰ āĻļā§€āĻ°ā§āώ⧇ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšāϝāĻŧāĨ¤

sections[]

object ( Section )

āĻāϤ⧇ āωāχāĻœā§‡āĻŸā§‡āϰ āĻāĻ•āϟāĻŋ āϏāĻ‚āĻ—ā§āϰāĻš āϰāϝāĻŧ⧇āϛ⧇āĨ¤ āĻĒā§āϰāϤāĻŋāϟāĻŋ āĻŦāĻŋāĻ­āĻžāϗ⧇āϰ āύāĻŋāϜāĻ¸ā§āĻŦ, āϐāĻšā§āĻ›āĻŋāĻ• āĻšā§‡āĻĄāĻžāϰ āφāϛ⧇āĨ¤ āĻŦāĻŋāĻ­āĻžāĻ—āϗ⧁āϞ⧋ āĻāĻ•āϟāĻŋ āϰ⧇āĻ–āĻž āĻŦāĻŋāĻ­āĻžāϜāĻ• āĻĻā§āĻŦāĻžāϰāĻž āĻĻ⧃āĻļā§āϝāϤ āĻĒ⧃āĻĨāĻ• āĻ•āϰāĻž āĻĨāĻžāϕ⧇āĨ¤ āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ⧇ āĻāĻ•āϟāĻŋ āωāĻĻāĻžāĻšāϰāϪ⧇āϰ āϜāĻ¨ā§āϝ, ‘āĻāĻ•āϟāĻŋ āĻ•āĻžāĻ°ā§āĻĄā§‡āϰ āĻŦāĻŋāĻ­āĻžāĻ— āϏāĻ‚āĻœā§āĻžāĻžāϝāĻŧāĻŋāϤ āĻ•āϰ⧁āύ ’ āĻĻ⧇āϖ⧁āύāĨ¤

sectionDividerStyle

enum ( DividerStyle )

āĻšā§‡āĻĄāĻžāϰ, āϏ⧇āĻ•āĻļāύ āĻ“ āĻĢ⧁āϟāĻžāϰ⧇āϰ āĻŽāĻ§ā§āϝāĻŦāĻ°ā§āϤ⧀ āĻŦāĻŋāĻ­āĻžāϜāĻ• āĻļ⧈āϞ⧀āĨ¤

cardActions[]

object ( CardAction )

āĻ•āĻžāĻ°ā§āĻĄā§‡āϰ āĻ•āĻžāĻ°ā§āϝāĻ•āϞāĻžāĻĒāϏāĻŽā§‚āĻšāĨ¤ āĻ•āĻžāĻ°ā§āϝāĻ•āϞāĻžāĻĒāϗ⧁āϞ⧋ āĻ•āĻžāĻ°ā§āĻĄā§‡āϰ āϟ⧁āϞāĻŦāĻžāϰ āĻŽā§‡āύ⧁āϤ⧇ āϝ⧋āĻ— āĻ•āϰāĻž āĻšāϝāĻŧāĨ¤

āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āĻĒāϞāĻŦā§āϧāĨ¤

āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤ JSON-āϟāĻŋ Settings āĻāĻŦāĻ‚ Send Feedback āĻŦāĻŋāĻ•āĻ˛ā§āĻĒāϏāĻš āĻāĻ•āϟāĻŋ āĻ•āĻžāĻ°ā§āĻĄ āĻ…ā§āϝāĻžāĻ•āĻļāύ āĻŽā§‡āύ⧁ āϤ⧈āϰāĻŋ āĻ•āϰ⧇:

"cardActions": [
  {
    "actionLabel": "Settings",
    "onClick": {
      "action": {
        "functionName": "goToView",
        "parameters": [
          {
            "key": "viewType",
            "value": "SETTING"
         }
        ],
        "loadIndicator": "LoadIndicator.SPINNER"
      }
    }
  },
  {
    "actionLabel": "Send Feedback",
    "onClick": {
      "openLink": {
        "url": "https://example.com/feedback"
      }
    }
  }
]
name

string

āĻ•āĻžāĻ°ā§āĻĄā§‡āϰ āύāĻžāĻŽāĨ¤ āĻ•āĻžāĻ°ā§āĻĄ āύ⧇āĻ­āĻŋāϗ⧇āĻļāύ⧇ āĻ•āĻžāĻ°ā§āĻĄ āĻļāύāĻžāĻ•ā§āϤāĻ•āĻžāϰ⧀ āĻšāĻŋāϏ⧇āĻŦ⧇ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āĻšāϝāĻŧāĨ¤

āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āĻĒāϞāĻŦā§āϧāĨ¤

displayStyle

enum ( DisplayStyle )

āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύ-āĻ, āĻāϟāĻŋ peekCardHeader āĻāϰ āĻĄāĻŋāϏāĻĒā§āϞ⧇ āĻĒā§āϰ⧋āĻĒāĻžāĻ°ā§āϟāĻŋ āϏ⧇āϟ āĻ•āϰ⧇āĨ¤

āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āĻĒāϞāĻŦā§āϧāĨ¤

peekCardHeader

object ( CardHeader )

āĻĒā§āϰāĻžāϏāĻ™ā§āĻ—āĻŋāĻ• āĻŦāĻŋāώāϝāĻŧāĻŦāĻ¸ā§āϤ⧁ āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰāĻžāϰ āϏāĻŽāϝāĻŧ, āĻĒāĻŋāĻ• āĻ•āĻžāĻ°ā§āĻĄ āĻšā§‡āĻĄāĻžāϰāϟāĻŋ āĻāĻ•āϟāĻŋ āĻĒā§āϞ⧇āϏāĻšā§‹āĻ˛ā§āĻĄāĻžāϰ āĻšāĻŋāϏ⧇āĻŦ⧇ āĻ•āĻžāϜ āĻ•āϰ⧇, āϝāĻžāϤ⧇ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀ āĻšā§‹āĻŽāĻĒ⧇āĻœā§‡āϰ āĻ•āĻžāĻ°ā§āĻĄāϗ⧁āϞ⧋ āĻāĻŦāĻ‚ āĻĒā§āϰāĻžāϏāĻ™ā§āĻ—āĻŋāĻ• āĻ•āĻžāĻ°ā§āĻĄāϗ⧁āϞ⧋āϰ āĻŽāĻ§ā§āϝ⧇ āϏāĻžāĻŽāύ⧇ āĻāĻ—āĻŋāϝāĻŧ⧇ āϝ⧇āϤ⧇ āĻĒāĻžāϰ⧇āύāĨ¤

āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āĻĒāϞāĻŦā§āϧāĨ¤

expressionData[]

object ( ExpressionData )

āĻ•āĻžāĻ°ā§āĻĄāϟāĻŋāϰ āϜāĻ¨ā§āϝ āĻāĻ•ā§āϏāĻĒā§āϰ⧇āĻļāύ āĻĄā§‡āϟāĻžāĨ¤

Google Workspace Studio-āĻāϰ āĻ•āĻžāĻ°ā§āϝāĻ•āĻžāϰāĻŋāϤāĻž āĻŦāĻ°ā§āϧāύāĻ•āĻžāϰ⧀ Google Workspace āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤ Google Chat āĻ…ā§āϝāĻžāĻĒāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āĻĒāϞāĻŦā§āϧāĨ¤

āĻ•āĻžāĻ°ā§āĻĄāĻšā§‡āĻĄāĻžāϰ

āĻāϟāĻŋ āĻāĻ•āϟāĻŋ āĻ•āĻžāĻ°ā§āĻĄ āĻšā§‡āĻĄāĻžāϰ āύāĻŋāĻ°ā§āĻĻ⧇āĻļ āĻ•āϰ⧇āĨ¤ āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ⧇ āĻāϰ āĻāĻ•āϟāĻŋ āωāĻĻāĻžāĻšāϰāϪ⧇āϰ āϜāĻ¨ā§āϝ, ‘āĻšā§‡āĻĄāĻžāϰ āϝ⧋āĻ— āĻ•āϰ⧁āĻ¨â€™ āĻĻ⧇āϖ⧁āύāĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ āĻāĻŦāĻ‚ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "title": string,
  "subtitle": string,
  "imageType": enum (ImageType),
  "imageUrl": string,
  "imageAltText": string
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
title

string

āφāĻŦāĻļā§āϝāĻ•āĨ¤ āĻ•āĻžāĻ°ā§āĻĄ āĻšā§‡āĻĄāĻžāϰ⧇āϰ āĻļāĻŋāϰ⧋āύāĻžāĻŽāĨ¤ āĻšā§‡āĻĄāĻžāϰ⧇āϰ āĻāĻ•āϟāĻŋ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āωāĻšā§āϚāϤāĻž āϰāϝāĻŧ⧇āϛ⧇: āϝāĻĻāĻŋ āĻļāĻŋāϰ⧋āύāĻžāĻŽ āĻāĻŦāĻ‚ āωāĻĒ-āĻļāĻŋāϰ⧋āύāĻžāĻŽ āωāĻ­āϝāĻŧāχ āωāĻ˛ā§āϞ⧇āĻ– āĻ•āϰāĻž āĻšāϝāĻŧ, āϤāĻŦ⧇ āĻĒā§āϰāϤāĻŋāϟāĻŋ āĻāĻ• āϞāĻžāχāύ⧇ āĻ¸ā§āĻĨāĻžāύ āĻĒāĻžāĻŦ⧇āĨ¤ āϝāĻĻāĻŋ āĻļ⧁āϧ⧁ āĻļāĻŋāϰ⧋āύāĻžāĻŽ āωāĻ˛ā§āϞ⧇āĻ– āĻ•āϰāĻž āĻšāϝāĻŧ, āϤāĻŦ⧇ āϏ⧇āϟāĻŋ āωāĻ­āϝāĻŧ āϞāĻžāχāύ⧇āχ āĻ¸ā§āĻĨāĻžāύ āĻĒāĻžāĻŦ⧇āĨ¤

subtitle

string

āĻ•āĻžāĻ°ā§āĻĄ āĻšā§‡āĻĄāĻžāϰ⧇āϰ āωāĻĒāĻļāĻŋāϰ⧋āύāĻžāĻŽāĨ¤ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰāĻž āĻĨāĻžāĻ•āϞ⧇, āĻāϟāĻŋ title āύāĻŋāĻšā§‡ āύāĻŋāϜāĻ¸ā§āĻŦ āϞāĻžāχāύ⧇ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšāϝāĻŧāĨ¤

imageType

enum ( ImageType )

āĻ›āĻŦāĻŋāϟāĻŋ āĻ•ā§āϰāĻĒ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āφāĻ•ā§ƒāϤāĻŋāĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ āĻāĻŦāĻ‚ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤

imageUrl

string

āĻ•āĻžāĻ°ā§āĻĄ āĻšā§‡āĻĄāĻžāϰ⧇ āĻĨāĻžāĻ•āĻž āĻ›āĻŦāĻŋāϟāĻŋāϰ HTTPS URLāĨ¤

imageAltText

string

āĻāχ āĻ›āĻŦāĻŋāϟāĻŋāϰ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ āϞ⧇āĻ–āĻžāϟāĻŋ āĻ…ā§āϝāĻžāĻ•ā§āϏ⧇āϏāĻŋāĻŦāĻŋāϞāĻŋāϟāĻŋāϰ āϜāĻ¨ā§āϝ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āĻšāϝāĻŧāĨ¤

āĻ›āĻŦāĻŋāϰ āϧāϰāύ

āĻ›āĻŦāĻŋāϟāĻŋ āĻ•ā§āϰāĻĒ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āφāĻ•ā§ƒāϤāĻŋāĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ āĻāĻŦāĻ‚ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤

āĻāύāĻžāĻŽ
SQUARE āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŽāĻžāύāĨ¤ āĻ›āĻŦāĻŋāϰ āωāĻĒāϰ āĻāĻ•āϟāĻŋ āĻŦāĻ°ā§āĻ—āĻžāĻ•āĻžāϰ āĻŽāĻžāĻ¸ā§āĻ• āĻĒā§āϰāϝāĻŧā§‹āĻ— āĻ•āϰ⧇āĨ¤ āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āĻāĻ•āϟāĻŋ ā§Ēxā§Š ​​āĻ›āĻŦāĻŋ ā§Šxā§Š āĻšāϝāĻŧ⧇ āϝāĻžāϝāĻŧāĨ¤
CIRCLE āĻ›āĻŦāĻŋāϤ⧇ āĻāĻ•āϟāĻŋ āĻŦ⧃āĻ¤ā§āϤāĻžāĻ•āĻžāϰ āĻŽāĻžāĻ¸ā§āĻ• āĻĒā§āϰāϝāĻŧā§‹āĻ— āĻ•āϰ⧇āĨ¤ āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āĻāĻ•āϟāĻŋ ā§Ēxā§Š ​​āĻ›āĻŦāĻŋ ā§Š āĻŦā§āϝāĻžāϏāĻŦāĻŋāĻļāĻŋāĻˇā§āϟ āĻāĻ•āϟāĻŋ āĻŦ⧃āĻ¤ā§āϤ⧇ āĻĒāϰāĻŋāĻŖāϤ āĻšāϝāĻŧāĨ¤

āĻŦāĻŋāĻ­āĻžāĻ—

āĻāĻ•āϟāĻŋ āϏ⧇āĻ•āĻļāύ⧇ āωāχāĻœā§‡āϟāϗ⧁āϞ⧋āϰ āĻāĻ•āϟāĻŋ āϏāĻ‚āĻ—ā§āϰāĻš āĻĨāĻžāϕ⧇, āϝ⧇āϗ⧁āϞ⧋ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰāĻžāϰ āĻ•ā§āϰāĻŽāĻžāύ⧁āϏāĻžāϰ⧇ āωāĻ˛ā§āϞāĻŽā§āĻŦāĻ­āĻžāĻŦ⧇ āϰ⧇āĻ¨ā§āĻĄāĻžāϰ āĻ•āϰāĻž āĻšāϝāĻŧāĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ āĻāĻŦāĻ‚ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "header": string,
  "widgets": [
    {
      object (Widget)
    }
  ],
  "collapsible": boolean,
  "uncollapsibleWidgetsCount": integer,
  "id": string,
  "collapseControl": {
    object (CollapseControl)
  }
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
header

string

āϏ⧇āĻ•āĻļāύ⧇āϰ āĻļā§€āĻ°ā§āώ⧇ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻŸā§‡āĻ•ā§āϏāϟāĨ¤ āϏāĻžāϧāĻžāϰāĻŖ HTML āĻĢāϰāĻŽā§āϝāĻžāϟ āĻ•āϰāĻž āĻŸā§‡āĻ•ā§āϏāϟ āϏāĻŽāĻ°ā§āĻĨāύ āĻ•āϰ⧇āĨ¤ āĻŸā§‡āĻ•ā§āϏāϟ āĻĢāϰāĻŽā§āϝāĻžāϟāĻŋāĻ‚ āϏāĻŽā§āĻĒāĻ°ā§āϕ⧇ āφāϰāĻ“ āϤāĻĨā§āϝ⧇āϰ āϜāĻ¨ā§āϝ, Google Chat āĻ…ā§āϝāĻžāĻĒ⧇ āĻŸā§‡āĻ•ā§āϏāϟ āĻĢāϰāĻŽā§āϝāĻžāϟāĻŋāĻ‚ āĻāĻŦāĻ‚ Google Workspace āĻ…ā§āϝāĻžāĻĄ-āĻ…āύ⧇ āĻŸā§‡āĻ•ā§āϏāϟ āĻĢāϰāĻŽā§āϝāĻžāϟāĻŋāĻ‚ āĻĻ⧇āϖ⧁āύāĨ¤

widgets[]

object ( Widget )

āϏ⧇āĻ•āĻļāύāϟāĻŋāϰ āϏāĻŽāĻ¸ā§āϤ āωāχāĻœā§‡āϟāĨ¤ āĻāϤ⧇ āĻ…āĻŦāĻļā§āϝāχ āĻ…āĻ¨ā§āϤāϤ āĻāĻ•āϟāĻŋ āωāχāĻœā§‡āϟ āĻĨāĻžāĻ•āϤ⧇ āĻšāĻŦ⧇āĨ¤

collapsible

boolean

āĻāχ āĻ…āĻ‚āĻļāϟāĻŋ āĻ­āĻžāρāϜāϝ⧋āĻ—ā§āϝ āĻ•āĻŋāύāĻž āϤāĻž āύāĻŋāĻ°ā§āĻĻ⧇āĻļ āĻ•āϰ⧇āĨ¤

āϏāĻ‚āϕ⧁āϚāĻŋāϤ āĻ•āϰāĻž āϝāĻžāϝāĻŧ āĻāĻŽāύ āĻŦāĻŋāĻ­āĻžāĻ—āϗ⧁āϞ⧋ āĻ•āĻŋāϛ⧁ āĻŦāĻž āϏāĻŽāĻ¸ā§āϤ āωāχāĻœā§‡āϟ āϞ⧁āĻ•āĻŋāϝāĻŧ⧇ āϰāĻžāϖ⧇, āĻ•āĻŋāĻ¨ā§āϤ⧁ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰāĻž 'āφāϰāĻ“ āĻĻ⧇āĻ–āĻžāύ' (Show more) āĻ āĻ•ā§āϞāĻŋāĻ• āĻ•āϰ⧇ āĻŦāĻŋāĻ­āĻžāĻ—āϟāĻŋ āĻĒā§āϰāϏāĻžāϰāĻŋāϤ āĻ•āϰāĻžāϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ āϞ⧁āĻ•āĻžāύ⧋ āωāχāĻœā§‡āϟāϗ⧁āϞ⧋ āφāĻŦāĻžāϰ āĻĻ⧇āĻ–āϤ⧇ āĻĒāĻžāϰ⧇āύāĨ¤ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰāĻž 'āĻ•āĻŽ āĻĻ⧇āĻ–āĻžāύ' (Show less) āĻ āĻ•ā§āϞāĻŋāĻ• āĻ•āϰ⧇ āωāχāĻœā§‡āϟāϗ⧁āϞ⧋ āĻĒ⧁āύāϰāĻžāϝāĻŧ āϞ⧁āĻ•āĻžāϤ⧇ āĻĒāĻžāϰ⧇āύāĨ¤

āϕ⧋āύ āωāχāĻœā§‡āϟāϗ⧁āϞ⧋ āϞ⧁āĻ•āĻžāύ⧋ āĻĨāĻžāĻ•āĻŦ⧇ āϤāĻž āύāĻŋāĻ°ā§āϧāĻžāϰāĻŖ āĻ•āϰāϤ⧇, uncollapsibleWidgetsCount āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰ⧁āύāĨ¤

uncollapsibleWidgetsCount

integer

āϝ⧇āϏāĻŦ āωāχāĻœā§‡āϟ āϕ⧋āύ⧋ āϏ⧇āĻ•āĻļāύ āϏāĻ‚āϕ⧁āϚāĻŋāϤ āĻ•āϰāĻžāϰ āĻĒāϰ⧇āĻ“ āĻĻ⧃āĻļā§āϝāĻŽāĻžāύ āĻĨāĻžāϕ⧇, āϤāĻžāĻĻ⧇āϰ āϏāĻ‚āĻ–ā§āϝāĻžāĨ¤

āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āϝāĻ–āύ āĻāĻ•āϟāĻŋ āĻŦāĻŋāĻ­āĻžāϗ⧇ āĻĒāĻžāρāϚāϟāĻŋ āωāχāĻœā§‡āϟ āĻĨāĻžāϕ⧇ āĻāĻŦāĻ‚ uncollapsibleWidgetsCount āĻāϰ āĻŽāĻžāύ 2 āϏ⧇āϟ āĻ•āϰāĻž āĻĨāĻžāϕ⧇, āϤāĻ–āύ āĻĒā§āϰāĻĨāĻŽ āĻĻ⧁āϟāĻŋ āωāχāĻœā§‡āϟ āϏāĻ°ā§āĻŦāĻĻāĻž āĻĻ⧇āĻ–āĻžāύ⧋ āĻšāϝāĻŧ āĻāĻŦāĻ‚ āĻļ⧇āώ⧇āϰ āϤāĻŋāύāϟāĻŋ āĻĄāĻŋāĻĢāĻ˛ā§āϟāϰ⧂āĻĒ⧇ āϏāĻ‚āϕ⧁āϚāĻŋāϤ āĻĨāĻžāϕ⧇āĨ¤ uncollapsibleWidgetsCount āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āϤāĻ–āύāχ āĻŦāĻŋāĻŦ⧇āϚāύāĻž āĻ•āϰāĻž āĻšāϝāĻŧ āϝāĻ–āύ collapsible true āĻšāϝāĻŧāĨ¤

id

string

āϝ⧇ āϏ⧇āĻ•āĻļāύāϟāĻŋ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻ•āϰāĻž āĻšāĻŦ⧇, āϏ⧇āϟāĻŋāϕ⧇ āĻļāύāĻžāĻ•ā§āϤ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āύāĻŋāĻ°ā§āϧāĻžāϰāĻŋāϤ āĻāĻ•āϟāĻŋ āĻ…āύāĻ¨ā§āϝ āφāχāĻĄāĻŋāĨ¤ āφāχāĻĄāĻŋāϟāĻŋāϰ āĻ…āĻ•ā§āώāϰ āϏāĻ‚āĻ–ā§āϝāĻž ā§Ŧā§Ē-āĻāϰ āĻŽāĻ§ā§āϝ⧇ āϏ⧀āĻŽāĻžāĻŦāĻĻā§āϧ āĻāĻŦāĻ‚ āĻāϟāĻŋ [a-zA-Z0-9-]+ āĻĢāϰāĻŽā§āϝāĻžāĻŸā§‡ āĻšāϤ⧇ āĻšāĻŦ⧇āĨ¤

Google Workspace Studio-āĻāϰ āĻ•āĻžāĻ°ā§āϝāĻ•āĻžāϰāĻŋāϤāĻž āĻŦāĻ°ā§āϧāύāĻ•āĻžāϰ⧀ Google Workspace āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤ Google Chat āĻ…ā§āϝāĻžāĻĒāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āĻĒāϞāĻŦā§āϧāĨ¤

collapseControl

object ( CollapseControl )

āϐāĻšā§āĻ›āĻŋāĻ•āĨ¤ āϏ⧇āĻ•āĻļāύāϟāĻŋāϰ āĻāĻ•ā§āϏāĻĒā§āϝāĻžāĻ¨ā§āĻĄ āĻāĻŦāĻ‚ āĻ•āϞāĻžāĻĒāϏ āĻŦāĻžāϟāύ āύāĻŋāĻ°ā§āϧāĻžāϰāĻŖ āĻ•āϰ⧁āύāĨ¤ āĻāχ āĻŦāĻžāϟāύāϟāĻŋ āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āϤāĻ–āύāχ āĻĻ⧇āĻ–āĻžāύ⧋ āĻšāĻŦ⧇ āϝāĻ–āύ āϏ⧇āĻ•āĻļāύāϟāĻŋ āĻ•āϞāĻžāĻĒāϏāĻŋāĻŦāϞ āĻšāĻŦ⧇āĨ¤ āĻāχ āĻĢāĻŋāĻ˛ā§āĻĄāϟāĻŋ āϏ⧇āϟ āĻ•āϰāĻž āύāĻž āĻĨāĻžāĻ•āϞ⧇, āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŦāĻžāϟāύāϟāĻŋ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āĻšāĻŦ⧇āĨ¤

āωāχāĻœā§‡āϟ

āĻĒā§āϰāϤāĻŋāϟāĻŋ āĻ•āĻžāĻ°ā§āĻĄ āωāχāĻœā§‡āϟ āĻĻāĻŋāϝāĻŧ⧇ āĻ—āĻ āĻŋāϤāĨ¤

āωāχāĻœā§‡āϟ āĻšāϞ⧋ āĻāĻ•āϟāĻŋ āϝ⧌āĻ—āĻŋāĻ• āĻŦāĻ¸ā§āϤ⧁ āϝāĻž āĻŸā§‡āĻ•ā§āϏāϟ, āĻ›āĻŦāĻŋ, āĻŦāĻžāϟāύ āĻāĻŦāĻ‚ āĻ…āĻ¨ā§āϝāĻžāĻ¨ā§āϝ āϧāϰāύ⧇āϰ āĻŦāĻ¸ā§āϤ⧁āϕ⧇ āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "horizontalAlignment": enum (HorizontalAlignment),
  "id": string,
  "visibility": enum (Visibility),
  "eventActions": [
    {
      object (EventAction)
    }
  ],

  "textParagraph": {
    object (TextParagraph)
  },
  "image": {
    object (Image)
  },
  "decoratedText": {
    object (DecoratedText)
  },
  "buttonList": {
    object (ButtonList)
  },
  "textInput": {
    object (TextInput)
  },
  "selectionInput": {
    object (SelectionInput)
  },
  "dateTimePicker": {
    object (DateTimePicker)
  },
  "divider": {
    object (Divider)
  },
  "grid": {
    object (Grid)
  },
  "columns": {
    object (Columns)
  },
  "carousel": {
    object (Carousel)
  },
  "chipList": {
    object (ChipList)
  }
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
horizontalAlignment

enum ( HorizontalAlignment )

āωāχāĻœā§‡āϟāϗ⧁āϞ⧋ āϕ⧋āύ⧋ āĻ•āϞāĻžāĻŽā§‡āϰ āĻŦāĻžāĻŽā§‡, āĻĄāĻžāύ⧇, āύāĻžāĻ•āĻŋ āϕ⧇āĻ¨ā§āĻĻā§āϰ⧇ āϏāĻžāϰāĻŋāĻŦāĻĻā§āϧ āĻšāĻŦ⧇ āϤāĻž āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰ⧇āĨ¤

id

string

āϝ⧇ āωāχāĻœā§‡āϟāϟāĻŋ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻ•āϰāĻž āĻšāĻŦ⧇, āϏ⧇āϟāĻŋāϕ⧇ āĻļāύāĻžāĻ•ā§āϤ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āωāχāĻœā§‡āϟāϟāĻŋāϕ⧇ āĻāĻ•āϟāĻŋ āĻ…āύāĻ¨ā§āϝ āφāχāĻĄāĻŋ āĻĻ⧇āĻ“āϝāĻŧāĻž āĻšāϝāĻŧāĨ¤ āφāχāĻĄāĻŋāϟāĻŋāϰ āĻ…āĻ•ā§āώāϰ āϏāĻ‚āĻ–ā§āϝāĻž ā§Ŧā§Ē-āĻāϰ āĻŽāĻ§ā§āϝ⧇ āϏ⧀āĻŽāĻžāĻŦāĻĻā§āϧ āĻāĻŦāĻ‚ [a-zA-Z0-9-]+ āĻāĻŦāĻ‚ āĻāχ āĻĢāϰāĻŽā§āϝāĻžāĻŸā§‡ āĻšāϤ⧇ āĻšāĻŦ⧇āĨ¤

Google Workspace Studio-āĻāϰ āĻ•āĻžāĻ°ā§āϝāĻ•āĻžāϰāĻŋāϤāĻž āĻŦāĻ°ā§āϧāύāĻ•āĻžāϰ⧀ Google Workspace āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤ Google Chat āĻ…ā§āϝāĻžāĻĒāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āĻĒāϞāĻŦā§āϧāĨ¤

visibility

enum ( Visibility )

āωāχāĻœā§‡āϟāϟāĻŋ āĻĻ⧃āĻļā§āϝāĻŽāĻžāύ āĻšāĻŦ⧇ āύāĻžāĻ•āĻŋ āĻ…āĻĻ⧃āĻļā§āϝ āĻĨāĻžāĻ•āĻŦ⧇ āϤāĻž āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰ⧇āĨ¤ āĻāϰ āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŽāĻžāύ āĻšāϞ⧋ VISIBLE )āĨ¤

Google Workspace Studio-āĻāϰ āĻ•āĻžāĻ°ā§āϝāĻ•āĻžāϰāĻŋāϤāĻž āĻŦāĻ°ā§āϧāύāĻ•āĻžāϰ⧀ Google Workspace āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤ Google Chat āĻ…ā§āϝāĻžāĻĒāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āĻĒāϞāĻŦā§āϧāĨ¤

eventActions[]

object ( EventAction )

āωāχāĻœā§‡āϟāϟāĻŋāϤ⧇ āϝ⧇ āχāϭ⧇āĻ¨ā§āϟ āĻ…ā§āϝāĻžāĻ•āĻļāύāϗ⧁āϞ⧋ āϏāĻŽā§āĻĒāĻžāĻĻāύ āĻ•āϰāĻž āϝ⧇āϤ⧇ āĻĒāĻžāϰ⧇, āϤāĻž āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰ⧇āĨ¤

Google Workspace Studio-āĻāϰ āĻ•āĻžāĻ°ā§āϝāĻ•āĻžāϰāĻŋāϤāĻž āĻŦāĻ°ā§āϧāύāĻ•āĻžāϰ⧀ Google Workspace āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤ Google Chat āĻ…ā§āϝāĻžāĻĒāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āĻĒāϞāĻŦā§āϧāĨ¤

āχāωāύāĻŋāϝāĻŧāύ āĻĢāĻŋāĻ˛ā§āĻĄ data āĨ¤ āĻāĻ•āϟāĻŋ āωāχāĻœā§‡āĻŸā§‡ āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤ āφāχāĻŸā§‡āĻŽāϗ⧁āϞāĻŋāϰ āĻŽāĻ§ā§āϝ⧇ āϕ⧇āĻŦāϞ āĻāĻ•āϟāĻŋāχ āĻĨāĻžāĻ•āϤ⧇ āĻĒāĻžāϰ⧇āĨ¤ āφāϰāĻ“ āφāχāĻŸā§‡āĻŽ āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰāϤ⧇ āφāĻĒāύāĻŋ āĻāĻ•āĻžāϧāĻŋāĻ• āωāχāĻœā§‡āϟ āĻĢāĻŋāĻ˛ā§āĻĄ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύāĨ¤ data āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤāϗ⧁āϞāĻŋāϰ āĻŽāĻ§ā§āϝ⧇ āϕ⧇āĻŦāϞ āĻāĻ•āϟāĻŋ āĻšāϤ⧇ āĻĒāĻžāϰ⧇:
textParagraph

object ( TextParagraph )

āĻāĻ•āϟāĻŋ āĻĒāĻžāĻ ā§āϝ āĻ…āύ⧁āĻšā§āϛ⧇āĻĻ āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰ⧇āĨ¤ āϏāĻžāϧāĻžāϰāĻŖ HTML āĻĢāϰāĻŽā§āϝāĻžāϟ āĻ•āϰāĻž āĻĒāĻžāĻ ā§āϝ āϏāĻŽāĻ°ā§āĻĨāύ āĻ•āϰ⧇āĨ¤ āĻĒāĻžāĻ ā§āϝ āĻĢāϰāĻŽā§āϝāĻžāϟ āĻ•āϰāĻžāϰ āĻŦāĻŋāώāϝāĻŧ⧇ āφāϰāĻ“ āϤāĻĨā§āϝ⧇āϰ āϜāĻ¨ā§āϝ, Google Chat āĻ…ā§āϝāĻžāĻĒ⧇ āĻĒāĻžāĻ ā§āϝ āĻĢāϰāĻŽā§āϝāĻžāϟ āĻ•āϰāĻž āĻāĻŦāĻ‚ Google Workspace āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϤ⧇ āĻĒāĻžāĻ ā§āϝ āĻĢāϰāĻŽā§āϝāĻžāϟ āĻ•āϰāĻž āĻĻ⧇āϖ⧁āύāĨ¤

āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤ JSON āĻāĻ•āϟāĻŋ āĻŦā§‹āĻ˛ā§āĻĄ āĻŸā§‡āĻ•ā§āϏāϟ āϤ⧈āϰāĻŋ āĻ•āϰ⧇:

"textParagraph": {
  "text": "  <b>bold text</b>"
}
image

object ( Image )

āĻāĻ•āϟāĻŋ āĻ›āĻŦāĻŋ āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰ⧇āĨ¤

āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤ JSON-āϟāĻŋ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ āĻŸā§‡āĻ•ā§āϏāϟ āϏāĻš āĻāĻ•āϟāĻŋ āĻ›āĻŦāĻŋ āϤ⧈āϰāĻŋ āĻ•āϰ⧇:

"image": {
  "imageUrl":
  "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png",
  "altText": "Chat app avatar"
}
decoratedText

object ( DecoratedText )

āĻāĻ•āϟāĻŋ āϏāĻœā§āϜāĻŋāϤ āĻĒāĻžāĻ ā§āϝ āφāχāĻŸā§‡āĻŽ āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰ⧇āĨ¤

āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤ JSON āϟāĻŋ āχāĻŽā§‡āϞ āĻ āĻŋāĻ•āĻžāύāĻž āĻĒā§āϰāĻĻāĻ°ā§āĻļāύāĻ•āĻžāϰ⧀ āĻāĻ•āϟāĻŋ āϏāĻœā§āϜāĻŋāϤ āĻŸā§‡āĻ•ā§āϏāϟ āωāχāĻœā§‡āϟ āϤ⧈āϰāĻŋ āĻ•āϰ⧇:

"decoratedText": {
  "icon": {
    "knownIcon": "EMAIL"
  },
  "topLabel": "Email Address",
  "text": "sasha@example.com",
  "bottomLabel": "This is a new Email address!",
  "switchControl": {
    "name": "has_send_welcome_email_to_sasha",
    "selected": false,
    "controlType": "CHECKBOX"
  }
}
buttonList

object ( ButtonList )

āĻŦāĻžāϟāύāϗ⧁āϞ⧋āϰ āĻāĻ•āϟāĻŋ āϤāĻžāϞāĻŋāĻ•āĻžāĨ¤

āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤ JSON āĻĻ⧁āϟāĻŋ āĻŦāĻžāϟāύ āϤ⧈āϰāĻŋ āĻ•āϰ⧇āĨ¤ āĻĒā§āϰāĻĨāĻŽāϟāĻŋ āĻāĻ•āϟāĻŋ āύ⧀āϞ āϰāϙ⧇āϰ āĻŸā§‡āĻ•ā§āϏāϟ āĻŦāĻžāϟāύ āĻāĻŦāĻ‚ āĻĻā§āĻŦāĻŋāϤ⧀āϝāĻŧāϟāĻŋ āĻāĻ•āϟāĻŋ āχāĻŽā§‡āϜ āĻŦāĻžāϟāύ āϝāĻž āĻāĻ•āϟāĻŋ āϞāĻŋāĻ™ā§āĻ• āĻ–ā§‹āϞ⧇:

"buttonList": {
  "buttons": [
    {
      "text": "Edit",
      "color": {
        "red": 0,
        "green": 0,
        "blue": 1,
      },
      "disabled": true,
    },
    {
      "icon": {
        "knownIcon": "INVITE",
        "altText": "check calendar"
      },
      "onClick": {
        "openLink": {
          "url": "https://example.com/calendar"
        }
      }
    }
  ]
}
textInput

object ( TextInput )

āĻāĻ•āϟāĻŋ āĻŸā§‡āĻ•ā§āϏāϟ āĻŦāĻ•ā§āϏ āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰ⧇ āϝ⧇āĻ–āĻžāύ⧇ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰāĻž āϟāĻžāχāĻĒ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύāĨ¤

āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤ JSON āĻāĻ•āϟāĻŋ āχāĻŽā§‡āϞ āĻ āĻŋāĻ•āĻžāύāĻžāϰ āϜāĻ¨ā§āϝ āĻāĻ•āϟāĻŋ āĻŸā§‡āĻ•ā§āϏāϟ āχāύāĻĒ⧁āϟ āϤ⧈āϰāĻŋ āĻ•āϰ⧇:

"textInput": {
  "name": "mailing_address",
  "label": "Mailing Address"
}

āφāϰ⧇āĻ•āϟāĻŋ āωāĻĻāĻžāĻšāϰāĻŖ āĻšāĻŋāϏ⧇āĻŦ⧇, āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤ JSON-āϟāĻŋ āĻ¸ā§āĻŸā§āϝāĻžāϟāĻŋāĻ• āϏāĻžāĻœā§‡āĻļāύ āϏāĻš āĻāĻ•āϟāĻŋ āĻĒā§āϰ⧋āĻ—ā§āϰāĻžāĻŽāĻŋāĻ‚ āĻ­āĻžāώāĻžāϰ āϜāĻ¨ā§āϝ āĻŸā§‡āĻ•ā§āϏāϟ āχāύāĻĒ⧁āϟ āϤ⧈āϰāĻŋ āĻ•āϰ⧇:

"textInput": {
  "name": "preferred_programing_language",
  "label": "Preferred Language",
  "initialSuggestions": {
    "items": [
      {
        "text": "C++"
      },
      {
        "text": "Java"
      },
      {
        "text": "JavaScript"
      },
      {
        "text": "Python"
      }
    ]
  }
}
selectionInput

object ( SelectionInput )

āĻāĻ•āϟāĻŋ āϏāĻŋāϞ⧇āĻ•āĻļāύ āĻ•āĻ¨ā§āĻŸā§āϰ⧋āϞ āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰ⧇ āϝāĻž āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āĻĻ⧇āϰ āφāχāĻŸā§‡āĻŽ āύāĻŋāĻ°ā§āĻŦāĻžāϚāύ āĻ•āϰāϤ⧇ āĻĻ⧇āϝāĻŧāĨ¤ āϏāĻŋāϞ⧇āĻ•āĻļāύ āĻ•āĻ¨ā§āĻŸā§āϰ⧋āϞāϗ⧁āϞ⧋ āĻšā§‡āĻ•āĻŦāĻ•ā§āϏ, āϰ⧇āĻĄāĻŋāĻ“ āĻŦāĻžāϟāύ, āϏ⧁āχāϚ āĻŦāĻž āĻĄā§āϰāĻĒāĻĄāĻžāωāύ āĻŽā§‡āύ⧁ āĻšāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤

āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤ JSON āĻāĻ•āϟāĻŋ āĻĄā§āϰāĻĒāĻĄāĻžāωāύ āĻŽā§‡āύ⧁ āϤ⧈āϰāĻŋ āĻ•āϰ⧇ āϝāĻž āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āĻĻ⧇āϰ āφāĻ•āĻžāϰ āĻŦ⧇āϛ⧇ āύāĻŋāϤ⧇ āĻĻ⧇āϝāĻŧ:

"selectionInput": {
  "name": "size",
  "label": "Size"
  "type": "DROPDOWN",
  "items": [
    {
      "text": "S",
      "value": "small",
      "selected": false
    },
    {
      "text": "M",
      "value": "medium",
      "selected": true
    },
    {
      "text": "L",
      "value": "large",
      "selected": false
    },
    {
      "text": "XL",
      "value": "extra_large",
      "selected": false
    }
  ]
}
dateTimePicker

object ( DateTimePicker )

āĻāĻŽāύ āĻāĻ•āϟāĻŋ āωāχāĻœā§‡āϟ āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰ⧇, āϝāĻž āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āĻĻ⧇āϰ āϤāĻžāϰāĻŋāĻ–, āϏāĻŽāϝāĻŧ āĻ…āĻĨāĻŦāĻž āϤāĻžāϰāĻŋāĻ– āĻ“ āϏāĻŽāϝāĻŧ āχāύāĻĒ⧁āϟ āĻ•āϰāĻžāϰ āϏ⧁āϝ⧋āĻ— āĻĻ⧇āϝāĻŧāĨ¤

āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤ JSON āĻāĻ•āϟāĻŋ āĻ…ā§āϝāĻžāĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻŽā§‡āĻ¨ā§āϟ āύāĻŋāĻ°ā§āϧāĻžāϰāĻŖ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āĻāĻ•āϟāĻŋ āĻĄā§‡āϟ āϟāĻžāχāĻŽ āĻĒāĻŋāĻ•āĻžāϰ āϤ⧈āϰāĻŋ āĻ•āϰ⧇:

"dateTimePicker": {
  "name": "appointment_time",
  "label": "Book your appointment at:",
  "type": "DATE_AND_TIME",
  "valueMsEpoch": 796435200000
}
divider

object ( Divider )

āωāχāĻœā§‡āϟāϗ⧁āϞ⧋āϰ āĻŽāĻ§ā§āϝ⧇ āĻāĻ•āϟāĻŋ āφāύ⧁āĻ­ā§‚āĻŽāĻŋāĻ• āϰ⧇āĻ–āĻž āĻŦāĻŋāĻ­āĻžāϜāĻ• āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰ⧇āĨ¤

āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤ JSON āĻāĻ•āϟāĻŋ āĻĄāĻŋāĻ­āĻžāχāĻĄāĻžāϰ āϤ⧈āϰāĻŋ āĻ•āϰ⧇:

"divider": {
}
grid

object ( Grid )

āφāχāĻŸā§‡āĻŽāϏāĻŽā§‚āĻšā§‡āϰ āĻāĻ•āϟāĻŋ āϏāĻ‚āĻ—ā§āϰāĻšāϏāĻš āĻāĻ•āϟāĻŋ āĻ—ā§āϰāĻŋāĻĄ āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰ⧇āĨ¤

āĻāĻ•āϟāĻŋ āĻ—ā§āϰāĻŋāĻĄā§‡ āϝ⧇āϕ⧋āύ⧋ āϏāĻ‚āĻ–ā§āϝāĻ• āĻ•āϞāĻžāĻŽ āĻāĻŦāĻ‚ āφāχāĻŸā§‡āĻŽ āĻĨāĻžāĻ•āϤ⧇ āĻĒāĻžāϰ⧇āĨ¤ āφāχāĻŸā§‡āĻŽā§‡āϰ āϏāĻ‚āĻ–ā§āϝāĻžāϕ⧇ āĻ•āϞāĻžāĻŽā§‡āϰ āϏāĻ‚āĻ–ā§āϝāĻž āĻĻāĻŋāϝāĻŧ⧇ āĻ­āĻžāĻ— āĻ•āϰ⧇ āĻĒā§āϰāĻžāĻĒā§āϤ āĻŽāĻžāύ āĻĻā§āĻŦāĻžāϰāĻž āϏāĻžāϰāĻŋāϰ āϏāĻ‚āĻ–ā§āϝāĻž āύāĻŋāĻ°ā§āϧāĻžāϰāĻŖ āĻ•āϰāĻž āĻšāϝāĻŧāĨ¤ ā§§ā§ĻāϟāĻŋ āφāχāĻŸā§‡āĻŽ āĻ“ ⧍āϟāĻŋ āĻ•āϞāĻžāĻŽā§‡āϰ āĻāĻ•āϟāĻŋ āĻ—ā§āϰāĻŋāĻĄā§‡ ā§ĢāϟāĻŋ āϏāĻžāϰāĻŋ āĻĨāĻžāϕ⧇āĨ¤ ā§§ā§§āϟāĻŋ āφāχāĻŸā§‡āĻŽ āĻ“ ⧍āϟāĻŋ āĻ•āϞāĻžāĻŽā§‡āϰ āĻāĻ•āϟāĻŋ āĻ—ā§āϰāĻŋāĻĄā§‡ ā§ŦāϟāĻŋ āϏāĻžāϰāĻŋ āĻĨāĻžāϕ⧇āĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ āĻāĻŦāĻ‚ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤

āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤ JSON-āϟāĻŋ āĻāĻ•āϟāĻŋ āĻŽāĻžāĻ¤ā§āϰ āφāχāĻŸā§‡āĻŽ āϏāĻš āĻāĻ•āϟāĻŋ ⧍-āĻ•āϞāĻžāĻŽā§‡āϰ āĻ—ā§āϰāĻŋāĻĄ āϤ⧈āϰāĻŋ āĻ•āϰ⧇:

"grid": {
  "title": "A fine collection of items",
  "columnCount": 2,
  "borderStyle": {
    "type": "STROKE",
    "cornerRadius": 4
  },
  "items": [
    {
      "image": {
        "imageUri": "https://www.example.com/image.png",
        "cropStyle": {
          "type": "SQUARE"
        },
        "borderStyle": {
          "type": "STROKE"
        }
      },
      "title": "An item",
      "textAlignment": "CENTER"
    }
  ],
  "onClick": {
    "openLink": {
      "url": "https://www.example.com"
    }
  }
}
columns

object ( Columns )

āϏāĻ°ā§āĻŦā§‹āĻšā§āϚ ⧍āϟāĻŋ āĻ•āϞāĻžāĻŽ āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰ⧇āĨ¤

āĻĻ⧁āχāϟāĻŋāϰ āĻŦ⧇āĻļāĻŋ āĻ•āϞāĻžāĻŽ āĻŦāĻž āϏāĻžāϰāĻŋ āĻ…āĻ¨ā§āϤāĻ°ā§āϭ⧁āĻ•ā§āϤ āĻ•āϰāϤ⧇ Grid āωāχāĻœā§‡āϟ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧁āύāĨ¤

āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤ JSON-āϟāĻŋ ⧍āϟāĻŋ āĻ•āϞāĻžāĻŽ āϤ⧈āϰāĻŋ āĻ•āϰ⧇, āϝ⧇āϗ⧁āϞ⧋āϰ āĻĒā§āϰāϤāĻŋāϟāĻŋāϤ⧇ āĻŸā§‡āĻ•ā§āϏāϟ āĻĒā§āϝāĻžāϰāĻžāĻ—ā§āϰāĻžāĻĢ āĻĨāĻžāϕ⧇:

"columns": {
  "columnItems": [
    {
      "horizontalSizeStyle": "FILL_AVAILABLE_SPACE",
      "horizontalAlignment": "CENTER",
      "verticalAlignment": "CENTER",
      "widgets": [
        {
          "textParagraph": {
            "text": "First column text paragraph"
          }
        }
      ]
    },
    {
      "horizontalSizeStyle": "FILL_AVAILABLE_SPACE",
      "horizontalAlignment": "CENTER",
      "verticalAlignment": "CENTER",
      "widgets": [
        {
          "textParagraph": {
            "text": "Second column text paragraph"
          }
        }
      ]
    }
  ]
}
carousel

object ( Carousel )

āĻāĻ•āϟāĻŋ āĻ•ā§āϝāĻžāϰ⧋āϏ⧇āϞ⧇ āĻāĻ•āĻžāϧāĻŋāĻ• āύ⧇āĻ¸ā§āĻŸā§‡āĻĄ āωāχāĻœā§‡āϟ āĻĨāĻžāϕ⧇āĨ¤ āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āĻāϟāĻŋ āĻāĻ•āϟāĻŋ āĻ•ā§āϝāĻžāϰ⧋āϏ⧇āϞ⧇āϰ JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž, āϝāĻžāϤ⧇ āĻĻ⧁āϟāĻŋ āĻŸā§‡āĻ•ā§āϏāϟ āĻĒā§āϝāĻžāϰāĻžāĻ—ā§āϰāĻžāĻĢ āϰāϝāĻŧ⧇āϛ⧇āĨ¤

{
  "widgets": [
    {
      "textParagraph": {
        "text": "First text paragraph in the carousel."
      }
    },
    {
      "textParagraph": {
        "text": "Second text paragraph in the carousel."
      }
    }
  ]
}
chipList

object ( ChipList )

āϚāĻŋāĻĒāϏ⧇āϰ āĻāĻ•āϟāĻŋ āϤāĻžāϞāĻŋāĻ•āĻžāĨ¤

āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤ JSON āĻĻ⧁āϟāĻŋ āϚāĻŋāĻĒ āϤ⧈āϰāĻŋ āĻ•āϰ⧇āĨ¤ āĻĒā§āϰāĻĨāĻŽāϟāĻŋ āĻāĻ•āϟāĻŋ āĻŸā§‡āĻ•ā§āϏāϟ āϚāĻŋāĻĒ āĻāĻŦāĻ‚ āĻĻā§āĻŦāĻŋāϤ⧀āϝāĻŧāϟāĻŋ āĻāĻ•āϟāĻŋ āφāχāĻ•āύ āϚāĻŋāĻĒ āϝāĻž āĻāĻ•āϟāĻŋ āϞāĻŋāĻ™ā§āĻ• āĻ–ā§‹āϞ⧇:

"chipList": {
  "chips": [
    {
      "text": "Edit",
      "disabled": true,
    },
    {
      "icon": {
        "knownIcon": "INVITE",
        "altText": "check calendar"
      },
      "onClick": {
        "openLink": {
          "url": "https://example.com/calendar"
        }
      }
    }
  ]
}

āĻĒāĻžāĻ ā§āϝ āĻ…āύ⧁āĻšā§āϛ⧇āĻĻ

āĻāĻ•āϟāĻŋ āĻŸā§‡āĻ•ā§āϏāϟ āĻĒā§āϝāĻžāϰāĻžāĻ—ā§āϰāĻžāĻĢ āϝāĻž āĻĢāϰāĻŽā§āϝāĻžāϟāĻŋāĻ‚ āϏāĻŽāĻ°ā§āĻĨāύ āĻ•āϰ⧇āĨ¤ āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ⧇ āĻāĻ•āϟāĻŋ āωāĻĻāĻžāĻšāϰāϪ⧇āϰ āϜāĻ¨ā§āϝ, ‘āĻĢāϰāĻŽā§āϝāĻžāϟ āĻ•āϰāĻž āĻŸā§‡āĻ•ā§āϏāĻŸā§‡āϰ āĻāĻ•āϟāĻŋ āĻĒā§āϝāĻžāϰāĻžāĻ—ā§āϰāĻžāĻĢ āϝ⧋āĻ— āĻ•āϰ⧁āύ ’ āĻĻ⧇āϖ⧁āύāĨ¤ āĻŸā§‡āĻ•ā§āϏāϟ āĻĢāϰāĻŽā§āϝāĻžāϟāĻŋāĻ‚ āϏāĻŽā§āĻĒāĻ°ā§āϕ⧇ āφāϰāĻ“ āϤāĻĨā§āϝ⧇āϰ āϜāĻ¨ā§āϝ, ‘āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ⧇ āĻŸā§‡āĻ•ā§āϏāϟ āĻĢāϰāĻŽā§āϝāĻžāϟāĻŋāĻ‚â€™ āĻāĻŦāĻ‚ ‘āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϤ⧇ āĻŸā§‡āĻ•ā§āϏāϟ āĻĢāϰāĻŽā§āϝāĻžāϟāĻŋāĻ‚â€™ āĻĻ⧇āϖ⧁āύāĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ āĻāĻŦāĻ‚ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "text": string,
  "maxLines": integer,
  "textSyntax": enum (TextSyntax)
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
text

string

āωāχāĻœā§‡āĻŸā§‡ āϝ⧇ āϞ⧇āĻ–āĻžāϟāĻŋ āĻĻ⧇āĻ–āĻžāύ⧋ āĻšāϝāĻŧāĨ¤

maxLines

integer

āωāχāĻœā§‡āĻŸā§‡ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻŸā§‡āĻ•ā§āϏāĻŸā§‡āϰ āϏāĻ°ā§āĻŦā§‹āĻšā§āϚ āϞāĻžāχāύ āϏāĻ‚āĻ–ā§āϝāĻžāĨ¤ āϝāĻĻāĻŋ āĻŸā§‡āĻ•ā§āϏāϟ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āϏāĻ°ā§āĻŦā§‹āĻšā§āϚ āϞāĻžāχāύ āϏāĻ‚āĻ–ā§āϝāĻž āĻ…āϤāĻŋāĻ•ā§āϰāĻŽ āĻ•āϰ⧇, āϤāĻŦ⧇ āĻ…āϤāĻŋāϰāĻŋāĻ•ā§āϤ āĻ…āĻ‚āĻļāϟāĻŋ āĻāĻ•āϟāĻŋ 'āφāϰāĻ“ āĻĻ⧇āĻ–āĻžāύ' āĻŦāĻžāϟāύ⧇āϰ āφāĻĄāĻŧāĻžāϞ⧇ āϞ⧁āĻ•āĻŋāϝāĻŧ⧇ āϰāĻžāĻ–āĻž āĻšāϝāĻŧāĨ¤ āϝāĻĻāĻŋ āĻŸā§‡āĻ•ā§āϏāϟ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āϏāĻ°ā§āĻŦā§‹āĻšā§āϚ āϞāĻžāχāύ āϏāĻ‚āĻ–ā§āϝāĻžāϰ āϏāĻŽāĻžāύ āĻŦāĻž āϤāĻžāϰ āĻšā§‡āϝāĻŧ⧇ āϛ⧋āϟ āĻšāϝāĻŧ, āϤāĻŦ⧇ āϕ⧋āύ⧋ ' āφāϰāĻ“ āĻĻ⧇āĻ–āĻžāύ ' āĻŦāĻžāϟāύ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšāϝāĻŧ āύāĻžāĨ¤

āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŽāĻžāύ āĻšāϞ⧋ ā§Ļ, āϏ⧇āĻ•ā§āώ⧇āĻ¤ā§āϰ⧇ āϏāĻŽāĻ¸ā§āϤ āĻĒā§āϰāĻžāϏāĻ™ā§āĻ—āĻŋāĻ• āϤāĻĨā§āϝ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšāϝāĻŧāĨ¤ āĻ‹āĻŖāĻžāĻ¤ā§āĻŽāĻ• āĻŽāĻžāύ āωāĻĒ⧇āĻ•ā§āώāĻž āĻ•āϰāĻž āĻšāϝāĻŧāĨ¤

textSyntax

enum ( TextSyntax )

āĻŸā§‡āĻ•ā§āϏāĻŸā§‡āϰ āϏāĻŋāύāĻŸā§āϝāĻžāĻ•ā§āϏāĨ¤ āĻāϟāĻŋ āϏ⧇āϟ āĻ•āϰāĻž āύāĻž āĻĨāĻžāĻ•āϞ⧇, āĻŸā§‡āĻ•ā§āϏāϟāϟāĻŋ HTML āĻšāĻŋāϏ⧇āĻŦ⧇ āϰ⧇āĻ¨ā§āĻĄāĻžāϰ āĻ•āϰāĻž āĻšāϝāĻŧāĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ⧇āϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύ⧇āϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āĻĒāϞāĻŦā§āϧāĨ¤

āĻŸā§‡āĻ•ā§āϏāϟ āϏāĻŋāύāĻŸā§āϝāĻžāĻ•ā§āϏ

āĻŸā§‡āĻ•ā§āϏāϟ āĻĢāϰāĻŽā§āϝāĻžāϟ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āϏāĻŋāύāĻŸā§āϝāĻžāĻ•ā§āϏāĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ⧇āϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύ⧇āϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āĻĒāϞāĻŦā§āϧāĨ¤

āĻāύāĻžāĻŽ
TEXT_SYNTAX_UNSPECIFIED āĻ…āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻĨāĻžāĻ•āϞ⧇ āϞ⧇āĻ–āĻžāϟāĻŋ HTML āĻšāĻŋāϏ⧇āĻŦ⧇ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšāϝāĻŧāĨ¤
HTML āϞ⧇āĻ–āĻžāϟāĻŋ HTML āĻšāĻŋāϏ⧇āĻŦ⧇ āϰ⧇āĻ¨ā§āĻĄāĻžāϰ āĻ•āϰāĻž āĻšāϝāĻŧāĨ¤ āĻāϟāĻŋāχ āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŽāĻžāύāĨ¤
MARKDOWN āϞ⧇āĻ–āĻžāϟāĻŋ āĻŽāĻžāĻ°ā§āĻ•āĻĄāĻžāωāύ āĻšāĻŋāϏ⧇āĻŦ⧇ āϰ⧇āĻ¨ā§āĻĄāĻžāϰ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤

āĻ›āĻŦāĻŋ

āĻāĻ•āϟāĻŋ āĻ›āĻŦāĻŋ āϝāĻž āĻāĻ•āϟāĻŋ URL āĻĻā§āĻŦāĻžāϰāĻž āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰāĻž āĻšāϝāĻŧ āĻāĻŦāĻ‚ āĻāϤ⧇ āĻāĻ•āϟāĻŋ onClick āĻ…ā§āϝāĻžāĻ•āĻļāύ āĻĨāĻžāĻ•āϤ⧇ āĻĒāĻžāϰ⧇āĨ¤ āĻāĻ•āϟāĻŋ āωāĻĻāĻžāĻšāϰāϪ⧇āϰ āϜāĻ¨ā§āϝ, 'āĻāĻ•āϟāĻŋ āĻ›āĻŦāĻŋ āϝ⧋āĻ— āĻ•āϰ⧁āύ' āĻĻ⧇āϖ⧁āύāĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ āĻāĻŦāĻ‚ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "imageUrl": string,
  "onClick": {
    object (OnClick)
  },
  "altText": string
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
imageUrl

string

āϝ⧇ HTTPS URL-āϟāĻŋāϤ⧇ āĻ›āĻŦāĻŋāϟāĻŋ āϰāϝāĻŧ⧇āϛ⧇āĨ¤

āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ:

https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png
onClick

object ( OnClick )

āϝāĻ–āύ āϕ⧋āύ⧋ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀ āĻ›āĻŦāĻŋāϟāĻŋāϤ⧇ āĻ•ā§āϞāĻŋāĻ• āĻ•āϰ⧇āύ, āϤāĻ–āύ āϏ⧇āχ āĻ•ā§āϞāĻŋāϕ⧇āϰ āĻĢāϞ⧇ āĻāχ āĻ•āĻžāϜāϟāĻŋ āϏāĻŽā§āĻĒāĻ¨ā§āύ āĻšāϝāĻŧāĨ¤

altText

string

āĻāχ āĻ›āĻŦāĻŋāϟāĻŋāϰ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ āϞ⧇āĻ–āĻžāϟāĻŋ āĻ…ā§āϝāĻžāĻ•ā§āϏ⧇āϏāĻŋāĻŦāĻŋāϞāĻŋāϟāĻŋāϰ āϜāĻ¨ā§āϝ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āĻšāϝāĻŧāĨ¤

āĻ…āύāĻ•ā§āϞāĻŋāĻ•

āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰāĻž āϝāĻ–āύ āĻ•āĻžāĻ°ā§āĻĄā§‡āϰ āϕ⧋āύ⧋ āχāĻ¨ā§āϟāĻžāϰ⧇āĻ•ā§āϟāĻŋāĻ­ āωāĻĒāĻžāĻĻāĻžāύ⧇, āϝ⧇āĻŽāύ āĻāĻ•āϟāĻŋ āĻŦā§‹āϤāĻžāĻŽā§‡, āĻ•ā§āϞāĻŋāĻ• āĻ•āϰ⧇āύ āϤāĻ–āύ āϕ⧀āĻ­āĻžāĻŦ⧇ āĻĒā§āϰāϤāĻŋāĻ•ā§āϰāĻŋāϝāĻŧāĻž āϜāĻžāύāĻžāϤ⧇ āĻšāĻŦ⧇ āϤāĻž āĻāϟāĻŋ āύāĻŋāĻ°ā§āĻĻ⧇āĻļ āĻ•āϰ⧇āĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ āĻāĻŦāĻ‚ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{

  "action": {
    object (Action)
  },
  "openLink": {
    object (OpenLink)
  },
  "openDynamicLinkAction": {
    object (Action)
  },
  "card": {
    object (Card)
  },
  "overflowMenu": {
    object (OverflowMenu)
  }
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ

āχāωāύāĻŋāϝāĻŧāύ āĻĢāĻŋāĻ˛ā§āĻĄ data āĨ¤

data āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤāϗ⧁āϞāĻŋāϰ āĻŽāĻ§ā§āϝ⧇ āϕ⧇āĻŦāϞ āĻāĻ•āϟāĻŋ āĻšāϤ⧇ āĻĒāĻžāϰ⧇:

action

object ( Action )

āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰāĻž āĻĨāĻžāĻ•āϞ⧇, āĻāχ onClick āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ āĻāĻ•āϟāĻŋ āĻ…ā§āϝāĻžāĻ•āĻļāύ āĻŸā§āϰāĻŋāĻ—āĻžāϰ āĻšāϝāĻŧāĨ¤

card

object ( Card )

āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰāĻž āĻĨāĻžāĻ•āϞ⧇, āĻ•ā§āϞāĻŋāĻ• āĻ•āϰāĻžāϰ āĻĒāϰ āĻ•āĻžāĻ°ā§āĻĄ āĻ¸ā§āĻŸā§āϝāĻžāϕ⧇ āĻāĻ•āϟāĻŋ āύāϤ⧁āύ āĻ•āĻžāĻ°ā§āĻĄ āϝ⧁āĻ•ā§āϤ āĻšāϝāĻŧāĨ¤

āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āĻĒāϞāĻŦā§āϧāĨ¤

overflowMenu

object ( OverflowMenu )

āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰāĻž āĻĨāĻžāĻ•āϞ⧇, āĻāχ onClick āĻāĻ•āϟāĻŋ āĻ“āĻ­āĻžāϰāĻĢā§āϞ⧋ āĻŽā§‡āύ⧁ āĻ–ā§‹āϞ⧇āĨ¤

āĻĒāĻĻāĻ•ā§āώ⧇āĻĒ

āĻāĻ•āϟāĻŋ āĻ…ā§āϝāĻžāĻ•āĻļāύ āϝāĻž āĻĢāĻ°ā§āĻŽ āϏāĻžāĻŦāĻŽāĻŋāϟ āĻ•āϰāĻž āĻšāϞ⧇ āϤāĻžāϰ āφāϚāϰāĻŖ āĻŦāĻ°ā§āĻŖāύāĻž āĻ•āϰ⧇āĨ¤ āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āĻĢāĻ°ā§āĻŽāϟāĻŋ āĻĒāϰāĻŋāϚāĻžāϞāύāĻž āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āφāĻĒāύāĻŋ āĻāĻ•āϟāĻŋ āĻ…ā§āϝāĻžāĻĒāϏ āĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āϟ āĻ•āϞ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύāĨ¤ āĻ…ā§āϝāĻžāĻ•āĻļāύāϟāĻŋ āĻŸā§āϰāĻŋāĻ—āĻžāϰ āĻšāϞ⧇, āĻĢāĻ°ā§āĻŽā§‡āϰ āĻ­ā§āϝāĻžāϞ⧁āϗ⧁āϞ⧋ āϏāĻžāĻ°ā§āĻ­āĻžāϰ⧇ āĻĒāĻžāĻ āĻžāύ⧋ āĻšāϝāĻŧāĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ āĻāĻŦāĻ‚ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "function": string,
  "parameters": [
    {
      object (ActionParameter)
    }
  ],
  "loadIndicator": enum (LoadIndicator),
  "persistValues": boolean,
  "interaction": enum (Interaction),
  "requiredWidgets": [
    string
  ],
  "allWidgetsAreRequired": boolean
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
function

string

āĻāĻ•āϟāĻŋ āĻ•āĻžāĻ¸ā§āϟāĻŽ āĻĢāĻžāĻ‚āĻļāύ āϝāĻž āϧāĻžāϰāĻŖāĻ•āĻžāϰ⧀ āĻāϞāĻŋāĻŽā§‡āĻ¨ā§āϟāϟāĻŋ āĻ•ā§āϞāĻŋāĻ• āĻ•āϰāĻž āĻšāϞ⧇ āĻŦāĻž āĻ…āĻ¨ā§āϝ āϕ⧋āύ⧋āĻ­āĻžāĻŦ⧇ āϏāĻ•ā§āϰāĻŋāϝāĻŧ āĻšāϞ⧇ āϚāĻžāϞ⧁ āĻšāϝāĻŧāĨ¤

āĻŦā§āϝāĻŦāĻšāĻžāϰ⧇āϰ āωāĻĻāĻžāĻšāϰāϪ⧇āϰ āϜāĻ¨ā§āϝ, 'āĻĢāĻ°ā§āĻŽ āĻĄā§‡āϟāĻž āĻĒāĻĄāĻŧ⧁āύ' āĻĻ⧇āϖ⧁āύāĨ¤

parameters[]

object ( ActionParameter )

āĻ•āĻ°ā§āĻŽ āĻĒāϰāĻžāĻŽāĻŋāϤāĻŋāϗ⧁āϞāĻŋāϰ āϤāĻžāϞāĻŋāĻ•āĻžāĨ¤

loadIndicator

enum ( LoadIndicator )

āĻ…ā§āϝāĻžāĻ•āĻļāύāϟāĻŋ āĻ•āϞ āĻ•āϰāĻžāϰ āϏāĻŽāϝāĻŧ āϝ⧇ āϞ⧋āĻĄāĻŋāĻ‚ āχāĻ¨ā§āĻĄāĻŋāϕ⧇āϟāϰāϟāĻŋ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšāϝāĻŧ, āϤāĻž āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰ⧇āĨ¤

persistValues

boolean

āĻ•āĻžāϜāϟāĻŋ āϏāĻŽā§āĻĒāĻ¨ā§āύ āĻšāĻ“āϝāĻŧāĻžāϰ āĻĒāϰ āĻĢāĻ°ā§āĻŽā§‡āϰ āĻŽāĻžāύāϗ⧁āϞ⧋ āĻ¸ā§āĻĨāĻžāϝāĻŧā§€ āĻĨāĻžāĻ•āĻŦ⧇ āĻ•āĻŋāύāĻž āϤāĻž āύāĻŋāĻ°ā§āĻĻ⧇āĻļ āĻ•āϰ⧇āĨ¤ āĻāϰ āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŽāĻžāύ āĻšāϞ⧋ false āĨ¤

āϝāĻĻāĻŋ true , āϤāĻžāĻšāϞ⧇ āĻ…ā§āϝāĻžāĻ•āĻļāύāϟāĻŋ āĻŸā§āϰāĻŋāĻ—āĻžāϰ āĻšāĻ“āϝāĻŧāĻžāϰ āĻĒāϰ⧇āĻ“ āĻĢāĻ°ā§āĻŽā§‡āϰ āĻŽāĻžāύāϗ⧁āϞ⧋ āĻ…āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāĻŋāϤ āĻĨāĻžāϕ⧇āĨ¤ āĻ…ā§āϝāĻžāĻ•āĻļāύāϟāĻŋ āĻĒā§āϰāϏ⧇āϏ āĻšāĻ“āϝāĻŧāĻžāϰ āϏāĻŽāϝāĻŧ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϕ⧇ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻ•āϰāĻžāϰ āϏ⧁āϝ⧋āĻ— āĻĻāĻŋāϤ⧇, LoadIndicator āϕ⧇ NONE āĻ āϏ⧇āϟ āĻ•āϰ⧁āύāĨ¤ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ⧇āϰ āĻ•āĻžāĻ°ā§āĻĄ āĻŽā§‡āϏ⧇āĻœā§‡āϰ āĻ•ā§āώ⧇āĻ¤ā§āϰ⧇, āφāĻĒāύāĻžāϕ⧇ āĻ…āĻŦāĻļā§āϝāχ āĻ…ā§āϝāĻžāĻ•āĻļāύāϟāĻŋāϰ ResponseType āϕ⧇ UPDATE_MESSAGE āĻ āϏ⧇āϟ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇ āĻāĻŦāĻ‚ āϝ⧇ āĻ•āĻžāĻ°ā§āĻĄā§‡ āĻ…ā§āϝāĻžāĻ•āĻļāύāϟāĻŋ āĻ›āĻŋāϞ, āϏ⧇āχ āĻ•āĻžāĻ°ā§āĻĄā§‡āϰ cardId āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇āĨ¤

false āĻšāϞ⧇, āĻ…ā§āϝāĻžāĻ•āĻļāύāϟāĻŋ āĻŸā§āϰāĻŋāĻ—āĻžāϰ āĻšāĻ“āϝāĻŧāĻžāϰ āϏāĻŽāϝāĻŧ āĻĢāĻ°ā§āĻŽā§‡āϰ āĻ­ā§āϝāĻžāϞ⧁āϗ⧁āϞ⧋ āĻŽā§āϛ⧇ āϝāĻžāϝāĻŧāĨ¤ āĻ…ā§āϝāĻžāĻ•āĻļāύāϟāĻŋ āĻĒā§āϰāϏ⧇āϏ āĻšāĻ“āϝāĻŧāĻžāϰ āϏāĻŽāϝāĻŧ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀ āϝāĻžāϤ⧇ āϕ⧋āύ⧋ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻ•āϰāϤ⧇ āύāĻž āĻĒāĻžāϰ⧇, āϏ⧇āϜāĻ¨ā§āϝ LoadIndicator SPINNER āĻ āϏ⧇āϟ āĻ•āϰ⧁āύāĨ¤

interaction

enum ( Interaction )

āϐāĻšā§āĻ›āĻŋāĻ•āĨ¤ āĻĄāĻžāϝāĻŧāĻžāϞāĻ— āĻ–ā§‹āϞāĻžāϰ āϏāĻŽāϝāĻŧ āĻĒā§āϰāϝāĻŧā§‹āϜāύāĨ¤

āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰ āϏāĻžāĻĨ⧇ āϕ⧋āύ⧋ āχāĻ¨ā§āϟāĻžāϰāĻ…ā§āϝāĻžāĻ•āĻļāύ⧇āϰ āϜāĻŦāĻžāĻŦ⧇ āϕ⧀ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇, āϝ⧇āĻŽāύ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀ āĻ•āĻžāĻ°ā§āĻĄ āĻŽā§‡āϏ⧇āĻœā§‡ āϕ⧋āύ⧋ āĻŦāĻžāϟāύ⧇ āĻ•ā§āϞāĻŋāĻ• āĻ•āϰāϞ⧇āĨ¤

āĻ…āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻĨāĻžāĻ•āϞ⧇, āĻ…ā§āϝāĻžāĻĒāϟāĻŋ āĻ¸ā§āĻŦāĻžāĻ­āĻžāĻŦāĻŋāĻ•āĻ­āĻžāĻŦ⧇ āϕ⧋āύ⧋ āĻāĻ•āϟāĻŋ action āϏāĻŽā§āĻĒāĻžāĻĻāύ āĻ•āĻ°ā§‡â€”āϝ⧇āĻŽāύ āϕ⧋āύ⧋ āϞāĻŋāĻ™ā§āĻ• āĻ–ā§‹āϞāĻž āĻŦāĻž āϕ⧋āύ⧋ āĻĢāĻžāĻ‚āĻļāύ āϚāĻžāϞāĻžāύ⧋āĨ¤

āĻāĻ•āϟāĻŋ interaction āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰāĻžāϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡, āĻ…ā§āϝāĻžāĻĒāϟāĻŋ āĻŦāĻŋāĻļ⧇āώ āχāĻ¨ā§āϟāĻžāϰ⧇āĻ•ā§āϟāĻŋāĻ­ āωāĻĒāĻžāϝāĻŧ⧇ āϏāĻžāĻĄāĻŧāĻž āĻĻāĻŋāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤ āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, interaction OPEN_DIALOG āĻ āϏ⧇āϟ āĻ•āϰāϞ⧇, āĻ…ā§āϝāĻžāĻĒāϟāĻŋ āĻāĻ•āϟāĻŋ āĻĄāĻžāϝāĻŧāĻžāϞāĻ— āϖ⧁āϞāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤ āĻāϟāĻŋ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰāĻž āĻšāϞ⧇, āϕ⧋āύ⧋ āϞ⧋āĻĄāĻŋāĻ‚ āχāĻ¨ā§āĻĄāĻŋāϕ⧇āϟāϰ āĻĻ⧇āĻ–āĻžāύ⧋ āĻšāϝāĻŧ āύāĻžāĨ¤ āϕ⧋āύ⧋ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύ⧇āϰ āϜāĻ¨ā§āϝ āĻāϟāĻŋ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰāĻž āĻšāϞ⧇, āϏāĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻ•āĻžāĻ°ā§āĻĄāϟāĻŋ āϏāϰāĻŋāϝāĻŧ⧇ āĻĢ⧇āϞāĻž āĻšāϝāĻŧ āĻāĻŦāĻ‚ āĻ•ā§āϞāĻžāϝāĻŧ⧇āĻ¨ā§āĻŸā§‡ āĻ•āĻŋāϛ⧁āχ āĻĻ⧇āĻ–āĻžāύ⧋ āĻšāϝāĻŧ āύāĻžāĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ⧇āϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύ⧇āϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āĻĒāϞāĻŦā§āϧāĨ¤

requiredWidgets[]

string

āϐāĻšā§āĻ›āĻŋāĻ•āĨ¤ āĻāĻ•āϟāĻŋ āĻŦ⧈āϧ āϏāĻžāĻŦāĻŽāĻŋāĻļāύ⧇āϰ āϜāĻ¨ā§āϝ āĻāχ āĻ…ā§āϝāĻžāĻ•āĻļāύāϟāĻŋāϰ āϝ⧇ āωāχāĻœā§‡āϟāϗ⧁āϞ⧋āϰ āĻĒā§āϰāϝāĻŧā§‹āϜāύ, āϏ⧇āϗ⧁āϞ⧋āϰ āύāĻžāĻŽ āĻĻāĻŋāϝāĻŧ⧇ āĻāχ āϤāĻžāϞāĻŋāĻ•āĻžāϟāĻŋ āĻĒā§‚āϰāĻŖ āĻ•āϰ⧁āύāĨ¤

āĻāχ āĻ…ā§āϝāĻžāĻ•āĻļāύāϟāĻŋ āϚāĻžāϞ⧁ āĻ•āϰāĻžāϰ āϏāĻŽāϝāĻŧ āĻāĻ–āĻžāύ⧇ āϤāĻžāϞāĻŋāĻ•āĻžāϭ⧁āĻ•ā§āϤ āωāχāĻœā§‡āϟāϗ⧁āϞāĻŋāϤ⧇ āϕ⧋āύ⧋ āĻŽāĻžāύ āύāĻž āĻĨāĻžāĻ•āϞ⧇, āĻĢāĻ°ā§āĻŽ āϜāĻŽāĻž āĻĻ⧇āĻ“āϝāĻŧāĻžāϰ āĻĒā§āϰāĻ•ā§āϰāĻŋāϝāĻŧāĻžāϟāĻŋ āĻŦāĻžāϤāĻŋāϞ āĻšāϝāĻŧ⧇ āϝāĻžāϝāĻŧāĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ āĻāĻŦāĻ‚ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤

allWidgetsAreRequired

boolean

āϐāĻšā§āĻ›āĻŋāĻ•āĨ¤ āϝāĻĻāĻŋ āĻāϟāĻŋ āϏāĻ¤ā§āϝ āĻšāϝāĻŧ, āϤāĻžāĻšāϞ⧇ āĻāχ āĻĒāĻĻāĻ•ā§āώ⧇āĻĒ⧇āϰ āϜāĻ¨ā§āϝ āϏāĻŽāĻ¸ā§āϤ āωāχāĻœā§‡āϟ āφāĻŦāĻļā§āϝāĻ• āĻŦāϞ⧇ āĻŦāĻŋāĻŦ⧇āϚāĻŋāϤ āĻšāĻŦ⧇āĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ āĻāĻŦāĻ‚ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤

āĻ…ā§āϝāĻžāĻ•āĻļāύāĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāϟāĻžāϰ

āĻ…ā§āϝāĻžāĻ•āĻļāύ āĻŽā§‡āĻĨāĻĄ āĻ•āϞ āĻ•āϰāĻžāϰ āϏāĻŽāϝāĻŧ āϏāϰāĻŦāϰāĻžāĻš āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āĻ¸ā§āĻŸā§āϰāĻŋāĻ‚ āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāϟāĻžāϰāϗ⧁āϞ⧋āϰ āϤāĻžāϞāĻŋāĻ•āĻžāĨ¤ āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āϤāĻŋāύāϟāĻŋ āĻ¸ā§āύ⧁āϜ āĻŦāĻžāϟāύ⧇āϰ āĻ•āĻĨāĻž āĻ­āĻžāĻŦ⧁āύ: āĻāĻ–āύāχ āĻ¸ā§āύ⧁āϜ āĻ•āϰ⧁āύ, āĻāĻ•āĻĻāĻŋāύ⧇āϰ āϜāĻ¨ā§āϝ āĻ¸ā§āύ⧁āϜ āĻ•āϰ⧁āύ, āĻ…āĻĨāĻŦāĻž āφāĻ—āĻžāĻŽā§€ āϏāĻĒā§āϤāĻžāĻšā§‡āϰ āϜāĻ¨ā§āϝ āĻ¸ā§āύ⧁āϜ āĻ•āϰ⧁āύāĨ¤ āφāĻĒāύāĻŋ āĻ¸ā§āĻŸā§āϰāĻŋāĻ‚ āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāϟāĻžāϰāϗ⧁āϞ⧋āϰ āϤāĻžāϞāĻŋāĻ•āĻžāϝāĻŧ āĻ¸ā§āύ⧁āĻœā§‡āϰ āϧāϰāύ āĻāĻŦāĻ‚ āĻ¸ā§āύ⧁āĻœā§‡āϰ āϏāĻŽāϝāĻŧ āĻĒāĻžāϏ āĻ•āϰ⧇ action method = snooze() āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύāĨ¤

āφāϰāĻ“ āϜāĻžāύāϤ⧇ CommonEventObject āĻĻ⧇āϖ⧁āύāĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ āĻāĻŦāĻ‚ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "key": string,
  "value": string
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
key

string

āĻ…ā§āϝāĻžāĻ•āĻļāύ āĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āĻŸā§‡āϰ āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāϟāĻžāϰ⧇āϰ āύāĻžāĻŽāĨ¤

value

string

āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāϟāĻžāϰāϟāĻŋāϰ āĻŽāĻžāύāĨ¤

āϞ⧋āĻĄ āχāĻ¨ā§āĻĄāĻŋāϕ⧇āϟāϰ

āĻ…ā§āϝāĻžāĻ•āĻļāύāϟāĻŋ āĻ•āϞ āĻ•āϰāĻžāϰ āϏāĻŽāϝāĻŧ āϝ⧇ āϞ⧋āĻĄāĻŋāĻ‚ āχāĻ¨ā§āĻĄāĻŋāϕ⧇āϟāϰāϟāĻŋ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšāϝāĻŧ, āϤāĻž āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰ⧇āĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ āĻāĻŦāĻ‚ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤

āĻāύāĻžāĻŽ
SPINNER āĻ•āĻ¨ā§āĻŸā§‡āĻ¨ā§āϟ āϞ⧋āĻĄ āĻšāĻšā§āϛ⧇ āĻŦā§‹āĻāĻžāϤ⧇ āĻāĻ•āϟāĻŋ āĻ¸ā§āĻĒāĻŋāύāĻžāϰ āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰ⧇āĨ¤
NONE āĻ•āĻŋāϛ⧁āχ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšāĻšā§āϛ⧇ āύāĻžāĨ¤

āĻŽāĻŋāĻĨāĻ¸ā§āĻ•ā§āϰāĻŋāϝāĻŧāĻž

āϐāĻšā§āĻ›āĻŋāĻ•āĨ¤ āĻĄāĻžāϝāĻŧāĻžāϞāĻ— āĻ–ā§‹āϞāĻžāϰ āϏāĻŽāϝāĻŧ āĻĒā§āϰāϝāĻŧā§‹āϜāύāĨ¤

āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰ āϏāĻžāĻĨ⧇ āϕ⧋āύ⧋ āχāĻ¨ā§āϟāĻžāϰāĻ…ā§āϝāĻžāĻ•āĻļāύ⧇āϰ āϜāĻŦāĻžāĻŦ⧇ āϕ⧀ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇, āϝ⧇āĻŽāύ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀ āĻ•āĻžāĻ°ā§āĻĄ āĻŽā§‡āϏ⧇āĻœā§‡ āϕ⧋āύ⧋ āĻŦāĻžāϟāύ⧇ āĻ•ā§āϞāĻŋāĻ• āĻ•āϰāϞ⧇āĨ¤

āĻ…āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻĨāĻžāĻ•āϞ⧇, āĻ…ā§āϝāĻžāĻĒāϟāĻŋ āĻ¸ā§āĻŦāĻžāĻ­āĻžāĻŦāĻŋāĻ•āĻ­āĻžāĻŦ⧇ āϕ⧋āύ⧋ āĻāĻ•āϟāĻŋ action āϏāĻŽā§āĻĒāĻžāĻĻāύ āĻ•āĻ°ā§‡â€”āϝ⧇āĻŽāύ āϕ⧋āύ⧋ āϞāĻŋāĻ™ā§āĻ• āĻ–ā§‹āϞāĻž āĻŦāĻž āϕ⧋āύ⧋ āĻĢāĻžāĻ‚āĻļāύ āϚāĻžāϞāĻžāύ⧋āĨ¤

āĻāĻ•āϟāĻŋ interaction āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰāĻžāϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡, āĻ…ā§āϝāĻžāĻĒāϟāĻŋ āĻŦāĻŋāĻļ⧇āώ āχāĻ¨ā§āϟāĻžāϰ⧇āĻ•ā§āϟāĻŋāĻ­ āωāĻĒāĻžāϝāĻŧ⧇ āϏāĻžāĻĄāĻŧāĻž āĻĻāĻŋāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤ āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, interaction OPEN_DIALOG āĻ āϏ⧇āϟ āĻ•āϰāϞ⧇, āĻ…ā§āϝāĻžāĻĒāϟāĻŋ āĻāĻ•āϟāĻŋ āĻĄāĻžāϝāĻŧāĻžāϞāĻ— āϖ⧁āϞāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤

āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰāĻž āĻĨāĻžāĻ•āϞ⧇, āϞ⧋āĻĄāĻŋāĻ‚ āχāĻ¨ā§āĻĄāĻŋāϕ⧇āϟāϰ āĻĻ⧇āĻ–āĻžāύ⧋ āĻšāϝāĻŧ āύāĻžāĨ¤ āϕ⧋āύ⧋ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύ⧇āϰ āϜāĻ¨ā§āϝ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰāĻž āĻšāϞ⧇, āϏāĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻ•āĻžāĻ°ā§āĻĄāϟāĻŋ āϏāϰāĻŋāϝāĻŧ⧇ āĻĢ⧇āϞāĻž āĻšāϝāĻŧ āĻāĻŦāĻ‚ āĻ•ā§āϞāĻžāϝāĻŧ⧇āĻ¨ā§āĻŸā§‡ āĻ•āĻŋāϛ⧁āχ āĻĻ⧇āĻ–āĻžāύ⧋ āĻšāϝāĻŧ āύāĻžāĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ⧇āϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύ⧇āϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āĻĒāϞāĻŦā§āϧāĨ¤

āĻāύāĻžāĻŽ
INTERACTION_UNSPECIFIED āĻĒā§‚āĻ°ā§āĻŦāύāĻŋāĻ°ā§āϧāĻžāϰāĻŋāϤ āĻŽāĻžāύāĨ¤ action āĻ¸ā§āĻŦāĻžāĻ­āĻžāĻŦāĻŋāĻ•āĻ­āĻžāĻŦ⧇ āϏāĻŽā§āĻĒāĻžāĻĻāĻŋāϤ āĻšāĻŦ⧇āĨ¤
OPEN_DIALOG

āĻāĻ•āϟāĻŋ āĻĄāĻžāϝāĻŧāĻžāϞāĻ— āĻ–ā§‹āϞ⧇, āϝāĻž āĻšāϞ⧋ āĻāĻ•āϟāĻŋ āωāχāĻ¨ā§āĻĄā§‹āϝ⧁āĻ•ā§āϤ, āĻ•āĻžāĻ°ā§āĻĄ-āĻ­āĻŋāĻ¤ā§āϤāĻŋāĻ• āχāĻ¨ā§āϟāĻžāϰāĻĢ⧇āϏ āĻāĻŦāĻ‚ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒāϗ⧁āϞ⧋ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āĻĻ⧇āϰ āϏāĻžāĻĨ⧇ āφāϞāĻžāĻĒāϚāĻžāϰāĻŋāϤāĻžāϰ āϜāĻ¨ā§āϝ āĻāϟāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇āĨ¤

āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āĻ•āĻžāĻ°ā§āĻĄ āĻŽā§‡āϏ⧇āĻœā§‡āϰ āĻŦāĻžāϟāύ-āĻ•ā§āϞāĻŋāϕ⧇āϰ āĻĒā§āϰāϤāĻŋāĻ•ā§āϰāĻŋāϝāĻŧāĻžāϝāĻŧ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ⧇ āĻāϟāĻŋ āϏāĻŽāĻ°ā§āĻĨāĻŋāϤāĨ¤ āϕ⧋āύ⧋ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύ⧇āϰ āϜāĻ¨ā§āϝ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰāĻž āĻšāϞ⧇, āϏāĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻ•āĻžāĻ°ā§āĻĄāϟāĻŋ āĻŽā§āϛ⧇ āĻĢ⧇āϞāĻž āĻšāϝāĻŧ āĻāĻŦāĻ‚ āĻ•ā§āϞāĻžāϝāĻŧ⧇āĻ¨ā§āĻŸā§‡ āĻ•āĻŋāϛ⧁āχ āĻĻ⧇āĻ–āĻžāύ⧋ āĻšāϝāĻŧ āύāĻžāĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ⧇āϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύ⧇āϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āĻĒāϞāĻŦā§āϧāĨ¤

āĻ“āĻĒ⧇āύāĻāĻāϏ

āϝāĻ–āύ āĻāĻ•āϟāĻŋ OnClick āĻ…ā§āϝāĻžāĻ•āĻļāύ āϕ⧋āύ⧋ āϞāĻŋāĻ™ā§āĻ• āĻ–ā§‹āϞ⧇, āϤāĻ–āύ āĻ•ā§āϞāĻžāϝāĻŧ⧇āĻ¨ā§āϟ āϏ⧇āϟāĻŋāϕ⧇ āĻāĻ•āϟāĻŋ āĻĒā§‚āĻ°ā§āĻŖ-āφāĻ•āĻžāϰ⧇āϰ āωāχāĻ¨ā§āĻĄā§‹ āĻšāĻŋāϏāĻžāĻŦ⧇ (āϝāĻĻāĻŋ āĻ•ā§āϞāĻžāϝāĻŧ⧇āĻ¨ā§āϟ āϏ⧇āχ āĻĢā§āϰ⧇āĻŽāϟāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āĻĨāĻžāϕ⧇) āĻ…āĻĨāĻŦāĻž āĻāĻ•āϟāĻŋ āĻ“āĻ­āĻžāϰāϞ⧇ (āϝ⧇āĻŽāύ āĻāĻ•āϟāĻŋ āĻĒāĻĒ-āφāĻĒ) āĻšāĻŋāϏāĻžāĻŦ⧇ āϖ⧁āϞāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤ āĻāϰ āĻŦāĻžāĻ¸ā§āϤāĻŦāĻžāϝāĻŧāύ āĻ•ā§āϞāĻžāϝāĻŧ⧇āĻ¨ā§āϟ āĻĒā§āĻ˛ā§āϝāĻžāϟāĻĢāĻ°ā§āĻŽā§‡āϰ āϏāĻ•ā§āώāĻŽāϤāĻžāϰ āωāĻĒāϰ āύāĻŋāĻ°ā§āĻ­āϰ āĻ•āϰ⧇, āĻāĻŦāĻ‚ āĻ•ā§āϞāĻžāϝāĻŧ⧇āĻ¨ā§āϟ āϝāĻĻāĻŋ āύāĻŋāĻ°ā§āĻŦāĻžāϚāĻŋāϤ āĻŽāĻžāύāϟāĻŋ āϏāĻŽāĻ°ā§āĻĨāύ āύāĻž āĻ•āϰ⧇, āϤāĻŦ⧇ āϤāĻž āωāĻĒ⧇āĻ•ā§āώāĻž āĻ•āϰāĻž āĻšāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤ FULL_SIZE āϏāĻ•āϞ āĻ•ā§āϞāĻžāϝāĻŧ⧇āĻ¨ā§āϟ āĻĻā§āĻŦāĻžāϰāĻž āϏāĻŽāĻ°ā§āĻĨāĻŋāϤāĨ¤

āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āĻĒāϞāĻŦā§āϧāĨ¤

āĻāύāĻžāĻŽ
FULL_SIZE āϞāĻŋāĻ™ā§āĻ•āϟāĻŋ āĻāĻ•āϟāĻŋ āĻĒā§‚āĻ°ā§āĻŖ āφāĻ•āĻžāϰ⧇āϰ āωāχāĻ¨ā§āĻĄā§‹ āĻšāĻŋāϏāĻžāĻŦ⧇ āĻ–ā§‹āϞ⧇ (āϝāĻĻāĻŋ āĻ•ā§āϞāĻžāϝāĻŧ⧇āĻ¨ā§āϟ āϏ⧇āχ āĻĢā§āϰ⧇āĻŽāϟāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āĻĨāĻžāϕ⧇)āĨ¤
OVERLAY āϞāĻŋāĻ™ā§āĻ•āϟāĻŋ āĻāĻ•āϟāĻŋ āĻ“āĻ­āĻžāϰāϞ⧇ āĻšāĻŋāϏ⧇āĻŦ⧇ āĻ–ā§‹āϞ⧇, āϝ⧇āĻŽāύ āĻāĻ•āϟāĻŋ āĻĒāĻĒ-āφāĻĒāĨ¤

āĻŦāĻ¨ā§āϧ āĻ•āϰ⧁āύ

OnClick āĻ…ā§āϝāĻžāĻ•āĻļāύ⧇āϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ āĻ–ā§‹āϞāĻž āϕ⧋āύ⧋ āϞāĻŋāĻ™ā§āĻ• āĻŦāĻ¨ā§āϧ āĻ•āϰāĻž āĻšāϞ⧇ āĻ•ā§āϞāĻžāϝāĻŧ⧇āĻ¨ā§āϟ āϕ⧀ āĻ•āϰ⧇

āĻŦāĻžāĻ¸ā§āϤāĻŦāĻžāϝāĻŧāύ āĻ•ā§āϞāĻžāϝāĻŧ⧇āĻ¨ā§āϟ āĻĒā§āĻ˛ā§āϝāĻžāϟāĻĢāĻ°ā§āĻŽā§‡āϰ āϏāĻ•ā§āώāĻŽāϤāĻžāϰ āωāĻĒāϰ āύāĻŋāĻ°ā§āĻ­āϰ āĻ•āϰ⧇āĨ¤ āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āĻāĻ•āϟāĻŋ āĻ“āϝāĻŧ⧇āĻŦ āĻŦā§āϰāĻžāωāϜāĻžāϰ āĻāĻ•āϟāĻŋ OnClose āĻšā§āϝāĻžāĻ¨ā§āĻĄāϞāĻžāϰ āϏāĻš āĻāĻ•āϟāĻŋ āĻĒāĻĒ-āφāĻĒ āωāχāĻ¨ā§āĻĄā§‹āϤ⧇ āϞāĻŋāĻ™ā§āĻ•āϟāĻŋ āϖ⧁āϞāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤

āϝāĻĻāĻŋ OnOpen āĻāĻŦāĻ‚ OnClose āωāĻ­āϝāĻŧ āĻšā§āϝāĻžāĻ¨ā§āĻĄāϞāĻžāϰāχ āϏ⧇āϟ āĻ•āϰāĻž āĻĨāĻžāϕ⧇ āĻāĻŦāĻ‚ āĻ•ā§āϞāĻžāϝāĻŧ⧇āĻ¨ā§āϟ āĻĒā§āĻ˛ā§āϝāĻžāϟāĻĢāĻ°ā§āĻŽ āωāĻ­āϝāĻŧ āĻŽāĻžāύ āϏāĻŽāĻ°ā§āĻĨāύ āĻ•āϰāϤ⧇ āύāĻž āĻĒāĻžāϰ⧇, āϤāĻŦ⧇ OnClose āĻ…āĻ—ā§āϰāĻžāϧāĻŋāĻ•āĻžāϰ āĻĒāĻžāĻŦ⧇āĨ¤

āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āĻĒāϞāĻŦā§āϧāĨ¤

āĻāύāĻžāĻŽ
NOTHING āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŽāĻžāύāĨ¤ āĻ•āĻžāĻ°ā§āĻĄāϟāĻŋ āϰāĻŋāϞ⧋āĻĄ āĻšāϝāĻŧ āύāĻž; āĻ•āĻŋāϛ⧁āχ āϘāĻŸā§‡ āύāĻžāĨ¤
RELOAD

āϚāĻžāχāĻ˛ā§āĻĄ āωāχāĻ¨ā§āĻĄā§‹āϟāĻŋ āĻŦāĻ¨ā§āϧ āĻšāĻ“āϝāĻŧāĻžāϰ āĻĒāϰ āĻ•āĻžāĻ°ā§āĻĄāϟāĻŋ āĻĒ⧁āύāϰāĻžāϝāĻŧ āϞ⧋āĻĄ āĻ•āϰ⧇āĨ¤

OpenAs.OVERLAY āϏāĻžāĻĨ⧇ āĻāĻ•āĻ¤ā§āϰ⧇ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āĻšāϞ⧇, āϚāĻžāχāĻ˛ā§āĻĄ āωāχāĻ¨ā§āĻĄā§‹āϟāĻŋ āĻāĻ•āϟāĻŋ āĻŽā§‹āĻĄāĻžāϞ āĻĄāĻžāϝāĻŧāĻžāϞāĻ— āĻšāĻŋāϏ⧇āĻŦ⧇ āĻ•āĻžāϜ āĻ•āϰ⧇ āĻāĻŦāĻ‚ āϚāĻžāχāĻ˛ā§āĻĄ āωāχāĻ¨ā§āĻĄā§‹āϟāĻŋ āĻŦāĻ¨ā§āϧ āύāĻž āĻšāĻ“āϝāĻŧāĻž āĻĒāĻ°ā§āϝāĻ¨ā§āϤ āĻĒā§āϝāĻžāϰ⧇āĻ¨ā§āϟ āĻ•āĻžāĻ°ā§āĻĄāϟāĻŋ āĻŦā§āϞāĻ• āĻĨāĻžāϕ⧇āĨ¤

āĻ“āĻ­āĻžāϰāĻĢā§āϞ⧋ āĻŽā§‡āύ⧁

āĻāĻ•āϟāĻŋ āωāχāĻœā§‡āϟ āϝāĻž āĻāĻ•āϟāĻŋ āĻĒāĻĒ-āφāĻĒ āĻŽā§‡āύ⧁ āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύ āĻ•āϰ⧇, āϝ⧇āĻ–āĻžāύ⧇ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰāĻž āĻāĻ• āĻŦāĻž āĻāĻ•āĻžāϧāĻŋāĻ• āĻ…ā§āϝāĻžāĻ•āĻļāύ āϚāĻžāϞ⧁ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύāĨ¤ āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āĻāĻ•āϟāĻŋ āĻ•āĻžāĻ°ā§āĻĄā§‡ āĻ…āĻĒā§āϰāϧāĻžāύ āĻ…ā§āϝāĻžāĻ•āĻļāύāϗ⧁āϞ⧋ āĻĻ⧇āĻ–āĻžāύ⧋āĨ¤ āϝāĻ–āύ āĻ…ā§āϝāĻžāĻ•āĻļāύāϗ⧁āϞ⧋ āωāĻĒāϞāĻŦā§āϧ āϜāĻžāϝāĻŧāĻ—āĻžāϝāĻŧ āϜāĻžāϝāĻŧāĻ—āĻž āĻĒāĻžāϝāĻŧ āύāĻž, āϤāĻ–āύ āφāĻĒāύāĻŋ āĻāχ āωāχāĻœā§‡āϟāϟāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύāĨ¤ āĻāϟāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāϤ⧇, āϝ⧇ āωāχāĻœā§‡āϟāϗ⧁āϞ⧋ āĻāϟāĻŋāϕ⧇ āϏāĻŽāĻ°ā§āĻĨāύ āĻ•āϰ⧇, āϤāĻžāĻĻ⧇āϰ OnClick āĻ…ā§āϝāĻžāĻ•āĻļāύ⧇ āĻāχ āωāχāĻœā§‡āϟāϟāĻŋ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰ⧇ āĻĻāĻŋāύāĨ¤ āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āĻāĻ•āϟāĻŋ Button āĻāĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ āĻāĻŦāĻ‚ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "items": [
    {
      object (OverflowMenuItem)
    }
  ]
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
items[]

object ( OverflowMenuItem )

āĻĒā§āϰāϝāĻŧā§‹āϜāύ⧀āϝāĻŧāĨ¤ āĻŽā§‡āύ⧁ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒāϗ⧁āϞāĻŋāϰ āϤāĻžāϞāĻŋāĻ•āĻžāĨ¤

āĻ“āĻ­āĻžāϰāĻĢā§āϞ⧋ āĻŽā§‡āύ⧁ āφāχāĻŸā§‡āĻŽ

āĻāĻŽāύ āĻāĻ•āϟāĻŋ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ āϝāĻž āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰāĻž āĻ“āĻ­āĻžāϰāĻĢā§āϞ⧋ āĻŽā§‡āύ⧁āϤ⧇ āϚāĻžāϞ⧁ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύāĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ āĻāĻŦāĻ‚ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "startIcon": {
    object (Icon)
  },
  "text": string,
  "onClick": {
    object (OnClick)
  },
  "disabled": boolean
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
startIcon

object ( Icon )

āĻŸā§‡āĻ•ā§āϏāĻŸā§‡āϰ āϏāĻžāĻŽāύ⧇ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āφāχāĻ•āύāϟāĻŋāĨ¤

text

string

āφāĻŦāĻļā§āϝāĻ•āĨ¤ āϝ⧇ āϞ⧇āĻ–āĻžāϟāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āĻĻ⧇āϰ āĻ•āĻžāϛ⧇ āĻĒāĻŖā§āϝāϟāĻŋāϕ⧇ āĻļāύāĻžāĻ•ā§āϤ āĻŦāĻž āĻŦāĻ°ā§āĻŖāύāĻž āĻ•āϰ⧇āĨ¤

onClick

object ( OnClick )

āφāĻŦāĻļā§āϝāĻ•āĨ¤ āϕ⧋āύ⧋ āĻŽā§‡āύ⧁ āĻ…āĻĒāĻļāύ āύāĻŋāĻ°ā§āĻŦāĻžāϚāύ āĻ•āϰāĻž āĻšāϞ⧇ āϝ⧇ āĻ…ā§āϝāĻžāĻ•āĻļāύāϟāĻŋ āĻ•āĻžāĻ°ā§āϝāĻ•āϰ āĻšāϝāĻŧāĨ¤ āĻāχ OnClick āϕ⧋āύ⧋ OverflowMenu āĻĨāĻžāĻ•āϤ⧇ āĻĒāĻžāϰ⧇ āύāĻž; āϕ⧋āύ⧋ OverflowMenu āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰāĻž āĻšāϞ⧇ āϤāĻž āĻŦāĻžāĻĻ āĻĻ⧇āĻ“āϝāĻŧāĻž āĻšāϝāĻŧ āĻāĻŦāĻ‚ āĻŽā§‡āύ⧁ āφāχāĻŸā§‡āĻŽāϟāĻŋ āύāĻŋāĻˇā§āĻ•ā§āϰāĻŋāϝāĻŧ āĻšāϝāĻŧ⧇ āϝāĻžāϝāĻŧāĨ¤

disabled

boolean

āĻŽā§‡āύ⧁ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒāϟāĻŋ āύāĻŋāĻˇā§āĻ•ā§āϰāĻŋāϝāĻŧ āĻ•āĻŋāύāĻžāĨ¤ āĻĄāĻŋāĻĢāĻ˛ā§āϟāϰ⧂āĻĒ⧇ āĻāϟāĻŋ āύāĻŋāĻˇā§āĻ•ā§āϰāĻŋāϝāĻŧ āĻĨāĻžāϕ⧇āĨ¤

āφāχāĻ•āύ

āĻ•āĻžāĻ°ā§āĻĄā§‡āϰ āωāχāĻœā§‡āĻŸā§‡ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻāĻ•āϟāĻŋ āφāχāĻ•āύāĨ¤ āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ⧇ āĻāĻ•āϟāĻŋ āωāĻĻāĻžāĻšāϰāϪ⧇āϰ āϜāĻ¨ā§āϝ, ‘āĻāĻ•āϟāĻŋ āφāχāĻ•āύ āϝ⧋āĻ— āĻ•āϰ⧁āĻ¨â€™ āĻĻ⧇āϖ⧁āύāĨ¤

āĻ…āĻ¨ā§āϤāĻ°ā§āύāĻŋāĻ°ā§āĻŽāĻŋāϤ āĻāĻŦāĻ‚ āĻ•āĻžāĻ¸ā§āϟāĻŽ āφāχāĻ•āύ āϏāĻŽāĻ°ā§āĻĨāύ āĻ•āϰ⧇āĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ āĻāĻŦāĻ‚ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "altText": string,
  "imageType": enum (ImageType),

  "knownIcon": string,
  "iconUrl": string,
  "materialIcon": {
    object (MaterialIcon)
  }
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
altText

string

āϐāĻšā§āĻ›āĻŋāĻ•āĨ¤ āĻ…ā§āϝāĻžāĻ•ā§āϏ⧇āϏāĻŋāĻŦāĻŋāϞāĻŋāϟāĻŋāϰ āϜāĻ¨ā§āϝ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āφāχāĻ•āύ⧇āϰ āĻāĻ•āϟāĻŋ āĻŦāĻŋāĻŦāϰāĻŖāĨ¤ āϝāĻĻāĻŋ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āύāĻž āĻ•āϰāĻž āĻšāϝāĻŧ, āϤāĻžāĻšāϞ⧇ āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŽāĻžāύ ' Button āĻĒā§āϰāĻĻāĻžāύ āĻ•āϰāĻž āĻšāϝāĻŧāĨ¤ āĻāĻ•āϟāĻŋ āωāĻ¤ā§āϤāĻŽ āĻ…āύ⧁āĻļā§€āϞāύ āĻšāĻŋāϏ⧇āĻŦ⧇, āφāχāĻ•āύāϟāĻŋ āϕ⧀ āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰ⧇ āĻāĻŦāĻ‚ āĻĒā§āϰāϝ⧋āĻœā§āϝ āĻ•ā§āώ⧇āĻ¤ā§āϰ⧇, āĻāϟāĻŋ āϕ⧀ āĻ•āϰ⧇, āϤāĻžāϰ āϜāĻ¨ā§āϝ āφāĻĒāύāĻžāϰ āĻāĻ•āϟāĻŋ āϏāĻšāĻžāϝāĻŧāĻ• āĻŦāĻŋāĻŦāϰāĻŖ āϏ⧇āϟ āĻ•āϰāĻž āωāϚāĻŋāϤāĨ¤ āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, A user's account portrait , āĻ…āĻĨāĻŦāĻž Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat āĨ¤

āϝāĻĻāĻŋ āϕ⧋āύ⧋ Button āφāχāĻ•āύ āϏ⧇āϟ āĻ•āϰāĻž āĻĨāĻžāϕ⧇, āϤāĻžāĻšāϞ⧇ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀ āϝāĻ–āύ āĻŦāĻžāϟāύāϟāĻŋāϰ āωāĻĒāϰ āĻŽāĻžāωāϏ āύāĻŋāϝāĻŧ⧇ āϝāĻžāύ, āϤāĻ–āύ altText āϏāĻšāĻžāϝāĻŧāĻ• āĻŸā§‡āĻ•ā§āϏāϟ āĻšāĻŋāϏ⧇āĻŦ⧇ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšāϝāĻŧāĨ¤ āϤāĻŦ⧇, āϝāĻĻāĻŋ āĻŦāĻžāϟāύāϟāĻŋāϤ⧇ āϕ⧋āύ⧋ text āϏ⧇āϟ āĻ•āϰāĻž āĻĨāĻžāϕ⧇, āϤāĻžāĻšāϞ⧇ āφāχāĻ•āύ⧇āϰ altText āωāĻĒ⧇āĻ•ā§āώāĻž āĻ•āϰāĻž āĻšāϝāĻŧāĨ¤

imageType

enum ( ImageType )

āĻ›āĻŦāĻŋāϤ⧇ āĻĒā§āϰāϝāĻŧā§‹āĻ— āĻ•āϰāĻž āĻ•ā§āϰāĻĒ āĻ¸ā§āϟāĻžāχāϞāĨ¤ āĻ•āĻŋāϛ⧁ āĻ•ā§āώ⧇āĻ¤ā§āϰ⧇, CIRCLE āĻ•ā§āϰāĻĒ āĻĒā§āϰāϝāĻŧā§‹āĻ— āĻ•āϰāϞ⧇ āĻ›āĻŦāĻŋāϟāĻŋ āĻāĻ•āϟāĻŋ āĻŦāĻŋāĻ˛ā§āϟ-āχāύ āφāχāĻ•āύ⧇āϰ āĻšā§‡āϝāĻŧ⧇ āĻŦāĻĄāĻŧ āφāĻ•āĻžāϰ⧇ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšāϝāĻŧāĨ¤

āχāωāύāĻŋāϝāĻŧāύ āĻĢāĻŋāĻ˛ā§āĻĄ icons āĨ¤ āĻ•āĻžāĻ°ā§āĻĄā§‡āϰ āωāχāĻœā§‡āĻŸā§‡ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āφāχāĻ•āύāĨ¤ icons āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤāϗ⧁āϞ⧋āϰ āĻŽāĻ§ā§āϝ⧇ āϝ⧇āϕ⧋āύ⧋ āĻāĻ•āϟāĻŋ āĻšāϤ⧇ āĻĒāĻžāϰ⧇:
knownIcon

string

āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻĻā§āĻŦāĻžāϰāĻž āĻĒā§āϰāĻĻāĻ¤ā§āϤ āĻ…āĻ¨ā§āϤāĻ°ā§āύāĻŋāĻ°ā§āĻŽāĻŋāϤ āφāχāĻ•āύāϗ⧁āϞ⧋āϰ āĻŽāĻ§ā§āϝ⧇ āĻāĻ•āϟāĻŋ āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰ⧁āύāĨ¤

āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āĻāĻ•āϟāĻŋ āĻŦāĻŋāĻŽāĻžāύ⧇āϰ āφāχāĻ•āύ āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰāϤ⧇ AIRPLANE āωāĻ˛ā§āϞ⧇āĻ– āĻ•āϰ⧁āύāĨ¤ āĻŦāĻžāϏ⧇āϰ āϜāĻ¨ā§āϝ BUS āωāĻ˛ā§āϞ⧇āĻ– āĻ•āϰ⧁āύāĨ¤

āϏāĻŽāĻ°ā§āĻĨāĻŋāϤ āφāχāĻ•āύāϗ⧁āϞāĻŋāϰ āϏāĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āϤāĻžāϞāĻŋāĻ•āĻžāϰ āϜāĻ¨ā§āϝ, āĻ…āĻ¨ā§āϤāĻ°ā§āύāĻŋāĻ°ā§āĻŽāĻŋāϤ āφāχāĻ•āύāϗ⧁āϞāĻŋ āĻĻ⧇āϖ⧁āύāĨ¤

iconUrl

string

HTTPS URL-āĻ āĻšā§‹āĻ¸ā§āϟ āĻ•āϰāĻž āĻāĻ•āϟāĻŋ āĻ•āĻžāĻ¸ā§āϟāĻŽ āφāχāĻ•āύ āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰ⧁āύāĨ¤

āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ:

"iconUrl":
"https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png"

āϏāĻŽāĻ°ā§āĻĨāĻŋāϤ āĻĢāĻžāχāϞ āϟāĻžāχāĻĒāϗ⧁āϞ⧋āϰ āĻŽāĻ§ā§āϝ⧇ .png āĻāĻŦāĻ‚ .jpg āĻ…āĻ¨ā§āϤāĻ°ā§āϭ⧁āĻ•ā§āϤāĨ¤

materialIcon

object ( MaterialIcon )

āϗ⧁āĻ—āϞ āĻŽā§āϝāĻžāĻŸā§‡āϰāĻŋāϝāĻŧāĻžāϞ āφāχāĻ•āύāϗ⧁āϞ⧋āϰ āĻŽāĻ§ā§āϝ⧇ āĻāĻ•āϟāĻŋ āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰ⧁āύāĨ¤

āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āĻāĻ•āϟāĻŋ āĻšā§‡āĻ•āĻŦāĻ•ā§āϏ āφāχāĻ•āύ āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰāϤ⧇, āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧁āύ

"materialIcon": {
  "name": "check_box"
}

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ⧇āϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύ⧇āϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āĻĒāϞāĻŦā§āϧāĨ¤

āĻŽā§āϝāĻžāĻŸā§‡āϰāĻŋāϝāĻŧāĻžāϞāφāχāĻ•āύ

āĻāĻ•āϟāĻŋ āϗ⧁āĻ—āϞ āĻŽā§āϝāĻžāĻŸā§‡āϰāĻŋāϝāĻŧāĻžāϞ āφāχāĻ•āύ , āϝāĻžāϤ⧇ ⧍ā§Ģā§Ļā§Ļ-āĻāϰāĻ“ āĻŦ⧇āĻļāĻŋ āĻ…āĻĒāĻļāύ āϰāϝāĻŧ⧇āϛ⧇āĨ¤

āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āĻ•āĻžāĻ¸ā§āϟāĻŽāĻžāχāϜāĻĄ āĻ“āϜāύ āĻāĻŦāĻ‚ āĻ—ā§āϰ⧇āĻĄ āϏāĻš āĻāĻ•āϟāĻŋ āĻšā§‡āĻ•āĻŦāĻ•ā§āϏ āφāχāĻ•āύ āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰāϤ⧇, āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤāϟāĻŋ āϞāĻŋāϖ⧁āύ:

{
  "name": "check_box",
  "fill": true,
  "weight": 300,
  "grade": -25
}

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ⧇āϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύ⧇āϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āĻĒāϞāĻŦā§āϧāĨ¤

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "name": string,
  "fill": boolean,
  "weight": integer,
  "grade": integer
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
name

string

āϗ⧁āĻ—āϞ āĻŽā§āϝāĻžāĻŸā§‡āϰāĻŋāϝāĻŧāĻžāϞ āφāχāĻ•āύ⧇ āφāχāĻ•āύ⧇āϰ āύāĻžāĻŽ āĻšāĻŋāϏ⧇āĻŦ⧇ check_box āϏāĻ‚āĻœā§āĻžāĻžāϝāĻŧāĻŋāϤ āĻ•āϰāĻž āĻĨāĻžāϕ⧇āĨ¤ āϝ⧇āϕ⧋āύ⧋ āĻ…āĻŦ⧈āϧ āύāĻžāĻŽ āĻŦāĻžāϤāĻŋāϞ āĻ•āϰ⧇ āĻāĻ•āϟāĻŋ āĻ–āĻžāϞāĻŋ āĻ¸ā§āĻŸā§āϰāĻŋāĻ‚ āĻĻāĻŋāϝāĻŧ⧇ āĻĒā§āϰāϤāĻŋāĻ¸ā§āĻĨāĻžāĻĒāύ āĻ•āϰāĻž āĻšāϝāĻŧ, āϝāĻžāϰ āĻĢāϞ⧇ āφāχāĻ•āύāϟāĻŋ āϰ⧇āĻ¨ā§āĻĄāĻžāϰ āĻšāϤ⧇ āĻŦā§āϝāĻ°ā§āĻĨ āĻšāϝāĻŧāĨ¤

fill

boolean

āφāχāĻ•āύāϟāĻŋ āĻ­āϰāĻžāϟ āĻ…āĻŦāĻ¸ā§āĻĨāĻžāϝāĻŧ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšāĻŦ⧇ āĻ•āĻŋāύāĻžāĨ¤ āĻāϰ āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŽāĻžāύ āĻšāϞ⧋ āĻĢāϞāϏāĨ¤

āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āύ āφāχāĻ•āύ āϏ⧇āϟāĻŋāĻ‚āϏ āĻĒā§āϰāĻŋāĻ­āĻŋāω āĻ•āϰāϤ⧇, Google Font Icons- āĻ āϝāĻžāύ āĻāĻŦāĻ‚ Customize-āĻāϰ āĻ…āϧ⧀āύ⧇ āϏ⧇āϟāĻŋāĻ‚āϏ āĻ…ā§āϝāĻžāĻĄāϜāĻžāĻ¸ā§āϟ āĻ•āϰ⧁āύāĨ¤

weight

integer

āφāχāĻ•āύ⧇āϰ āĻ¸ā§āĻŸā§āϰ⧋āϕ⧇āϰ āĻĒ⧁āϰ⧁āĻ¤ā§āĻŦāĨ¤ {100, 200, 300, 400, 500, 600, 700} āĻĨ⧇āϕ⧇ āĻŦ⧇āϛ⧇ āύāĻŋāύāĨ¤ āĻāϟāĻŋ āύāĻž āĻĨāĻžāĻ•āϞ⧇, āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŽāĻžāύ āĻšāĻŦ⧇ 400āĨ¤ āĻ…āĻ¨ā§āϝ āϕ⧋āύ⧋ āĻŽāĻžāύ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰāĻž āĻšāϞ⧇, āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŽāĻžāύāϟāĻŋ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āĻšāĻŦ⧇āĨ¤

āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āύ āφāχāĻ•āύ āϏ⧇āϟāĻŋāĻ‚āϏ āĻĒā§āϰāĻŋāĻ­āĻŋāω āĻ•āϰāϤ⧇, Google Font Icons- āĻ āϝāĻžāύ āĻāĻŦāĻ‚ Customize-āĻāϰ āĻ…āϧ⧀āύ⧇ āϏ⧇āϟāĻŋāĻ‚āϏ āĻ…ā§āϝāĻžāĻĄāϜāĻžāĻ¸ā§āϟ āĻ•āϰ⧁āύāĨ¤

grade

integer

āĻ“āϜāύ āĻāĻŦāĻ‚ āĻ—ā§āϰ⧇āĻĄ āĻāĻ•āϟāĻŋ āĻĒā§āϰāϤ⧀āϕ⧇āϰ āĻĒ⧁āϰ⧁āĻ¤ā§āĻŦāϕ⧇ āĻĒā§āϰāĻ­āĻžāĻŦāĻŋāϤ āĻ•āϰ⧇āĨ¤ āĻ“āϜāύ⧇āϰ āϏāĻŽāĻ¨ā§āĻŦāϝāĻŧ⧇āϰ āĻšā§‡āϝāĻŧ⧇ āĻ—ā§āϰ⧇āĻĄā§‡āϰ āϏāĻŽāĻ¨ā§āĻŦāϝāĻŧ āφāϰāĻ“ āϏ⧂āĻ•ā§āĻˇā§āĻŽ āĻāĻŦāĻ‚ āĻĒā§āϰāϤ⧀āϕ⧇āϰ āφāĻ•āĻžāϰ⧇āϰ āωāĻĒāϰ āĻāϰ āĻĒā§āϰāĻ­āĻžāĻŦ āϏāĻžāĻŽāĻžāĻ¨ā§āϝāĨ¤ {-⧍ā§Ģ, ā§Ļ, ⧍ā§Ļā§Ļ} āĻĨ⧇āϕ⧇ āĻŦ⧇āϛ⧇ āύāĻŋāύāĨ¤ āĻāϟāĻŋ āĻ…āύ⧁āĻĒāĻ¸ā§āĻĨāĻŋāϤ āĻĨāĻžāĻ•āϞ⧇, āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŽāĻžāύ ā§Ļ āĻšāĻŦ⧇āĨ¤ āĻ…āĻ¨ā§āϝ āϕ⧋āύ⧋ āĻŽāĻžāύ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰāĻž āĻšāϞ⧇, āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŽāĻžāύāϟāĻŋ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āĻšāĻŦ⧇āĨ¤

āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āύ āφāχāĻ•āύ āϏ⧇āϟāĻŋāĻ‚āϏ āĻĒā§āϰāĻŋāĻ­āĻŋāω āĻ•āϰāϤ⧇, Google Font Icons- āĻ āϝāĻžāύ āĻāĻŦāĻ‚ Customize-āĻāϰ āĻ…āϧ⧀āύ⧇ āϏ⧇āϟāĻŋāĻ‚āϏ āĻ…ā§āϝāĻžāĻĄāϜāĻžāĻ¸ā§āϟ āĻ•āϰ⧁āύāĨ¤

āϏāĻœā§āϜāĻŋāϤ āĻĒāĻžāĻ ā§āϝ

āĻāĻ•āϟāĻŋ āωāχāĻœā§‡āϟ āϝāĻž āĻŸā§‡āĻ•ā§āϏāĻŸā§‡āϰ āϏāĻžāĻĨ⧇ āϐāĻšā§āĻ›āĻŋāĻ• āĻ…āϞāĻ™ā§āĻ•āϰāĻŖ āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰ⧇, āϝ⧇āĻŽāύ āĻŸā§‡āĻ•ā§āϏāĻŸā§‡āϰ āωāĻĒāϰ⧇ āĻŦāĻž āύ⧀āĻšā§‡ āĻāĻ•āϟāĻŋ āϞ⧇āĻŦ⧇āϞ, āĻŸā§‡āĻ•ā§āϏāĻŸā§‡āϰ āϏāĻžāĻŽāύ⧇ āĻāĻ•āϟāĻŋ āφāχāĻ•āύ, āĻāĻ•āϟāĻŋ āϏāĻŋāϞ⧇āĻ•āĻļāύ āωāχāĻœā§‡āϟ, āĻ…āĻĨāĻŦāĻž āĻŸā§‡āĻ•ā§āϏāĻŸā§‡āϰ āĻĒāϰ⧇ āĻāĻ•āϟāĻŋ āĻŦāĻžāϟāύāĨ¤ āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ⧇ āĻāĻ•āϟāĻŋ āωāĻĻāĻžāĻšāϰāϪ⧇āϰ āϜāĻ¨ā§āϝ, ‘āĻ…āϞāĻ™ā§āĻ•āϰāĻŖāĻŽā§‚āϞāĻ• āĻŸā§‡āĻ•ā§āϏāϟ āϏāĻš āĻŸā§‡āĻ•ā§āϏāϟ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻ¨â€™ āĻĻ⧇āϖ⧁āύāĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ āĻāĻŦāĻ‚ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "icon": {
    object (Icon)
  },
  "startIcon": {
    object (Icon)
  },
  "startIconVerticalAlignment": enum (VerticalAlignment),
  "topLabel": string,
  "topLabelText": {
    object (TextParagraph)
  },
  "text": string,
  "contentText": {
    object (TextParagraph)
  },
  "wrapText": boolean,
  "bottomLabel": string,
  "bottomLabelText": {
    object (TextParagraph)
  },
  "onClick": {
    object (OnClick)
  },

  "button": {
    object (Button)
  },
  "switchControl": {
    object (SwitchControl)
  },
  "endIcon": {
    object (Icon)
  }
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
icon
(deprecated)

object ( Icon )

startIcon āĻāϰ āĻĒā§āϰāϚāϞāύ⧇āϰ āĻ•āĻžāϰāϪ⧇ āĻāϟāĻŋ āĻ…āĻĒā§āϰāϚāϞāĻŋāϤ āĻšāϝāĻŧ⧇ āϗ⧇āϛ⧇āĨ¤

startIcon

object ( Icon )

āĻŸā§‡āĻ•ā§āϏāĻŸā§‡āϰ āϏāĻžāĻŽāύ⧇ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āφāχāĻ•āύāϟāĻŋāĨ¤

startIconVerticalAlignment

enum ( VerticalAlignment )

āϐāĻšā§āĻ›āĻŋāĻ•āĨ¤ āĻ¸ā§āϟāĻžāĻ°ā§āϟ āφāχāĻ•āύ⧇āϰ āωāĻ˛ā§āϞāĻŽā§āĻŦ āĻŦāĻŋāĻ¨ā§āϝāĻžāϏāĨ¤ āϏ⧇āϟ āύāĻž āĻ•āϰāĻž āĻšāϞ⧇, āφāχāĻ•āύāϟāĻŋ āωāĻ˛ā§āϞāĻŽā§āĻŦāĻ­āĻžāĻŦ⧇ āϕ⧇āĻ¨ā§āĻĻā§āϰ⧇ āĻĨāĻžāĻ•āĻŦ⧇āĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ⧇āϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύ⧇āϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āĻĒāϞāĻŦā§āϧāĨ¤

topLabel

string

text āωāĻĒāϰ⧇ āϝ⧇ āϞ⧇āĻ–āĻžāϟāĻŋ āĻĻ⧇āĻ–āĻž āϝāĻžāϝāĻŧ, āϤāĻž āϏāĻ°ā§āĻŦāĻĻāĻž āϏāĻ‚āĻ•ā§āώāĻŋāĻĒā§āϤ āĻšāϝāĻŧ⧇ āϝāĻžāϝāĻŧāĨ¤

topLabelText

object ( TextParagraph )

topLabel āĻāϰ TextParagraph āϏāĻŽāϤ⧁āĻ˛ā§āϝāĨ¤ āϏāĻ°ā§āĻŦāĻĻāĻž āϏāĻ‚āĻ•ā§āώāĻŋāĻĒā§āϤ āĻ•āϰ⧇āĨ¤ topLabel āĻšā§‡āϝāĻŧ⧇ āφāϰāĻ“ āϜāϟāĻŋāϞ āĻĢāϰāĻŽā§āϝāĻžāϟāĻŋāĻ‚āϝāĻŧ⧇āϰ āϏ⧁āϝ⧋āĻ— āĻĻ⧇āϝāĻŧāĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ⧇āϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύ⧇āϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āĻĒāϞāĻŦā§āϧāĨ¤

text

string

āφāĻŦāĻļā§āϝāĻ•āĨ¤ āĻŽā§‚āϞ āĻĒāĻžāĻ ā§āϝāĨ¤

āϏāĻžāϧāĻžāϰāĻŖ āĻĢāϰāĻŽā§āϝāĻžāϟāĻŋāĻ‚ āϏāĻŽāĻ°ā§āĻĨāύ āĻ•āϰ⧇āĨ¤ āĻŸā§‡āĻ•ā§āϏāϟ āĻĢāϰāĻŽā§āϝāĻžāϟāĻŋāĻ‚ āϏāĻŽā§āĻĒāĻ°ā§āϕ⧇ āφāϰāĻ“ āϤāĻĨā§āϝ⧇āϰ āϜāĻ¨ā§āϝ, Google Chat āĻ…ā§āϝāĻžāĻĒ⧇ āĻŸā§‡āĻ•ā§āϏāϟ āĻĢāϰāĻŽā§āϝāĻžāϟāĻŋāĻ‚ āĻāĻŦāĻ‚ Google Workspace āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϤ⧇ āĻŸā§‡āĻ•ā§āϏāϟ āĻĢāϰāĻŽā§āϝāĻžāϟāĻŋāĻ‚ āĻĻ⧇āϖ⧁āύāĨ¤

contentText

object ( TextParagraph )

TextParagraph āĻšāϞ⧋ text āĻāϰ āϏāĻŽāϤ⧁āĻ˛ā§āϝāĨ¤ āĻāϟāĻŋ text āĻāϰ āĻšā§‡āϝāĻŧ⧇ āφāϰāĻ“ āϜāϟāĻŋāϞ āĻĢāϰāĻŽā§āϝāĻžāϟāĻŋāĻ‚-āĻāϰ āϏ⧁āϝ⧋āĻ— āĻĻ⧇āϝāĻŧāĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ⧇āϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύ⧇āϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āĻĒāϞāĻŦā§āϧāĨ¤

wrapText

boolean

āĻŸā§‡āĻ•ā§āϏāϟ āĻ°â€ā§āϝāĻžāĻĒ āĻ•āϰāĻžāϰ āϏ⧇āϟāĻŋāĻ‚āĨ¤ āϝāĻĻāĻŋ true , āϤāĻžāĻšāϞ⧇ āĻŸā§‡āĻ•ā§āϏāϟ āĻ°â€ā§āϝāĻžāĻĒ āĻšāϝāĻŧ⧇ āĻāĻ•āĻžāϧāĻŋāĻ• āϞāĻžāχāύ⧇ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšāĻŦ⧇āĨ¤ āĻ…āĻ¨ā§āϝāĻĨāĻžāϝāĻŧ, āĻŸā§‡āĻ•ā§āϏāϟāϟāĻŋ āϏāĻ‚āĻ•ā§āώāĻŋāĻĒā§āϤ āĻšāϝāĻŧ⧇ āϝāĻžāĻŦ⧇āĨ¤

āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ text āĻ•ā§āώ⧇āĻ¤ā§āϰ⧇ āĻĒā§āϰāϝ⧋āĻœā§āϝ, topLabel āĻāĻŦāĻ‚ bottomLabel āĻ•ā§āώ⧇āĻ¤ā§āϰ⧇ āύāϝāĻŧāĨ¤

bottomLabel

string

āϝ⧇ āϞ⧇āĻ–āĻžāϟāĻŋ text āύāĻŋāĻšā§‡ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšāϝāĻŧ, āϤāĻž āϏāĻ°ā§āĻŦāĻĻāĻž āĻŸā§‡āĻ•ā§āϏāϟāϕ⧇ āϘāĻŋāϰ⧇ āϰāĻžāϖ⧇āĨ¤

bottomLabelText

object ( TextParagraph )

bottomLabel āĻāϰ TextParagraph āϏāĻŽāϤ⧁āĻ˛ā§āϝāĨ¤ āϏāĻ°ā§āĻŦāĻĻāĻž āĻ°â€ā§āϝāĻžāĻĒ āĻ•āϰ⧇āĨ¤ bottomLabel āĻšā§‡āϝāĻŧ⧇ āφāϰāĻ“ āϜāϟāĻŋāϞ āĻĢāϰāĻŽā§āϝāĻžāϟāĻŋāĻ‚āϝāĻŧ⧇āϰ āϏ⧁āϝ⧋āĻ— āĻĻ⧇āϝāĻŧāĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ⧇āϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύ⧇āϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āĻĒāϞāĻŦā§āϧāĨ¤

onClick

object ( OnClick )

āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰāĻž topLabel āĻŦāĻž bottomLabel āĻ•ā§āϞāĻŋāĻ• āĻ•āϰāϞ⧇ āĻāχ āĻ…ā§āϝāĻžāĻ•āĻļāύāϟāĻŋ āϏāĻ•ā§āϰāĻŋāϝāĻŧ āĻšāϝāĻŧāĨ¤

āχāωāύāĻŋāϝāĻŧāύ āĻĢāĻŋāĻ˛ā§āĻĄ control āĨ¤ āĻāĻ•āϟāĻŋ āĻŦāĻžāϟāύ, āϏ⧁āχāϚ, āĻšā§‡āĻ•āĻŦāĻ•ā§āϏ āĻŦāĻž āĻ›āĻŦāĻŋ āϝāĻž decoratedText ' āωāχāĻœā§‡āĻŸā§‡āϰ āĻŸā§‡āĻ•ā§āϏāĻŸā§‡āϰ āĻĄāĻžāύāĻĻāĻŋāϕ⧇ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšāϝāĻŧāĨ¤ control āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤāϗ⧁āϞāĻŋāϰ āĻŽāĻ§ā§āϝ⧇ āϕ⧇āĻŦāϞ āĻāĻ•āϟāĻŋ āĻšāϤ⧇ āĻĒāĻžāϰ⧇:
button

object ( Button )

āĻāĻŽāύ āĻāĻ•āϟāĻŋ āĻŦāĻžāϟāύ, āϝ⧇āϟāĻŋāϤ⧇ āĻ•ā§āϞāĻŋāĻ• āĻ•āϰ⧇ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀ āϕ⧋āύ⧋ āĻ•āĻžāϜ āϏāĻŽā§āĻĒāĻ¨ā§āύ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύāĨ¤

switchControl

object ( SwitchControl )

āĻāĻ•āϟāĻŋ āϏ⧁āχāϚ āωāχāĻœā§‡āϟ, āϝ⧇āϟāĻŋāϤ⧇ āĻ•ā§āϞāĻŋāĻ• āĻ•āϰ⧇ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀ āĻāϰ āĻ…āĻŦāĻ¸ā§āĻĨāĻž āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻ•āϰāϤ⧇ āĻāĻŦāĻ‚ āϕ⧋āύ⧋ āĻāĻ•āϟāĻŋ āĻ…ā§āϝāĻžāĻ•āĻļāύ āϚāĻžāϞ⧁ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύāĨ¤

endIcon

object ( Icon )

āϞ⧇āĻ–āĻžāϟāĻŋāϰ āĻĒāϰ⧇ āĻāĻ•āϟāĻŋ āφāχāĻ•āύ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšāϝāĻŧāĨ¤

āĻ…āĻ¨ā§āϤāĻ°ā§āύāĻŋāĻ°ā§āĻŽāĻŋāϤ āĻāĻŦāĻ‚ āĻ•āĻžāĻ¸ā§āϟāĻŽ āφāχāĻ•āύ āϏāĻŽāĻ°ā§āĻĨāύ āĻ•āϰ⧇āĨ¤

āωāĻ˛ā§āϞāĻŽā§āĻŦ āϏāĻžāϰāĻŋāĻŦāĻĻā§āϧāĻ•āϰāĻŖ

āωāĻ˛ā§āϞāĻŽā§āĻŦ āϏāĻžāϰāĻŋāĻŦāĻĻā§āϧāĻ•āϰāĻŖ āĻŦ⧈āĻļāĻŋāĻˇā§āĻŸā§āϝāϕ⧇ āĻŦā§‹āĻāĻžāϝāĻŧāĨ¤

āĻāύāĻžāĻŽ
VERTICAL_ALIGNMENT_UNSPECIFIED āĻ…āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻĒā§āϰāĻ•āĻžāϰāĨ¤ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻŦ⧇āύ āύāĻžāĨ¤
TOP āĻļā§€āĻ°ā§āώ āĻ…āĻŦāĻ¸ā§āĻĨāĻžāύ⧇ āϏāĻžāϰāĻŋāĻŦāĻĻā§āϧāĻ•āϰāĻŖāĨ¤
MIDDLE āĻŽāĻ§ā§āϝāĻŦāĻ°ā§āϤ⧀ āĻ…āĻŦāĻ¸ā§āĻĨāĻžāύ⧇ āϏāĻžāϰāĻŋāĻŦāĻĻā§āϧāĻ•āϰāĻŖāĨ¤
BOTTOM āϏāĻ°ā§āĻŦāύāĻŋāĻŽā§āύ āĻ…āĻŦāĻ¸ā§āĻĨāĻžāύ⧇ āϏāĻžāϰāĻŋāĻŦāĻĻā§āϧāĻ•āϰāĻŖāĨ¤

āĻŦā§‹āϤāĻžāĻŽ

āĻāĻ•āϟāĻŋ āĻŸā§‡āĻ•ā§āϏāϟ, āφāχāĻ•āύ, āĻ…āĻĨāĻŦāĻž āĻŸā§‡āĻ•ā§āϏāϟ āĻ“ āφāχāĻ•āύ āϏāĻš āĻŦāĻžāϟāύ, āϝ⧇āϟāĻŋāϤ⧇ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰāĻž āĻ•ā§āϞāĻŋāĻ• āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύāĨ¤ āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ⧇ āĻāϰ āĻāĻ•āϟāĻŋ āωāĻĻāĻžāĻšāϰāϪ⧇āϰ āϜāĻ¨ā§āϝ, ‘āĻāĻ•āϟāĻŋ āĻŦāĻžāϟāύ āϝ⧋āĻ— āĻ•āϰ⧁āĻ¨â€™ āĻĻ⧇āϖ⧁āύāĨ¤

āĻāĻ•āϟāĻŋ āχāĻŽā§‡āϜāϕ⧇ āĻ•ā§āϞāĻŋāĻ•āϝ⧋āĻ—ā§āϝ āĻŦāĻžāϟāύ⧇ āĻĒāϰāĻŋāĻŖāϤ āĻ•āϰāϤ⧇, āĻāĻ•āϟāĻŋ Image ( ImageComponent āύāϝāĻŧ) āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰ⧁āύ āĻāĻŦāĻ‚ āĻāĻ•āϟāĻŋ onClick āĻ…ā§āϝāĻžāĻ•āĻļāύ āϏ⧇āϟ āĻ•āϰ⧁āύāĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ āĻāĻŦāĻ‚ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "text": string,
  "icon": {
    object (Icon)
  },
  "color": {
    object (Color)
  },
  "onClick": {
    object (OnClick)
  },
  "disabled": boolean,
  "altText": string,
  "type": enum (Type)
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
text

string

āĻŦāĻžāϟāύ⧇āϰ āĻ­āĻŋāϤāϰ⧇ āϞ⧇āĻ–āĻžāϟāĻŋ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšāϝāĻŧ⧇āϛ⧇āĨ¤

icon

object ( Icon )

āĻŦāĻžāϟāύ⧇āϰ āĻ­āĻŋāϤāϰ⧇ āĻāĻ•āϟāĻŋ āφāχāĻ•āύ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšāϝāĻŧāĨ¤ āϝāĻĻāĻŋ icon āĻāĻŦāĻ‚ text āωāĻ­āϝāĻŧāχ āϏ⧇āϟ āĻ•āϰāĻž āĻĨāĻžāϕ⧇, āϤāĻžāĻšāϞ⧇ āφāχāĻ•āύāϟāĻŋ āĻŸā§‡āĻ•ā§āϏāĻŸā§‡āϰ āφāϗ⧇ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšāϝāĻŧāĨ¤

color

object ( Color )

āϐāĻšā§āĻ›āĻŋāĻ•āĨ¤ āĻŦāĻžāϟāύ⧇āϰ āϰāĻ™āĨ¤ āĻāϟāĻŋ āϏ⧇āϟ āĻ•āϰāĻž āĻšāϞ⧇, āĻŦāĻžāϟāύ⧇āϰ type FILLED āĻšāĻŋāϏ⧇āĻŦ⧇ āϏ⧇āϟ āĻ•āϰāĻž āĻšāϝāĻŧ āĻāĻŦāĻ‚ āĻĒāĻžāĻ āϝ⧋āĻ—ā§āϝāϤāĻžāϰ āϜāĻ¨ā§āϝ text āĻ“ icon āĻĢāĻŋāĻ˛ā§āĻĄā§‡āϰ āϰāĻ™ āĻāĻ•āϟāĻŋ āĻŦ⧈āϏāĻžāĻĻ⧃āĻļā§āϝāĻĒā§‚āĻ°ā§āĻŖ āϰāϙ⧇ āϏ⧇āϟ āĻ•āϰāĻž āĻšāϝāĻŧāĨ¤ āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āϝāĻĻāĻŋ āĻŦāĻžāϟāύ⧇āϰ āϰāĻ™ āύ⧀āϞ āϏ⧇āϟ āĻ•āϰāĻž āĻšāϝāĻŧ, āϤāĻžāĻšāϞ⧇ āĻŦāĻžāϟāύ⧇āϰ āϭ⧇āϤāϰ⧇āϰ āϝ⧇āϕ⧋āύ⧋ āĻŸā§‡āĻ•ā§āϏāϟ āĻŦāĻž āφāχāĻ•āύ āϏāĻžāĻĻāĻž āϰāϙ⧇ āϏ⧇āϟ āĻ•āϰāĻž āĻšāĻŦ⧇āĨ¤

āĻŦāĻžāϟāύ⧇āϰ āϰāĻ™ āϏ⧇āϟ āĻ•āϰāϤ⧇, red , green , āĻāĻŦāĻ‚ blue āĻĢāĻŋāĻ˛ā§āĻĄāϗ⧁āϞ⧋āϰ āϜāĻ¨ā§āϝ āĻāĻ•āϟāĻŋ āĻŽāĻžāύ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰ⧁āύāĨ¤ āĻŽāĻžāύāϟāĻŋ āĻ…āĻŦāĻļā§āϝāχ RGB āϰāϙ⧇āϰ āĻŽāĻžāύ⧇āϰ āωāĻĒāϰ āĻ­āĻŋāĻ¤ā§āϤāĻŋ āĻ•āϰ⧇ ā§Ļ āĻĨ⧇āϕ⧇ ā§§-āĻāϰ āĻŽāĻ§ā§āϝ⧇ āĻāĻ•āϟāĻŋ āĻĢā§āϞ⧋āϟ āϏāĻ‚āĻ–ā§āϝāĻž āĻšāϤ⧇ āĻšāĻŦ⧇, āϝ⧇āĻ–āĻžāύ⧇ 0 (ā§Ļ/⧍ā§Ģā§Ģ) āϰāϙ⧇āϰ āĻ…āύ⧁āĻĒāĻ¸ā§āĻĨāĻŋāϤāĻŋ āĻāĻŦāĻ‚ 1 (⧍ā§Ģā§Ģ/⧍ā§Ģā§Ģ) āϰāϙ⧇āϰ āϏāĻ°ā§āĻŦā§‹āĻšā§āϚ āϤ⧀āĻŦā§āϰāϤāĻž āĻŦā§‹āĻāĻžāϝāĻŧāĨ¤

āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤāϟāĻŋ āϰāĻ™āϟāĻŋāϕ⧇ āϤāĻžāϰ āϏāĻ°ā§āĻŦā§‹āĻšā§āϚ āϤ⧀āĻŦā§āϰāϤāĻžāϝāĻŧ āϞāĻžāϞ⧇ āϏ⧇āϟ āĻ•āϰ⧇:

"color": {
   "red": 1,
   "green": 0,
   "blue": 0,
}

āĻŦāĻžāϟāύ⧇āϰ āϰāϙ⧇āϰ āϜāĻ¨ā§āϝ alpha āĻĢāĻŋāĻ˛ā§āĻĄāϟāĻŋ āωāĻĒāϞāĻŦā§āϧ āύāϝāĻŧāĨ¤ āĻāϟāĻŋ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰāĻž āĻšāϞ⧇, āĻĢāĻŋāĻ˛ā§āĻĄāϟāĻŋ āωāĻĒ⧇āĻ•ā§āώāĻž āĻ•āϰāĻž āĻšāϝāĻŧāĨ¤

onClick

object ( OnClick )

āφāĻŦāĻļā§āϝāĻ•āĨ¤ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀ āĻŦā§‹āϤāĻžāĻŽā§‡ āĻ•ā§āϞāĻŋāĻ• āĻ•āϰāϞ⧇ āϝ⧇ āĻ•āĻžāϜāϟāĻŋ āϏāĻŽā§āĻĒāĻžāĻĻāύ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇, āϝ⧇āĻŽāύ āĻāĻ•āϟāĻŋ āĻšāĻžāχāĻĒāĻžāϰāϞāĻŋāĻ™ā§āĻ• āĻ–ā§‹āϞāĻž āĻŦāĻž āĻāĻ•āϟāĻŋ āĻ•āĻžāĻ¸ā§āϟāĻŽ āĻĢāĻžāĻ‚āĻļāύ āϚāĻžāϞāĻžāύ⧋āĨ¤

disabled

boolean

āϝāĻĻāĻŋ true , āϤāĻžāĻšāϞ⧇ āĻŦāĻžāϟāύāϟāĻŋ āĻāĻ•āϟāĻŋ āύāĻŋāĻˇā§āĻ•ā§āϰāĻŋāϝāĻŧ āĻ…āĻŦāĻ¸ā§āĻĨāĻžāϝāĻŧ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšāϝāĻŧ āĻāĻŦāĻ‚ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰ āϕ⧋āύ⧋ āĻ•āĻžāĻ°ā§āϝāĻ•āϞāĻžāĻĒ⧇ āϏāĻžāĻĄāĻŧāĻž āĻĻ⧇āϝāĻŧ āύāĻžāĨ¤

altText

string

āĻ…ā§āϝāĻžāĻ•ā§āϏ⧇āϏāĻŋāĻŦāĻŋāϞāĻŋāϟāĻŋāϰ āϜāĻ¨ā§āϝ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ āĻŸā§‡āĻ•ā§āϏāϟāĨ¤

āĻŦāĻ°ā§āĻŖāύāĻžāĻŽā§‚āϞāĻ• āĻŸā§‡āĻ•ā§āϏāϟ āϏ⧇āϟ āĻ•āϰ⧁āύ āϝāĻž āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āĻĻ⧇āϰ āϜāĻžāύāĻŋāϝāĻŧ⧇ āĻĻ⧇āĻŦ⧇ āĻŦāĻžāϟāύāϟāĻŋ āϕ⧀ āĻ•āĻžāϜ āĻ•āϰ⧇āĨ¤ āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āϝāĻĻāĻŋ āϕ⧋āύ⧋ āĻŦāĻžāϟāύ āĻāĻ•āϟāĻŋ āĻšāĻžāχāĻĒāĻžāϰāϞāĻŋāĻ™ā§āĻ• āĻ–ā§‹āϞ⧇, āϤāĻžāĻšāϞ⧇ āφāĻĒāύāĻŋ āϞāĻŋāĻ–āϤ⧇ āĻĒāĻžāϰ⧇āύ: "āĻāĻ•āϟāĻŋ āύāϤ⧁āύ āĻŦā§āϰāĻžāωāϜāĻžāϰ āĻŸā§āϝāĻžāĻŦ āĻ–ā§‹āϞ⧇ āĻāĻŦāĻ‚ https://developers.google.com/workspace/chat-āĻ āĻĨāĻžāĻ•āĻž āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻĄā§‡āϭ⧇āϞāĻĒāĻžāϰ āĻĄāϕ⧁āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻļāύ⧇ āύāĻŋāϝāĻŧ⧇ āϝāĻžāϝāĻŧ" āĨ¤

type

enum ( Type )

āϐāĻšā§āĻ›āĻŋāĻ•āĨ¤ āĻŦāĻžāϟāύ⧇āϰ āϧāϰāĻŖāĨ¤ āϏ⧇āϟ āύāĻž āĻ•āϰāĻž āĻĨāĻžāĻ•āϞ⧇, āĻŦāĻžāϟāύ⧇āϰ āϧāϰāĻŖ āĻĄāĻŋāĻĢāĻ˛ā§āϟāĻ­āĻžāĻŦ⧇ OUTLINED āĻšāϝāĻŧāĨ¤ āϝāĻĻāĻŋ color āĻĢāĻŋāĻ˛ā§āĻĄāϟāĻŋ āϏ⧇āϟ āĻ•āϰāĻž āĻĨāĻžāϕ⧇, āϤāĻžāĻšāϞ⧇ āĻŦāĻžāϟāύ⧇āϰ āϧāϰāĻŖ āĻŦāĻžāĻ§ā§āϝāϤāĻžāĻŽā§‚āϞāĻ•āĻ­āĻžāĻŦ⧇ FILLED āϝāĻžāϝāĻŧ āĻāĻŦāĻ‚ āĻāχ āĻĢāĻŋāĻ˛ā§āĻĄā§‡āϰ āϜāĻ¨ā§āϝ āϏ⧇āϟ āĻ•āϰāĻž āϝ⧇āϕ⧋āύ⧋ āĻŽāĻžāύ āωāĻĒ⧇āĻ•ā§āώāĻž āĻ•āϰāĻž āĻšāϝāĻŧāĨ¤

āϰāĻ™

āĻāϟāĻŋ RGBA āĻ•āĻžāϞāĻžāϰ āĻ¸ā§āĻĒ⧇āϏ⧇āϰ āĻāĻ•āϟāĻŋ āϰāĻ™āϕ⧇ āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύ āĻ•āϰ⧇āĨ¤ āĻāχ āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻžāϟāĻŋ āϏāĻ‚āĻ•ā§āώāĻŋāĻĒā§āϤāϤāĻžāϰ āĻšā§‡āϝāĻŧ⧇ āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āύ āĻ­āĻžāώāĻžāϰ āϰāϙ⧇āϰ āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻžāϝāĻŧ āϏāĻšāĻœā§‡ āϰ⧂āĻĒāĻžāĻ¨ā§āϤāϰ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āĻĄāĻŋāϜāĻžāχāύ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤ āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āĻāχ āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻžāϰ āĻĢāĻŋāĻ˛ā§āĻĄāϗ⧁āϞāĻŋ āϜāĻžāĻ­āĻžāϤ⧇ java.awt.Color āĻāϰ āĻ•āύāĻ¸ā§āĻŸā§āϰāĻžāĻ•ā§āϟāϰ⧇ āϏāĻšāĻœā§‡āχ āϏāϰāĻŦāϰāĻžāĻš āĻ•āϰāĻž āϝāĻžāϝāĻŧ; āĻāϟāĻŋ iOS-āĻ UIColor-āĻāϰ +colorWithRed:green:blue:alpha āĻŽā§‡āĻĨāĻĄā§‡āĻ“ āϏāĻšāĻœā§‡āχ āϏāϰāĻŦāϰāĻžāĻš āĻ•āϰāĻž āϝāĻžāϝāĻŧ; āĻāĻŦāĻ‚, āϏāĻžāĻŽāĻžāĻ¨ā§āϝ āĻĒāϰāĻŋāĻļā§āϰāĻŽā§‡, āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āĻŸā§‡ āĻāϟāĻŋāϕ⧇ āϏāĻšāĻœā§‡āχ āĻāĻ•āϟāĻŋ CSS rgba() āĻ¸ā§āĻŸā§āϰāĻŋāĻ‚-āĻ āĻĢāϰāĻŽā§āϝāĻžāϟ āĻ•āϰāĻž āϝāĻžāϝāĻŧāĨ¤

āĻāχ āϰ⧇āĻĢāĻžāϰ⧇āĻ¨ā§āϏ āĻĒ⧃āĻˇā§āĻ āĻžāϝāĻŧ RGB āĻŽāĻžāύ āĻŦā§āϝāĻžāĻ–ā§āϝāĻž āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āϕ⧋āύ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āĻžāϞāĻžāϰ āĻ¸ā§āĻĒ⧇āϏ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āωāϚāĻŋāĻ¤â€”āϝ⧇āĻŽāύ, sRGB, Adobe RGB, DCI-P3, āĻāĻŦāĻ‚ BT.2020—āϏ⧇ āϏāĻŽā§āĻĒāĻ°ā§āϕ⧇ āϕ⧋āύ⧋ āϤāĻĨā§āϝ āύ⧇āχāĨ¤ āĻĄāĻŋāĻĢāĻ˛ā§āϟāϰ⧂āĻĒ⧇, āĻ…ā§āϝāĻžāĻĒā§āϞāĻŋāϕ⧇āĻļāύāϗ⧁āϞ⧋ sRGB āĻ•āĻžāϞāĻžāϰ āĻ¸ā§āĻĒ⧇āϏ āϧāϰ⧇ āύ⧇āĻŦ⧇āĨ¤

āϝāĻ–āύ āϰāϙ⧇āϰ āϏāĻŽāϤāĻž āύāĻŋāĻ°ā§āϧāĻžāϰāĻŖ āĻ•āϰāĻžāϰ āĻĒā§āϰāϝāĻŧā§‹āϜāύ āĻšāϝāĻŧ, āϤāĻ–āύ āĻ…āĻ¨ā§āϝāĻ­āĻžāĻŦ⧇ āύāĻĨāĻŋāϭ⧁āĻ•ā§āϤ āύāĻž āĻĨāĻžāĻ•āϞ⧇, āĻŦāĻžāĻ¸ā§āϤāĻŦāĻžāϝāĻŧāύ āĻĻ⧁āϟāĻŋ āϰāĻ™āϕ⧇ āϏāĻŽāĻžāύ āĻŦāϞ⧇ āĻ—āĻŖā§āϝ āĻ•āϰ⧇ āϝāĻĻāĻŋ āϤāĻžāĻĻ⧇āϰ āϞāĻžāϞ, āϏāĻŦ⧁āϜ, āύ⧀āϞ āĻāĻŦāĻ‚ āφāϞāĻĢāĻž āĻŽāĻžāύ⧇āϰ āĻĒā§āϰāĻ¤ā§āϝ⧇āĻ•āϟāĻŋāϰ āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āϝ āϏāĻ°ā§āĻŦāĻžāϧāĻŋāĻ• 1e-5 āĻšāϝāĻŧāĨ¤

āωāĻĻāĻžāĻšāϰāĻŖ (āϜāĻžāĻ­āĻž):

 import com.google.type.Color;

 // ...
 public static java.awt.Color fromProto(Color protocolor) {
   float alpha = protocolor.hasAlpha()
       ? protocolor.getAlpha().getValue()
       : 1.0;

   return new java.awt.Color(
       protocolor.getRed(),
       protocolor.getGreen(),
       protocolor.getBlue(),
       alpha);
 }

 public static Color toProto(java.awt.Color color) {
   float red = (float) color.getRed();
   float green = (float) color.getGreen();
   float blue = (float) color.getBlue();
   float denominator = 255.0;
   Color.Builder resultBuilder =
       Color
           .newBuilder()
           .setRed(red / denominator)
           .setGreen(green / denominator)
           .setBlue(blue / denominator);
   int alpha = color.getAlpha();
   if (alpha != 255) {
     result.setAlpha(
         FloatValue
             .newBuilder()
             .setValue(((float) alpha) / denominator)
             .build());
   }
   return resultBuilder.build();
 }
 // ...

āωāĻĻāĻžāĻšāϰāĻŖ (iOS / Obj-C):

 // ...
 static UIColor* fromProto(Color* protocolor) {
    float red = [protocolor red];
    float green = [protocolor green];
    float blue = [protocolor blue];
    FloatValue* alpha_wrapper = [protocolor alpha];
    float alpha = 1.0;
    if (alpha_wrapper != nil) {
      alpha = [alpha_wrapper value];
    }
    return [UIColor colorWithRed:red green:green blue:blue alpha:alpha];
 }

 static Color* toProto(UIColor* color) {
     CGFloat red, green, blue, alpha;
     if (![color getRed:&red green:&green blue:&blue alpha:&alpha]) {
       return nil;
     }
     Color* result = [[Color alloc] init];
     [result setRed:red];
     [result setGreen:green];
     [result setBlue:blue];
     if (alpha <= 0.9999) {
       [result setAlpha:floatWrapperWithValue(alpha)];
     }
     [result autorelease];
     return result;
}
// ...

āωāĻĻāĻžāĻšāϰāĻŖ (āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āϟ):

// ...

var protoToCssColor = function(rgb_color) {
   var redFrac = rgb_color.red || 0.0;
   var greenFrac = rgb_color.green || 0.0;
   var blueFrac = rgb_color.blue || 0.0;
   var red = Math.floor(redFrac * 255);
   var green = Math.floor(greenFrac * 255);
   var blue = Math.floor(blueFrac * 255);

   if (!('alpha' in rgb_color)) {
      return rgbToCssColor(red, green, blue);
   }

   var alphaFrac = rgb_color.alpha.value || 0.0;
   var rgbParams = [red, green, blue].join(',');
   return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');
};

var rgbToCssColor = function(red, green, blue) {
  var rgbNumber = new Number((red << 16) | (green << 8) | blue);
  var hexString = rgbNumber.toString(16);
  var missingZeros = 6 - hexString.length;
  var resultBuilder = ['#'];
  for (var i = 0; i < missingZeros; i++) {
     resultBuilder.push('0');
  }
  resultBuilder.push(hexString);
  return resultBuilder.join('');
};

// ...
JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "red": number,
  "green": number,
  "blue": number,
  "alpha": number
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
red

number

āϰāϙ⧇ āϞāĻžāϞ⧇āϰ āĻĒāϰāĻŋāĻŽāĻžāĻŖ, āϝāĻž [0, 1] āĻŦā§āϝāĻŦāϧāĻŋāϰ āĻāĻ•āϟāĻŋ āĻŽāĻžāύāĨ¤

green

number

āϰāϙ⧇ āϏāĻŦ⧁āĻœā§‡āϰ āĻĒāϰāĻŋāĻŽāĻžāĻŖ, āϝāĻž [0, 1] āĻŦā§āϝāĻŦāϧāĻŋāϰ āĻŽāĻ§ā§āϝ⧇ āĻāĻ•āϟāĻŋ āĻŽāĻžāύāĨ¤

blue

number

āϰāĻ™āϟāĻŋāϤ⧇ āύ⧀āϞ⧇āϰ āĻĒāϰāĻŋāĻŽāĻžāĻŖ, āϝāĻž [0, 1] āĻŦā§āϝāĻŦāϧāĻŋāϰ āĻāĻ•āϟāĻŋ āĻŽāĻžāύāĨ¤

alpha

number

āĻāχ āϰāϙ⧇āϰ āϝ⧇ āĻ…āĻ‚āĻļāϟ⧁āϕ⧁ āĻĒāĻŋāĻ•ā§āϏ⧇āϞ⧇ āĻĒā§āϰāϝāĻŧā§‹āĻ— āĻ•āϰāĻž āĻšāĻŦ⧇āĨ¤ āĻ…āĻ°ā§āĻĨāĻžā§Ž, āĻšā§‚āĻĄāĻŧāĻžāĻ¨ā§āϤ āĻĒāĻŋāĻ•ā§āϏ⧇āϞ āϰāĻ™āϟāĻŋ āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤ āϏāĻŽā§€āĻ•āϰāĻŖ āĻĻā§āĻŦāĻžāϰāĻž āϏāĻ‚āĻœā§āĻžāĻžāϝāĻŧāĻŋāϤ āĻ•āϰāĻž āĻšāϝāĻŧ:

pixel color = alpha * (this color) + (1.0 - alpha) * (background color)

āĻāϰ āĻŽāĻžāύ⧇ āĻšāϞ⧋, ā§§.ā§Ļ āĻŽāĻžāύāϟāĻŋ āĻāĻ•āϟāĻŋ āύāĻŋāϰ⧇āϟ āϰāĻ™āϕ⧇ āĻŦā§‹āĻāĻžāϝāĻŧ, āϝ⧇āĻ–āĻžāύ⧇ ā§Ļ.ā§Ļ āĻŽāĻžāύāϟāĻŋ āĻāĻ•āϟāĻŋ āϏāĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻ¸ā§āĻŦāĻšā§āĻ› āϰāĻ™āϕ⧇ āĻŦā§‹āĻāĻžāϝāĻŧāĨ¤ āĻāĻ–āĻžāύ⧇ āĻāĻ•āϟāĻŋ āϏāĻžāϧāĻžāϰāĻŖ āĻĢā§āϞ⧋āϟ āĻ¸ā§āϕ⧇āϞāĻžāϰ⧇āϰ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤ⧇ āĻāĻ•āϟāĻŋ āĻ°â€ā§āϝāĻžāĻĒāĻžāϰ āĻŽā§‡āϏ⧇āϜ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āĻšāϝāĻŧ, āϝāĻžāϤ⧇ āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŽāĻžāύ āĻāĻŦāĻ‚ āϏ⧇āϟ āύāĻž āĻ•āϰāĻž āĻŽāĻžāύ⧇āϰ āĻŽāĻ§ā§āϝ⧇ āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āϝ āĻ•āϰāĻž āϏāĻŽā§āĻ­āĻŦ āĻšāϝāĻŧāĨ¤ āϝāĻĻāĻŋ āĻāϟāĻŋ āĻŦāĻžāĻĻ āĻĻ⧇āĻ“āϝāĻŧāĻž āĻšāϝāĻŧ, āϤāĻŦ⧇ āĻāχ āĻ•āĻžāϞāĻžāϰ āĻ…āĻŦāĻœā§‡āĻ•ā§āϟāϟāĻŋ āĻāĻ•āϟāĻŋ āύāĻŋāϰ⧇āϟ āϰāĻ™ āĻšāĻŋāϏāĻžāĻŦ⧇ āϰ⧇āĻ¨ā§āĻĄāĻžāϰ āĻ•āϰāĻž āĻšāϝāĻŧ (āϝ⧇āύ āφāϞāĻĢāĻž āĻŽāĻžāύāϕ⧇ āĻ¸ā§āĻĒāĻˇā§āϟāĻ­āĻžāĻŦ⧇ ā§§.ā§Ļ āĻĻ⧇āĻ“āϝāĻŧāĻž āĻšāϝāĻŧ⧇āϛ⧇)āĨ¤

āĻĒā§āϰāĻ•āĻžāϰ

āϐāĻšā§āĻ›āĻŋāĻ•āĨ¤ āĻŦāĻžāϟāύ⧇āϰ āϧāϰāĻŖ āĨ¤ āϝāĻĻāĻŋ color āĻ•ā§āώ⧇āĻ¤ā§āϰāϟāĻŋ āϏ⧇āϟ āĻ•āϰāĻž āĻĨāĻžāϕ⧇, āϤāĻžāĻšāϞ⧇ type āĻŦāĻžāĻ§ā§āϝāϤāĻžāĻŽā§‚āϞāĻ•āĻ­āĻžāĻŦ⧇ FILLED āĻšāĻŦ⧇āĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ⧇āϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύ⧇āϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āĻĒāϞāĻŦā§āϧāĨ¤

āĻāύāĻžāĻŽ
TYPE_UNSPECIFIED āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻŦ⧇āύ āύāĻžāĨ¤ āĻ…āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟāĨ¤
OUTLINED āφāωāϟāϞāĻžāχāύ āĻ•āϰāĻž āĻŦāĻžāϟāύāϗ⧁āϞ⧋ āĻšāϞ⧋ āĻŽāĻžāĻāĻžāϰāĻŋ āϗ⧁āϰ⧁āĻ¤ā§āĻŦ⧇āϰ āĻŦāĻžāϟāύāĨ¤ āĻāϗ⧁āϞ⧋āϤ⧇ āϏāĻžāϧāĻžāϰāĻŖāϤ āĻāĻŽāύ āϏāĻŦ āĻ…ā§āϝāĻžāĻ•āĻļāύ āĻĨāĻžāϕ⧇ āϝāĻž āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āϕ⧋āύ⧋ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ āĻŦāĻž āĻ…ā§āϝāĻžāĻĄ-āĻ…āύ⧇āϰ āĻĒā§āϰāϧāĻžāύ āĻ…ā§āϝāĻžāĻ•āĻļāύ āύāϝāĻŧāĨ¤
FILLED āĻāĻ•āϟāĻŋ āĻĢāĻŋāĻ˛ā§āĻĄ āĻŦāĻžāϟāύ⧇āϰ āĻ•āĻ¨ā§āĻŸā§‡āχāύāĻžāϰāϟāĻŋ āĻāĻ•āϰāĻ™āĻž āĻšāϝāĻŧāĨ¤ āĻāϰ āĻĻ⧃āĻļā§āϝāĻŽāĻžāύ āĻĒā§āϰāĻ­āĻžāĻŦ āϏāĻŦāĻšā§‡āϝāĻŧ⧇ āĻŦ⧇āĻļāĻŋ āĻāĻŦāĻ‚ āĻāĻ•āϟāĻŋ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ āĻŦāĻž āĻ…ā§āϝāĻžāĻĄ-āĻ…āύ⧇āϰ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ āĻ“ āĻĒā§āϰāϧāĻžāύ āĻ•āĻžāĻœā§‡āϰ āϜāĻ¨ā§āϝ āĻāϟāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻžāϰ āĻĒāϰāĻžāĻŽāĻ°ā§āĻļ āĻĻ⧇āĻ“āϝāĻŧāĻž āĻšāϝāĻŧāĨ¤
FILLED_TONAL āĻāĻ•āϟāĻŋ āĻĢāĻŋāĻ˛ā§āĻĄ āĻŸā§‹āύāĻžāϞ āĻŦāĻžāϟāύ āĻšāϞ⧋ āĻĢāĻŋāĻ˛ā§āĻĄ āĻāĻŦāĻ‚ āφāωāϟāϞāĻžāχāύāĻĄ āĻŦāĻžāϟāύ⧇āϰ āĻŽāĻžāĻāĻžāĻŽāĻžāĻāĻŋ āĻāĻ•āϟāĻŋ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ āĻŦā§āϝāĻŦāĻ¸ā§āĻĨāĻžāĨ¤ āϝ⧇āϏāĻŦ āĻ•ā§āώ⧇āĻ¤ā§āϰ⧇ āĻāĻ•āϟāĻŋ āĻ•āĻŽ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ āĻŦāĻžāϟāύ⧇āϰ āĻ“āĻĒāϰ āφāωāϟāϞāĻžāχāύ āĻŦāĻžāϟāύ⧇āϰ āĻšā§‡āϝāĻŧ⧇ āĻ•āĻŋāϛ⧁āϟāĻž āĻŦ⧇āĻļāĻŋ āĻœā§‹āϰ āĻĻ⧇āĻ“āϝāĻŧāĻžāϰ āĻĒā§āϰāϝāĻŧā§‹āϜāύ āĻšāϝāĻŧ, āϏ⧇āĻ–āĻžāύ⧇ āĻāϗ⧁āϞ⧋ āωāĻĒāϝ⧋āĻ—ā§€āĨ¤
BORDERLESS āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻ…āĻŦāĻ¸ā§āĻĨāĻžāϝāĻŧ āĻāĻ•āϟāĻŋ āĻŦāĻžāϟāύ⧇āϰ āϕ⧋āύ⧋ āĻ…āĻĻ⧃āĻļā§āϝ āĻ•āĻ¨ā§āĻŸā§‡āχāύāĻžāϰ āĻĨāĻžāϕ⧇ āύāĻžāĨ¤ āĻāϟāĻŋ āĻĒā§āϰāĻžāϝāĻŧāĻļāχ āϏāĻ°ā§āĻŦāύāĻŋāĻŽā§āύ āĻ…āĻ—ā§āϰāĻžāϧāĻŋāĻ•āĻžāϰ⧇āϰ āĻ•āĻžāϜāϗ⧁āϞ⧋āϰ āϜāĻ¨ā§āϝ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āĻšāϝāĻŧ, āĻŦāĻŋāĻļ⧇āώ āĻ•āϰ⧇ āϝāĻ–āύ āĻāĻ•āĻžāϧāĻŋāĻ• āĻ…āĻĒāĻļāύ āĻĻ⧇āĻ–āĻžāύ⧋ āĻšāϝāĻŧāĨ¤

āϏ⧁āχāϚāĻ•āĻ¨ā§āĻŸā§āϰ⧋āϞ

āĻāĻ•āϟāĻŋ āϟāĻ—āϞ-āĻ¸ā§āϟāĻžāχāϞ⧇āϰ āϏ⧁āχāϚ āĻ…āĻĨāĻŦāĻž āĻāĻ•āϟāĻŋ decoratedText āωāχāĻœā§‡āĻŸā§‡āϰ āĻ­āĻŋāϤāϰ⧇ āĻĨāĻžāĻ•āĻž āĻāĻ•āϟāĻŋ āĻšā§‡āĻ•āĻŦāĻ•ā§āϏāĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ āĻāĻŦāĻ‚ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤

āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ decoratedText āωāχāĻœā§‡āĻŸā§‡ āϏāĻŽāĻ°ā§āĻĨāĻŋāϤāĨ¤

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "name": string,
  "value": string,
  "selected": boolean,
  "onChangeAction": {
    object (Action)
  },
  "controlType": enum (ControlType)
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
name

string

āĻĢāĻ°ā§āĻŽ āχāύāĻĒ⧁āϟ āχāϭ⧇āĻ¨ā§āĻŸā§‡ āϏ⧁āχāϚ āωāχāĻœā§‡āϟāϟāĻŋ āϝ⧇ āύāĻžāĻŽā§‡ āĻļāύāĻžāĻ•ā§āϤ āĻ•āϰāĻž āĻšāϝāĻŧāĨ¤

āĻĢāĻ°ā§āĻŽ āχāύāĻĒ⧁āϟ āύāĻŋāϝāĻŧ⧇ āĻ•āĻžāϜ āĻ•āϰāĻžāϰ āĻŦāĻŋāĻ¸ā§āϤāĻžāϰāĻŋāϤ āĻŦāĻŋāĻŦāϰāϪ⧇āϰ āϜāĻ¨ā§āϝ, ‘āĻĢāĻ°ā§āĻŽ āĻĄā§‡āϟāĻž āĻ—ā§āϰāĻšāĻŖâ€™ āĻĻ⧇āϖ⧁āύāĨ¤

value

string

āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰ āĻĒā§āϰāĻŦ⧇āĻļ āĻ•āϰāĻžāύ⧋ āĻŽāĻžāύ, āϝāĻž āĻĢāĻ°ā§āĻŽ āχāύāĻĒ⧁āϟ āχāϭ⧇āĻ¨ā§āĻŸā§‡āϰ āĻ…āĻ‚āĻļ āĻšāĻŋāϏ⧇āĻŦ⧇ āĻĢ⧇āϰāϤ āφāϏ⧇āĨ¤

āĻĢāĻ°ā§āĻŽ āχāύāĻĒ⧁āϟ āύāĻŋāϝāĻŧ⧇ āĻ•āĻžāϜ āĻ•āϰāĻžāϰ āĻŦāĻŋāĻ¸ā§āϤāĻžāϰāĻŋāϤ āĻŦāĻŋāĻŦāϰāϪ⧇āϰ āϜāĻ¨ā§āϝ, ‘āĻĢāĻ°ā§āĻŽ āĻĄā§‡āϟāĻž āĻ—ā§āϰāĻšāĻŖâ€™ āĻĻ⧇āϖ⧁āύāĨ¤

selected

boolean

true āĻšāϞ⧇, āϏ⧁āχāϚāϟāĻŋ āύāĻŋāĻ°ā§āĻŦāĻžāϚāĻŋāϤ āĻšāϝāĻŧāĨ¤

onChangeAction

object ( Action )

āϏ⧁āχāĻšā§‡āϰ āĻ…āĻŦāĻ¸ā§āĻĨāĻž āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāĻŋāϤ āĻšāϞ⧇ āϝ⧇ āĻ•āĻžāϜāϟāĻŋ āϏāĻŽā§āĻĒāĻžāĻĻāύ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇, āϝ⧇āĻŽāύ āϕ⧋āύ āĻĢāĻžāĻ‚āĻļāύāϟāĻŋ āϚāĻžāϞāĻžāύ⧋ āĻšāĻŦ⧇āĨ¤

controlType

enum ( ControlType )

āχāωāϜāĻžāϰ āχāĻ¨ā§āϟāĻžāϰāĻĢ⧇āϏ⧇ āϏ⧁āχāϚāϟāĻŋ āϝ⧇āĻ­āĻžāĻŦ⧇ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšāϝāĻŧāĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ āĻāĻŦāĻ‚ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤

āύāĻŋāϝāĻŧāĻ¨ā§āĻ¤ā§āϰāĻŖ āĻĒā§āϰāĻ•āĻžāϰ

āχāωāϜāĻžāϰ āχāĻ¨ā§āϟāĻžāϰāĻĢ⧇āϏ⧇ āϏ⧁āχāϚāϟāĻŋ āϝ⧇āĻ­āĻžāĻŦ⧇ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšāϝāĻŧāĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ āĻāĻŦāĻ‚ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤

āĻāύāĻžāĻŽ
SWITCH āĻāĻ•āϟāĻŋ āϟāĻ—āϞ-āĻ¸ā§āϟāĻžāχāϞ⧇āϰ āϏ⧁āχāϚāĨ¤
CHECKBOX CHECK_BOX āĻāϰ āĻĒā§āϰāϚāϞāύ⧇āϰ āĻ•āĻžāϰāϪ⧇ āĻāϟāĻŋ āĻ…āĻĒā§āϰāϚāϞāĻŋāϤ āĻšāϝāĻŧ⧇ āϗ⧇āϛ⧇āĨ¤
CHECK_BOX āĻāĻ•āϟāĻŋ āĻšā§‡āĻ•āĻŦāĻ•ā§āϏāĨ¤

āĻŦāĻžāϟāύāϞāĻŋāĻ¸ā§āϟ

āφāύ⧁āĻ­ā§‚āĻŽāĻŋāĻ•āĻ­āĻžāĻŦ⧇ āϏāĻžāϜāĻžāύ⧋ āĻŦāĻžāϟāύāϗ⧁āϞāĻŋāϰ āĻāĻ•āϟāĻŋ āϤāĻžāϞāĻŋāĻ•āĻžāĨ¤ āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ⧇ āĻāϰ āĻāĻ•āϟāĻŋ āωāĻĻāĻžāĻšāϰāϪ⧇āϰ āϜāĻ¨ā§āϝ, ‘āĻāĻ•āϟāĻŋ āĻŦāĻžāϟāύ āϝ⧋āĻ— āĻ•āϰ⧁āĻ¨â€™ āĻĻ⧇āϖ⧁āύāĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ āĻāĻŦāĻ‚ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "buttons": [
    {
      object (Button)
    }
  ]
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
buttons[]

object ( Button )

āĻŦā§‹āϤāĻžāĻŽā§‡āϰ āĻāĻ•āϟāĻŋ āϏāĻžāϰāĻŋāĨ¤

āĻŸā§‡āĻ•ā§āϏāϟ āχāύāĻĒ⧁āϟ

āĻāĻ•āϟāĻŋ āĻĢāĻŋāĻ˛ā§āĻĄ āϝ⧇āĻ–āĻžāύ⧇ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰāĻž āĻŸā§‡āĻ•ā§āϏāϟ āϞāĻŋāĻ–āϤ⧇ āĻĒāĻžāϰ⧇āύāĨ¤ āĻāϟāĻŋ āϏāĻžāĻœā§‡āĻļāύ āĻāĻŦāĻ‚ āĻ…āύ-āĻšā§‡āĻžā§āϜ āĻ…ā§āϝāĻžāĻ•āĻļāύ āϏāĻŽāĻ°ā§āĻĨāύ āĻ•āϰ⧇āĨ¤ āĻāϟāĻŋ āĻĢāĻ°ā§āĻŽ āϏāĻžāĻŦāĻŽāĻŋāĻļāύ āĻ­ā§āϝāĻžāϞāĻŋāĻĄā§‡āĻļāύ āϏāĻŽāĻ°ā§āĻĨāύ āĻ•āϰ⧇āĨ¤ āϝāĻ–āύ Action.all_widgets_are_required true āϏ⧇āϟ āĻ•āϰāĻž āĻšāϝāĻŧ āĻ…āĻĨāĻŦāĻž āĻāχ āωāχāĻœā§‡āϟāϟāĻŋ Action.required_widgets āĻ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰāĻž āĻĨāĻžāϕ⧇, āϤāĻ–āύ āϕ⧋āύ⧋ āĻ­ā§āϝāĻžāϞ⧁ āĻĒā§āϰāĻŦ⧇āĻļ āύāĻž āĻ•āϰāĻž āĻĒāĻ°ā§āϝāĻ¨ā§āϤ āϏāĻžāĻŦāĻŽāĻŋāĻļāύ āĻ…ā§āϝāĻžāĻ•āĻļāύāϟāĻŋ āĻŦā§āϞāĻ• āĻ•āϰāĻž āĻĨāĻžāϕ⧇āĨ¤ āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ⧇ āĻāĻ•āϟāĻŋ āωāĻĻāĻžāĻšāϰāϪ⧇āϰ āϜāĻ¨ā§āϝ, “Add a field in which a user can enter text” āĻĻ⧇āϖ⧁āύāĨ¤

āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒāϗ⧁āϞ⧋ āĻĢāĻ°ā§āĻŽ āχāύāĻĒ⧁āϟ āχāϭ⧇āĻ¨ā§āĻŸā§‡āϰ āϏāĻŽāϝāĻŧ āĻĒā§āϰāĻŦ⧇āĻļ āĻ•āϰāĻžāύ⧋ āĻŸā§‡āĻ•ā§āϏāĻŸā§‡āϰ āĻŽāĻžāύ āĻ—ā§āϰāĻšāĻŖ āĻ“ āĻĒā§āϰāĻ•ā§āϰāĻŋāϝāĻŧāĻž āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤ āĻĢāĻ°ā§āĻŽ āχāύāĻĒ⧁āϟ āύāĻŋāϝāĻŧ⧇ āĻ•āĻžāϜ āĻ•āϰāĻžāϰ āĻŦāĻŋāώāϝāĻŧ⧇ āĻŦāĻŋāĻ¸ā§āϤāĻžāϰāĻŋāϤ āϜāĻžāύāϤ⧇, ‘āĻĢāĻ°ā§āĻŽ āĻĄā§‡āϟāĻž āĻ—ā§āϰāĻšāĻŖâ€™ āĻĻ⧇āϖ⧁āύāĨ¤

āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āĻĻ⧇āϰ āĻ•āĻžāĻ› āĻĨ⧇āϕ⧇ āĻ…āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻŦāĻž āĻŦāĻŋāĻŽā§‚āĻ°ā§āϤ āĻĄā§‡āϟāĻž āϏāĻ‚āĻ—ā§āϰāĻš āĻ•āϰāĻžāϰ āĻĒā§āϰāϝāĻŧā§‹āϜāύ āĻšāϞ⧇, āĻŸā§‡āĻ•ā§āϏāϟ āχāύāĻĒ⧁āϟ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧁āύāĨ¤ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āĻĻ⧇āϰ āĻ•āĻžāĻ› āĻĨ⧇āϕ⧇ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻŦāĻž āĻ—āĻŖāύāĻžāϝ⧋āĻ—ā§āϝ āĻĄā§‡āϟāĻž āϏāĻ‚āĻ—ā§āϰāĻš āĻ•āϰāϤ⧇, SelectionInput āωāχāĻœā§‡āϟāϟāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧁āύāĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ āĻāĻŦāĻ‚ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "name": string,
  "label": string,
  "hintText": string,
  "value": string,
  "type": enum (Type),
  "onChangeAction": {
    object (Action)
  },
  "initialSuggestions": {
    object (Suggestions)
  },
  "autoCompleteAction": {
    object (Action)
  },
  "validation": {
    object (Validation)
  },
  "placeholderText": string,

  "hostAppDataSource": {
    object (HostAppDataSourceMarkup)
  }
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
name

string

āĻĢāĻ°ā§āĻŽ āχāύāĻĒ⧁āϟ āχāϭ⧇āĻ¨ā§āĻŸā§‡ āĻŸā§‡āĻ•ā§āϏāϟ āχāύāĻĒ⧁āϟāϟāĻŋ āϝ⧇ āύāĻžāĻŽā§‡ āĻļāύāĻžāĻ•ā§āϤ āĻ•āϰāĻž āĻšāϝāĻŧāĨ¤

āĻĢāĻ°ā§āĻŽ āχāύāĻĒ⧁āϟ āύāĻŋāϝāĻŧ⧇ āĻ•āĻžāϜ āĻ•āϰāĻžāϰ āĻŦāĻŋāĻ¸ā§āϤāĻžāϰāĻŋāϤ āĻŦāĻŋāĻŦāϰāϪ⧇āϰ āϜāĻ¨ā§āϝ, ‘āĻĢāĻ°ā§āĻŽ āĻĄā§‡āϟāĻž āĻ—ā§āϰāĻšāĻŖâ€™ āĻĻ⧇āϖ⧁āύāĨ¤

label

string

āχāωāϜāĻžāϰ āχāĻ¨ā§āϟāĻžāϰāĻĢ⧇āϏ⧇ āĻŸā§‡āĻ•ā§āϏāϟ āχāύāĻĒ⧁āϟ āĻĢāĻŋāĻ˛ā§āĻĄā§‡āϰ āωāĻĒāϰ⧇ āϝ⧇ āϞ⧇āĻ–āĻžāϟāĻŋ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšāϝāĻŧāĨ¤

āĻāĻŽāύ āĻŸā§‡āĻ•ā§āϏāϟ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰ⧁āύ āϝāĻž āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϕ⧇ āφāĻĒāύāĻžāϰ āĻ…ā§āϝāĻžāĻĒ⧇āϰ āĻĒā§āϰāϝāĻŧā§‹āϜāύ⧀āϝāĻŧ āϤāĻĨā§āϝ āĻĒā§āϰāĻŦ⧇āĻļ āĻ•āϰāĻžāϤ⧇ āϏāĻžāĻšāĻžāĻ¯ā§āϝ āĻ•āϰāĻŦ⧇āĨ¤ āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āϝāĻĻāĻŋ āφāĻĒāύāĻŋ āĻ•āĻžāϰāĻ“ āύāĻžāĻŽ āϜāĻžāύāϤ⧇ āϚāĻžāύ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āĻŦāĻŋāĻļ⧇āώāĻ­āĻžāĻŦ⧇ āϤāĻžāϰ āĻĒāĻĻāĻŦāĻŋ āĻĒā§āϰāϝāĻŧā§‹āϜāύ āĻšāϝāĻŧ, āϤāĻžāĻšāϞ⧇ name āĻāϰ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤ⧇ surname āϞāĻŋāϖ⧁āύāĨ¤

hintText āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰāĻž āύāĻž āĻĨāĻžāĻ•āϞ⧇ āĻāϟāĻŋ āφāĻŦāĻļā§āϝāĻ•āĨ¤ āĻ…āĻ¨ā§āϝāĻĨāĻžāϝāĻŧ, āĻāϟāĻŋ āϐāĻšā§āĻ›āĻŋāĻ•āĨ¤

hintText

string

āĻŸā§‡āĻ•ā§āϏāϟ āχāύāĻĒ⧁āϟ āĻĢāĻŋāĻ˛ā§āĻĄā§‡āϰ āύāĻŋāĻšā§‡ āϝ⧇ āϞ⧇āĻ–āĻžāϟāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āĻĻ⧇āϰ āĻāĻ•āϟāĻŋ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻŽāĻžāύ āĻĒā§āϰāĻŦ⧇āĻļ āĻ•āϰāĻžāϤ⧇ āϏāĻžāĻšāĻžāĻ¯ā§āϝ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšāϝāĻŧāĨ¤ āĻāχ āϞ⧇āĻ–āĻžāϟāĻŋ āϏāĻ°ā§āĻŦāĻĻāĻž āĻĻ⧃āĻļā§āϝāĻŽāĻžāύ āĻĨāĻžāϕ⧇āĨ¤

label āĻ…āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻĨāĻžāĻ•āϞ⧇ āφāĻŦāĻļā§āϝāĻ•āĨ¤ āĻ…āĻ¨ā§āϝāĻĨāĻžāϝāĻŧ, āϐāĻšā§āĻ›āĻŋāĻ•āĨ¤

value

string

āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰ āĻĒā§āϰāĻŦ⧇āĻļ āĻ•āϰāĻžāύ⧋ āĻŽāĻžāύ, āϝāĻž āĻĢāĻ°ā§āĻŽ āχāύāĻĒ⧁āϟ āχāϭ⧇āĻ¨ā§āĻŸā§‡āϰ āĻ…āĻ‚āĻļ āĻšāĻŋāϏ⧇āĻŦ⧇ āĻĢ⧇āϰāϤ āφāϏ⧇āĨ¤

āĻĢāĻ°ā§āĻŽ āχāύāĻĒ⧁āϟ āύāĻŋāϝāĻŧ⧇ āĻ•āĻžāϜ āĻ•āϰāĻžāϰ āĻŦāĻŋāĻ¸ā§āϤāĻžāϰāĻŋāϤ āĻŦāĻŋāĻŦāϰāϪ⧇āϰ āϜāĻ¨ā§āϝ, ‘āĻĢāĻ°ā§āĻŽ āĻĄā§‡āϟāĻž āĻ—ā§āϰāĻšāĻŖâ€™ āĻĻ⧇āϖ⧁āύāĨ¤

type

enum ( Type )

āχāωāϜāĻžāϰ āχāĻ¨ā§āϟāĻžāϰāĻĢ⧇āϏ⧇ āĻāĻ•āϟāĻŋ āĻŸā§‡āĻ•ā§āϏāϟ āχāύāĻĒ⧁āϟ āĻĢāĻŋāĻ˛ā§āĻĄ āϕ⧀āĻ­āĻžāĻŦ⧇ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšāϝāĻŧāĨ¤ āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āĻĢāĻŋāĻ˛ā§āĻĄāϟāĻŋ āĻāĻ•-āϞāĻžāχāύ⧇āϰ āύāĻžāĻ•āĻŋ āĻŦāĻšā§-āϞāĻžāχāύ⧇āϰāĨ¤

onChangeAction

object ( Action )

āĻŸā§‡āĻ•ā§āϏāϟ āχāύāĻĒ⧁āϟ āĻĢāĻŋāĻ˛ā§āĻĄā§‡ āϕ⧋āύ⧋ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āϘāϟāϞ⧇ āϕ⧀ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇āĨ¤ āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀ āĻĢāĻŋāĻ˛ā§āĻĄāϟāĻŋāϤ⧇ āĻ•āĻŋāϛ⧁ āϝ⧋āĻ— āĻ•āϰāϞ⧇ āĻŦāĻž āĻŸā§‡āĻ•ā§āϏāϟ āĻŽā§āϛ⧇ āĻĢ⧇āϞāϞ⧇āĨ¤

āϝ⧇āϏāĻŦ āĻ•āĻžāϜ āĻ•āϰāĻž āϝ⧇āϤ⧇ āĻĒāĻžāϰ⧇ āϤāĻžāϰ āωāĻĻāĻžāĻšāϰāĻŖ āĻšāϞ⧋ āĻāĻ•āϟāĻŋ āĻ•āĻžāĻ¸ā§āϟāĻŽ āĻĢāĻžāĻ‚āĻļāύ āϚāĻžāϞāĻžāύ⧋ āĻ…āĻĨāĻŦāĻž āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāĻŸā§‡ āĻāĻ•āϟāĻŋ āĻĄāĻžāϝāĻŧāĻžāϞāĻ— āĻ–ā§‹āϞāĻžāĨ¤

initialSuggestions

object ( Suggestions )

āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰāĻž āĻĒā§āϰāĻŦ⧇āĻļ āĻ•āϰāĻžāϤ⧇ āĻĒāĻžāϰ⧇āύ āĻāĻŽāύ āĻĒā§āϰāĻ¸ā§āϤāĻžāĻŦāĻŋāϤ āĻŽāĻžāύāĨ¤ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰāĻž āĻŸā§‡āĻ•ā§āϏāϟ āχāύāĻĒ⧁āϟ āĻĢāĻŋāĻ˛ā§āĻĄā§‡āϰ āϭ⧇āϤāϰ⧇ āĻ•ā§āϞāĻŋāĻ• āĻ•āϰāϞ⧇ āĻāχ āĻŽāĻžāύāϗ⧁āϞ⧋ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšāϝāĻŧāĨ¤ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰāĻž āϟāĻžāχāĻĒ āĻ•āϰāĻžāϰ āϏāĻžāĻĨ⧇ āϏāĻžāĻĨ⧇, āĻĒā§āϰāĻ¸ā§āϤāĻžāĻŦāĻŋāϤ āĻŽāĻžāύāϗ⧁āϞ⧋ āϤāĻžāĻĻ⧇āϰ āϟāĻžāχāĻĒ āĻ•āϰāĻž āϞ⧇āĻ–āĻžāϰ āϏāĻžāĻĨ⧇ āĻŽāĻŋāϞāĻŋāϝāĻŧ⧇ āĻ¸ā§āĻŦāϝāĻŧāĻ‚āĻ•ā§āϰāĻŋāϝāĻŧāĻ­āĻžāĻŦ⧇ āĻĢāĻŋāĻ˛ā§āϟāĻžāϰ āĻšāϝāĻŧ⧇ āϝāĻžāϝāĻŧāĨ¤

āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āĻĒā§āϰ⧋āĻ—ā§āϰāĻžāĻŽāĻŋāĻ‚ āĻ­āĻžāώāĻžāϰ āϜāĻ¨ā§āϝ āĻāĻ•āϟāĻŋ āĻŸā§‡āĻ•ā§āϏāϟ āχāύāĻĒ⧁āϟ āĻĢāĻŋāĻ˛ā§āĻĄā§‡ Java, JavaScript, Python, āĻāĻŦāĻ‚ C++ āĻāϰ āĻŽāϤ⧋ āĻ­āĻžāώāĻž āϏāĻžāĻœā§‡āĻ¸ā§āϟ āĻ•āϰāĻž āĻšāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤ āϝāĻ–āύ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰāĻž Jav āϟāĻžāχāĻĒ āĻ•āϰāĻž āĻļ⧁āϰ⧁ āĻ•āϰ⧇āύ, āϤāĻ–āύ āϏāĻžāĻœā§‡āĻļāύ⧇āϰ āϤāĻžāϞāĻŋāĻ•āĻžāϟāĻŋ āĻĢāĻŋāĻ˛ā§āϟāĻžāϰ āĻšāϝāĻŧ⧇ āĻļ⧁āϧ⧁ Java āĻāĻŦāĻ‚ JavaScript āĻĻ⧇āĻ–āĻžāϝāĻŧāĨ¤

āĻĒā§āϰāĻ¸ā§āϤāĻžāĻŦāĻŋāϤ āĻŽāĻžāύ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āĻĻ⧇āϰ āĻāĻŽāύ āĻŽāĻžāύ āĻĒā§āϰāĻŦ⧇āĻļ āĻ•āϰāĻžāϤ⧇ āϏāĻžāĻšāĻžāĻ¯ā§āϝ āĻ•āϰ⧇ āϝāĻž āφāĻĒāύāĻžāϰ āĻ…ā§āϝāĻžāĻĒ āĻŦ⧁āĻāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤ āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āϟ āωāĻ˛ā§āϞ⧇āĻ– āĻ•āϰāĻžāϰ āϏāĻŽāϝāĻŧ, āĻ•āĻŋāϛ⧁ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀ javascript āϞāĻŋāĻ–āϤ⧇ āĻĒāĻžāϰ⧇āύ āĻāĻŦāĻ‚ āĻ…āĻ¨ā§āϝāϰāĻž java script āĨ¤ JavaScript āĻĒā§āϰāĻ¸ā§āϤāĻžāĻŦ āĻ•āϰāĻž āĻšāϞ⧇, āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰāĻž āφāĻĒāύāĻžāϰ āĻ…ā§āϝāĻžāĻĒ⧇āϰ āϏāĻžāĻĨ⧇ āϕ⧀āĻ­āĻžāĻŦ⧇ āĻ•āĻžāϜ āĻ•āϰāĻŦ⧇ āϤāĻžāϰ āĻāĻ•āϟāĻŋ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻŽāĻžāύ āύāĻŋāĻ°ā§āϧāĻžāϰāĻŖ āĻ•āϰāĻž āϏāĻŽā§āĻ­āĻŦ āĻšāϝāĻŧāĨ¤

āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰāĻž āĻšāϞ⧇, TextInput.type āϏāĻ°ā§āĻŦāĻĻāĻž SINGLE_LINE āĻšāϝāĻŧ, āĻāĻŽāύāĻ•āĻŋ āϝāĻĻāĻŋ āϤāĻž MULTIPLE_LINE āĻ āϏ⧇āϟ āĻ•āϰāĻž āĻĨāĻžāϕ⧇āĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ āĻāĻŦāĻ‚ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤

autoCompleteAction

object ( Action )

āϐāĻšā§āĻ›āĻŋāĻ•āĨ¤ āĻŸā§‡āĻ•ā§āϏāϟ āχāύāĻĒ⧁āϟ āĻĢāĻŋāĻ˛ā§āĻĄāϟāĻŋ āϝāĻ–āύ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āĻĻ⧇āϰ āϏāĻžāĻĨ⧇ āχāĻ¨ā§āϟāĻžāϰāĻ…ā§āϝāĻžāĻ•ā§āϟ āĻ•āϰ⧇ āϏāĻžāĻœā§‡āĻļāύ āĻĒā§āϰāĻĻāĻžāύ āĻ•āϰ⧇, āϤāĻ–āύ āϕ⧀ āĻĒāĻĻāĻ•ā§āώ⧇āĻĒ āύ⧇āĻ“āϝāĻŧāĻž āĻšāĻŦ⧇ āϤāĻž āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰ⧁āύāĨ¤

āĻ…āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻĨāĻžāĻ•āϞ⧇, āĻĒāϰāĻžāĻŽāĻ°ā§āĻļāϗ⧁āϞāĻŋ initialSuggestions āĻĻā§āĻŦāĻžāϰāĻž āύāĻŋāĻ°ā§āϧāĻžāϰāĻŋāϤ āĻšāϝāĻŧ āĻāĻŦāĻ‚ āĻ•ā§āϞāĻžāϝāĻŧ⧇āĻ¨ā§āϟ āĻĻā§āĻŦāĻžāϰāĻž āĻĒā§āϰāĻ•ā§āϰāĻŋāϝāĻŧāĻžāĻ•ā§ƒāϤ āĻšāϝāĻŧāĨ¤

āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰāĻž āĻĨāĻžāĻ•āϞ⧇, āĻ…ā§āϝāĻžāĻĒāϟāĻŋ āĻāĻ–āĻžāύ⧇ āωāĻ˛ā§āϞ⧇āĻ–āĻŋāϤ āĻ•āĻžāϜāϟāĻŋ āĻ—ā§āϰāĻšāĻŖ āĻ•āϰ⧇, āϝ⧇āĻŽāύ āĻāĻ•āϟāĻŋ āĻ•āĻžāĻ¸ā§āϟāĻŽ āĻĢāĻžāĻ‚āĻļāύ āϚāĻžāϞāĻžāύ⧋āĨ¤

āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āĻĒāϞāĻŦā§āϧāĨ¤

validation

object ( Validation )

āĻāχ āĻŸā§‡āĻ•ā§āϏāϟ āĻĢāĻŋāĻ˛ā§āĻĄā§‡āϰ āϜāĻ¨ā§āϝ āĻĒā§āϰāϝāĻŧā§‹āϜāύ⧀āϝāĻŧ āχāύāĻĒ⧁āϟ āĻĢāϰāĻŽā§āϝāĻžāϟ āĻ­ā§āϝāĻžāϞāĻŋāĻĄā§‡āĻļāύ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰ⧁āύāĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ āĻāĻŦāĻ‚ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤

placeholderText

string

āĻŸā§‡āĻ•ā§āϏāϟ āχāύāĻĒ⧁āϟ āĻĢāĻŋāĻ˛ā§āĻĄāϟāĻŋ āĻ–āĻžāϞāĻŋ āĻĨāĻžāĻ•āϞ⧇ āϝ⧇ āϞ⧇āĻ–āĻžāϟāĻŋ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšāϝāĻŧāĨ¤ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āĻĻ⧇āϰ āĻāĻ•āϟāĻŋ āĻŽāĻžāύ āĻĒā§āϰāĻŦ⧇āĻļ āĻ•āϰāĻžāϤ⧇ āĻŦāϞāĻžāϰ āϜāĻ¨ā§āϝ āĻāχ āϞ⧇āĻ–āĻžāϟāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧁āύāĨ¤ āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, Enter a number from 0 to 100 āĨ¤

āϗ⧁āĻ—āϞ āĻšā§āϝāĻžāϟ āĻ…ā§āϝāĻžāĻĒ⧇āϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āϗ⧁āĻ—āϞ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύ⧇āϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āĻĒāϞāĻŦā§āϧāĨ¤

Union field data_source .

data_source can be only one of the following:

hostAppDataSource

object ( HostAppDataSourceMarkup )

A data source that's unique to a Google Workspace host application, such as Gmail emails, Google Calendar events, or Google Chat messages.

Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.

āĻĒā§āϰāĻ•āĻžāϰ

How a text input field appears in the user interface. For example, whether it's a single line input field, or a multi-line input. If initialSuggestions is specified, type is always SINGLE_LINE , even if it's set to MULTIPLE_LINE .

Available for Google Chat apps and Google Workspace add-ons.

āĻāύāĻžāĻŽ
SINGLE_LINE The text input field has a fixed height of one line.
MULTIPLE_LINE The text input field has a fixed height of multiple lines.

RenderActions

A set of render instructions that tells a card to perform an action, or tells the add-on host app or the Chat app to perform an app-specific action.

Available for Google Chat apps and Google Workspace add-ons.

āĻ•ā§āώ⧇āĻ¤ā§āϰ
action

Action

āĻĒāĻĻāĻ•ā§āώ⧇āĻĒ

āĻ•ā§āώ⧇āĻ¤ā§āϰ
navigations[]

Navigation

Pushes, pops, or updates a card.

Add-ons in Google Chat .

Add a new card to the stack (navigate forward). For Chat apps, only available for app home .

Available for Google Chat apps and Google Workspace add-ons.

navigations: {
  pushCard: CARD
}

Replace the top card with a new card. For Chat apps, only available for app home .

Available for Google Chat apps and Google Workspace add-ons.

navigations: {
  updateCard: CARD
}

āĻĒāϰāĻžāĻŽāĻ°ā§āĻļ

Suggested values that users can enter. These values appear when users click inside the text input field. As users type, the suggested values dynamically filter to match what the users have typed.

For example, a text input field for programming language might suggest Java, JavaScript, Python, and C++. When users start typing Jav , the list of suggestions filters to show Java and JavaScript .

Suggested values help guide users to enter values that your app can make sense of. When referring to JavaScript, some users might enter javascript and others java script . Suggesting JavaScript can standardize how users interact with your app.

When specified, TextInput.type is always SINGLE_LINE , even if it's set to MULTIPLE_LINE .

Available for Google Chat apps and Google Workspace add-ons.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "items": [
    {
      object (SuggestionItem)
    }
  ]
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
items[]

object ( SuggestionItem )

A list of suggestions used for autocomplete recommendations in text input fields.

SuggestionItem

One suggested value that users can enter in a text input field.

Available for Google Chat apps and Google Workspace add-ons.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{

  "text": string
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ

Union field content .

content can be only one of the following:

text

string

The value of a suggested input to a text input field. This is equivalent to what users enter themselves.

Validation

Represents the necessary data for validating the widget it's attached to.

Available for Google Chat apps and Google Workspace add-ons.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "characterLimit": integer,
  "inputType": enum (InputType)
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
characterLimit

integer

Specify the character limit for text input widgets. Note that this is only used for text input and is ignored for other widgets.

Available for Google Chat apps and Google Workspace add-ons.

inputType

enum ( InputType )

Specify the type of the input widgets.

Available for Google Chat apps and Google Workspace add-ons.

InputType

The type of the input widget.

āĻāύāĻžāĻŽ
INPUT_TYPE_UNSPECIFIED Unspecified type. Do not use.
TEXT Regular text that accepts all characters.
INTEGER An integer value.
FLOAT A float value.
EMAIL An email address.
EMOJI_PICKER A emoji selected from system-provided emoji picker.

HostAppDataSourceMarkup

A data source from a Google Workspace application. The data source populates available items for a widget.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{

  "chatDataSource": {
    object (ChatClientDataSourceMarkup)
  },
  "workflowDataSource": {
    object (WorkflowDataSourceMarkup)
  }
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
Union field data_source . The Google Workspace application that populates available items for a widget. data_source can be only one of the following:
chatDataSource

object ( ChatClientDataSourceMarkup )

A data source from Google Chat.

workflowDataSource

object ( WorkflowDataSourceMarkup )

A data source from Google Workflow.

ChatClientDataSourceMarkup

For a SelectionInput widget that uses a multiselect menu, a data source from Google Chat. The data source populates selection items for the multiselect menu. For example, a user can select Google Chat spaces that they're a member of.

Available for Google Chat apps and unavailable for Google Workspace add-ons.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{

  "spaceDataSource": {
    object (SpaceDataSource)
  }
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
Union field source . The Google Chat data source. source can be only one of the following:
spaceDataSource

object ( SpaceDataSource )

Google Chat spaces that the user is a member of.

SpaceDataSource

A data source that populates Google Chat spaces as selection items for a multiselect menu. Only populates spaces that the user is a member of.

Available for Google Chat apps and unavailable for Google Workspace add-ons.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "defaultToCurrentSpace": boolean
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
defaultToCurrentSpace

boolean

If set to true , the multiselect menu selects the current Google Chat space as an item by default.

WorkflowDataSourceMarkup

* Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons.

In a TextInput or SelectionInput widget with MULTI_SELECT type or a DateTimePicker , provide data source from Google.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "includeVariables": boolean,
  "type": enum (Type)
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
includeVariables

boolean

Whether to include variables from the previous step in the data source.

type

enum ( Type )

The type of data source.

āĻĒā§āϰāĻ•āĻžāϰ

An enum that represents the type of the workflow data source.

āĻāύāĻžāĻŽ
UNKNOWN Default value. Don't use.
USER Google Workspace users. The user can only view and select users from their Google Workspace organization.
SPACE Google Chat spaces that the user is a member of.
USER_WITH_FREE_FORM Users can choose to view and select existing members from their Google Workspace organization or manually enter an email address or a valid domain.

SelectionInput

A widget that creates one or more UI items that users can select. Supports form submission validation for dropdown and multiselect menus only. When Action.all_widgets_are_required is set to true or this widget is specified in Action.required_widgets , the submission action is blocked unless a value is selected. For example, a dropdown menu or checkboxes. You can use this widget to collect data that can be predicted or enumerated. For an example in Google Chat apps, see Add selectable UI elements .

Chat apps can process the value of items that users select or input. For details about working with form inputs, see Receive form data .

To collect undefined or abstract data from users, use the TextInput widget.

Available for Google Chat apps and Google Workspace add-ons.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "name": string,
  "label": string,
  "type": enum (SelectionType),
  "items": [
    {
      object (SelectionItem)
    }
  ],
  "onChangeAction": {
    object (Action)
  },
  "multiSelectMinQueryLength": integer,
  "dataSourceConfigs": [
    {
      object (DataSourceConfig)
    }
  ],
  "multiSelectMaxSelectedItems": integer,
  "hintText": string,

  "externalDataSource": {
    object (Action)
  },
  "platformDataSource": {
    object (PlatformDataSource)
  }
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
name

string

Required. The name that identifies the selection input in a form input event.

For details about working with form inputs, see Receive form data .

label

string

The text that appears above the selection input field in the user interface.

Specify text that helps the user enter the information your app needs. For example, if users are selecting the urgency of a work ticket from a drop-down menu, the label might be "Urgency" or "Select urgency".

type

enum ( SelectionType )

The type of items that are displayed to users in a SelectionInput widget. Selection types support different types of interactions. For example, users can select one or more checkboxes, but they can only select one value from a dropdown menu.

items[]

object ( SelectionItem )

An array of selectable items. For example, an array of radio buttons or checkboxes. Supports up to 100 items.

onChangeAction

object ( Action )

If specified, the form is submitted when the selection changes. If not specified, you must specify a separate button that submits the form.

For details about working with form inputs, see Receive form data .

multiSelectMinQueryLength

integer

For multiselect menus, the number of text characters that a user inputs before the menu returns suggested selection items.

If unset, the multiselect menu uses the following default values:

  • If the menu uses a static array of SelectionInput items, defaults to 0 characters and immediately populates items from the array.
  • If the menu uses a dynamic data source ( multi_select_data_source ), defaults to 3 characters before querying the data source to return suggested items.
dataSourceConfigs[]

object ( DataSourceConfig )

Optional. The data source configs for the selection control. This field provides more fine-grained control over the data source.

If specified, the multiSelectMaxSelectedItems field, multiSelectMinQueryLength field, externalDataSource field and platformDataSource field are ignored.

Available for Google Workspace add-ons that extend Google Workspace Studio.

Available for the Dropdown widget in Google Chat apps. For the Dropdown widget in Google Chat apps, only one DataSourceConfig is supported. If multiple DataSourceConfig s are set, only the first one is used.

multiSelectMaxSelectedItems

integer

For multiselect menus, the maximum number of items that a user can select. Minimum value is 1 item. If unspecified, defaults to 3 items.

hintText

string

Optional. Text that appears below the selection input field meant to assist users by prompting them to enter a certain value. This text is always visible.

Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.

Union field multi_select_data_source . For a multiselect menu, a data source that dynamically populates selection items.

Available for Google Chat apps and unavailable for Google Workspace add-ons. multi_select_data_source can be only one of the following:

externalDataSource

object ( Action )

An external data source, such as a relational database.

platformDataSource

object ( PlatformDataSource )

A data source from Google Workspace.

SelectionType

The format for the items that users can select. Different options support different types of interactions. For example, users can select multiple checkboxes, but can only select one item from a dropdown menu.

Each selection input supports one type of selection. Mixing checkboxes and switches, for example, isn't supported.

Available for Google Chat apps and Google Workspace add-ons.

āĻāύāĻžāĻŽ
CHECK_BOX A set of checkboxes. Users can select one or more checkboxes.
RADIO_BUTTON A set of radio buttons. Users can select one radio button.
SWITCH A set of switches. Users can turn on one or more switches.
DROPDOWN

A dropdown menu. Users can select one item from the menu.

For Google Chat apps, you can populate items using a dynamic data source and autosuggest items as users type in the menu. For example, users can start typing the name of a Google Chat space and the widget autosuggests the space. To dynamically populate items for a dropdown menu, use one of the following types of data sources:

  • Google Workspace data: Items are populated using data from Google Workspace, such as Google Workspace users or Google Chat spaces.
  • External data: Items are populated from an external data source outside of Google Workspace.

For examples of how to implement dropdown menus for Chat apps, see Add a dropdown menu and Dynamically populate drop-down menus .

Available for Google Chat apps and Google Workspace add-ons.

MULTI_SELECT

A menu with a text box. Users can type and select one or more items. For Google Workspace add-ons, you must populate items using a static array of SelectionItem objects.

For Google Chat apps, you can also populate items using a dynamic data source and autosuggest items as users type in the menu. For example, users can start typing the name of a Google Chat space and the widget autosuggests the space. To dynamically populate items for a multiselect menu, use one of the following types of data sources:

  • Google Workspace data: Items are populated using data from Google Workspace, such as Google Workspace users or Google Chat spaces.
  • External data: Items are populated from an external data source outside of Google Workspace.

For examples of how to implement multiselect menus for Chat apps, see Add a multiselect menu .

Available for Google Chat apps and Google Workspace add-ons.

SelectionItem

An item that users can select in a selection input, such as a checkbox or switch. Supports up to 100 items.

Available for Google Chat apps and Google Workspace add-ons.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "text": string,
  "value": string,
  "selected": boolean,
  "bottomText": string,

  "startIconUri": string
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
text

string

The text that identifies or describes the item to users.

value

string

The value associated with this item. The client should use this as a form input value.

For details about working with form inputs, see Receive form data .

selected

boolean

Whether the item is selected by default. If the selection input only accepts one value (such as for radio buttons or a dropdown menu), only set this field for one item.

bottomText

string

For multiselect menus, a text description or label that's displayed below the item's text field.

Union field start_icon . For multiselect menus, the URL for the icon displayed next to the item's text field. Supports PNG and JPEG files. Must be an HTTPS URL. For example, https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png . start_icon can be only one of the following:
startIconUri

string

PlatformDataSource

For a SelectionInput widget that uses a multiselect menu, a data source from Google Workspace. Used to populate items in a multiselect menu.

Available for Google Chat apps and unavailable for Google Workspace add-ons.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{

  "commonDataSource": enum (CommonDataSource),
  "hostAppDataSource": {
    object (HostAppDataSourceMarkup)
  }
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
Union field data_source . The data source. data_source can be only one of the following:
commonDataSource

enum ( CommonDataSource )

A data source shared by all Google Workspace applications, such as users in a Google Workspace organization.

hostAppDataSource

object ( HostAppDataSourceMarkup )

A data source that's unique to a Google Workspace host application, such spaces in Google Chat.

This field supports the Google API Client Libraries but isn't available in the Cloud Client Libraries. To learn more, see Install the client libraries .

CommonDataSource

A data source shared by all Google Workspace applications .

Available for Google Chat apps and unavailable for Google Workspace add-ons.

āĻāύāĻžāĻŽ
UNKNOWN Default value. Don't use.
USER Google Workspace users. The user can only view and select users from their Google Workspace organization.

DataSourceConfig

A configuration object that helps configure the data sources for a widget.

Available for Google Chat apps and Google Workspace add-ons that extend Google Workspace Studio.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{

  "remoteDataSource": {
    object (Action)
  },
  "platformDataSource": {
    object (PlatformDataSource)
  }
  "minCharactersTrigger": integer
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
Union field data_source . The data source. data_source can be only one of the following:
remoteDataSource

object ( Action )

The data is from a remote data provider.

platformDataSource

object ( PlatformDataSource )

The data is from a Google Workspace application.

minCharactersTrigger

integer

The minimum number of characters the user must enter before this data provider is triggered (ie, before it starts returning results).

DateTimePicker

Lets users input a date, a time, or both a date and a time. Supports form submission validation. When Action.all_widgets_are_required is set to true or this widget is specified in Action.required_widgets , the submission action is blocked unless a value is selected. For an example in Google Chat apps, see Let a user pick a date and time .

Users can input text or use the picker to select dates and times. If users input an invalid date or time, the picker shows an error that prompts users to input the information correctly.

Available for Google Chat apps and Google Workspace add-ons.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "name": string,
  "label": string,
  "type": enum (DateTimePickerType),
  "valueMsEpoch": string,
  "timezoneOffsetDate": integer,
  "onChangeAction": {
    object (Action)
  },

  "hostAppDataSource": {
    object (HostAppDataSourceMarkup)
  }
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
name

string

The name by which the DateTimePicker is identified in a form input event.

For details about working with form inputs, see Receive form data .

label

string

The text that prompts users to input a date, a time, or a date and time. For example, if users are scheduling an appointment, use a label such as Appointment date or Appointment date and time .

type

enum ( DateTimePickerType )

Whether the widget supports inputting a date, a time, or the date and time.

valueMsEpoch

string ( int64 format)

The default value displayed in the widget, in milliseconds since Unix epoch time .

Specify the value based on the type of picker ( DateTimePickerType ):

  • DATE_AND_TIME : a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use 1672574400000 .
  • DATE_ONLY : a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use 1672531200000 .
  • TIME_ONLY : a time in UTC. For example, to represent 12:00 PM, use 43200000 (or 12 * 60 * 60 * 1000 ).
timezoneOffsetDate

integer

The number representing the time zone offset from UTC, in minutes. If set, the valueMsEpoch is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.

onChangeAction

object ( Action )

Triggered when the user clicks Save or Clear from the DateTimePicker interface.

Union field data_source . The data source specified to represent a date and time. data_source can be only one of the following:
hostAppDataSource

object ( HostAppDataSourceMarkup )

A data source that's unique to a Google Workspace host application, such as Gmail emails, Google Calendar events, or Google Chat messages.

Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.

DateTimePickerType

The format for the date and time in the DateTimePicker widget. Determines whether users can input a date, a time, or both a date and time.

Available for Google Chat apps and Google Workspace add-ons.

āĻāύāĻžāĻŽ
DATE_AND_TIME Users input a date and time.
DATE_ONLY Users input a date.
TIME_ONLY Users input a time.

Divider

This type has no fields.

Displays a divider between widgets as a horizontal line. For an example in Google Chat apps, see Add a horizontal divider between widgets .

Available for Google Chat apps and Google Workspace add-ons.

For example, the following JSON creates a divider:

"divider": {}

Grid

Displays a grid with a collection of items. Items can only include text or images. For responsive columns, or to include more than text or images, use Columns . For an example in Google Chat apps, see Display a Grid with a collection of items .

A grid supports any number of columns and items. The number of rows is determined by items divided by columns. A grid with 10 items and 2 columns has 5 rows. A grid with 11 items and 2 columns has 6 rows.

Available for Google Chat apps and Google Workspace add-ons.

For example, the following JSON creates a 2 column grid with a single item:

"grid": {
  "title": "A fine collection of items",
  "columnCount": 2,
  "borderStyle": {
    "type": "STROKE",
    "cornerRadius": 4
  },
  "items": [
    {
      "image": {
        "imageUri": "https://www.example.com/image.png",
        "cropStyle": {
          "type": "SQUARE"
        },
        "borderStyle": {
          "type": "STROKE"
        }
      },
      "title": "An item",
      "textAlignment": "CENTER"
    }
  ],
  "onClick": {
    "openLink": {
      "url": "https://www.example.com"
    }
  }
}
JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "title": string,
  "items": [
    {
      object (GridItem)
    }
  ],
  "borderStyle": {
    object (BorderStyle)
  },
  "columnCount": integer,
  "onClick": {
    object (OnClick)
  }
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
title

string

The text that displays in the grid header.

items[]

object ( GridItem )

The items to display in the grid.

borderStyle

object ( BorderStyle )

The border style to apply to each grid item.

columnCount

integer

The number of columns to display in the grid. A default value is used if this field isn't specified, and that default value is different depending on where the grid is shown (dialog versus companion).

onClick

object ( OnClick )

This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.

GridItem

Represents an item in a grid layout. Items can contain text, an image, or both text and an image.

Available for Google Chat apps and Google Workspace add-ons.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "id": string,
  "image": {
    object (ImageComponent)
  },
  "title": string,
  "subtitle": string,
  "layout": enum (GridItemLayout)
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
id

string

A user-specified identifier for this grid item. This identifier is returned in the parent grid's onClick callback parameters.

image

object ( ImageComponent )

The image that displays in the grid item.

title

string

The grid item's title.

subtitle

string

The grid item's subtitle.

layout

enum ( GridItemLayout )

The layout to use for the grid item.

ImageComponent

Represents an image.

Available for Google Chat apps and Google Workspace add-ons.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "imageUri": string,
  "altText": string,
  "cropStyle": {
    object (ImageCropStyle)
  },
  "borderStyle": {
    object (BorderStyle)
  }
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
imageUri

string

The image URL.

altText

string

The accessibility label for the image.

cropStyle

object ( ImageCropStyle )

The crop style to apply to the image.

borderStyle

object ( BorderStyle )

The border style to apply to the image.

ImageCropStyle

Represents the crop style applied to an image.

Available for Google Chat apps and Google Workspace add-ons.

For example, here's how to apply a 16:9 aspect ratio:

cropStyle {
 "type": "RECTANGLE_CUSTOM",
 "aspectRatio": 16/9
}
JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "type": enum (ImageCropType),
  "aspectRatio": number
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
type

enum ( ImageCropType )

The crop type.

aspectRatio

number

The aspect ratio to use if the crop type is RECTANGLE_CUSTOM .

For example, here's how to apply a 16:9 aspect ratio:

cropStyle {
 "type": "RECTANGLE_CUSTOM",
 "aspectRatio": 16/9
}

ImageCropType

Represents the crop style applied to an image.

Available for Google Chat apps and Google Workspace add-ons.

āĻāύāĻžāĻŽ
IMAGE_CROP_TYPE_UNSPECIFIED Don't use. Unspecified.
SQUARE Default value. Applies a square crop.
CIRCLE Applies a circular crop.
RECTANGLE_CUSTOM Applies a rectangular crop with a custom aspect ratio. Set the custom aspect ratio with aspectRatio .
RECTANGLE_4_3 Applies a rectangular crop with a 4:3 aspect ratio.

BorderStyle

The style options for the border of a card or widget, including the border type and color.

Available for Google Chat apps and Google Workspace add-ons.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "type": enum (BorderType),
  "strokeColor": {
    object (Color)
  },
  "cornerRadius": integer
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
type

enum ( BorderType )

The border type.

strokeColor

object ( Color )

The colors to use when the type is BORDER_TYPE_STROKE .

To set the stroke color, specify a value for the red , green , and blue fields. The value must be a float number between 0 and 1 based on the RGB color value, where 0 (0/255) represents the absence of color and 1 (255/255) represents the maximum intensity of the color.

For example, the following sets the color to red at its maximum intensity:

"color": {
   "red": 1,
   "green": 0,
   "blue": 0,
}

The alpha field is unavailable for stroke color. If specified, this field is ignored.

cornerRadius

integer

The corner radius for the border.

BorderType

Represents the border types applied to widgets.

Available for Google Chat apps and Google Workspace add-ons.

āĻāύāĻžāĻŽ
BORDER_TYPE_UNSPECIFIED Don't use. Unspecified.
NO_BORDER No border.
STROKE Default value. Outline.

GridItemLayout

Represents the various layout options available for a grid item.

Available for Google Chat apps and Google Workspace add-ons.

āĻāύāĻžāĻŽ
GRID_ITEM_LAYOUT_UNSPECIFIED Don't use. Unspecified.
TEXT_BELOW The title and subtitle are shown below the grid item's image.
TEXT_ABOVE The title and subtitle are shown above the grid item's image.

āĻ•āϞāĻžāĻŽ

The Columns widget displays up to 2 columns in a card or dialog. You can add widgets to each column; the widgets appear in the order that they are specified. For an example in Google Chat apps, see Display cards and dialogs in columns .

The height of each column is determined by the taller column. For example, if the first column is taller than the second column, both columns have the height of the first column. Because each column can contain a different number of widgets, you can't define rows or align widgets between the columns.

Columns are displayed side-by-side. You can customize the width of each column using the HorizontalSizeStyle field. If the user's screen width is too narrow, the second column wraps below the first:

  • On web, the second column wraps if the screen width is less than or equal to 480 pixels.
  • On iOS devices, the second column wraps if the screen width is less than or equal to 300 pt.
  • On Android devices, the second column wraps if the screen width is less than or equal to 320 dp.

To include more than two columns, or to use rows, use the Grid widget.

Available for Google Chat apps and Google Workspace add-ons. The add-on UIs that support columns include:

  • The dialog displayed when users open the add-on from an email draft.
  • The dialog displayed when users open the add-on from the Add attachment menu in a Google Calendar event.
JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "columnItems": [
    {
      object (Column)
    }
  ]
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
columnItems[]

object ( Column )

An array of columns. You can include up to 2 columns in a card or dialog.

Column

A column.

Google Workspace add-ons and Chat apps

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "horizontalSizeStyle": enum (HorizontalSizeStyle),
  "horizontalAlignment": enum (HorizontalAlignment),
  "verticalAlignment": enum (VerticalAlignment),
  "widgets": [
    {
      object (Widgets)
    }
  ]
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
horizontalSizeStyle

enum ( HorizontalSizeStyle )

Specifies how a column fills the width of the card.

horizontalAlignment

enum ( HorizontalAlignment )

Specifies whether widgets align to the left, right, or center of a column.

verticalAlignment

enum ( VerticalAlignment )

Specifies whether widgets align to the top, bottom, or center of a column.

widgets[]

object ( Widgets )

An array of widgets included in a column. Widgets appear in the order that they are specified.

HorizontalSizeStyle

Specifies how a column fills the width of the card. The width of each column depends on both the HorizontalSizeStyle and the width of the widgets within the column.

Google Workspace add-ons and Chat apps

āĻāύāĻžāĻŽ
HORIZONTAL_SIZE_STYLE_UNSPECIFIED Don't use. Unspecified.
FILL_AVAILABLE_SPACE Default value. Column fills the available space, up to 70% of the card's width. If both columns are set to FILL_AVAILABLE_SPACE , each column fills 50% of the space.
FILL_MINIMUM_SPACE Column fills the least amount of space possible and no more than 30% of the card's width.

HorizontalAlignment

Specifies whether widgets align to the left, right, or center of a column.

Available for Google Chat apps and unavailable for Google Workspace add-ons.

āĻāύāĻžāĻŽ
HORIZONTAL_ALIGNMENT_UNSPECIFIED Don't use. Unspecified.
START Default value. Aligns widgets to the start position of the column. For left-to-right layouts, aligns to the left. For right-to-left layouts, aligns to the right.
CENTER Aligns widgets to the center of the column.
END Aligns widgets to the end position of the column. For left-to-right layouts, aligns widgets to the right. For right-to-left layouts, aligns widgets to the left.

VerticalAlignment

Specifies whether widgets align to the top, bottom, or center of a column.

Google Workspace add-ons and Chat apps

āĻāύāĻžāĻŽ
VERTICAL_ALIGNMENT_UNSPECIFIED Don't use. Unspecified.
CENTER Default value. Aligns widgets to the center of a column.
TOP Aligns widgets to the top of a column.
BOTTOM Aligns widgets to the bottom of a column.

āωāχāĻœā§‡āϟ

The supported widgets that you can include in a column.

Google Workspace add-ons and Chat apps

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{

  "textParagraph": {
    object (TextParagraph)
  },
  "image": {
    object (Image)
  },
  "decoratedText": {
    object (DecoratedText)
  },
  "buttonList": {
    object (ButtonList)
  },
  "textInput": {
    object (TextInput)
  },
  "selectionInput": {
    object (SelectionInput)
  },
  "dateTimePicker": {
    object (DateTimePicker)
  },
  "chipList": {
    object (ChipList)
  }
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ

Union field data .

data can be only one of the following:

textParagraph

object ( TextParagraph )

TextParagraph widget.

image

object ( Image )

Image widget.

decoratedText

object ( DecoratedText )

DecoratedText widget.

buttonList

object ( ButtonList )

ButtonList widget.

textInput

object ( TextInput )

TextInput widget.

selectionInput

object ( SelectionInput )

SelectionInput widget.

dateTimePicker

object ( DateTimePicker )

DateTimePicker widget.

chipList

object ( ChipList )

ChipList widget.

ChipList

A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line.

Available for Google Chat apps and Google Workspace add-ons.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "layout": enum (Layout),
  "chips": [
    {
      object (Chip)
    }
  ]
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
layout

enum ( Layout )

Specified chip list layout.

chips[]

object ( Chip )

An array of chips.

Layout

The chip list layout.

āĻāύāĻžāĻŽ
LAYOUT_UNSPECIFIED Don't use. Unspecified.
WRAPPED Default value. The chip list wraps to the next line if there isn't enough horizontal space.
HORIZONTAL_SCROLLABLE The chips scroll horizontally if they don't fit in the available space.

āϚāĻŋāĻĒ

A text, icon, or text and icon chip that users can click.

Available for Google Chat apps and Google Workspace add-ons.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "icon": {
    object (Icon)
  },
  "label": string,
  "onClick": {
    object (OnClick)
  },
  "enabled": boolean,
  "disabled": boolean,
  "altText": string
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
icon

object ( Icon )

The icon image. If both icon and text are set, then the icon appears before the text.

label

string

The text displayed inside the chip.

onClick

object ( OnClick )

Optional. The action to perform when a user clicks the chip, such as opening a hyperlink or running a custom function.

enabled
(deprecated)

boolean

Whether the chip is in an active state and responds to user actions. Defaults to true . Deprecated. Use disabled instead.

disabled

boolean

Whether the chip is in an inactive state and ignores user actions. Defaults to false .

altText

string

The alternative text that's used for accessibility.

Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat" .

A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget.

For example, this is a JSON representation of a carousel that contains three text paragraph widgets.

{
  "carouselCards": [
    {
      "widgets": [
        {
          "textParagraph": {
            "text": "First text paragraph in carousel",
          }
        }
      ]
    },
    {
      "widgets": [
        {
          "textParagraph": {
            "text": "Second text paragraph in carousel",
          }
        }
      ]
    },
    {
      "widgets": [
        {
          "textParagraph": {
            "text": "Third text paragraph in carousel",
          }
        }
      ]
    }
  ]
}

Available for Google Chat apps and unavailable for Google Workspace add-ons.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "carouselCards": [
    {
      object (CarouselCard)
    }
  ]
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
carouselCards[]

object ( CarouselCard )

A list of cards included in the carousel.

CarouselCard

A card that can be displayed as a carousel item. Available for Google Chat apps and unavailable for Google Workspace add-ons.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "widgets": [
    {
      object (NestedWidget)
    }
  ],
  "footerWidgets": [
    {
      object (NestedWidget)
    }
  ]
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
widgets[]

object ( NestedWidget )

A list of widgets displayed in the carousel card. The widgets are displayed in the order that they are specified.

footerWidgets[]

object ( NestedWidget )

A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.

NestedWidget

A list of widgets that can be displayed in a containing layout, such as a CarouselCard . Available for Google Chat apps and unavailable for Google Workspace add-ons.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{

  "textParagraph": {
    object (TextParagraph)
  },
  "buttonList": {
    object (ButtonList)
  },
  "image": {
    object (Image)
  }
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ

Union field data .

data can be only one of the following:

textParagraph

object ( TextParagraph )

A text paragraph widget.

buttonList

object ( ButtonList )

A button list widget.

image

object ( Image )

An image widget.

āĻĻ⧃āĻļā§āϝāĻŽāĻžāύāϤāĻž

Specifies whether an UI element is visible or hidden.

Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.

āĻāύāĻžāĻŽ
VISIBILITY_UNSPECIFIED Unspecified visibility. Do not use.
VISIBLE The UI element is visible.
HIDDEN The UI element is hidden.

EventAction

Represents an actionthat can be performed on an ui element.

Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "actionRuleId": string,
  "postEventTriggers": [
    {
      object (Trigger)
    }
  ],

  "commonWidgetAction": {
    object (CommonWidgetAction)
  }
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
actionRuleId

string

The unique identifier of the ActionRule.

postEventTriggers[]

object ( Trigger )

The list of triggers that will be triggered after the EventAction is executed.

Union field action . The action to perform. action can be only one of the following:
commonWidgetAction

object ( CommonWidgetAction )

Common widget action.

Trigger

Represents a trigger.

Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "actionRuleId": string
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
actionRuleId

string

The unique identifier of the ActionRule.

CommonWidgetAction

Represents an action that is not specific to a widget.

Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{

  "updateVisibilityAction": {
    object (UpdateVisibilityAction)
  }
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
Union field action . The action to perform. action can be only one of the following:
updateVisibilityAction

object ( UpdateVisibilityAction )

The action to update the visibility of a widget.

UpdateVisibilityAction

Represents an action that updates the visibility of a widget.

Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "visibility": enum (Visibility)
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
visibility

enum ( Visibility )

The new visibility.

CollapseControl

Represent an expand and collapse control.

Available for Google Chat apps and Google Workspace add-ons.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "horizontalAlignment": enum (HorizontalAlignment),
  "expandButton": {
    object (Button)
  },
  "collapseButton": {
    object (Button)
  }
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
horizontalAlignment

enum ( HorizontalAlignment )

The horizontal alignment of the expand and collapse button.

expandButton

object ( Button )

Optional. Define a customizable button to expand the section. Both expandButton and collapseButton field must be set. Only one field set will not take into effect. If this field isn't set, the default button is used.

collapseButton

object ( Button )

Optional. Define a customizable button to collapse the section. Both expandButton and collapseButton field must be set. Only one field set will not take into effect. If this field isn't set, the default button is used.

DividerStyle

The divider style of a card. Currently only used for dividers betweens card sections.

Available for Google Chat apps and Google Workspace add-ons.

āĻāύāĻžāĻŽ
DIVIDER_STYLE_UNSPECIFIED Don't use. Unspecified.
SOLID_DIVIDER Default option. Render a solid divider.
NO_DIVIDER If set, no divider is rendered. This style completely removes the divider from the layout. The result is equivalent to not adding a divider at all.

CardAction

A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser.

Available for Google Workspace add-ons and unavailable for Google Chat apps.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "actionLabel": string,
  "onClick": {
    object (OnClick)
  }
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
actionLabel

string

The label that displays as the action menu item.

onClick

object ( OnClick )

The onClick action for this action item.

CardFixedFooter

A persistent (sticky) footer that that appears at the bottom of the card.

Setting fixedFooter without specifying a primaryButton or a secondaryButton causes an error.

For Chat apps, you can use fixed footers in dialogs , but not card messages . For an example in Google Chat apps, see Add a persistent footer .

Available for Google Chat apps and Google Workspace add-ons.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "primaryButton": {
    object (Button)
  },
  "secondaryButton": {
    object (Button)
  }
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
primaryButton

object ( Button )

The primary button of the fixed footer. The button must be a text button with text and color set.

secondaryButton

object ( Button )

The secondary button of the fixed footer. The button must be a text button with text and color set. If secondaryButton is set, you must also set primaryButton .

DisplayStyle

In Google Workspace add-ons, determines how a card is displayed.

Available for Google Workspace add-ons and unavailable for Google Chat apps.

āĻāύāĻžāĻŽ
DISPLAY_STYLE_UNSPECIFIED Don't use. Unspecified.
PEEK The header of the card appears at the bottom of the sidebar, partially covering the current top card of the stack. Clicking the header pops the card into the card stack. If the card has no header, a generated header is used instead.
REPLACE Default value. The card is shown by replacing the view of the top card in the card stack.

ExpressionData

Represents the data that is used to evaluate an expression.

Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "id": string,
  "expression": string,
  "conditions": [
    {
      object (Condition)
    }
  ],
  "eventActions": [
    {
      object (EventAction)
    }
  ]
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
id

string

The unique identifier of the ExpressionData.

expression

string

The uncompiled expression.

conditions[]

object ( Condition )

The list of conditions that are determined by the expression evaluation result.

eventActions[]

object ( EventAction )

The list of actions that the ExpressionData can be used.

āĻ…āĻŦāĻ¸ā§āĻĨāĻž

Represents a condition that can be used to trigger an action.

Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "actionRuleId": string,

  "expressionDataCondition": {
    object (ExpressionDataCondition)
  }
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
actionRuleId

string

The unique identifier of the ActionRule.

Union field condition . The condition. condition can be only one of the following:
expressionDataCondition

object ( ExpressionDataCondition )

The condition that is determined by the expression data.

ExpressionDataCondition

Represents a condition that is evaluated using CEL.

Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.

JSON āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύāĻž
{
  "conditionType": enum (ConditionType)
}
āĻ•ā§āώ⧇āĻ¤ā§āϰ
conditionType

enum ( ConditionType )

The type of the condition.

ConditionType

The type of the condition.

āĻāύāĻžāĻŽ
CONDITION_TYPE_UNSPECIFIED Unspecified condition type.
EXPRESSION_EVALUATION_SUCCESS The expression evaluation was successful.
EXPRESSION_EVALUATION_FAILURE The expression evaluation was unsuccessful.