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 アプリの名前が表示されることで、Chat アプリがメッセージに関連付けられます。メッセージの内容にはテキスト(text)のみを含めることができます。

ユーザー認証で送信されたメッセージ

メッセージの内容を含むメッセージの最大サイズは 32,000 バイトです。

Webhook リクエストの場合、レスポンスにメッセージ全体が含まれていません。レスポンスには、リクエストに含まれていた情報に加えて、name フィールドと thread.name フィールドのみが入力されます。

HTTP リクエスト

POST https://chat.googleapis.com/v1/{parent=spaces/*}/messages

この URL は gRPC Transcoding 構文を使用します。

パスパラメータ

パラメータ
parent

string

必須。メッセージを作成するスペースのリソース名。

形式: spaces/{space}

クエリ パラメータ

パラメータ
threadKey
(deprecated)

string

省略可。非推奨: 代わりに、thread.thread_key を使用してください。スレッドの ID。最大 4,000 文字に対応します。スレッドを開始または追加するには、メッセージを作成して threadKey または thread.name を指定します。使用例については、メッセージ スレッドを開始または返信するをご覧ください。

requestId

string

省略可。このメッセージの一意のリクエスト ID。既存のリクエスト ID を指定すると、新しいメッセージが作成されるのではなく、その ID で作成されたメッセージが返されます。

messageReplyOption

enum (MessageReplyOption)

省略可。メッセージがスレッドを開始するか、スレッドに返信するのかを指定します。名前付きスペースでのみサポートされます。

ユーザー インタラクションに応答する場合、このフィールドは無視されます。スレッド内のやり取りの場合、返信は同じスレッドに作成されます。それ以外の場合は、返信は新しいスレッドとして作成されます。

messageId

string

省略可。メッセージのカスタム ID。Chat 用アプリが、メッセージのリソース名(メッセージの name フィールドで表される)にシステム割り当て ID を保存することなく、メッセージを取得、更新、削除できるようにします。

このフィールドの値は、次の要件を満たす必要があります。

  • client- で始まります。たとえば、client-custom-name は有効なカスタム ID ですが、custom-name は無効です。
  • 63 文字以下で、小文字、数字、ハイフンのみが含まれます。
  • スペース内で一意である。Chat 用アプリで、異なるメッセージに同じカスタム ID を使用することはできません。

詳しくは、メッセージに名前を付けるをご覧ください。

createMessageNotificationOptions

object (CreateMessageNotificationOptions)

省略可。メッセージが投稿されたときの通知の動作を制御します。詳しくは、通知を強制的に表示する、またはサイレント メッセージを送信するをご覧ください。

リクエストの本文

リクエストの本文には 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

メッセージへの返信方法を指定します。今後、状態が追加される可能性があります。

列挙型
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 エラーが返されます。

CreateMessageNotificationOptions

メッセージが投稿されたときの通知動作のオプション。

JSON 表現
{
  "notificationType": enum (NotificationType)
}
フィールド
notificationType

enum (NotificationType)

メッセージの通知タイプ。

NotificationType

メッセージの通知タイプ オプション。

列挙型
NOTIFICATION_TYPE_NONE デフォルトの動作。通知の動作は、人間が Chat UI を使用してメッセージを送信した場合と同様で、人間の送信者には通知が送信されません。
NOTIFICATION_TYPE_FORCE_NOTIFY

受信者に強制的に通知します。これにより、ユーザーのスペースの通知設定と Chat のサイレント モードの設定がバイパスされます。このオプションでは、デバイスレベルのサイレント モード設定はバイパスされません。

アプリの認証が必要です。

NOTIFICATION_TYPE_SILENT

受信者に通知せず、メールを未読としてマークしません。これは、ユーザーが会話をミュートしたり、チャットのサイレント モードを有効にしたりした場合と同様の動作になります。

アプリの認証が必要です。