openapi: 3.2.0 info: title: Conversation Service API version: 0.236.0 servers: - description: Production url: https://prod.apigateway.co/grpc tags: - name: ConversationService paths: /v1/conversation/communication-channels-info: post: operationId: ConversationService_ListCommunicationChannelsInfo requestBody: content: application/json: schema: $ref: '#/components/schemas/v1ListCommunicationChannelsInfoRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/v1ListCommunicationChannelsInfoResponse' description: A successful response. default: content: application/json: schema: $ref: '#/components/schemas/googlerpcStatus' description: An unexpected error response. security: - OAuth2: - conversation:read - conversation - business-app summary: List communication channels info for a business tags: - ConversationService /v1beta/widgets: get: operationId: ConversationService_ListWidgets parameters: - description: 'The namespace of the widget e.g. "ABC", "AG-123" Use either namespace or options.namespaces' in: query name: namespace schema: type: string - description: cursor can be passed to retrieve the next page of results keyed by the cursor in: query name: pagingOptions.cursor schema: type: string - description: page_size specifies the number of items to return in the next page in: query name: pagingOptions.pageSize schema: format: int32 type: integer - description: 'The namespaces of the widgets e.g. "ABC", "AG-123" Use either namespace or options.namespaces' explode: true in: query name: options.namespaces schema: items: type: string type: array - description: The types of the widget e.g. "inbox-pro", "my-listings" explode: true in: query name: options.widgetTypes schema: items: type: string type: array responses: '200': content: application/json: schema: $ref: '#/components/schemas/v1ListWidgetsResponse' description: A successful response. default: content: application/json: schema: $ref: '#/components/schemas/googlerpcStatus' description: An unexpected error response. security: - OAuth2: - business-app - conversation.widget summary: List widgets tags: - ConversationService components: schemas: v1Widget: properties: accentColor: title: Accent color for the widget secondary elements type: string accentTextColor: title: Accent text color for the widget secondary elements type: string additionalPromptInstructions: title: The prompt provided by a user to be used as additional instructions for the web chat AI assistant type: string allowedUrls: items: type: string title: A list of urls that the widget is allowed to be embedded on type: array assistantAvatarUrl: title: The avatar URL of the AI assistant type: string assistantId: readOnly: true title: Output only. The ID of the AI assistant associated with this widget type: string assistantName: title: The name of the AI assistant type: string associatedNamespaces: description: AG namespaces this widget routes to. Only set when widget_type = "group". items: type: string type: array color: title: A hex color code for the widget, e.g. "#FF0000" type: string created: format: date-time title: The timestamp when the widget was created type: string customGreetingMessage: title: The custom greeting message that shows up as first message type: string embedHistory: items: type: string title: The history of widget installations (typically the domain/hostname of the referer URL the widget is embedded on) type: array enableGreetingMessage: title: Enable the greeting message from AI assistant using the custom greeting message type: boolean hideMobileCta: title: Hide the popup CTA on mobile screens type: boolean isEnabled: title: Whether the webchat for the widget config is enabled type: boolean name: title: Name of the widget, e.g. "Mountain Media Support" type: string namespace: title: The id of the namespace, e.g. "ABC", "AG-123" type: string position: $ref: '#/components/schemas/v1WidgetPosition' skipContactCapture: title: Whether the widget has contact capturing enabled type: boolean textColor: title: The primary text color for the widget type: string updated: format: date-time title: The timestamp when the widget was updated type: string welcomeMessage: title: The welcome message for the webchat for the widget config type: string widgetId: title: The id of the widget type: string widgetType: description: 'The type of the widget. Examples are: ''inbox'', ''my-listings'', ''snapshot'', ''group'', etc. ''group'' is a multi-location widget scoped to a brand (G-xxx) namespace.' type: string type: object v1CommunicationChannelType: default: COMMUNICATION_CHANNEL_TYPE_UNDEFINED enum: - COMMUNICATION_CHANNEL_TYPE_UNDEFINED - COMMUNICATION_CHANNEL_TYPE_SMS - COMMUNICATION_CHANNEL_TYPE_VOICE title: Channel types for communication info type: string v1ListWidgetsResponse: properties: pagingMetadata: $ref: '#/components/schemas/conversationv1PagedResponseMetadata' widgets: items: $ref: '#/components/schemas/v1Widget' title: The list of widgets type: array type: object v1ListCommunicationChannelsInfoResponse: properties: communicationInfo: items: $ref: '#/components/schemas/v1CommunicationInfo' title: The list of communication info for this account type: array title: Response containing communication channel information type: object v1ListCommunicationChannelsInfoRequest: properties: accountGroupId: title: The account group ID to look up communication info for type: string title: Request to list communication channel info for a business type: object googlerpcStatus: properties: code: format: int32 type: integer details: items: $ref: '#/components/schemas/protobufAny' type: array message: type: string type: object v1CommunicationInfo: properties: channel: $ref: '#/components/schemas/v1CommunicationChannelType' identifier: title: The identifier for this channel (phone number, email, etc.) type: string title: Information about a communication channel type: object conversationv1PagedResponseMetadata: properties: hasMore: title: Whether or not more results exist type: boolean nextCursor: title: A cursor that can be provided to retrieve the next page of results type: string totalResults: format: int64 title: Total number of results type: string type: object protobufAny: additionalProperties: {} properties: '@type': type: string type: object v1WidgetPosition: default: WIDGET_POSITION_UNSPECIFIED description: "- WIDGET_POSITION_UNSPECIFIED: Unspecified widget position\n - WIDGET_POSITION_RIGHT: Widget position on the right side of the page\n - WIDGET_POSITION_LEFT: Widget position on the left side of the page" enum: - WIDGET_POSITION_UNSPECIFIED - WIDGET_POSITION_RIGHT - WIDGET_POSITION_LEFT type: string securitySchemes: OAuth2: flows: authorizationCode: authorizationUrl: https://sso-api-prod.apigateway.co/oauth2/auth scopes: business-app: Allows the application to manage all features of Business App conversation: Allows the application to manage conversations conversation.widget: Allows the application to manage conversation widgets conversation:read: Allows the application view-only access to conversations tokenUrl: https://sso-api-prod.apigateway.co/oauth2/token type: oauth2