- HTTP-запрос
- Параметры пути
- Текст запроса
- Ответный текст
- Области полномочий
- ПеременныеДанные
- ResourceData
- Текстовый формат
- TextFormatElement
- Чип
- Икона
- StyledText
- Стиль
- FontWeight
- Цвет
- WrapStyle
- Гиперссылка
- ListContainer
- ListType
- Элемент списка
- Попробуйте!
Уведомляет Google о том, что произошло событие-триггер.
HTTP-запрос
POST https://workspacestudio.googleapis.com/v1/{name=triggers/*}:fire
В URL-адресе используется синтаксис транскодирования gRPC .
Параметры пути
| Параметры | |
|---|---|
name | Обязательно. Имя ресурса триггера. Формат: triggers/{trigger_id} |
Текст запроса
Тело запроса содержит данные следующей структуры:
| JSON-представление |
|---|
{ "outputs": { string: { object ( |
| Поля | |
|---|---|
outputs | Необязательно. Выходные переменные из события-триггера в стороннем приложении. Объект, содержащий список пар |
log | Необязательно. Необязательный журнал событий, отображаемый пользователю, для события-триггера. |
requestId | Необязательно. Уникальный идентификатор для этого запроса. Ограничен 36 символами ASCII. Рекомендуется использовать случайный UUID. Этот запрос является идемпотентным только в том случае, если указан |
Ответный текст
В случае успеха тело ответа будет пустым.
Области полномочий
Требуется следующая область действия OAuth:
-
https://www.googleapis.com/auth/workspace.studio.trigger
Для получения более подробной информации см. руководство по авторизации .
ПеременныеДанные
Представляет собой переменные данные, которые могут содержать несколько значений разных типов.
| JSON-представление |
|---|
{
"booleanValues": [
boolean
],
"integerValues": [
string
],
"stringValues": [
string
],
"timestampValues": [
string
],
"resourceReferences": [
string
],
"resourceDataValues": [
{
object ( |
| Поля | |
|---|---|
booleanValues[] | Логические значения. |
integerValues[] | Целочисленные значения. |
stringValues[] | Строковые значения. |
timestampValues[] | Значения временных меток. Используется RFC 3339, согласно которому генерируемый вывод всегда будет Z-нормализован и будет содержать 0, 3, 6 или 9 дробных знаков. Допускаются также смещения, отличные от "Z". Примеры: |
resourceReferences[] | Список идентификаторов ресурсов (например, "spaces/123"). |
resourceDataValues[] | Список данных о ресурсах. |
emailAddressValues[] | Значения адресов электронной почты. |
users[] | Значения для пользователей Google имеют формат |
ResourceData
Значение ресурса, специфичное для приложения.
| JSON-представление |
|---|
{
"fields": {
string: {
object ( |
| Поля | |
|---|---|
fields | Карта полей ресурса, отсортированная по имени поля. Объект, содержащий список пар |
Текстовый формат
Блок текста с широкими возможностями форматирования, включая стили, гиперссылки и интерактивные элементы.
| JSON-представление |
|---|
{
"textFormatElements": [
{
object ( |
| Поля | |
|---|---|
textFormatElements[] | Необязательно. Набор элементов форматирования текста. |
TextFormatElement
Отдельный элемент в сообщении WorkflowTextFormatMarkup, который может представлять собой фрагмент текста, стилизованный текст, гиперссылку или контейнер списка.
| JSON-представление |
|---|
{ "text": string, "chip": { object ( |
| Поля | |
|---|---|
element поля объединения. Элемент, представляющий один из нескольких возможных элементов форматирования текста. element может быть только одним из следующих: | |
text | Текст в текстовом формате. |
chip | Интерактивный чип в текстовом формате. |
styledText | Текст, оформленный в текстовом формате. |
hyperlink | Гиперссылка в текстовом формате. |
listContainer | Список контейнеров в текстовом формате. |
Чип
Интерактивная фишка в текстовом формате.
| JSON-представление |
|---|
{
"icon": {
object ( |
| Поля | |
|---|---|
icon | Необязательно. Значок, отображаемый на чипе. |
label | Необязательно. Текст, отображаемый на чипе. |
url | Необязательно. URL-адрес, на который будет осуществлен переход при нажатии на чип. |
Икона
Значок на чипе.
| JSON-представление |
|---|
{ "iconUrl": string, "materialIcon": string } |
| Поля | |
|---|---|
icons полей объединения. Значок, отображаемый на чипе. icons могут быть только одним из следующих: | |
iconUrl | Отобразить пользовательскую иконку, размещенную по адресу HTTPS. Например: Поддерживаются файлы следующих форматов: |
materialIcon | Имя значка, определенное в Google Material Icon , например, |
StyledText
Текстовый элемент с возможностью выбора стиля, например, жирный, курсив и цвет.
| JSON-представление |
|---|
{ "text": string, "styles": [ enum ( |
| Поля | |
|---|---|
text | Необязательно. Основное содержание текста. |
styles[] | Необязательно. Набор стилей, применяемых к тексту. |
fontWeight | Необязательно. Толщина шрифта текста. |
color | Необязательно. Цвет текста. |
wrapStyle | Необязательно. Стиль переноса текста. |
Стиль
Перечисление для различных стилей текста, таких как курсив, подчеркивание и т. д.
| Перечисления | |
|---|---|
STYLE_UNSPECIFIED | Стиль не применялся. |
ITALIC | Курсив. |
UNDERLINE | Подчеркните стиль. |
STRIKETHROUGH | Зачеркнутый стиль. |
LINE_BREAK | Разрыв строки. |
UPPERCASE | Стиль написания заглавными буквами. |
CODE | Код. |
CODE_BLOCK | Блок кода. |
FontWeight
Перечисление для выбора различной толщины шрифта.
| Перечисления | |
|---|---|
FONT_WEIGHT_UNSPECIFIED | Стандартный вес при нормальной толщине. |
LIGHT | Меньший вес при меньшей толщине. |
MEDIUM | Промежуточный оттенок между светлым и жирным. |
BOLD | Увеличенный вес при большей толщине. |
Цвет
Представляет цвет в цветовом пространстве RGBA. Это представление разработано для упрощения преобразования в цветовые представления и обратно в различных языках программирования, а не для компактности. Например, поля этого представления можно легко передать конструктору java.awt.Color в Java; его также легко передать методу +colorWithRed:green:blue:alpha класса UIColor в iOS; и, приложив немного усилий, его можно легко отформатировать в строку CSS rgba() в JavaScript.
На этой справочной странице отсутствует информация об абсолютном цветовом пространстве, которое следует использовать для интерпретации значения RGB — например, sRGB, Adobe RGB, DCI-P3 и BT.2020. По умолчанию приложения должны использовать цветовое пространство sRGB.
Когда необходимо определить равенство цветов, в реализациях, если не указано иное, два цвета считаются равными, если значения красного, зеленого, синего и альфа-канала различаются не более чем на 1e-5 .
Пример (Java):
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 / Objective-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;
}
// ...
Пример (JavaScript):
// ...
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 | Количество красного цвета в заданном диапазоне значений находится в интервале [0, 1]. |
green | Количество зеленого цвета в заданном диапазоне значений находится в интервале [0, 1]. |
blue | Количество синего цвета в заданном цвете выражается значением в интервале [0, 1]. |
alpha | Доля этого цвета, которая должна быть применена к пикселю. То есть, окончательный цвет пикселя определяется уравнением: Это означает, что значение 1,0 соответствует сплошному цвету, а значение 0,0 — полностью прозрачному цвету. Используется оберточное сообщение, а не простое скалярное значение с плавающей запятой, что позволяет различать значение по умолчанию и значение, которое не задано. Если этот параметр опущен, объект цвета отображается как сплошной цвет (как если бы значению альфа-канала было явно присвоено значение 1,0). |
WrapStyle
Перечисление для различных стилей обертывания.
| Перечисления | |
|---|---|
WRAP_STYLE_UNSPECIFIED | Стиль обертывания не указан. |
NO_WRAP | Без облегающего стиля. |
Гиперссылка
Элемент гиперссылки с текстом и ссылкой.
| JSON-представление |
|---|
{ "link": string, "text": string } |
| Поля | |
|---|---|
link | Обязательно. Целевой URL гиперссылки. |
text | Обязательно. Текст гиперссылки. |
ListContainer
Контейнер для элементов списка, где каждый элемент списка может содержать несколько элементов форматирования текста (TextFormatElement).
| JSON-представление |
|---|
{ "listNestLevel": string, "listType": enum ( |
| Поля | |
|---|---|
listNestLevel | Необязательный параметр. Уровень вложенности списка. Начинается с 0 для верхнего уровня и увеличивается на 1 для каждого последующего вложенного списка. |
listType | Необязательный параметр. Тип списка. |
listItems[] | Необязательно. Подборка пунктов списка. |
ListType
Перечисление для различных типов списков.
| Перечисления | |
|---|---|
LIST_TYPE_UNSPECIFIED | Тип списка не указан. |
ORDERED | Упорядоченный список. |
UNORDERED | Неупорядоченный список. |
Элемент списка
Пункт списка.
| JSON-представление |
|---|
{
"textFormatElements": [
{
object ( |
| Поля | |
|---|---|
textFormatElements[] | Необязательно. Набор элементов форматирования текста. |