Skip to main content

@wildix/xbees-kite-client > CreateOrUpdateWidgetPreviewCommand

CreateOrUpdateWidgetPreviewCommand class

Creates or updates a temporary widget to assist with configuration testing. Preview widgets mimic the behavior and appearance of regular widgets but are automatically deleted after two hours. They are primarily designed for use in the Kite configuration interface, enabling users to experiment with settings and instantly visualize how changes affect the widget's design and functionality.

Signature:

export declare class CreateOrUpdateWidgetPreviewCommand extends CreateOrUpdateWidgetPreviewCommand_base 

Extends: CreateOrUpdateWidgetPreviewCommand_base

Example

Use a bare-bones client and the command you need to make an API call.

import { KiteClient, CreateOrUpdateWidgetPreviewCommand } from "@wildix/xbees-kite-client"; // ES Modules import
// const { KiteClient, CreateOrUpdateWidgetPreviewCommand } = require("@wildix/xbees-kite-client"); // CommonJS import
const client = new KiteClient(config);
const input = { // CreateOrUpdateWidgetPreviewInput
appearance: { // WidgetAppearance
pallete: { // WidgetPalleteSettings
backgroundColor: "STRING_VALUE",
accentColor: "STRING_VALUE",
},
text: { // WidgetTextSettings
button: "STRING_VALUE",
title: "STRING_VALUE",
topTitle: "STRING_VALUE",
topSubtitle: "STRING_VALUE",
},
},
routes: [ // WidgetRoutesList
{ // WidgetRoute
id: "STRING_VALUE", // required
rules: [ // WidgetRouteRulesList // required
{ // WidgetRouteRule Union: only one key present
timeFrame: { // WidgetRouteTimeFrameRule
timeZone: "STRING_VALUE", // required
day: "EVERY_DAY" || "WEEKDAYS" || "WEEKENDS" || "MONDAY" || "TUESDAY" || "WEDNESDAY" || "THURSDAY" || "FRIDAY" || "SATURDAY" || "SUNDAY", // required
startMinute: Number("int"), // required
endMinute: Number("int"), // required
},
},
],
welcomeMessages: [ // WidgetWelcomeMessagesList
{ // WidgetWelcomeMessage
text: "STRING_VALUE",
elements: [ // ElementsList
{ // Element Union: only one key present
template: { // MessageTemplateConfig
whatsapp: { // TemplateWithParameters
name: "STRING_VALUE", // required
parameters: [ // ListTemplateParameter // required
{ // TemplateParameter
name: "STRING_VALUE", // required
value: "STRING_VALUE", // required
},
],
},
},
actions: [ // ActionsElementsList
{ // ActionElement Union: only one key present
button: { // ButtonElement
text: "STRING_VALUE", // required
handler: { // ButtonHandler Union: only one key present
link: { // ButtonLinkHandler
url: "STRING_VALUE", // required
},
reply: { // ButtonReplyHandler
text: "STRING_VALUE",
},
action: { // ButtonActionHandler
id: "STRING_VALUE", // required
},
},
variant: "contained" || "outlined",
disabled: true || false,
},
},
],
},
],
delay: Number("int"),
},
],
target: { // WidgetTarget Union: only one key present
service: { // WidgetServiceTarget
id: Number("int"), // required
uri: "STRING_VALUE", // required
},
agent: { // WidgetAgentTarget
email: "STRING_VALUE", // required
},
bot: { // WidgetBotTarget
id: "STRING_VALUE", // required
},
},
actions: [ // RouteActions
{ // RouteAction
id: "STRING_VALUE", // required
conditions: [ // RouteActionConditions
{ // RouteActionCondition Union: only one key present
replyTimeout: { // RouteReplyTimeoutCondition
timeout: Number("int"), // required
},
readTimeout: { // RouteReadTimeoutCondition
timeout: Number("int"), // required
},
inactivityTimeout: { // InactivityTimeoutCondition
timeout: Number("int"), // required
},
evaluation: { // RouteEvaluationCondition
prompt: "STRING_VALUE", // required
},
},
],
task: { // RouteActionTask Union: only one key present
sendMessage: { // RouteSendMessageTask
botId: "STRING_VALUE", // required
text: "STRING_VALUE", // required
},
sendGenerativeMessage: { // RouteSendGenerativeMessageTask
botId: "STRING_VALUE", // required
},
addMembers: { // RouteAddMembersTask
emails: [ // RouteAddMembersUsersList // required
"STRING_VALUE",
],
},
notifyMessage: { // RouteNotifyMessage
botId: "STRING_VALUE", // required
userId: "STRING_VALUE",
channelId: "STRING_VALUE",
text: "STRING_VALUE", // required
variables: [ // RouteGenerativeVariablesList
{ // RouteGenerativeVariable
term: "STRING_VALUE", // required
description: "STRING_VALUE", // required
},
],
},
notifyEmail: { // RouteNotifyEmail
recipient: "STRING_VALUE", // required
text: "STRING_VALUE", // required
variables: [
{
term: "STRING_VALUE", // required
description: "STRING_VALUE", // required
},
],
},
},
once: true || false,
},
],
},
],
welcomeMessages: [
{
text: "STRING_VALUE",
elements: [
{// Union: only one key present
template: {
whatsapp: {
name: "STRING_VALUE", // required
parameters: [ // required
{
name: "STRING_VALUE", // required
value: "STRING_VALUE", // required
},
],
},
},
actions: [
{// Union: only one key present
button: {
text: "STRING_VALUE", // required
handler: {// Union: only one key present
link: {
url: "STRING_VALUE", // required
},
reply: {
text: "STRING_VALUE",
},
action: {
id: "STRING_VALUE", // required
},
},
variant: "contained" || "outlined",
disabled: true || false,
},
},
],
},
],
delay: Number("int"),
},
],
name: "STRING_VALUE", // required
target: {// Union: only one key present
service: {
id: Number("int"), // required
uri: "STRING_VALUE", // required
},
agent: {
email: "STRING_VALUE", // required
},
bot: {
id: "STRING_VALUE", // required
},
},
actions: [
{
id: "STRING_VALUE", // required
conditions: [
{// Union: only one key present
replyTimeout: {
timeout: Number("int"), // required
},
readTimeout: {
timeout: Number("int"), // required
},
inactivityTimeout: {
timeout: Number("int"), // required
},
evaluation: {
prompt: "STRING_VALUE", // required
},
},
],
task: {// Union: only one key present
sendMessage: {
botId: "STRING_VALUE", // required
text: "STRING_VALUE", // required
},
sendGenerativeMessage: {
botId: "STRING_VALUE", // required
},
addMembers: {
emails: [ // required
"STRING_VALUE",
],
},
notifyMessage: {
botId: "STRING_VALUE", // required
userId: "STRING_VALUE",
channelId: "STRING_VALUE",
text: "STRING_VALUE", // required
variables: [
{
term: "STRING_VALUE", // required
description: "STRING_VALUE", // required
},
],
},
notifyEmail: {
recipient: "STRING_VALUE", // required
text: "STRING_VALUE", // required
variables: [
{
term: "STRING_VALUE", // required
description: "STRING_VALUE", // required
},
],
},
},
once: true || false,
},
],
companyId: "STRING_VALUE",
temporaryWidgetId: "STRING_VALUE", // required
};
const command = new CreateOrUpdateWidgetPreviewCommand(input);
const response = await client.send(command);
// { // CreateOrUpdateWidgetPreviewOutput
// widget: { // Widget
// appearance: { // WidgetAppearance
// pallete: { // WidgetPalleteSettings
// backgroundColor: "STRING_VALUE",
// accentColor: "STRING_VALUE",
// },
// text: { // WidgetTextSettings
// button: "STRING_VALUE",
// title: "STRING_VALUE",
// topTitle: "STRING_VALUE",
// topSubtitle: "STRING_VALUE",
// },
// },
// routes: [ // WidgetRoutesList
// { // WidgetRoute
// id: "STRING_VALUE", // required
// rules: [ // WidgetRouteRulesList // required
// { // WidgetRouteRule Union: only one key present
// timeFrame: { // WidgetRouteTimeFrameRule
// timeZone: "STRING_VALUE", // required
// day: "EVERY_DAY" || "WEEKDAYS" || "WEEKENDS" || "MONDAY" || "TUESDAY" || "WEDNESDAY" || "THURSDAY" || "FRIDAY" || "SATURDAY" || "SUNDAY", // required
// startMinute: Number("int"), // required
// endMinute: Number("int"), // required
// },
// },
// ],
// welcomeMessages: [ // WidgetWelcomeMessagesList
// { // WidgetWelcomeMessage
// text: "STRING_VALUE",
// elements: [ // ElementsList
// { // Element Union: only one key present
// template: { // MessageTemplateConfig
// whatsapp: { // TemplateWithParameters
// name: "STRING_VALUE", // required
// parameters: [ // ListTemplateParameter // required
// { // TemplateParameter
// name: "STRING_VALUE", // required
// value: "STRING_VALUE", // required
// },
// ],
// },
// },
// actions: [ // ActionsElementsList
// { // ActionElement Union: only one key present
// button: { // ButtonElement
// text: "STRING_VALUE", // required
// handler: { // ButtonHandler Union: only one key present
// link: { // ButtonLinkHandler
// url: "STRING_VALUE", // required
// },
// reply: { // ButtonReplyHandler
// text: "STRING_VALUE",
// },
// action: { // ButtonActionHandler
// id: "STRING_VALUE", // required
// },
// },
// variant: "contained" || "outlined",
// disabled: true || false,
// },
// },
// ],
// },
// ],
// delay: Number("int"),
// },
// ],
// target: { // WidgetTarget Union: only one key present
// service: { // WidgetServiceTarget
// id: Number("int"), // required
// uri: "STRING_VALUE", // required
// },
// agent: { // WidgetAgentTarget
// email: "STRING_VALUE", // required
// },
// bot: { // WidgetBotTarget
// id: "STRING_VALUE", // required
// },
// },
// actions: [ // RouteActions
// { // RouteAction
// id: "STRING_VALUE", // required
// conditions: [ // RouteActionConditions
// { // RouteActionCondition Union: only one key present
// replyTimeout: { // RouteReplyTimeoutCondition
// timeout: Number("int"), // required
// },
// readTimeout: { // RouteReadTimeoutCondition
// timeout: Number("int"), // required
// },
// inactivityTimeout: { // InactivityTimeoutCondition
// timeout: Number("int"), // required
// },
// evaluation: { // RouteEvaluationCondition
// prompt: "STRING_VALUE", // required
// },
// },
// ],
// task: { // RouteActionTask Union: only one key present
// sendMessage: { // RouteSendMessageTask
// botId: "STRING_VALUE", // required
// text: "STRING_VALUE", // required
// },
// sendGenerativeMessage: { // RouteSendGenerativeMessageTask
// botId: "STRING_VALUE", // required
// },
// addMembers: { // RouteAddMembersTask
// emails: [ // RouteAddMembersUsersList // required
// "STRING_VALUE",
// ],
// },
// notifyMessage: { // RouteNotifyMessage
// botId: "STRING_VALUE", // required
// userId: "STRING_VALUE",
// channelId: "STRING_VALUE",
// text: "STRING_VALUE", // required
// variables: [ // RouteGenerativeVariablesList
// { // RouteGenerativeVariable
// term: "STRING_VALUE", // required
// description: "STRING_VALUE", // required
// },
// ],
// },
// notifyEmail: { // RouteNotifyEmail
// recipient: "STRING_VALUE", // required
// text: "STRING_VALUE", // required
// variables: [
// {
// term: "STRING_VALUE", // required
// description: "STRING_VALUE", // required
// },
// ],
// },
// },
// once: true || false,
// },
// ],
// },
// ],
// welcomeMessages: [
// {
// text: "STRING_VALUE",
// elements: [
// {// Union: only one key present
// template: {
// whatsapp: {
// name: "STRING_VALUE", // required
// parameters: [ // required
// {
// name: "STRING_VALUE", // required
// value: "STRING_VALUE", // required
// },
// ],
// },
// },
// actions: [
// {// Union: only one key present
// button: {
// text: "STRING_VALUE", // required
// handler: {// Union: only one key present
// link: {
// url: "STRING_VALUE", // required
// },
// reply: {
// text: "STRING_VALUE",
// },
// action: {
// id: "STRING_VALUE", // required
// },
// },
// variant: "contained" || "outlined",
// disabled: true || false,
// },
// },
// ],
// },
// ],
// delay: Number("int"),
// },
// ],
// name: "STRING_VALUE", // required
// target: {// Union: only one key present
// service: {
// id: Number("int"), // required
// uri: "STRING_VALUE", // required
// },
// agent: {
// email: "STRING_VALUE", // required
// },
// bot: {
// id: "STRING_VALUE", // required
// },
// },
// actions: [
// {
// id: "STRING_VALUE", // required
// conditions: [
// {// Union: only one key present
// replyTimeout: {
// timeout: Number("int"), // required
// },
// readTimeout: {
// timeout: Number("int"), // required
// },
// inactivityTimeout: {
// timeout: Number("int"), // required
// },
// evaluation: {
// prompt: "STRING_VALUE", // required
// },
// },
// ],
// task: {// Union: only one key present
// sendMessage: {
// botId: "STRING_VALUE", // required
// text: "STRING_VALUE", // required
// },
// sendGenerativeMessage: {
// botId: "STRING_VALUE", // required
// },
// addMembers: {
// emails: [ // required
// "STRING_VALUE",
// ],
// },
// notifyMessage: {
// botId: "STRING_VALUE", // required
// userId: "STRING_VALUE",
// channelId: "STRING_VALUE",
// text: "STRING_VALUE", // required
// variables: [
// {
// term: "STRING_VALUE", // required
// description: "STRING_VALUE", // required
// },
// ],
// },
// notifyEmail: {
// recipient: "STRING_VALUE", // required
// text: "STRING_VALUE", // required
// variables: [
// {
// term: "STRING_VALUE", // required
// description: "STRING_VALUE", // required
// },
// ],
// },
// },
// once: true || false,
// },
// ],
// id: "STRING_VALUE", // required
// company: "STRING_VALUE", // required
// createdAt: "STRING_VALUE", // required
// updatedAt: "STRING_VALUE",
// },
// };