Interface ChatServiceGrpc.AsyncService (0.18.0)

public static interface ChatServiceGrpc.AsyncService

Enables developers to build Chat apps and integrations on Google Chat Platform.

Methods

completeImportSpace(CompleteImportSpaceRequest request, StreamObserver<CompleteImportSpaceResponse> responseObserver)

public default void completeImportSpace(CompleteImportSpaceRequest request, StreamObserver<CompleteImportSpaceResponse> responseObserver)

Completes the import process for the specified space and makes it visible to users. Requires app authentication and domain-wide delegation. For more information, see Authorize Google Chat apps to import data.

Parameters
Name Description
request CompleteImportSpaceRequest
responseObserver io.grpc.stub.StreamObserver<CompleteImportSpaceResponse>

createMembership(CreateMembershipRequest request, StreamObserver<Membership> responseObserver)

public default void createMembership(CreateMembershipRequest request, StreamObserver<Membership> responseObserver)

Creates a membership for the calling Chat app, a user, or a Google Group. Creating memberships for other Chat apps isn't supported. When creating a membership, if the specified member has their auto-accept policy turned off, then they're invited, and must accept the space invitation before joining. Otherwise, creating a membership adds the member directly to the specified space. Requires user authentication. For example usage, see:

Parameters
Name Description
request CreateMembershipRequest
responseObserver io.grpc.stub.StreamObserver<Membership>

createMessage(CreateMessageRequest request, StreamObserver<Message> responseObserver)

public default void createMessage(CreateMessageRequest request, StreamObserver<Message> responseObserver)

Creates a message in a Google Chat space. For an example, see Send a message. The create() method requires either user or app authentication. Chat attributes the message sender differently depending on the type of authentication that you use in your request. The 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). !Message sent with app authentication The 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). !Message sent with user authentication The maximum message size, including the message contents, is 32,000 bytes.

Parameters
Name Description
request CreateMessageRequest
responseObserver io.grpc.stub.StreamObserver<Message>

createReaction(CreateReactionRequest request, StreamObserver<Reaction> responseObserver)

public default void createReaction(CreateReactionRequest request, StreamObserver<Reaction> responseObserver)

Creates a reaction and adds it to a message. Only unicode emojis are supported. For an example, see Add a reaction to a message. Requires user authentication.

Parameters
Name Description
request CreateReactionRequest
responseObserver io.grpc.stub.StreamObserver<Reaction>

createSpace(CreateSpaceRequest request, StreamObserver<Space> responseObserver)

public default void createSpace(CreateSpaceRequest request, StreamObserver<Space> responseObserver)

Creates a space with no members. Can be used to create a named space. Spaces grouped by topics aren't supported. For an example, see Create a space. If you receive the error message ALREADY_EXISTS when creating a space, try a different displayName. An existing space within the Google Workspace organization might already use this display name. If you're a member of the Developer Preview program, you can create a group chat in import mode using spaceType.GROUP_CHAT. Requires user authentication.

Parameters
Name Description
request CreateSpaceRequest
responseObserver io.grpc.stub.StreamObserver<Space>

deleteMembership(DeleteMembershipRequest request, StreamObserver<Membership> responseObserver)

public default void deleteMembership(DeleteMembershipRequest request, StreamObserver<Membership> responseObserver)

Deletes a membership. For an example, see Remove a user or a Google Chat app from a space. Requires user authentication.

Parameters
Name Description
request DeleteMembershipRequest
responseObserver io.grpc.stub.StreamObserver<Membership>

deleteMessage(DeleteMessageRequest request, StreamObserver<Empty> responseObserver)

public default void deleteMessage(DeleteMessageRequest request, StreamObserver<Empty> responseObserver)

Deletes a message. For an example, see Delete a message. Requires authentication. Supports app authentication and user authentication. When using app authentication, requests can only delete messages created by the calling Chat app.

Parameters
Name Description
request DeleteMessageRequest
responseObserver io.grpc.stub.StreamObserver<Empty>

deleteReaction(DeleteReactionRequest request, StreamObserver<Empty> responseObserver)

public default void deleteReaction(DeleteReactionRequest request, StreamObserver<Empty> responseObserver)

Deletes a reaction to a message. Only unicode emojis are supported. For an example, see Delete a reaction. Requires user authentication.

Parameters
Name Description
request DeleteReactionRequest
responseObserver io.grpc.stub.StreamObserver<Empty>

deleteSpace(DeleteSpaceRequest request, StreamObserver<Empty> responseObserver)

public default void deleteSpace(DeleteSpaceRequest request, StreamObserver<Empty> responseObserver)

Deletes a named space. Always performs a cascading delete, which means that the space's child resources—like messages posted in the space and memberships in the space—are also deleted. For an example, see Delete a space. Requires user authentication from a user who has permission to delete the space.

Parameters
Name Description
request DeleteSpaceRequest
responseObserver io.grpc.stub.StreamObserver<Empty>

findDirectMessage(FindDirectMessageRequest request, StreamObserver<Space> responseObserver)

public default void findDirectMessage(FindDirectMessageRequest request, StreamObserver<Space> responseObserver)

Returns the existing direct message with the specified user. If no direct message space is found, returns a 404 NOT_FOUND error. For an example, see Find a direct message. With user authentication, returns the direct message space between the specified user and the authenticated user. With app authentication, returns the direct message space between the specified user and the calling Chat app. Requires user authentication or app authentication.

Parameters
Name Description
request FindDirectMessageRequest
responseObserver io.grpc.stub.StreamObserver<Space>

getAttachment(GetAttachmentRequest request, StreamObserver<Attachment> responseObserver)

public default void getAttachment(GetAttachmentRequest request, StreamObserver<Attachment> responseObserver)

Gets the metadata of a message attachment. The attachment data is fetched using the media API. For an example, see Get metadata about a message attachment. Requires app authentication.

Parameters
Name Description
request GetAttachmentRequest
responseObserver io.grpc.stub.StreamObserver<Attachment>

getMembership(GetMembershipRequest request, StreamObserver<Membership> responseObserver)

public default void getMembership(GetMembershipRequest request, StreamObserver<Membership> responseObserver)

Returns details about a membership. For an example, see Get details about a user's or Google Chat app's membership. Requires authentication. Supports app authentication and user authentication.

Parameters
Name Description
request GetMembershipRequest
responseObserver io.grpc.stub.StreamObserver<Membership>

getMessage(GetMessageRequest request, StreamObserver<Message> responseObserver)

public default void getMessage(GetMessageRequest request, StreamObserver<Message> responseObserver)

Returns details about a message. For an example, see Get details about a message. Requires authentication. Supports app authentication and user authentication. Note: Might return a message from a blocked member or space.

Parameters
Name Description
request GetMessageRequest
responseObserver io.grpc.stub.StreamObserver<Message>

getSpace(GetSpaceRequest request, StreamObserver<Space> responseObserver)

public default void getSpace(GetSpaceRequest request, StreamObserver<Space> responseObserver)

Returns details about a space. For an example, see Get details about a space. Requires authentication. Supports app authentication and user authentication.

Parameters
Name Description
request GetSpaceRequest
responseObserver io.grpc.stub.StreamObserver<Space>

getSpaceEvent(GetSpaceEventRequest request, StreamObserver<SpaceEvent> responseObserver)

public default void getSpaceEvent(GetSpaceEventRequest request, StreamObserver<SpaceEvent> responseObserver)

Returns an event from a Google Chat space. The event payload contains the most recent version of the resource that changed. For example, if you request an event about a new message but the message was later updated, the server returns the updated Message resource in the event payload. Note: The permissionSettings field is not returned in the Space object of the Space event data for this request. Requires user authentication. To get an event, the authenticated user must be a member of the space. For an example, see Get details about an event from a Google Chat space.

Parameters
Name Description
request GetSpaceEventRequest
responseObserver io.grpc.stub.StreamObserver<SpaceEvent>

getSpaceReadState(GetSpaceReadStateRequest request, StreamObserver<SpaceReadState> responseObserver)

public default void getSpaceReadState(GetSpaceReadStateRequest request, StreamObserver<SpaceReadState> responseObserver)

Returns details about a user's read state within a space, used to identify read and unread messages. For an example, see Get details about a user's space read state. Requires user authentication.

Parameters
Name Description
request GetSpaceReadStateRequest
responseObserver io.grpc.stub.StreamObserver<SpaceReadState>

getThreadReadState(GetThreadReadStateRequest request, StreamObserver<ThreadReadState> responseObserver)

public default void getThreadReadState(GetThreadReadStateRequest request, StreamObserver<ThreadReadState> responseObserver)

Returns details about a user's read state within a thread, used to identify read and unread messages. For an example, see Get details about a user's thread read state. Requires user authentication.

Parameters
Name Description
request GetThreadReadStateRequest
responseObserver io.grpc.stub.StreamObserver<ThreadReadState>

listMemberships(ListMembershipsRequest request, StreamObserver<ListMembershipsResponse> responseObserver)

public default void listMemberships(ListMembershipsRequest request, StreamObserver<ListMembershipsResponse> responseObserver)

Lists memberships in a space. For an example, see List users and Google Chat apps in a space. Listing memberships with app authentication lists memberships in spaces that the Chat app has access to, but excludes Chat app memberships, including its own. Listing memberships with User authentication lists memberships in spaces that the authenticated user has access to. Requires authentication. Supports app authentication and user authentication.

Parameters
Name Description
request ListMembershipsRequest
responseObserver io.grpc.stub.StreamObserver<ListMembershipsResponse>

listMessages(ListMessagesRequest request, StreamObserver<ListMessagesResponse> responseObserver)

public default void listMessages(ListMessagesRequest request, StreamObserver<ListMessagesResponse> responseObserver)

Lists messages in a space that the caller is a member of, including messages from blocked members and spaces. If you list messages from a space with no messages, the response is an empty object. When using a REST/HTTP interface, the response contains an empty JSON object, {}. For an example, see List messages. Requires user authentication.

Parameters
Name Description
request ListMessagesRequest
responseObserver io.grpc.stub.StreamObserver<ListMessagesResponse>

listReactions(ListReactionsRequest request, StreamObserver<ListReactionsResponse> responseObserver)

public default void listReactions(ListReactionsRequest request, StreamObserver<ListReactionsResponse> responseObserver)

Lists reactions to a message. For an example, see List reactions for a message. Requires user authentication.

Parameters
Name Description
request ListReactionsRequest
responseObserver io.grpc.stub.StreamObserver<ListReactionsResponse>

listSpaceEvents(ListSpaceEventsRequest request, StreamObserver<ListSpaceEventsResponse> responseObserver)

public default void listSpaceEvents(ListSpaceEventsRequest request, StreamObserver<ListSpaceEventsResponse> responseObserver)

Lists events from a Google Chat space. For each event, the payload contains the most recent version of the Chat resource. For example, if you list events about new space members, the server returns Membership resources that contain the latest membership details. If new members were removed during the requested period, the event payload contains an empty Membership resource. Requires user authentication. To list events, the authenticated user must be a member of the space. For an example, see List events from a Google Chat space.

Parameters
Name Description
request ListSpaceEventsRequest
responseObserver io.grpc.stub.StreamObserver<ListSpaceEventsResponse>

listSpaces(ListSpacesRequest request, StreamObserver<ListSpacesResponse> responseObserver)

public default void listSpaces(ListSpacesRequest request, StreamObserver<ListSpacesResponse> responseObserver)

Lists spaces the caller is a member of. Group chats and DMs aren't listed until the first message is sent. For an example, see List spaces. Requires authentication. Supports app authentication and user authentication. Lists spaces visible to the caller or authenticated user. Group chats and DMs aren't listed until the first message is sent. To list all named spaces by Google Workspace organization, use the spaces.search() method using Workspace administrator privileges instead.

Parameters
Name Description
request ListSpacesRequest
responseObserver io.grpc.stub.StreamObserver<ListSpacesResponse>

searchSpaces(SearchSpacesRequest request, StreamObserver<SearchSpacesResponse> responseObserver)

public default void searchSpaces(SearchSpacesRequest request, StreamObserver<SearchSpacesResponse> responseObserver)

Returns a list of spaces in a Google Workspace organization based on an administrator's search. Requires user authentication with administrator privileges. In the request, set use_admin_access to true.

Parameters
Name Description
request SearchSpacesRequest
responseObserver io.grpc.stub.StreamObserver<SearchSpacesResponse>

setUpSpace(SetUpSpaceRequest request, StreamObserver<Space> responseObserver)

public default void setUpSpace(SetUpSpaceRequest request, StreamObserver<Space> responseObserver)

Creates a space and adds specified users to it. The calling user is automatically added to the space, and shouldn't be specified as a membership in the request. For an example, see Set up a space with initial members. To specify the human members to add, add memberships with the appropriate membership.member.name. To add a human user, use users/{user}, where {user} can be the email address for the user. For users in the same Workspace organization {user} can also be the id for the person from the People API, or the id for the user in the Directory API. For example, if the People API Person profile ID for user@example.com is 123456789, you can add the user to the space by setting the membership.member.name to users/user@example.com or users/123456789. To specify the Google groups to add, add memberships with the appropriate membership.group_member.name. To add or invite a Google group, use groups/{group}, where {group} is the id for the group from the Cloud Identity Groups API. For example, you can use Cloud Identity Groups lookup API to retrieve the ID 123456789 for group email group@example.com, then you can add the group to the space by setting the membership.group_member.name to groups/123456789. Group email is not supported, and Google groups can only be added as members in named spaces. For a named space or group chat, if the caller blocks, or is blocked by some members, or doesn't have permission to add some members, then those members aren't added to the created space. To create a direct message (DM) between the calling user and another human user, specify exactly one membership to represent the human user. If one user blocks the other, the request fails and the DM isn't created. To create a DM between the calling user and the calling app, set Space.singleUserBotDm to true and don't specify any memberships. You can only use this method to set up a DM with the calling app. To add the calling app as a member of a space or an existing DM between two human users, see Invite or add a user or app to a space. If a DM already exists between two users, even when one user blocks the other at the time a request is made, then the existing DM is returned. Spaces with threaded replies aren't supported. If you receive the error message ALREADY_EXISTS when setting up a space, try a different displayName. An existing space within the Google Workspace organization might already use this display name. Requires user authentication.

Parameters
Name Description
request SetUpSpaceRequest
responseObserver io.grpc.stub.StreamObserver<Space>

updateMembership(UpdateMembershipRequest request, StreamObserver<Membership> responseObserver)

public default void updateMembership(UpdateMembershipRequest request, StreamObserver<Membership> responseObserver)

Updates a membership. For an example, see Update a user's membership in a space. Requires user authentication.

Parameters
Name Description
request UpdateMembershipRequest
responseObserver io.grpc.stub.StreamObserver<Membership>

updateMessage(UpdateMessageRequest request, StreamObserver<Message> responseObserver)

public default void updateMessage(UpdateMessageRequest request, StreamObserver<Message> responseObserver)

Updates a message. There's a difference between the patch and update methods. The patch method uses a patch request while the update method uses a put request. We recommend using the patch method. For an example, see Update a message. Requires authentication. Supports app authentication and user authentication. When using app authentication, requests can only update messages created by the calling Chat app.

Parameters
Name Description
request UpdateMessageRequest
responseObserver io.grpc.stub.StreamObserver<Message>

updateSpace(UpdateSpaceRequest request, StreamObserver<Space> responseObserver)

public default void updateSpace(UpdateSpaceRequest request, StreamObserver<Space> responseObserver)

Updates a space. For an example, see Update a space. If you're updating the displayName field and receive the error message ALREADY_EXISTS, try a different display name.. An existing space within the Google Workspace organization might already use this display name. Requires user authentication.

Parameters
Name Description
request UpdateSpaceRequest
responseObserver io.grpc.stub.StreamObserver<Space>

updateSpaceReadState(UpdateSpaceReadStateRequest request, StreamObserver<SpaceReadState> responseObserver)

public default void updateSpaceReadState(UpdateSpaceReadStateRequest request, StreamObserver<SpaceReadState> responseObserver)

Updates a user's read state within a space, used to identify read and unread messages. For an example, see Update a user's space read state. Requires user authentication.

Parameters
Name Description
request UpdateSpaceReadStateRequest
responseObserver io.grpc.stub.StreamObserver<SpaceReadState>

uploadAttachment(UploadAttachmentRequest request, StreamObserver<UploadAttachmentResponse> responseObserver)

public default void uploadAttachment(UploadAttachmentRequest request, StreamObserver<UploadAttachmentResponse> responseObserver)

Uploads an attachment. For an example, see Upload media as a file attachment. Requires user authentication. You can upload attachments up to 200 MB. Certain file types aren't supported. For details, see File types blocked by Google Chat.

Parameters
Name Description
request UploadAttachmentRequest
responseObserver io.grpc.stub.StreamObserver<UploadAttachmentResponse>