Method: spaces.messages.create
Koleksiyonlar ile düzeninizi koruyun
İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.
Google Chat alanında mesaj oluşturur. Örnek için Mesaj gönderme bölümüne bakın.
Aşağıdaki kimlik doğrulama türlerini destekler:
- Yetkilendirme kapsamıyla uygulama kimlik doğrulaması:
https://www.googleapis.com/auth/chat.bot
- Aşağıdaki yetkilendirme kapsamlarından biriyle kullanıcı kimlik doğrulaması:
https://www.googleapis.com/auth/chat.messages.create
https://www.googleapis.com/auth/chat.messages
https://www.googleapis.com/auth/chat.import
(yalnızca içe aktarma modundaki alanlar)
Chat, isteğinizde kullandığınız kimlik doğrulama türüne bağlı olarak ileti gönderenini farklı şekilde ilişkilendirir.
Aşağıdaki resimde, uygulama kimlik doğrulamasını kullandığınızda Chat'in bir iletiyi nasıl ilişkilendirdiği gösterilmektedir. Chat, mesajı gönderen olarak Chat uygulamasını gösterir. Mesaj içeriği metin (text
), kart (cardsV2
) ve aksesuar widget'ları (accessoryWidgets
) içerebilir.

Aşağıdaki resimde, kullanıcı kimlik doğrulamasını kullandığınızda Chat'in bir mesajı nasıl ilişkilendirdiği gösterilmektedir. Chat, kullanıcıyı mesajı gönderen olarak gösterir ve adını görüntüleyerek Chat uygulamasını mesaja bağlar. Mesaj içeriği yalnızca metin (text
) içerebilir.

İleti içeriği dahil maksimum ileti boyutu 32.000 bayttır.
Webhook isteklerinde yanıt, mesajın tamamını içermez. Yanıt, istekteki bilgilere ek olarak yalnızca name
ve thread.name
alanlarını doldurur.
HTTP isteği
POST https://chat.googleapis.com/v1/{parent=spaces/*}/messages
URL, gRPC Kod Dönüştürme söz dizimini kullanır.
Yol parametreleri
Parametreler |
parent |
string
Zorunlu. Mesajın oluşturulacağı alanın kaynak adı. Biçim: spaces/{space}
|
Sorgu parametreleri
Parametreler |
threadKey (deprecated) |
string
İsteğe bağlı. Desteği sonlandırıldı: Bunun yerine thread.thread_key politikasını kullanın. İleti dizisinin kimliği. En fazla 4.000 karakter desteklenir. Bir ileti dizisi başlatmak veya mevcut bir ileti dizisine eklemek için bir ileti oluşturun ve threadKey veya thread.name belirtin. Örnek kullanım için Mesaj dizisi başlatma veya yanıtlama başlıklı makaleyi inceleyin.
|
requestId |
string
İsteğe bağlı. Bu mesaj için benzersiz bir istek kimliği. Mevcut bir istek kimliği belirtmek, yeni bir mesaj oluşturmak yerine bu kimlikle oluşturulan mesajı döndürür.
|
messageReplyOption |
enum (MessageReplyOption )
İsteğe bağlı. Bir mesajın mesaj dizisi başlatıp başlatmadığını veya bir mesaj dizisini yanıtlayıp yanıtlamadığını belirtir. Yalnızca adlandırılmış alanlarda desteklenir. Kullanıcı etkileşimlerine yanıt verirken bu alan yoksayılır. İleti dizisindeki etkileşimler için yanıt, aynı ileti dizisinde oluşturulur. Aksi takdirde yanıt yeni bir ileti dizisi olarak oluşturulur.
|
messageId |
string
İsteğe bağlı. Bir ileti için özel kimlik. Chat uygulamalarının, sistem tarafından atanan kimliği mesajın kaynak adında (mesajın name alanında temsil edilir) depolamaya gerek kalmadan mesajı almasına, güncellemesine veya silmesine olanak tanır. Bu alanın değeri aşağıdaki koşulları karşılamalıdır:
client- ile başlar. Örneğin, client-custom-name geçerli bir özel kimliktir ancak custom-name geçerli değildir.
- En fazla 63 karakterden oluşmalı ve yalnızca küçük harf, rakam ve kısa çizgi içermelidir.
- Alan içinde benzersiz olmalıdır. Sohbet uygulamaları farklı mesajlar için aynı özel kimliği kullanamaz.
Ayrıntılar için Mesajlara ad verme başlıklı makaleyi inceleyin.
|
İstek içeriği
İstek metni, Message
öğesinin bir örneğini içerir.
Yanıt gövdesi
Başarılı olursa yanıt metni, yeni oluşturulmuş bir Message
örneği içerir.
Yetkilendirme kapsamları
Aşağıdaki OAuth kapsamlarından birini gerektirir:
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
Daha fazla bilgi için Yetkilendirme kılavuzuna bakın.
MessageReplyOption
Bir mesajın nasıl yanıtlanacağını belirtir. Gelecekte daha fazla eyalet eklenebilir.
Sıralamalar |
MESSAGE_REPLY_OPTION_UNSPECIFIED |
Varsayılan. Yeni bir ileti dizisi başlatır. Bu seçenek kullanıldığında, dahil edilen tüm thread ID veya threadKey yoksayılır. |
REPLY_MESSAGE_FALLBACK_TO_NEW_THREAD |
İleti, thread ID veya threadKey ile belirtilen ileti dizisine yanıt olarak oluşturulur. Bu işlem başarısız olursa ileti yerine yeni bir ileti dizisi başlatılır. |
REPLY_MESSAGE_OR_FAIL |
İleti, thread ID veya threadKey ile belirtilen ileti dizisine yanıt olarak oluşturulur. Yeni bir threadKey kullanılırsa yeni bir ileti dizisi oluşturulur. Mesaj oluşturma işlemi başarısız olursa bunun yerine bir NOT_FOUND hatası döndürülür. |
Aksi belirtilmediği sürece bu sayfanın içeriği Creative Commons Atıf 4.0 Lisansı altında ve kod örnekleri Apache 2.0 Lisansı altında lisanslanmıştır. Ayrıntılı bilgi için Google Developers Site Politikaları'na göz atın. Java, Oracle ve/veya satış ortaklarının tescilli ticari markasıdır.
Son güncelleme tarihi: 2025-07-25 UTC.
[null,null,["Son güncelleme tarihi: 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. |"]]