Method: spaces.messages.create
קל לארגן דפים בעזרת אוספים
אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.
יצירת הודעה במרחב משותף ב-Google Chat. לדוגמה, ראו שליחת הודעה.
יש תמיכה בסוגי אימות הבאים:
- אימות אפליקציה עם היקף ההרשאה:
https://www.googleapis.com/auth/chat.bot
- אימות משתמשים באמצעות אחד מההיקפים הבאים של הרשאות:
https://www.googleapis.com/auth/chat.messages.create
https://www.googleapis.com/auth/chat.messages
https://www.googleapis.com/auth/chat.import
(רווחים במצב ייבוא בלבד)
מערכת Chat משייכת את שולח ההודעה באופן שונה בהתאם לסוג האימות שבו אתם משתמשים בבקשה.
בתמונה הבאה אפשר לראות איך Chat משייך הודעה כשמשתמשים באימות באפליקציה. ב-Chat מוצגת אפליקציית Chat כשולח ההודעה. תוכן ההודעה יכול לכלול טקסט (text
), כרטיסים (cardsV2
) וווידג'טים נלווים (accessoryWidgets
).

בתמונה הבאה אפשר לראות איך Chat משייך הודעה כשמשתמשים באימות משתמשים. ב-Chat, המשתמש מוצג כשולח ההודעה, והשם של אפליקציית Chat מוצג בהודעה כדי לשייך אותה לאפליקציה. תוכן ההודעה יכול להכיל רק טקסט (text
).

הגודל המקסימלי של הודעה, כולל תוכן ההודעה, הוא 32,000 בייטים.
בבקשות webhook, התשובה לא מכילה את ההודעה המלאה. התגובה מאכלסת רק את השדות name
ו-thread.name
, בנוסף למידע שהיה בבקשה.
בקשת HTTP
POST https://chat.googleapis.com/v1/{parent=spaces/*}/messages
כתובת ה-URL משתמשת בתחביר של Transcoding של gRPC.
פרמטרים של נתיב
פרמטרים |
parent |
string
חובה. שם המשאב של המרחב המשותף שבו רוצים ליצור הודעה. פורמט: spaces/{space}
|
פרמטרים של שאילתה
פרמטרים |
threadKey (deprecated) |
string
אופציונלי. האפשרות הזו הוצאה משימוש. במקום זאת, צריך להשתמש ב-thread.thread_key . המזהה של השרשור. אפשר להזין עד 4,000 תווים. כדי להתחיל שרשור או להוסיף הודעה לשרשור קיים, יוצרים הודעה ומציינים את threadKey או את thread.name . דוגמאות לשימוש זמינות במאמר התחלת שרשור הודעות או מענה לשרשור.
|
requestId |
string
אופציונלי. מזהה בקשה ייחודי להודעה הזו. ציון מזהה בקשה קיים מחזיר את ההודעה שנוצרה עם המזהה הזה במקום ליצור הודעה חדשה.
|
messageReplyOption |
enum (MessageReplyOption )
אופציונלי. קובע אם ההודעה מתחילה שרשור או עונה לשרשור קיים. התכונה נתמכת רק במרחבים משותפים עם שם. כשמתבצעת תגובה לאינטראקציות של משתמשים, המערכת מתעלמת מהשדה הזה. באינטראקציות בתוך שרשור, התשובה נוצרת באותו שרשור. אחרת, התשובה תיווצר כשרשור חדש.
|
messageId |
string
אופציונלי. מזהה מותאם אישית להודעה. מאפשר לאפליקציות Chat לקבל, לעדכן או למחוק הודעה בלי לאחסן את המזהה שהמערכת הקצתה בשם המשאב של ההודעה (שמיוצג בשדה name של ההודעה). הערך בשדה הזה חייב לעמוד בדרישות הבאות:
- מתחיל ב-
client- . לדוגמה, הערך client-custom-name הוא מזהה מותאם אישית תקין, אבל הערך custom-name לא תקין.
- מכיל עד 63 תווים, ורק אותיות קטנות, מספרים ומקפים.
- ייחודי במרחב המשותף. אי אפשר להשתמש באותו מזהה מותאם אישית להודעות שונות באפליקציית צ'אט.
מידע נוסף זמין במאמר מתן שם להודעה.
|
גוף הבקשה
גוף הבקשה מכיל מופע של Message
.
גוף התשובה
אם הפעולה בוצעה ללא שגיאות, גוף התגובה יכיל מופע חדש של Message
.
היקפי הרשאה
נדרש אחד מהיקפי ההרשאות הבאים של OAuth:
https://www.googleapis.com/auth/chat.bot
https://www.googleapis.com/auth/chat.import
https://www.googleapis.com/auth/chat.messages
https://www.googleapis.com/auth/chat.messages.create
מידע נוסף זמין במדריך ההרשאות.
MessageReplyOption
מציין איך עונים להודעה. יכול להיות שיתווספו עוד מדינות בעתיד.
טיפוסים בני מנייה (enum) |
MESSAGE_REPLY_OPTION_UNSPECIFIED |
ברירת מחדל. התחלת שרשור חדש. אם משתמשים באפשרות הזו, המערכת מתעלמת מכל thread ID או threadKey שכלולים. |
REPLY_MESSAGE_FALLBACK_TO_NEW_THREAD |
יצירת ההודעה כתשובה לשרשור שצוין על ידי thread ID או threadKey . אם הניסיון נכשל, ההודעה תתחיל שרשור חדש במקום זאת. |
REPLY_MESSAGE_OR_FAIL |
יצירת ההודעה כתשובה לשרשור שצוין על ידי thread ID או threadKey . אם משתמשים ב-threadKey חדש, נוצר שרשור חדש. אם יצירת ההודעה נכשלת, תוחזר במקום זאת שגיאה מסוג NOT_FOUND . |
אלא אם צוין אחרת, התוכן של דף זה הוא ברישיון Creative Commons Attribution 4.0 ודוגמאות הקוד הן ברישיון Apache 2.0. לפרטים, ניתן לעיין במדיניות האתר Google Developers. Java הוא סימן מסחרי רשום של חברת Oracle ו/או של השותפים העצמאיים שלה.
עדכון אחרון: 2025-07-25 (שעון UTC).
[null,null,["עדכון אחרון: 2025-07-25 (שעון UTC)."],[[["\u003cp\u003eCreates a message in a Google Chat space, attributing it to the Chat app or user based on authentication.\u003c/p\u003e\n"],["\u003cp\u003eSupports sending text, cards, and widgets using app authentication, while user authentication only allows text.\u003c/p\u003e\n"],["\u003cp\u003eOffers different message reply options for starting new threads or replying within existing ones.\u003c/p\u003e\n"],["\u003cp\u003eRequires specific authorization scopes for the request, such as \u003ccode\u003echat.bot\u003c/code\u003e or \u003ccode\u003echat.messages\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eProvides a way to name a message with a custom ID for easy retrieval and management within a space.\u003c/p\u003e\n"]]],["This document outlines the process for creating messages in Google Chat spaces via the `create()` method, using either user or app authentication. Messages can include text, cards, and widgets, with a maximum size of 32,000 bytes. The process involves a POST request to a specified URL with path parameters for the space and query parameters like `threadKey`, `requestId`, `messageReplyOption` and `messageId`. The request body defines the message content, and the successful response returns the new message details. It also specifies the required OAuth scopes.\n"],null,["# Method: spaces.messages.create\n\n- [HTTP request](#body.HTTP_TEMPLATE)\n- [Path parameters](#body.PATH_PARAMETERS)\n- [Query parameters](#body.QUERY_PARAMETERS)\n- [Request body](#body.request_body)\n- [Response body](#body.response_body)\n- [Authorization scopes](#body.aspect)\n- [MessageReplyOption](#MessageReplyOption)\n- [Try it!](#try-it)\n\nCreates a message in a Google Chat space. For an example, see [Send a message](https://developers.google.com/workspace/chat/create-messages).\n\nSupports the following types of [authentication](https://developers.google.com/workspace/chat/authenticate-authorize):\n\n- [App authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with the authorization scope:\n - `https://www.googleapis.com/auth/chat.bot`\n- [User authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one of the following authorization scopes:\n - `https://www.googleapis.com/auth/chat.messages.create`\n - `https://www.googleapis.com/auth/chat.messages`\n - `https://www.googleapis.com/auth/chat.import` (import mode spaces only)\n\nChat attributes the message sender differently depending on the type of authentication that you use in your request.\n\nThe following image shows how Chat attributes a message when you use app authentication. Chat displays the Chat app as the message sender. The content of the message can contain text (`text`), cards (`cardsV2`), and accessory widgets (`accessoryWidgets`).\n\nThe following image shows how Chat attributes a message when you use user authentication. Chat displays the user as the message sender and attributes the Chat app to the message by displaying its name. The content of message can only contain text (`text`).\n\nThe maximum message size, including the message contents, is 32,000 bytes.\n\nFor [webhook](https://developers.google.com/workspace/chat/quickstart/webhooks) requests, the response doesn't contain the full message. The response only populates the `name` and `thread.name` fields in addition to the information that was in the request.\n\n### HTTP request\n\n`POST https://chat.googleapis.com/v1/{parent=spaces/*}/messages`\n\nThe URL uses [gRPC Transcoding](https://google.aip.dev/127) syntax.\n\n### Path parameters\n\n| Parameters ||\n|----------|----------------------------------------------------------------------------------------------------------|\n| `parent` | `string` Required. The resource name of the space in which to create a message. Format: `spaces/{space}` |\n\n### Query parameters\n\n| Parameters ||\n|------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `threadKey` **(deprecated)** | `string` Optional. Deprecated: Use [thread.thread_key](/workspace/chat/api/reference/rest/v1/spaces.messages#Message.Thread.FIELDS.thread_key) instead. ID for the thread. Supports up to 4000 characters. To start or add to a thread, create a message and specify a `threadKey` or the [thread.name](/workspace/chat/api/reference/rest/v1/spaces.messages#Message.Thread.FIELDS.name). For example usage, see [Start or reply to a message thread](https://developers.google.com/workspace/chat/create-messages#create-message-thread). |\n| `requestId` | `string` Optional. A unique request ID for this message. Specifying an existing request ID returns the message created with that ID instead of creating a new message. |\n| `messageReplyOption` | `enum (`[MessageReplyOption](/workspace/chat/api/reference/rest/v1/spaces.messages/create#MessageReplyOption)`)` Optional. Specifies whether a message starts a thread or replies to one. Only supported in named spaces. When [responding to user interactions](https://developers.google.com/workspace/chat/receive-respond-interactions), this field is ignored. For interactions within a thread, the reply is created in the same thread. Otherwise, the reply is created as a new thread. |\n| `messageId` | `string` Optional. A custom ID for a message. Lets Chat apps get, update, or delete a message without needing to store the system-assigned ID in the message's resource name (represented in the message `name` field). The value for this field must meet the following requirements: - Begins with `client-`. For example, `client-custom-name` is a valid custom ID, but `custom-name` is not. - Contains up to 63 characters and only lowercase letters, numbers, and hyphens. - Is unique within a space. A Chat app can't use the same custom ID for different messages. For details, see [Name a message](https://developers.google.com/workspace/chat/create-messages#name_a_created_message). |\n\n### Request body\n\nThe request body contains an instance of [Message](/workspace/chat/api/reference/rest/v1/spaces.messages#Message).\n\n### Response body\n\nIf successful, the response body contains a newly created instance of [Message](/workspace/chat/api/reference/rest/v1/spaces.messages#Message).\n\n### Authorization scopes\n\nRequires one of the following OAuth scopes:\n\n- `https://www.googleapis.com/auth/chat.bot`\n- `https://www.googleapis.com/auth/chat.import`\n- `https://www.googleapis.com/auth/chat.messages`\n- `https://www.googleapis.com/auth/chat.messages.create`\n\nFor more information, see the [Authorization guide](/workspace/chat/authenticate-authorize).\n\nMessageReplyOption\n------------------\n\nSpecifies how to reply to a message. More states might be added in the future.\n\n| Enums ||\n|----------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `MESSAGE_REPLY_OPTION_UNSPECIFIED` | Default. Starts a new thread. Using this option ignores any [thread ID](/workspace/chat/api/reference/rest/v1/spaces.messages#Message.Thread.FIELDS.name) or [`threadKey`](/workspace/chat/api/reference/rest/v1/spaces.messages#Message.Thread.FIELDS.thread_key) that's included. |\n| `REPLY_MESSAGE_FALLBACK_TO_NEW_THREAD` | Creates the message as a reply to the thread specified by [thread ID](/workspace/chat/api/reference/rest/v1/spaces.messages#Message.Thread.FIELDS.name) or [`threadKey`](/workspace/chat/api/reference/rest/v1/spaces.messages#Message.Thread.FIELDS.thread_key). If it fails, the message starts a new thread instead. |\n| `REPLY_MESSAGE_OR_FAIL` | Creates the message as a reply to the thread specified by [thread ID](/workspace/chat/api/reference/rest/v1/spaces.messages#Message.Thread.FIELDS.name) or [`threadKey`](/workspace/chat/api/reference/rest/v1/spaces.messages#Message.Thread.FIELDS.thread_key). If a new `threadKey` is used, a new thread is created. If the message creation fails, a `NOT_FOUND` error is returned instead. |"]]