- Yêu cầu HTTP
- Tham số đường dẫn
- Nội dung yêu cầu
- Nội dung phản hồi
- Phạm vi uỷ quyền
- VariableData
- ResourceData
- TextFormat
- TextFormatElement
- Khối
- Biểu tượng
- StyledText
- Kiểu
- FontWeight
- Màu sắc
- WrapStyle
- Hyperlink
- ListContainer
- ListType
- ListItem
- Hãy làm thử!
Thông báo cho Google rằng một sự kiện kích hoạt đã xảy ra.
Yêu cầu HTTP
POST https://workspacestudio.googleapis.com/v1/{name=triggers/*}:fire
URL sử dụng cú pháp Chuyển mã gRPC.
Tham số đường dẫn
| Tham số | |
|---|---|
name |
Bắt buộc. Tên tài nguyên của điều kiện kích hoạt. Định dạng: triggers/{trigger_id} |
Nội dung yêu cầu
Nội dung yêu cầu chứa dữ liệu với cấu trúc sau:
| Biểu diễn dưới dạng JSON |
|---|
{ "outputs": { string: { object ( |
| Trường | |
|---|---|
outputs |
Không bắt buộc. Các biến đầu ra từ sự kiện kích hoạt trong ứng dụng bên thứ ba. Một đối tượng chứa danh sách các cặp |
log |
Không bắt buộc. Nhật ký không bắt buộc mà người dùng thấy cho sự kiện kích hoạt. |
requestId |
Không bắt buộc. Giá trị nhận dạng riêng biệt cho yêu cầu này. Chỉ được dùng 36 ký tự ASCII. Bạn nên dùng một UUID ngẫu nhiên. Yêu cầu này chỉ có tính chất luỹ đẳng nếu bạn cung cấp |
Nội dung phản hồi
Nếu thành công, phần nội dung phản hồi sẽ trống.
Phạm vi uỷ quyền
Yêu cầu phạm vi OAuth sau:
https://www.googleapis.com/auth/workspace.studio.trigger
Để biết thêm thông tin, hãy xem Hướng dẫn uỷ quyền.
VariableData
Biểu thị dữ liệu biến, có thể chứa nhiều giá trị thuộc nhiều loại.
| Biểu diễn dưới dạng JSON |
|---|
{
"booleanValues": [
boolean
],
"integerValues": [
string
],
"stringValues": [
string
],
"timestampValues": [
string
],
"resourceReferences": [
string
],
"resourceDataValues": [
{
object ( |
| Trường | |
|---|---|
booleanValues[] |
Giá trị Boolean. |
integerValues[] |
Giá trị số nguyên. |
stringValues[] |
Giá trị chuỗi. |
timestampValues[] |
Giá trị dấu thời gian. Hãy dùng RFC 3339, trong đó dữ liệu đầu ra được tạo sẽ luôn được chuẩn hoá theo múi giờ và sử dụng 0, 3, 6 hoặc 9 chữ số thập phân. Các khoảng lệch khác ngoài "Z" cũng được chấp nhận. Ví dụ: |
resourceReferences[] |
Danh sách mã nhận dạng tài nguyên (ví dụ: "spaces/123"). |
resourceDataValues[] |
Danh sách dữ liệu tài nguyên. |
emailAddressValues[] |
Giá trị địa chỉ email. |
users[] |
Giá trị người dùng Google ở định dạng |
ResourceData
Giá trị tài nguyên dành riêng cho ứng dụng.
| Biểu diễn dưới dạng JSON |
|---|
{
"fields": {
string: {
object ( |
| Trường | |
|---|---|
fields |
Bản đồ của các trường tài nguyên được khoá theo tên trường. Một đối tượng chứa danh sách các cặp |
TextFormat
Một khối văn bản có nhiều lựa chọn định dạng, bao gồm cả kiểu, siêu liên kết và các phần tử tương tác.
| Biểu diễn dưới dạng JSON |
|---|
{
"textFormatElements": [
{
object ( |
| Trường | |
|---|---|
textFormatElements[] |
Không bắt buộc. Một tập hợp các phần tử định dạng văn bản. |
TextFormatElement
Một phần tử duy nhất trong thông báo WorkflowTextFormatMarkup, có thể là một khối văn bản, văn bản có kiểu, siêu liên kết hoặc vùng chứa danh sách.
| Biểu diễn dưới dạng JSON |
|---|
{ "text": string, "chip": { object ( |
| Trường | |
|---|---|
Trường nhóm element. Phần tử đại diện cho một trong số nhiều phần tử định dạng văn bản có thể có. element chỉ có thể là một trong những trạng thái sau: |
|
text |
Văn bản ở định dạng văn bản. |
chip |
Đoạn văn bản có thể nhấp vào ở định dạng văn bản. |
styledText |
Văn bản có kiểu ở định dạng văn bản. |
hyperlink |
Siêu liên kết ở định dạng văn bản. |
listContainer |
Vùng chứa danh sách ở định dạng văn bản. |
Khối
Một khối có thể nhấp ở định dạng văn bản.
| Biểu diễn dưới dạng JSON |
|---|
{
"icon": {
object ( |
| Trường | |
|---|---|
icon |
Không bắt buộc. Biểu tượng xuất hiện trong khối. |
label |
Không bắt buộc. Văn bản xuất hiện trong khối. |
url |
Không bắt buộc. URL để chuyển đến khi nhấp vào khối. |
Biểu tượng
Một biểu tượng trong khối.
| Biểu diễn dưới dạng JSON |
|---|
{ "iconUrl": string, "materialIcon": string } |
| Trường | |
|---|---|
Trường nhóm icons. Biểu tượng xuất hiện trong khối. icons chỉ có thể là một trong những trạng thái sau: |
|
iconUrl |
Hiển thị một biểu tượng tuỳ chỉnh được lưu trữ tại một URL loại HTTPS. Ví dụ: Các loại tệp được hỗ trợ bao gồm |
materialIcon |
Tên biểu tượng được xác định trong Biểu tượng Material của Google, ví dụ: |
StyledText
Phần tử văn bản có các kiểu như in đậm, in nghiêng và màu sắc.
| Biểu diễn dưới dạng JSON |
|---|
{ "text": string, "styles": [ enum ( |
| Trường | |
|---|---|
text |
Không bắt buộc. Nội dung chính của văn bản. |
styles[] |
Không bắt buộc. Một tập hợp các kiểu được áp dụng cho văn bản. |
fontWeight |
Không bắt buộc. Độ đậm của phông chữ trong văn bản. |
color |
Không bắt buộc. Màu sắc của văn bản. |
wrapStyle |
Không bắt buộc. Kiểu xuống dòng của văn bản. |
Kiểu
Enum cho các kiểu văn bản khác nhau, chẳng hạn như in nghiêng, gạch chân, v.v.
| Enum | |
|---|---|
STYLE_UNSPECIFIED |
Không áp dụng kiểu nào. |
ITALIC |
Kiểu chữ nghiêng. |
UNDERLINE |
Kiểu gạch dưới. |
STRIKETHROUGH |
Kiểu gạch ngang chữ. |
LINE_BREAK |
Dấu ngắt dòng. |
UPPERCASE |
Kiểu chữ hoa. |
CODE |
Mã. |
CODE_BLOCK |
Khối mã. |
FontWeight
Enum cho nhiều độ đậm phông chữ.
| Enum | |
|---|---|
FONT_WEIGHT_UNSPECIFIED |
Trọng lượng tiêu chuẩn với độ dày bình thường. |
LIGHT |
Trọng lượng nhẹ hơn và độ dày giảm. |
MEDIUM |
Trọng lượng trung bình giữa chữ mỏng và chữ đậm. |
BOLD |
Trọng lượng nặng hơn với độ dày tăng lên. |
Màu
Biểu thị một màu trong không gian màu RGBA. Biểu thị này được thiết kế để đơn giản hoá việc chuyển đổi sang và từ biểu thị màu bằng nhiều ngôn ngữ thay vì tính nhỏ gọn. Ví dụ: các trường của biểu thức này có thể được cung cấp một cách đơn giản cho hàm khởi tạo của java.awt.Color trong Java; cũng có thể được cung cấp một cách đơn giản cho phương thức +colorWithRed:green:blue:alpha của UIColor trong iOS; và chỉ cần một chút công sức, bạn có thể dễ dàng định dạng thành chuỗi rgba() CSS trong JavaScript.
Trang tham chiếu này không có thông tin về hệ màu tuyệt đối cần dùng để diễn giải giá trị RGB, chẳng hạn như sRGB, Adobe RGB, DCI-P3 và BT.2020. Theo mặc định, các ứng dụng sẽ giả định hệ màu sRGB.
Khi cần xác định sự bằng nhau về màu sắc, các hoạt động triển khai (trừ phi có tài liệu khác) sẽ coi hai màu là bằng nhau nếu tất cả các giá trị đỏ, xanh lục, xanh lam và alpha của chúng khác nhau nhiều nhất là 1e-5.
Ví dụ (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();
}
// ...
Ví dụ (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;
}
// ...
Ví dụ (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('');
};
// ...
| Biểu diễn dưới dạng JSON |
|---|
{ "red": number, "green": number, "blue": number, "alpha": number } |
| Trường | |
|---|---|
red |
Lượng màu đỏ trong màu dưới dạng giá trị trong khoảng [0, 1]. |
green |
Lượng màu xanh lục trong màu dưới dạng giá trị trong khoảng [0, 1]. |
blue |
Lượng màu xanh dương trong màu dưới dạng một giá trị trong khoảng [0, 1]. |
alpha |
Phân số của màu này sẽ được áp dụng cho pixel. Tức là màu pixel cuối cùng được xác định bằng phương trình:
Điều này có nghĩa là giá trị 1.0 tương ứng với màu đồng nhất, trong khi giá trị 0.0 tương ứng với màu hoàn toàn trong suốt. Thao tác này sử dụng một thông báo bao bọc thay vì một đại lượng vô hướng đơn giản để có thể phân biệt giữa giá trị mặc định và giá trị chưa được đặt. Nếu bị bỏ qua, đối tượng màu này sẽ được hiển thị dưới dạng một màu đồng nhất (như thể giá trị alpha đã được chỉ định rõ ràng là 1.0). |
WrapStyle
Liệt kê các kiểu bao bọc khác nhau.
| Enum | |
|---|---|
WRAP_STYLE_UNSPECIFIED |
Chưa chỉ định kiểu xuống dòng. |
NO_WRAP |
Không có kiểu xuống dòng. |
Siêu liên kết
Phần tử siêu liên kết có văn bản và đường liên kết.
| Biểu diễn dưới dạng JSON |
|---|
{ "link": string, "text": string } |
| Trường | |
|---|---|
link |
Bắt buộc. URL đích của siêu liên kết. |
text |
Bắt buộc. Văn bản của siêu liên kết. |
ListContainer
Vùng chứa cho các mục trong danh sách, trong đó mỗi mục trong danh sách có thể chứa nhiều TextFormatElement.
| Biểu diễn dưới dạng JSON |
|---|
{ "listNestLevel": string, "listType": enum ( |
| Trường | |
|---|---|
listNestLevel |
Không bắt buộc. Cấp độ lồng ghép của danh sách. Bắt đầu từ 0 cho cấp cao nhất và tăng thêm 1 cho mỗi danh sách lồng nhau. |
listType |
Không bắt buộc. Loại danh sách. |
listItems[] |
Không bắt buộc. Một tập hợp các mục trong danh sách. |
ListType
Enum cho các loại danh sách khác nhau.
| Enum | |
|---|---|
LIST_TYPE_UNSPECIFIED |
Chưa chỉ định loại danh sách. |
ORDERED |
Danh sách theo thứ tự. |
UNORDERED |
Danh sách không theo thứ tự. |
ListItem
Một mục trong danh sách.
| Biểu diễn dưới dạng JSON |
|---|
{
"textFormatElements": [
{
object ( |
| Trường | |
|---|---|
textFormatElements[] |
Không bắt buộc. Một tập hợp các phần tử định dạng văn bản. |