Package google.apps.card.v1

Index

Action

Action qui décrit le comportement lors de l'envoi du formulaire. Par exemple, vous pouvez appeler un script Apps Script pour gérer le formulaire. Si l'action est déclenchée, les valeurs du formulaire sont envoyées au serveur.

Champs
function

string

Fonction personnalisée à invoquer lorsque l'utilisateur clique sur l'élément conteneur ou est activé.

Pour obtenir un exemple d'utilisation, consultez la section Créer des fiches interactives.

parameters[]

ActionParameter

Liste des paramètres d'action.

loadIndicator

LoadIndicator

Spécifie l'indicateur de chargement affiché lors de l'appel à l'action.

persistValues

bool

Indique si les valeurs du formulaire sont conservées après l'action. La valeur par défaut est false.

Si la valeur est true, les valeurs du formulaire restent après le déclenchement de l'action. Pour permettre à l'utilisateur d'apporter des modifications pendant le traitement de l'action, définissez LoadIndicator sur NONE. Pour les messages sous forme de fiches dans les applications Chat, vous devez également définir ResponseType de l'action sur UPDATE_MESSAGE et utiliser le même card_id que celui de la fiche qui contient l'action.

Si la valeur est false, les valeurs du formulaire sont effacées lorsque l'action est déclenchée. Pour empêcher l'utilisateur d'apporter des modifications pendant le traitement de l'action, définissez LoadIndicator sur SPINNER.

interaction

Interaction

Facultatif. Obligatoire lors de l'ouverture d'une boîte de dialogue.

Que faire en réponse à une interaction avec un utilisateur (par exemple, lorsqu'il clique sur un bouton dans une fiche) ?

Si aucune valeur n'est spécifiée, l'application répond en exécutant normalement un action (comme l'ouverture d'un lien ou l'exécution d'une fonction).

En spécifiant un interaction, l'application peut répondre de manière interactive spéciale. Par exemple, si vous définissez interaction sur OPEN_DIALOG, l'application peut ouvrir une boîte de dialogue. Si cet indicateur est spécifié, aucun indicateur de chargement ne s'affiche.

Compatible avec les applications Chat, mais pas avec les modules complémentaires Google Workspace Si elle est spécifiée pour un module complémentaire, la fiche entière est supprimée et rien ne s'affiche dans le client.

ActionParameter

Liste des paramètres de chaîne à fournir lorsque la méthode d'action est appelée. Prenons l'exemple de trois boutons pour répéter l'alarme: répéter maintenant, répéter l'alarme un jour, ou la semaine suivante. Vous pouvez utiliser action method = snooze(), en transmettant le type et la durée de mise en pause dans la liste des paramètres de chaîne.

Pour en savoir plus, consultez CommonEventObject.

Champs
key

string

Nom du paramètre du script d'action.

value

string

Valeur du paramètre.

Interaction

Facultatif. Obligatoire lors de l'ouverture d'une boîte de dialogue.

Que faire en réponse à une interaction avec un utilisateur (par exemple, lorsqu'il clique sur un bouton dans une fiche) ?

Si aucune valeur n'est spécifiée, l'application répond en exécutant normalement un action (comme l'ouverture d'un lien ou l'exécution d'une fonction).

En spécifiant un interaction, l'application peut répondre de manière interactive spéciale. Par exemple, si vous définissez interaction sur OPEN_DIALOG, l'application peut ouvrir une boîte de dialogue.

Si cet indicateur est spécifié, aucun indicateur de chargement ne s'affiche.

Compatible avec les applications Chat, mais pas avec les modules complémentaires Google Workspace Si elle est spécifiée pour un module complémentaire, la fiche entière est supprimée et rien ne s'affiche dans le client.

Enums
INTERACTION_UNSPECIFIED Valeur par défaut. Le action s'exécute normalement.
OPEN_DIALOG

Ouvre une boîte de dialogue, une interface sous forme de fiche dans une fenêtre, qui permet aux applications Chat d'interagir avec les utilisateurs.

Uniquement disponible dans les applications Chat en réponse à des clics sur des boutons dans les messages des fiches.

Non compatible avec les modules complémentaires Google Workspace. Si elle est spécifiée pour un module complémentaire, la fiche entière est supprimée et rien ne s'affiche dans le client.

LoadIndicator

Spécifie l'indicateur de chargement affiché lors de l'appel à l'action.

Enums
SPINNER Affiche une icône de chargement pour indiquer que le contenu est en cours de chargement.
NONE Rien ne s'affiche.

BorderStyle

Options de style de la bordure d'une carte ou d'un widget, y compris le type et la couleur de bordure.

Champs
type

BorderType

Type de bordure.

strokeColor

Color

Couleurs à utiliser lorsque le type est BORDER_TYPE_STROKE.

cornerRadius

int32

Rayon de l'angle de la bordure.

BorderType

Représente les types de bordure appliqués aux widgets.

Enums
BORDER_TYPE_UNSPECIFIED Ne pas utiliser. URL indéterminée.
NO_BORDER Valeur par défaut. Aucune bordure.
STROKE Contours.

Bouton

Un texte, une icône, ou un texte et un bouton d’icône sur lesquels les utilisateurs peuvent cliquer. Pour obtenir un exemple dans les applications Google Chat, consultez Liste des boutons.

Pour transformer une image en bouton cliquable, spécifiez un Image (et non un ImageComponent) et définissez une action onClick.

Champs
text

string

Texte affiché à l'intérieur du bouton.

icon

Icon

Image de l'icône. Si icon et text sont tous deux définis, l'icône apparaît avant le texte.

color

Color

S'il est défini, le bouton est rempli d'une couleur d'arrière-plan unie et la couleur de la police change pour maintenir le contraste avec la couleur d'arrière-plan. Par exemple, si vous définissez un arrière-plan bleu, le texte sera probablement blanc.

Si cette règle n'est pas configurée, l'arrière-plan de l'image est blanc et la couleur de la police est bleue.

Pour le rouge, le vert et le bleu, la valeur de chaque champ est un nombre float que vous pouvez exprimer de deux manières: en tant que nombre compris entre 0 et 255 divisé par 255 (153/255), ou sous la forme d'une valeur comprise entre 0 et 1 (0,6). 0 représente l'absence de couleur, et 1 ou 255/255 représente la présence totale de cette couleur sur l'échelle RVB.

Vous pouvez également définir alpha, qui définit un niveau de transparence à l'aide de l'équation suivante:

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

Pour alpha, la valeur 1 correspond à une couleur unie, et la valeur 0 à une couleur complètement transparente.

Par exemple, la couleur suivante représente un rouge à moitié transparent:

"color": {
   "red": 1,
   "green": 0,
   "blue": 0,
   "alpha": 0.5
}
onClick

OnClick

Obligatoire. Action à effectuer lorsqu'un utilisateur clique sur le bouton (par exemple, ouvrir un lien hypertexte ou exécuter une fonction personnalisée).

disabled

bool

Si la valeur est true, le bouton est inactif et ne répond pas aux actions de l'utilisateur.

altText

string

Texte alternatif utilisé pour l'accessibilité.

Définissez un texte descriptif permettant aux utilisateurs de savoir à quoi sert le bouton. Par exemple, si un bouton ouvre un lien hypertexte, vous pouvez écrire: "Ouvre un nouvel onglet de navigateur et accède à la documentation Google Chat pour les développeurs à l'adresse https://developers.google.com/chat"".

ButtonList

Liste de boutons disposés horizontalement. Pour obtenir un exemple dans les applications Google Chat, consultez Liste des boutons.

Champs
buttons[]

Button

Tableau de boutons.

Fiche

Interface d'une fiche affichée dans un message Google Chat ou un module complémentaire Google Workspace.

Les cartes sont compatibles avec une mise en page définie, des éléments d'interface utilisateur interactifs comme des boutons et des éléments rich media comme des images. Utilisez des fiches pour présenter des informations détaillées, recueillir des informations auprès des utilisateurs et les inciter à passer à l'étape suivante.

Pour apprendre à créer des fiches, consultez la documentation suivante:

Exemple: Message sous forme de fiche pour une application Google Chat

Exemple de fiche de contact

Pour créer l'exemple de message de fiche dans Google Chat, utilisez le fichier JSON suivant:

{
  "cardsV2": [
    {
      "cardId": "unique-card-id",
      "card": {
        "header": {
          "title": "Sasha",
          "subtitle": "Software Engineer",
          "imageUrl":
          "https://developers.google.com/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",
                            }
                          ],
                        }
                      }
                    },
                  ],
                }
              },
            ],
          },
        ],
      },
    }
  ],
}
Champs
header

CardHeader

En-tête de la carte. Un en-tête contient généralement une image d’introduction et un titre. Les en-têtes apparaissent toujours en haut d'une fiche.

sections[]

Section

Contient une collection de widgets. Chaque section a son propre en-tête facultatif. Les sections sont séparées visuellement par un séparateur. Pour obtenir un exemple dans les applications Google Chat, consultez la section Carte.

sectionDividerStyle

DividerStyle

Style de séparateur entre les sections.

cardActions[]

CardAction

Actions de la carte Les actions sont ajoutées au menu de la barre d'outils de la fiche.

Comme les fiches des applications Chat n'ont pas de barre d'outils, cardActions[] n'est pas compatible avec les applications Chat.

Par exemple, le code JSON suivant construit un menu d'actions de fiche avec les options Settings et 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

Nom de la carte. Utilisé comme identifiant de carte dans la navigation dans les cartes.

Étant donné que les applications Chat ne sont pas compatibles avec la navigation dans les cartes, elles ignorent ce champ.

fixedFooter

CardFixedFooter

Pied de page fixe affiché au bas de cette fiche.

Si vous définissez fixedFooter sans spécifier de primaryButton ni de secondaryButton, cela génère une erreur.

Compatible avec les modules complémentaires Google Workspace et les applications Chat Pour les applications Chat, vous pouvez utiliser des pieds de page fixes dans les boîtes de dialogue, mais pas les messages sous forme de fiches.

displayStyle

DisplayStyle

Dans les modules complémentaires Google Workspace, définit les propriétés d'affichage de peekCardHeader.

Non compatible avec les applications Chat.

peekCardHeader

CardHeader

Lors de l'affichage de contenu contextuel, l'en-tête de la fiche d'aperçu sert d'espace réservé afin que l'utilisateur puisse naviguer entre les fiches de la page d'accueil et les fiches contextuelles.

Non compatible avec les applications Chat.

CardAction

Une action sur une fiche est l'action associée à la fiche. Par exemple, une fiche de facturation peut inclure des actions telles que supprimer la facture, supprimer la facture par e-mail ou ouvrir la facture dans un navigateur.

Non compatible avec les applications Chat.

Champs
actionLabel

string

Libellé affiché comme élément du menu d'actions.

onClick

OnClick

L'action onClick pour cette tâche.

CardFixedFooter

Pied de page persistant (collant) qui apparaît au bas de la carte Pour obtenir un exemple dans les applications Google Chat, consultez Pied de page des fiches.

Si vous définissez fixedFooter sans spécifier de primaryButton ni de secondaryButton, cela génère une erreur.

Compatible avec les modules complémentaires Google Workspace et les applications Chat Pour les applications Chat, vous pouvez utiliser des pieds de page fixes dans les boîtes de dialogue, mais pas les messages sous forme de fiches.

Champs
primaryButton

Button

Bouton principal du pied de page fixe. Le bouton doit être un bouton textuel avec du texte et des couleurs définis.

secondaryButton

Button

Bouton secondaire du pied de page fixe. Le bouton doit être un bouton textuel avec du texte et des couleurs définis. Si secondaryButton est défini, vous devez également définir primaryButton.

CardHeader

Représente un en-tête de fiche. Pour voir un exemple dans les applications Google Chat, consultez En-tête de la fiche.

Champs
title

string

Obligatoire. Titre de l'en-tête de la carte. L'en-tête a une hauteur fixe: si un titre et un sous-titre sont spécifiés, chacun occupe une ligne. Si seul le titre est spécifié, il occupe les deux lignes.

subtitle

string

Sous-titre de l'en-tête de la carte. Si spécifié, apparaît sur une ligne distincte sous title.

imageType

ImageType

Forme utilisée pour recadrer l'image.

imageUrl

string

URL HTTPS de l'image dans l'en-tête de la carte.

imageAltText

string

Texte alternatif de cette image utilisé pour l'accessibilité.

DisplayStyle

Ce paramètre détermine la façon dont une fiche s'affiche dans les modules complémentaires Google Workspace.

Non compatible avec les applications Chat.

Enums
DISPLAY_STYLE_UNSPECIFIED Ne pas utiliser. URL indéterminée.
PEEK L'en-tête de la fiche apparaît au bas de la barre latérale et recouvre partiellement la fiche supérieure actuelle de la pile. Cliquez sur l'en-tête pour faire apparaître la carte dans la pile. Si la carte n'a pas d'en-tête, un en-tête généré est utilisé à la place.
REPLACE Valeur par défaut. La carte est affichée en remplaçant la vue de la première carte dans la pile de cartes.

DividerStyle

Style de séparateur d'une carte. Actuellement utilisé uniquement pour les séparateurs entre les sections de fiche.

Enums
DIVIDER_STYLE_UNSPECIFIED Ne pas utiliser. URL indéterminée.
SOLID_DIVIDER Option par défaut. Affichez un séparateur solide entre les sections.
NO_DIVIDER Si cette option est définie, aucun séparateur n'est affiché entre les sections.

Section

Une section contient un ensemble de widgets affichés verticalement, dans l'ordre dans lequel ils sont spécifiés.

Champs
header

string

Texte affiché en haut d'une section. Accepte le texte au format HTML simple. Pour en savoir plus sur la mise en forme du texte, consultez Mettre en forme du texte dans les applications Google Chat et Mettre en forme du texte dans les modules complémentaires Google Workspace.

widgets[]

Widget

Tous les widgets de la section. Doit contenir au moins un widget.

collapsible

bool

Indique si cette section peut être réduite.

Les sections réductibles masquent tout ou partie des widgets. Toutefois, les utilisateurs peuvent développer la section pour faire apparaître les widgets masqués en cliquant sur Plus. Les utilisateurs peuvent à nouveau masquer les widgets en cliquant sur Afficher moins.

Pour déterminer quels widgets sont masqués, spécifiez uncollapsibleWidgetsCount.

uncollapsibleWidgetsCount

int32

Nombre de widgets non réductibles qui restent visibles même lorsqu'une section est réduite.

Par exemple, lorsqu'une section contient cinq widgets et que uncollapsibleWidgetsCount est défini sur 2, les deux premiers widgets sont toujours affichés et les trois derniers sont réduits par défaut. La uncollapsibleWidgetsCount n'est prise en compte que lorsque collapsible est défini sur true.

Colonnes

Le widget Columns affiche jusqu'à deux colonnes dans un message sous forme de fiche ou une boîte de dialogue. Vous pouvez ajouter des widgets à chaque colonne ; ceux-ci s'affichent dans l'ordre dans lequel ils sont spécifiés. Pour obtenir un exemple dans les applications Google Chat, consultez Colonnes.

La hauteur de chaque colonne est déterminée par la colonne la plus haute. Par exemple, si la première colonne est plus haute que la deuxième, les deux colonnes auront la hauteur de la première. Étant donné que chaque colonne peut contenir un nombre différent de widgets, vous ne pouvez pas définir de lignes ni aligner des widgets entre les colonnes.

Les colonnes s'affichent côte à côte. Vous pouvez personnaliser la largeur de chaque colonne à l'aide du champ HorizontalSizeStyle. Si la largeur de l'écran de l'utilisateur est trop étroite, la deuxième colonne passe automatiquement en dessous de la première:

  • Sur le Web, la deuxième colonne renvoie un retour à la ligne si la largeur de l'écran est inférieure ou égale à 480 pixels.
  • Sur les appareils iOS, la deuxième colonne est renvoyée à la ligne si la largeur de l'écran est inférieure ou égale à 300 points.
  • Sur les appareils Android, la deuxième colonne est renvoyée si la largeur de l'écran est inférieure ou égale à 320 dp.

Pour inclure plus de deux colonnes ou des lignes, utilisez le widget Grid.

Compatible avec les applications Chat, mais pas avec les modules complémentaires Google Workspace

Champs
columnItems[]

Column

Tableau de colonnes. Vous pouvez inclure jusqu'à deux colonnes dans une fiche ou une boîte de dialogue.

Colonne

Une colonne.

Champs
horizontalSizeStyle

HorizontalSizeStyle

Spécifie la façon dont une colonne remplit la largeur de la fiche.

horizontalAlignment

HorizontalAlignment

Indique si les widgets s'alignent à gauche, à droite ou au centre d'une colonne.

verticalAlignment

VerticalAlignment

Indique si les widgets s'alignent en haut, en bas ou au centre d'une colonne.

widgets[]

Widgets

Tableau de widgets inclus dans une colonne. Les widgets s'affichent dans l'ordre dans lequel ils sont spécifiés.

HorizontalSizeStyle

Spécifie la façon dont une colonne remplit la largeur de la fiche. La largeur de chaque colonne dépend à la fois de l'élément HorizontalSizeStyle et de la largeur des widgets au sein de la colonne.

Enums
HORIZONTAL_SIZE_STYLE_UNSPECIFIED Ne pas utiliser. URL indéterminée.
FILL_AVAILABLE_SPACE Valeur par défaut. La colonne occupe l'espace disponible jusqu'à 70% de la largeur de la fiche. Si les deux colonnes sont définies sur FILL_AVAILABLE_SPACE, chaque colonne remplit 50% de l'espace.
FILL_MINIMUM_SPACE La colonne occupe le moins d'espace possible et ne peut pas dépasser 30% de la largeur de la fiche.

VerticalAlignment

Indique si les widgets s'alignent en haut, en bas ou au centre d'une colonne.

Enums
VERTICAL_ALIGNMENT_UNSPECIFIED Ne pas utiliser. URL indéterminée.
CENTER Valeur par défaut. Aligne les widgets sur le centre d'une colonne.
TOP Aligne les widgets sur la partie supérieure d'une colonne.
BOTTOM Aligne les widgets sur le bas d'une colonne.

Widgets

Les widgets compatibles que vous pouvez inclure dans une colonne.

Champs

Champ d'union data.

data ne peut être qu'un des éléments suivants :

textParagraph

TextParagraph

Widget TextParagraph

image

Image

Widget Image

decoratedText

DecoratedText

Widget DecoratedText

buttonList

ButtonList

Widget ButtonList

textInput

TextInput

Widget TextInput

selectionInput

SelectionInput

Widget SelectionInput

dateTimePicker

DateTimePicker

Widget DateTimePicker

DateTimePicker

Permet aux utilisateurs de saisir une date, une heure ou les deux. Pour obtenir un exemple dans les applications Google Chat, consultez Sélecteur de date et d'heure.

Les utilisateurs peuvent saisir du texte ou sélectionner des dates et des heures à l'aide du sélecteur. Si les utilisateurs saisissent une date ou une heure non valide, le sélecteur affiche une erreur qui les invite à saisir correctement les informations.

Champs
name

string

Nom par lequel l'élément DateTimePicker est identifié dans un événement de saisie de formulaire.

Pour en savoir plus sur l'utilisation des entrées de formulaire, consultez Recevoir des données de formulaire.

label

string

Texte qui invite les utilisateurs à saisir une date, une heure, ou une date et une heure. Par exemple, si les utilisateurs prennent rendez-vous, utilisez un libellé tel que Appointment date ou Appointment date and time.

type

DateTimePickerType

Indique si le widget prend en charge la saisie d'une date, d'une heure, ou d'une date et d'une heure.

valueMsEpoch

int64

Valeur par défaut affichée dans le widget, en millisecondes depuis l'heure de l'epoch Unix.

Spécifiez la valeur en fonction du type de sélecteur (DateTimePickerType):

  • DATE_AND_TIME: date et heure du calendrier UTC. Par exemple, pour représenter le 1er janvier 2023 à 12h UTC, utilisez 1672574400000.
  • DATE_ONLY: date du calendrier à 00:00:00 UTC. Par exemple, pour représenter le 1er janvier 2023, utilisez 1672531200000.
  • TIME_ONLY: heure au format UTC. Par exemple, pour représenter 12:00, utilisez 43200000 (ou 12 * 60 * 60 * 1000).
timezoneOffsetDate

int32

Nombre représentant le décalage de fuseau horaire par rapport à l'UTC, en minutes. S'il est défini, value_ms_epoch s'affiche dans le fuseau horaire spécifié. Si cette règle n'est pas configurée, la valeur par défaut est définie sur le fuseau horaire de l'utilisateur.

onChangeAction

Action

Déclenchement lorsque l'utilisateur clique sur Enregistrer ou Effacer dans l'interface DateTimePicker.

DateTimePickerType

Format de la date et de l'heure dans le widget DateTimePicker. Détermine si les utilisateurs peuvent saisir une date, une heure, ou les deux.

Enums
DATE_AND_TIME Les utilisateurs saisissent une date et une heure.
DATE_ONLY Les utilisateurs saisissent une date.
TIME_ONLY Les utilisateurs saisissent une heure.

DecoratedText

Widget affichant du texte avec des décorations facultatives, comme un libellé au-dessus ou en dessous du texte, une icône devant le texte, un widget de sélection ou un bouton après le texte. Pour obtenir un exemple dans les applications Google Chat, consultez Texte décoratif.

Champs
icon
(deprecated)

Icon

Obsolète au profit de startIcon.

startIcon

Icon

Icône affichée devant le texte.

topLabel

string

Texte affiché au-dessus de text. Tronque toujours.

text

string

Obligatoire. Texte principal.

Compatible avec la mise en forme simple. Pour en savoir plus sur la mise en forme du texte, consultez Mettre en forme du texte dans les applications Google Chat et Mettre en forme du texte dans les modules complémentaires Google Workspace.

wrapText

bool

Paramètre de retour à la ligne automatique. Si la valeur est true, le texte retourne à la ligne et s'affiche sur plusieurs lignes. Sinon, le texte est tronqué.

S'applique uniquement à text, et non à topLabel et bottomLabel.

bottomLabel

string

Texte affiché sous text. Encapsule toujours.

onClick

OnClick

Cette action est déclenchée lorsque les utilisateurs cliquent sur topLabel ou bottomLabel.

Champ d'union control. Bouton, commutateur, case à cocher ou image qui s'affiche à droite du texte dans le widget decoratedText. La control ne peut être qu'un des éléments suivants :
button

Button

Bouton sur lequel un utilisateur peut cliquer pour déclencher une action.

switchControl

SwitchControl

Widget switch sur lequel un utilisateur peut cliquer pour modifier son état et déclencher une action.

endIcon

Icon

Icône affichée après le texte

Compatible avec les icônes intégrées et personnalisées.

SwitchControl

Bouton bascule ou case à cocher dans un widget decoratedText.

Uniquement disponible dans le widget decoratedText.

Champs
name

string

Nom par lequel le widget switch est identifié dans un événement de saisie de formulaire.

Pour en savoir plus sur l'utilisation des entrées de formulaire, consultez Recevoir des données de formulaire.

value

string

Valeur saisie par un utilisateur, renvoyée dans un événement de saisie de formulaire.

Pour en savoir plus sur l'utilisation des entrées de formulaire, consultez Recevoir des données de formulaire.

selected

bool

Si true, le bouton bascule est sélectionné.

onChangeAction

Action

L'action à effectuer lorsque l'état du commutateur est modifié, par exemple la fonction à exécuter.

controlType

ControlType

Affichage du bouton bascule dans l'interface utilisateur.

ControlType

Affichage du bouton bascule dans l'interface utilisateur.

Enums
SWITCH Bouton bascule
CHECKBOX Obsolète au profit de CHECK_BOX.
CHECK_BOX Une case à cocher.

Séparateur

Ce type ne comporte aucun champ.

Affiche un séparateur entre les widgets sous la forme d'une ligne horizontale. Pour obtenir un exemple dans les applications Google Chat, consultez Séparateur.

Par exemple, le code JSON suivant crée un séparateur:

"divider": {}

GetAutocompletionResponse

Réponse à l'obtention d'un conteneur de saisie semi-automatique, qui inclut les éléments nécessaires pour afficher les éléments de saisie semi-automatique du champ de texte. Exemple :

{
  "autoComplete": {
    "items": [
      {
        "text": "C++"
      },
      {
        "text": "Java"
      },
      {
        "text": "JavaScript"
      },
      {
        "text": "Python"
      }
    ]
  }
}
Champs
autoComplete

Suggestions

schema

string

Il s'agit d'un champ de schéma no-op qui peut être présent dans le balisage pour la vérification de la syntaxe.

Grille

Affiche une grille avec un ensemble d'éléments. Les éléments ne peuvent inclure que du texte ou des images. Pour les colonnes responsives, ou pour inclure plus que du texte ou des images, utilisez Columns. Pour obtenir un exemple dans les applications Google Chat, consultez Grille.

Une grille accepte un nombre illimité de colonnes et d'éléments. Le nombre de lignes est déterminé par le nombre d'éléments divisé par le nombre de colonnes. Une grille de 10 éléments et 2 colonnes comporte 5 lignes. Une grille de 11 éléments et 2 colonnes comporte 6 lignes.

Par exemple, le code JSON suivant crée une grille à deux colonnes avec un seul élément:

"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"
    }
  }
}
Champs
title

string

Texte qui s'affiche dans l'en-tête de la grille.

items[]

GridItem

Éléments à afficher dans la grille.

borderStyle

BorderStyle

Style de bordure à appliquer à chaque élément de la grille

columnCount

int32

Nombre de colonnes à afficher dans la grille. Une valeur par défaut est utilisée si ce champ n'est pas spécifié. Cette valeur par défaut varie en fonction de l'emplacement de la grille (boîte de dialogue ou création associée).

onClick

OnClick

Ce rappel est réutilisé par chaque élément de la grille, mais avec l'identifiant et l'index de l'élément dans la liste des éléments ajoutés aux paramètres du rappel.

GridItem

Représente un élément sous forme de grille. Les éléments peuvent contenir du texte, une image, ou les deux.

Champs
id

string

Identifiant spécifié par l'utilisateur pour cet élément de grille. Cet identifiant est renvoyé dans les paramètres de rappel onClick de la grille parente.

image

ImageComponent

Image qui s'affiche dans l'élément de la grille.

title

string

Titre de l'élément de la grille.

subtitle

string

Sous-titre de l'élément de la grille.

layout

GridItemLayout

Mise en page à utiliser pour l'élément de la grille.

GridItemLayout

Représente les différentes options de mise en page disponibles pour un élément de grille.

Enums
GRID_ITEM_LAYOUT_UNSPECIFIED Ne pas utiliser. URL indéterminée.
TEXT_BELOW Le titre et le sous-titre sont affichés sous l'image de l'élément de la grille.
TEXT_ABOVE Le titre et le sous-titre sont affichés au-dessus de l'image de l'élément de la grille.

Icon

Icône affichée dans un widget sur une carte. Pour obtenir un exemple dans les applications Google Chat, consultez Icône.

Compatible avec les icônes intégrées et personnalisées.

Champs
altText

string

Facultatif. Description de l'icône utilisée pour l'accessibilité. Si aucune valeur n'est spécifiée, la valeur par défaut Button est fournie. Il est recommandé de définir une description utile de ce que l'icône affiche et, le cas échéant, de son rôle. Exemples : A user's account portrait ou Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/chat.

Si l'icône est définie dans un Button, l'altText apparaît sous forme de texte d'aide lorsque l'utilisateur pointe sur le bouton. Toutefois, si le bouton définit également text, le altText de l'icône est ignoré.

imageType

ImageType

Style de recadrage appliqué à l'image. Dans certains cas, si vous appliquez un recadrage CIRCLE, l'image est plus grande qu'une icône intégrée.

Champ d'union icons. Icône affichée dans le widget de la fiche. icons ne peut être qu'un des éléments suivants :
knownIcon

string

Affichez l'une des icônes intégrées fournies par Google Workspace.

Par exemple, pour afficher une icône représentant un avion, spécifiez AIRPLANE. Pour un bus, indiquez BUS.

Pour obtenir la liste complète des icônes compatibles, consultez la section Icônes intégrées.

iconUrl

string

afficher une icône personnalisée hébergée sur une URL HTTPS ;

Exemple :

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

Les types de fichiers .png et .jpg sont acceptés.

Image

Image spécifiée par une URL et pouvant être associée à une action onClick. Pour obtenir un exemple, consultez la section Image.

Champs
imageUrl

string

URL HTTPS qui héberge l'image.

Exemple :

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

OnClick

Lorsqu'un utilisateur clique sur l'image, le clic déclenche cette action.

altText

string

Texte alternatif de cette image utilisé pour l'accessibilité.

ImageComponent

Représente une image.

Champs
imageUri

string

URL de l'image.

altText

string

Libellé d'accessibilité de l'image.

cropStyle

ImageCropStyle

Style de recadrage à appliquer à l'image.

borderStyle

BorderStyle

Style de bordure à appliquer à l'image.

ImageCropStyle

Représente le style de recadrage appliqué à une image.

Par exemple, voici comment appliquer un format 16:9:

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

ImageCropType

Type de recadrage.

aspectRatio

double

Format à utiliser si le type de recadrage est RECTANGLE_CUSTOM.

Par exemple, voici comment appliquer un format 16:9:

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

ImageCropType

Représente le style de recadrage appliqué à une image.

Enums
IMAGE_CROP_TYPE_UNSPECIFIED Ne pas utiliser. URL indéterminée.
SQUARE Valeur par défaut. Applique un recadrage carré.
CIRCLE Applique un recadrage circulaire.
RECTANGLE_CUSTOM Applique un recadrage rectangulaire avec un format personnalisé. Définissez le format personnalisé avec aspectRatio.
RECTANGLE_4_3 Applique un recadrage rectangulaire au format 4:3.

LinkPreview

Action de fiche qui affiche un aperçu d'un lien tiers sous la forme d'une carte et d'un chip intelligent. Pour en savoir plus, consultez Prévisualiser les liens avec des chips intelligents.

Par exemple, le code JSON suivant renvoie un titre unique pour l'aperçu du lien et son chip intelligent, ainsi qu'une fiche d'aperçu avec un en-tête et une description textuelle:

{
  "action": {
    "linkPreview": {
      "title": "Smart chip title",
      "linkPreviewTitle": "Link preview title",
      "previewCard": {
        "header": {
          "title": "Preview card header",
        },
        "sections": [
          {
            "widgets": [
              {
                "textParagraph": {
                  "text": "Description of the link."
                }
              }
            ]
          }
        ]
      }
    }
  }
}

L'exemple renvoie l'aperçu de lien suivant:

Exemple d&#39;aperçu du lien

Champs
previewCard

Card

Fiche contenant des informations sur l'association d'un service tiers.

title

string

Titre qui s'affiche dans le chip intelligent pour l'aperçu du lien. Si cette règle n'est pas configurée, le chip intelligent affiche l'en-tête de preview_card.

linkPreviewTitle

string

Titre qui s'affiche dans l'aperçu du lien. Si cette règle n'est pas configurée, l'aperçu du lien affiche l'en-tête du preview_card.

Action de fiche qui manipule la pile de cartes. Exemple :

1) Ajoutez une nouvelle carte à la pile (poursuivez).

 navigations : {
    pushCard : CARD
  }

2) Mettez la carte à jour au-dessus de la pile (mise à jour en place).

  navigations : {
    popCard : true,
  }, {
    pushCard : CARD
  }

3) Revenez à l'étape précédente sans effectuer de mise à jour.

  navigations : {
    popCard : true,
  }

4) Revenez en arrière et mettez à jour cette carte.

  navigations : {
    popCard : true,
  }, ... {
    pushCard : CARD
  }

5) Revenez à un CARD_NAME défini en effectuant plusieurs étapes.

  navigations : {
    popToCardName : CARD_NAME,
  }, {
    pushCard : CARD
  }

6) Revenez à la racine et mettez à jour cette carte.

  navigations : {
    popToRoot : true
  }, {
    pushCard : CARD
  }

7) Accéder à la carte spécifiée et afficher celle-ci également.

navigations : { popToCardName : CARD_NAME }, { popCard : true, }

8) Remplacez la carte du dessus par une nouvelle carte.

  navigations : {
    updateCard : CARD
  }
Champs

Champ d'union navigate_action.

navigate_action ne peut être qu'un des éléments suivants :

popToRoot

bool

La pile de cartes fait ressortir toutes les cartes, à l'exception de la carte racine.

pop

bool

La pile de cartes fait ressortir une carte.

popToCard

string

La pile de cartes affiche toutes les cartes au-dessus de la carte spécifiée avec le nom de carte donné.

pushCard

Card

La pile de cartes place une carte dans la pile.

updateCard

Card

La pile de cartes met à jour la première fiche avec une nouvelle carte et conserve les valeurs des champs remplis. Pour un champ non équivalent, la valeur est supprimée.

Notification

Action de fiche qui affiche une notification dans l'application hôte.

Champs
text

string

Texte brut à afficher pour la notification, sans balises HTML.

OnClick

Représente la manière de répondre lorsque les utilisateurs cliquent sur un élément interactif d'une fiche, comme un bouton.

Champs

Champ d'union data.

data ne peut être qu'un des éléments suivants :

action

Action

Si cet élément onClick est spécifié, une action est déclenchée.

openDynamicLinkAction

Action

Un module complémentaire déclenche cette action lorsqu'elle doit ouvrir un lien. Cette méthode diffère du open_link ci-dessus dans la mesure où elle doit communiquer avec le serveur pour obtenir le lien. Ainsi, un travail de préparation est nécessaire pour le client Web avant le retour de la réponse d'action de lien ouvert. Compatible avec les modules complémentaires Google Workspace, mais pas avec les applications Google Chat

card

Card

Une nouvelle fiche est ajoutée à la pile de cartes après que l'utilisateur a cliqué dessus.

Compatible avec les modules complémentaires Google Workspace, mais pas avec les applications Google Chat

OnClose

Que fait le client lorsqu'un lien ouvert par une action OnClick est fermé ?

L'implémentation dépend des capacités de la plate-forme cliente. Par exemple, un navigateur Web peut ouvrir un lien dans une fenêtre pop-up avec un gestionnaire OnClose.

Si les gestionnaires OnOpen et OnClose sont définis et que la plate-forme cliente n'accepte pas les deux valeurs, OnClose est prioritaire.

Compatible avec les modules complémentaires Google Workspace, mais pas avec les applications Google Chat

Enums
NOTHING Valeur par défaut. La carte ne se recharge pas, rien ne se passe.
RELOAD

Il actualise la fiche après la fermeture de la fenêtre enfant.

Si elle est utilisée avec OpenAs.OVERLAY, la fenêtre enfant fait office de boîte de dialogue modale et la carte parente est bloquée jusqu'à ce que la fenêtre enfant se ferme.

OpenAs

Lorsqu'une action OnClick ouvre un lien, le client peut soit l'ouvrir en tant que fenêtre en taille réelle (s'il s'agit du cadre utilisé par le client) ou en superposition (telle qu'une fenêtre pop-up). L'implémentation dépend des fonctionnalités de la plate-forme cliente, et la valeur sélectionnée peut être ignorée si le client ne la prend pas en charge. FULL_SIZE est accepté par tous les clients.

Compatible avec les modules complémentaires Google Workspace, mais pas avec les applications Google Chat

Enums
FULL_SIZE Le lien s'ouvre dans une fenêtre en taille réelle (s'il s'agit du cadre utilisé par le client).
OVERLAY Le lien s'ouvre en superposition, par exemple une fenêtre pop-up.

RenderActions

Un ensemble d'instructions d'affichage indiquant à une carte d'effectuer une action et/ou à l'application hôte du module complémentaire d'effectuer une action spécifique à l'application.

Champs
action

Action

hostAppAction

HostAppActionMarkup

Actions gérées par des applications hôtes individuelles.

schema

string

Il s'agit d'un champ de schéma no-op qui peut être présent dans le balisage pour la vérification de la syntaxe.

Action

Champs
navigations[]

Navigation

Diffusez ou mettez à jour les fiches affichées ou faites-les apparaître à l'écran.

notification

Notification

Affichez une notification destinée à l'utilisateur final.

linkPreview

LinkPreview

Afficher un aperçu du lien pour l'utilisateur final.

SelectionInput

Widget qui crée un ou plusieurs éléments d'interface utilisateur que les utilisateurs peuvent sélectionner. Par exemple, un menu déroulant ou des cases à cocher. Vous pouvez utiliser ce widget pour collecter des données pouvant être prédites ou énumérées. Pour obtenir un exemple dans les applications Google Chat, consultez la section Saisie de sélection.

Les applications de chat peuvent traiter la valeur des éléments que les utilisateurs sélectionnent ou saisissent. Pour en savoir plus sur l'utilisation des entrées de formulaire, consultez Recevoir des données de formulaire.

Pour collecter des données non définies ou abstraites sur les utilisateurs, utilisez le widget TextInput.

Champs
name

string

Nom qui identifie l'entrée de sélection dans un événement de saisie de formulaire.

Pour en savoir plus sur l'utilisation des entrées de formulaire, consultez Recevoir des données de formulaire.

label

string

Texte affiché au-dessus du champ de saisie de sélection dans l'interface utilisateur.

Spécifiez un texte qui aidera l'utilisateur à saisir les informations dont votre application a besoin. Par exemple, si les utilisateurs sélectionnent l'urgence d'une demande d'assistance dans un menu déroulant, le libellé peut être "Urgence" ou "Sélectionner l'urgence".

type

SelectionType

Type d'éléments présentés aux utilisateurs dans un widget SelectionInput. Les types de sélection acceptent différents types d'interactions. Par exemple, les utilisateurs peuvent cocher une ou plusieurs cases, mais ils ne peuvent sélectionner qu'une seule valeur dans un menu déroulant.

items[]

SelectionItem

Tableau d'éléments sélectionnables. (tableau de cases d'option ou de cases à cocher, par exemple). Jusqu'à 100 articles

onChangeAction

Action

Si elle est spécifiée, le formulaire est envoyé lorsque la sélection change. S'il n'est pas spécifié, vous devez spécifier un bouton distinct qui permet d'envoyer le formulaire.

Pour en savoir plus sur l'utilisation des entrées de formulaire, consultez Recevoir des données de formulaire.

multiSelectMaxSelectedItems

int32

Pour les menus à sélection multiple, nombre maximal d'éléments qu'un utilisateur peut sélectionner. La valeur minimale est de 1 article. Si aucune valeur n'est spécifiée, la valeur par défaut est de 3 éléments.

multiSelectMinQueryLength

int32

Pour les menus à sélection multiple, le nombre de caractères de texte saisis par un utilisateur avant que l'application Chat ne les interroge lors de la saisie semi-automatique et affiche des suggestions d'éléments dans le menu.

Si aucune valeur n'est spécifiée, la valeur par défaut est 0 caractère pour les sources de données statiques et 3 caractères pour les sources de données externes.

Champ d'union multi_select_data_source. Applications de chat uniquement. Pour un menu de sélection multiple, source de données qui renseigne les éléments de sélection. multi_select_data_source ne peut être qu'un des éléments suivants :
externalDataSource

Action

Une source de données externe, telle qu'une base de données relationnelle.

platformDataSource

PlatformDataSource

Une source de données de Google Workspace

PlatformDataSource

Applications de chat uniquement. Pour un widget SelectionInput qui utilise un menu de sélection multiple, il s'agit d'une source de données de Google Workspace. Permet de renseigner les éléments d'un menu de sélection multiple.

Champs
Champ d'union data_source. La source de données data_source ne peut être qu'un des éléments suivants :
commonDataSource

CommonDataSource

Source de données partagée par toutes les applications Google Workspace, par exemple les utilisateurs d'une organisation Google Workspace.

hostAppDataSource

HostAppDataSourceMarkup

Source de données propre à une application hôte Google Workspace, comme les espaces Google Chat

CommonDataSource

Applications de chat uniquement. Source de données partagée par toutes les applications Google Workspace.

Enums
UNKNOWN Valeur par défaut. Ne pas utiliser.
USER pour les utilisateurs de Google Workspace. L'utilisateur ne peut afficher et sélectionner que les utilisateurs de son organisation Google Workspace.

SelectionItem

Élément que les utilisateurs peuvent sélectionner dans une entrée de sélection, comme une case à cocher ou un contacteur.

Champs
text

string

Texte qui identifie l'article ou qui le décrit aux utilisateurs.

value

string

Valeur associée à cet élément. Le client doit l'utiliser comme valeur de saisie de formulaire.

Pour en savoir plus sur l'utilisation des entrées de formulaire, consultez Recevoir des données de formulaire.

selected

bool

Indique si l'élément est sélectionné par défaut. Si le champ de sélection n'accepte qu'une seule valeur (pour les cases d'option ou les menus déroulants, par exemple), ne définissez ce champ que pour un seul élément.

startIconUri

string

Pour les menus à sélection multiple, URL de l'icône affichée à côté du champ text de l'élément. Compatible avec les fichiers PNG et JPEG. L'URL doit être de type HTTPS. Exemple : https://developers.google.com/chat/images/quickstart-app-avatar.png.

bottomText

string

Pour les menus à sélection multiple, une description textuelle ou un libellé affiché sous le champ text de l'élément.

SelectionType

Format des éléments que les utilisateurs peuvent sélectionner. Les différentes options prennent en charge différents types d'interactions. Par exemple, les utilisateurs peuvent cocher plusieurs cases, mais ne peuvent sélectionner qu'un seul élément dans un menu déroulant.

Chaque entrée de sélection est compatible avec un type de sélection. Par exemple, il n'est pas possible de mélanger des cases à cocher et des boutons bascules.

Enums
CHECK_BOX Une série de cases à cocher. Les utilisateurs peuvent cocher une ou plusieurs cases.
RADIO_BUTTON Ensemble de cases d'option. Les utilisateurs peuvent sélectionner une case d'option.
SWITCH Un ensemble d'interrupteurs. Les utilisateurs peuvent activer un ou plusieurs interrupteurs.
DROPDOWN Un menu déroulant. Les utilisateurs peuvent sélectionner un élément dans le menu.
MULTI_SELECT

Compatible avec les applications Chat, mais pas avec les modules complémentaires Google Workspace

Menu de sélection multiple pour les données statiques ou dynamiques Dans la barre de menu, les utilisateurs sélectionnent un ou plusieurs éléments. Les utilisateurs peuvent également saisir des valeurs pour renseigner les données dynamiques. Par exemple, les utilisateurs peuvent commencer à saisir le nom d'un espace Google Chat, et le widget suggère automatiquement cet espace.

Pour renseigner les éléments d'un menu à sélection multiple, vous pouvez utiliser l'un des types de sources de données suivants:

  • Données statiques: les éléments sont spécifiés en tant qu'objets SelectionItem dans le widget. Jusqu'à 100 éléments.
  • Données Google Workspace: les éléments sont renseignés à partir des données provenant de Google Workspace, comme les utilisateurs Google Workspace ou les espaces Google Chat.
  • Données externes: les éléments sont renseignés à partir d'une source de données externe externe à Google Workspace.

Pour obtenir des exemples d'implémentation des menus à sélection multiple, consultez la page des widgets SelectionInput.

SubmitFormResponse

Réponse à un envoi de formulaire autre que l'obtention d'un conteneur de saisie semi-automatique, qui contient les actions que la fiche doit effectuer et/ou l'application hôte du module complémentaire, et indique si l'état de la carte a changé. Exemple :

{
  "renderActions": {
    "action": {
      "notification": {
        "text": "Email address is added: salam.heba@example.com"
      }
    },
    "hostAppAction": {
      "gmailAction": {
        "openCreatedDraftAction": {
          "draftId": "msg-a:r-79766936926021702",
          "threadServerPermId": "thread-f:15700999851086004"
        }
      }
    }
  }
}
Champs
renderActions

RenderActions

Un ensemble d'instructions d'affichage indiquant à la carte d'effectuer une action et/ou à l'application hôte du module complémentaire d'effectuer une action spécifique à l'application.

stateChanged

bool

Indique si l'état des fiches a changé et si les données des fiches existantes sont obsolètes.

schema

string

Il s'agit d'un champ de schéma no-op qui peut être présent dans le balisage pour la vérification de la syntaxe.

Suggestions

Suggestions de valeurs que les utilisateurs peuvent saisir. Ces valeurs apparaissent lorsque les utilisateurs cliquent dans le champ de saisie de texte. À mesure que les utilisateurs saisissent du texte, les valeurs suggérées filtrent dynamiquement pour correspondre à ce qu'ils ont saisi.

Par exemple, un champ de saisie de texte pour un langage de programmation peut suggérer Java, JavaScript, Python et C++. Lorsque les utilisateurs commencent à saisir Jav, la liste des suggestions filtre pour afficher Java et JavaScript.

Les valeurs suggérées aident les utilisateurs à saisir des valeurs facilement compréhensibles par votre application. Lorsque certains utilisateurs font référence à JavaScript, certains utilisateurs peuvent saisir javascript et d'autres java script. Suggérer JavaScript peut standardiser la façon dont les utilisateurs interagissent avec votre application.

Si spécifié, TextInput.type est toujours SINGLE_LINE, même s'il est défini sur MULTIPLE_LINE.

Champs
items[]

SuggestionItem

Liste de suggestions utilisées pour les recommandations de saisie semi-automatique dans les champs de saisie de texte.

SuggestionItem

Suggestion de valeur que les utilisateurs peuvent saisir dans un champ de saisie de texte.

Champs

Champ d'union content.

content ne peut être qu'un des éléments suivants :

text

string

Valeur d'une entrée suggérée dans un champ de saisie de texte. Cela correspond à ce que les utilisateurs saisissent eux-mêmes.

TextInput

Champ dans lequel les utilisateurs peuvent saisir du texte. Compatible avec les suggestions et les actions en cas de modification. Pour obtenir un exemple dans les applications Google Chat, consultez Saisie de texte.

Les applications de chat reçoivent et peuvent traiter la valeur du texte saisi lors des événements de saisie de formulaire. Pour en savoir plus sur l'utilisation des entrées de formulaire, consultez Recevoir des données de formulaire.

Lorsque vous devez collecter des données non définies ou abstraites auprès des utilisateurs, utilisez une entrée textuelle. Pour collecter des données définies ou énumérées auprès des utilisateurs, utilisez le widget SelectionInput.

Champs
name

string

Nom par lequel l'entrée de texte est identifiée dans un événement de saisie de formulaire.

Pour en savoir plus sur l'utilisation des entrées de formulaire, consultez Recevoir des données de formulaire.

label

string

Texte affiché au-dessus du champ de saisie de texte dans l'interface utilisateur.

Spécifiez un texte qui aidera l'utilisateur à saisir les informations dont votre application a besoin. Par exemple, si vous demandez le nom d'une personne, mais que vous avez besoin de son nom de famille, écrivez surname au lieu de name.

Obligatoire si hintText n'est pas spécifié. Sinon, cette étape est facultative.

hintText

string

Texte affiché sous le champ de saisie de texte destiné à aider les utilisateurs en les invitant à saisir une certaine valeur. Ce texte est toujours visible.

Obligatoire si label n'est pas spécifié. Sinon, cette étape est facultative.

value

string

Valeur saisie par un utilisateur, renvoyée dans un événement de saisie de formulaire.

Pour en savoir plus sur l'utilisation des entrées de formulaire, consultez Recevoir des données de formulaire.

type

Type

Affichage d'un champ de saisie de texte dans l'interface utilisateur Par exemple, si le champ comporte une ou plusieurs lignes.

onChangeAction

Action

Que faire lorsqu'une modification se produit dans le champ de saisie de texte ? (par exemple, lorsqu'un utilisateur ajoute du texte au champ ou supprime du texte).

Par exemple, vous pouvez exécuter une fonction personnalisée ou ouvrir une boîte de dialogue dans Google Chat.

initialSuggestions

Suggestions

Suggestions de valeurs que les utilisateurs peuvent saisir. Ces valeurs apparaissent lorsque les utilisateurs cliquent dans le champ de saisie de texte. À mesure que les utilisateurs saisissent du texte, les valeurs suggérées filtrent dynamiquement pour correspondre à ce qu'ils ont saisi.

Par exemple, un champ de saisie de texte pour un langage de programmation peut suggérer Java, JavaScript, Python et C++. Lorsque les utilisateurs commencent à saisir Jav, la liste des suggestions filtre pour n'afficher que Java et JavaScript.

Les valeurs suggérées aident les utilisateurs à saisir des valeurs facilement compréhensibles par votre application. Lorsque certains utilisateurs font référence à JavaScript, certains utilisateurs peuvent saisir javascript et d'autres java script. Suggérer JavaScript peut standardiser la façon dont les utilisateurs interagissent avec votre application.

Si spécifié, TextInput.type est toujours SINGLE_LINE, même s'il est défini sur MULTIPLE_LINE.

autoCompleteAction

Action

Facultatif. Spécifiez l'action à effectuer lorsque le champ de saisie de texte fournit des suggestions aux utilisateurs qui interagissent avec celui-ci.

Si elles ne sont pas spécifiées, les suggestions sont définies par initialSuggestions et traitées par le client.

Si elle est spécifiée, l'application effectue l'action spécifiée ici, comme exécuter une fonction personnalisée.

Compatible avec les modules complémentaires Google Workspace, mais pas avec les applications Google Chat

placeholderText

string

Texte qui apparaît dans le champ de saisie de texte lorsqu'il est vide. Utilisez ce texte pour inviter les utilisateurs à saisir une valeur. Par exemple, Enter a number from 0 to 100.

Compatible avec les applications Google Chat, mais pas avec les modules complémentaires Google Workspace

Type

Affichage d'un champ de saisie de texte dans l'interface utilisateur Il peut s'agir, par exemple, d'un champ de saisie sur une seule ligne ou sur plusieurs lignes.

Si initialSuggestions est spécifié, type est toujours SINGLE_LINE, même s'il est défini sur MULTIPLE_LINE.

Enums
SINGLE_LINE Le champ de saisie de texte a une hauteur fixe d'une ligne.
MULTIPLE_LINE Le champ de saisie de texte a une hauteur fixe composée de plusieurs lignes.

TextParagraph

Paragraphe de texte qui prend en charge la mise en forme. Pour obtenir un exemple dans les applications Google Chat, consultez Paragraphe de texte. Pour en savoir plus sur la mise en forme du texte, consultez Mettre en forme du texte dans les applications Google Chat et Mettre en forme du texte dans les modules complémentaires Google Workspace.

Champs
text

string

Texte affiché dans le widget.

Widget

Chaque fiche est constituée de widgets.

Un widget est un objet composite qui peut représenter du texte, des images, des boutons ou d'autres types d'objets.

Champs
horizontalAlignment

HorizontalAlignment

Indique si les widgets s'alignent à gauche, à droite ou au centre d'une colonne.

Champ d'union data. Un widget ne peut contenir qu'un seul des éléments suivants. Vous pouvez utiliser plusieurs champs de widget pour afficher davantage d'éléments. data ne peut être qu'un des éléments suivants :
textParagraph

TextParagraph

Affiche un paragraphe de texte. Accepte le texte au format HTML simple. Pour en savoir plus sur la mise en forme du texte, consultez Mettre en forme du texte dans les applications Google Chat et Mettre en forme du texte dans les modules complémentaires Google Workspace.

Par exemple, le code JSON suivant crée un texte en gras:

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

Image

Affiche une image.

Par exemple, le code JSON suivant crée une image avec un texte alternatif:

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

DecoratedText

Affiche un élément textuel décoré.

Par exemple, le code JSON suivant crée un widget de texte décoré affichant l'adresse e-mail:

"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

ButtonList

Une liste de boutons

Par exemple, le code JSON suivant crée deux boutons. Le premier est un bouton de texte bleu et le second est un bouton d'image qui permet d'ouvrir un lien:

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

TextInput

Affiche une zone de texte dans laquelle les utilisateurs peuvent saisir du texte.

Par exemple, le code JSON suivant crée une entrée de texte pour une adresse e-mail:

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

Dans cet autre exemple, le code JSON suivant crée une entrée de texte pour un langage de programmation avec des suggestions statiques:

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

SelectionInput

Affiche une commande de sélection qui permet aux utilisateurs de sélectionner des éléments. Les commandes de sélection peuvent être des cases à cocher, des cases d'option, des boutons bascules ou des menus déroulants.

Par exemple, le code JSON suivant crée un menu déroulant permettant aux utilisateurs de choisir une taille:

"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

DateTimePicker

Affiche un widget permettant aux utilisateurs de saisir une date, une heure, ou une date et une heure.

Par exemple, le code JSON suivant crée un sélecteur de date et d'heure pour planifier un rendez-vous:

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

Divider

Affiche une ligne de séparation horizontale entre les widgets.

Par exemple, le code JSON suivant crée un séparateur:

"divider": {
}
grid

Grid

Affiche une grille avec un ensemble d'éléments.

Une grille accepte un nombre illimité de colonnes et d'éléments. Le nombre de lignes est déterminé par la limite supérieure du nombre d'éléments divisé par le nombre de colonnes. Une grille de 10 éléments et 2 colonnes comporte 5 lignes. Une grille de 11 éléments et 2 colonnes comporte 6 lignes.

Par exemple, le code JSON suivant crée une grille à deux colonnes avec un seul élément:

"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

Columns

Affiche jusqu'à deux colonnes.

Pour inclure plus de deux colonnes ou des lignes, utilisez le widget Grid.

Par exemple, le code JSON suivant crée deux colonnes contenant chacune des paragraphes de texte:

"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"
          }
        }
      ]
    }
  ]
}

HorizontalAlignment

Indique si les widgets s'alignent à gauche, à droite ou au centre d'une colonne.

Enums
HORIZONTAL_ALIGNMENT_UNSPECIFIED Ne pas utiliser. URL indéterminée.
START Valeur par défaut. Aligne les widgets sur la position de départ de la colonne. Pour les mises en page de gauche à droite, s'aligne sur la gauche. Pour les mises en page de droite à gauche, s'aligne sur la droite.
CENTER Aligne les widgets sur le centre de la colonne.
END Aligne les widgets sur la position de fin de la colonne. Pour les mises en page de gauche à droite, aligne les widgets vers la droite. Pour les mises en page de droite à gauche, aligne les widgets sur la gauche.

ImageType

Forme utilisée pour recadrer l'image.

Enums
SQUARE Valeur par défaut. Applique un masque carré à l'image. Par exemple, une image de 4 x 3 devient 3 x 3.
CIRCLE Applique un masque circulaire à l'image. Par exemple, une image 4x3 devient un cercle de 3 diamètres.