- HTTP অনুরোধ
- পথের পরামিতি
- অনুরোধকারী শরীর
- প্রতিক্রিয়া সংস্থা
- অনুমোদনের পরিধি
- ভেরিয়েবল ডেটা
- রিসোর্স ডেটা
- টেক্সট ফরম্যাট
- টেক্সটফরম্যাটএলিমেন্ট
- চিপ
- আইকন
- শৈলীযুক্ত পাঠ্য
- শৈলী
- ফন্টওয়েট
- রঙ
- র্যাপস্টাইল
- হাইপারলিঙ্ক
- তালিকা কন্টেইনার
- তালিকার ধরন
- তালিকার আইটেম
- চেষ্টা করে দেখুন!
একটি ট্রিগার ইভেন্ট ঘটেছে বলে গুগলকে অবহিত করে।
HTTP অনুরোধ
POST https://workspacestudio.googleapis.com/v1/{name=triggers/*}:fire
URL-টিতে gRPC ট্রান্সকোডিং সিনট্যাক্স ব্যবহার করা হয়েছে।
পথের পরামিতি
| প্যারামিটার | |
|---|---|
name | আবশ্যক। ট্রিগারের রিসোর্স নাম। ফরম্যাট: triggers/{trigger_id} |
অনুরোধকারী শরীর
অনুরোধের মূল অংশে নিম্নলিখিত কাঠামোসহ ডেটা থাকে:
| JSON উপস্থাপনা |
|---|
{ "outputs": { string: { object ( |
| ক্ষেত্র | |
|---|---|
outputs | ঐচ্ছিক। 3P অ্যাপ্লিকেশনের ট্রিগার ইভেন্ট থেকে প্রাপ্ত আউটপুট ভেরিয়েবলসমূহ। একটি অবজেক্ট যা |
log | ঐচ্ছিক। ট্রিগার ইভেন্টের জন্য ব্যবহারকারীর জন্য ঐচ্ছিক লগ। |
requestId | ঐচ্ছিক। এই অনুরোধের জন্য একটি অনন্য শনাক্তকারী। ৩৬টি 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-নরম্যালাইজড হবে এবং এতে ০, ৩, ৬ বা ৯টি ভগ্নাংশীয় অঙ্ক ব্যবহৃত হবে। "Z" ছাড়াও অন্যান্য অফসেটও গ্রহণ করা হয়। উদাহরণ: |
resourceReferences[] | রিসোর্স আইডিগুলোর একটি তালিকা (যেমন "spaces/123")। |
resourceDataValues[] | সম্পদ তথ্যের একটি তালিকা। |
emailAddressValues[] | ইমেল ঠিকানার মান। |
users[] | Google ব্যবহারকারীর মান |
রিসোর্স ডেটা
অ্যাপ্লিকেশন-নির্দিষ্ট রিসোর্স মান।
| JSON উপস্থাপনা |
|---|
{
"fields": {
string: {
object ( |
| ক্ষেত্র | |
|---|---|
fields | ফিল্ডের নাম দ্বারা চিহ্নিত রিসোর্স ফিল্ডগুলোর একটি মানচিত্র। একটি অবজেক্ট যা |
টেক্সট ফরম্যাট
স্টাইল, হাইপারলিঙ্ক এবং ইন্টারেক্টিভ উপাদানসহ সমৃদ্ধ ফরম্যাটিং বিকল্পযুক্ত একটি টেক্সট ব্লক।
| JSON উপস্থাপনা |
|---|
{
"textFormatElements": [
{
object ( |
| ক্ষেত্র | |
|---|---|
textFormatElements[] | ঐচ্ছিক। পাঠ্য বিন্যাসের উপাদানগুলির একটি সংগ্রহ। |
টেক্সটফরম্যাটএলিমেন্ট
WorkflowTextFormatMarkup মেসেজের অন্তর্ভুক্ত একটি একক উপাদান, যা একটি চিপ, স্টাইল করা টেক্সট, একটি হাইপারলিঙ্ক বা একটি লিস্ট কন্টেইনার হতে পারে।
| JSON উপস্থাপনা |
|---|
{ "text": string, "chip": { object ( |
| ক্ষেত্র | |
|---|---|
ইউনিয়ন ফিল্ড element । এমন একটি এলিমেন্ট যা বিভিন্ন সম্ভাব্য টেক্সট ফরম্যাট এলিমেন্টের মধ্যে একটিকে উপস্থাপন করে। element নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে: | |
text | টেক্সট ফরম্যাটে লেখা। |
chip | টেক্সট ফরম্যাটে ক্লিকযোগ্য চিপ। |
styledText | টেক্সট ফরম্যাটে স্টাইল করা টেক্সট। |
hyperlink | টেক্সট ফরম্যাটে হাইপারলিঙ্ক। |
listContainer | টেক্সট ফরম্যাটে তালিকার ধারক। |
চিপ
টেক্সট ফরম্যাটে একটি ক্লিকযোগ্য চিপ।
| JSON উপস্থাপনা |
|---|
{
"icon": {
object ( |
| ক্ষেত্র | |
|---|---|
icon | ঐচ্ছিক। চিপে প্রদর্শিত আইকনটি। |
label | ঐচ্ছিক। চিপে প্রদর্শিত লেখা। |
url | ঐচ্ছিক। চিপটিতে ক্লিক করা হলে যে ইউআরএল-এ যাওয়া হবে। |
আইকন
চিপের মধ্যে একটি আইকন।
| JSON উপস্থাপনা |
|---|
{ "iconUrl": string, "materialIcon": string } |
| ক্ষেত্র | |
|---|---|
ইউনিয়ন ফিল্ড icons । চিপে প্রদর্শিত আইকন। icons নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে: | |
iconUrl | HTTPS URL-এ হোস্ট করা একটি কাস্টম আইকন প্রদর্শন করুন। উদাহরণস্বরূপ: সমর্থিত ফাইল টাইপগুলোর মধ্যে |
materialIcon | গুগল ম্যাটেরিয়াল আইকনে আইকনের নাম হিসেবে |
শৈলীযুক্ত পাঠ্য
বোল্ড, ইটালিক এবং রঙের মতো স্টাইলসহ টেক্সট এলিমেন্ট।
| JSON উপস্থাপনা |
|---|
{ "text": string, "styles": [ enum ( |
| ক্ষেত্র | |
|---|---|
text | ঐচ্ছিক। পাঠ্যটির মূল বিষয়বস্তু। |
styles[] | ঐচ্ছিক। টেক্সটে প্রয়োগ করা বিভিন্ন স্টাইলের একটি সংগ্রহ। |
fontWeight | ঐচ্ছিক। লেখার ফন্টের পুরুত্ব। |
color | ঐচ্ছিক। লেখার রঙ। |
wrapStyle | ঐচ্ছিক। টেক্সটের র্যাপ স্টাইল। |
শৈলী
ইটালিক, আন্ডারলাইন ইত্যাদির মতো বিভিন্ন টেক্সট স্টাইলের জন্য এনাম।
| এনাম | |
|---|---|
STYLE_UNSPECIFIED | কোনো স্টাইল প্রয়োগ করা হয়নি। |
ITALIC | ইটালিক শৈলী। |
UNDERLINE | আন্ডারলাইন স্টাইল। |
STRIKETHROUGH | স্ট্রাইকথ্রু স্টাইল। |
LINE_BREAK | লাইন ব্রেক। |
UPPERCASE | বড় হাতের অক্ষর শৈলী। |
CODE | কোড। |
CODE_BLOCK | কোড ব্লক। |
ফন্টওয়েট
বিভিন্ন ফন্ট ওয়েটের জন্য এনাম।
| এনাম | |
|---|---|
FONT_WEIGHT_UNSPECIFIED | সাধারণ পুরুত্বসহ আদর্শ ওজন। |
LIGHT | ওজনে হালকা এবং পুরুত্ব কম। |
MEDIUM | হালকা এবং গাঢ়ের মাঝামাঝি ওজন। |
BOLD | বর্ধিত পুরুত্বের কারণে ওজনে ভারী। |
রঙ
এটি 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 | রঙে লালের পরিমাণ, যা [0, 1] ব্যবধির একটি মান। |
green | রঙে সবুজের পরিমাণ, যা [0, 1] ব্যবধির মধ্যে একটি মান। |
blue | রঙটিতে নীলের পরিমাণ, যা [0, 1] ব্যবধির একটি মান। |
alpha | এই রঙের যে অংশটুকু পিক্সেলে প্রয়োগ করা হবে। অর্থাৎ, চূড়ান্ত পিক্সেল রঙটি নিম্নলিখিত সমীকরণ দ্বারা সংজ্ঞায়িত করা হয়: এর মানে হলো, ১.০ মানটি একটি নিরেট রঙকে বোঝায়, যেখানে ০.০ মানটি একটি সম্পূর্ণ স্বচ্ছ রঙকে বোঝায়। এখানে একটি সাধারণ ফ্লোট স্কেলারের পরিবর্তে একটি র্যাপার মেসেজ ব্যবহার করা হয়, যাতে ডিফল্ট মান এবং সেট না করা মানের মধ্যে পার্থক্য করা সম্ভব হয়। যদি এটি বাদ দেওয়া হয়, তবে এই কালার অবজেক্টটি একটি নিরেট রঙ হিসাবে রেন্ডার করা হয় (যেন আলফা মানকে স্পষ্টভাবে ১.০ দেওয়া হয়েছে)। |
র্যাপস্টাইল
বিভিন্ন র্যাপ স্টাইলের জন্য এনাম।
| এনাম | |
|---|---|
WRAP_STYLE_UNSPECIFIED | কোনো র্যাপ স্টাইল নির্দিষ্ট করা হয়নি। |
NO_WRAP | মোড়ানো শৈলী নয়। |
হাইপারলিঙ্ক
টেক্সট এবং লিঙ্ক সহ হাইপারলিঙ্ক এলিমেন্ট।
| JSON উপস্থাপনা |
|---|
{ "link": string, "text": string } |
| ক্ষেত্র | |
|---|---|
link | আবশ্যক। হাইপারলিঙ্কটির গন্তব্য ইউআরএল। |
text | আবশ্যক। হাইপারলিংকের লেখা। |
তালিকা কন্টেইনার
তালিকার আইটেমগুলোর জন্য কন্টেইনার, যেখানে প্রতিটি আইটেমে একাধিক TextFormatElement থাকতে পারে।
| JSON উপস্থাপনা |
|---|
{ "listNestLevel": string, "listType": enum ( |
| ক্ষেত্র | |
|---|---|
listNestLevel | ঐচ্ছিক। তালিকার পরবর্তী স্তর। সর্বোচ্চ স্তরের জন্য এর মান ০ থেকে শুরু হয় এবং প্রতিটি নেস্টেড তালিকার জন্য ১ করে বৃদ্ধি পায়। |
listType | ঐচ্ছিক। তালিকার ধরণ। |
listItems[] | ঐচ্ছিক। তালিকার আইটেমগুলোর একটি সংগ্রহ। |
তালিকার ধরন
বিভিন্ন ধরণের তালিকার জন্য Enum।
| এনাম | |
|---|---|
LIST_TYPE_UNSPECIFIED | কোনো তালিকার ধরণ নির্দিষ্ট করা হয়নি। |
ORDERED | ক্রমিক তালিকা। |
UNORDERED | অক্রমিক তালিকা। |
তালিকার আইটেম
তালিকার একটি আইটেম।
| JSON উপস্থাপনা |
|---|
{
"textFormatElements": [
{
object ( |
| ক্ষেত্র | |
|---|---|
textFormatElements[] | ঐচ্ছিক। পাঠ্য বিন্যাসের উপাদানগুলির একটি সংগ্রহ। |