For setup and authentication options, see the Installation guide and Authentication.
Parameters
Configuration for the client connection.
Provide the
plugin deployment variant.Show child attributes
Show child attributes
Web plugin deployment configuration.
Show child attributes
Show child attributes
Assistant ID for the deployment.
Suggested starter prompts shown in the web widget.
First message the assistant sends when the session starts.
Controls whether users can interrupt the opening greeting in audio sessions.
Message to use when the assistant cannot understand or handle the input.
Idle timeout in seconds. Must be between
15 and 120.Number of idle-timeout retries. Must be between
0 and 5.Message sent when the session reaches the idle timeout.
Maximum session duration in seconds. Must be between
180 and 600.Speech-to-text audio provider configuration.
Text-to-speech audio provider configuration.
Usage
import {
AssistantWebpluginDeployment,
ConnectionConfig,
CreateAssistantDeploymentRequest,
CreateAssistantWebpluginDeployment,
DeploymentAudioProvider,
Metadata,
} from "@rapidaai/react";
const auth = ConnectionConfig.WithDebugger({
authorization: "AUTHORIZATION_TOKEN_PLACEHOLDER",
userId: "AUTH_ID_PLACEHOLDER",
projectId: "PROJECT_ID_PLACEHOLDER",
});
const connectionCfg = ConnectionConfig.DefaultConnectionConfig(auth);
const inputModel = new Metadata();
inputModel.setKey("model");
inputModel.setValue("nova-3");
const inputAudio = new DeploymentAudioProvider();
inputAudio.setAudioprovider("deepgram");
inputAudio.setAudiotype("stt");
inputAudio.setAudiooptionsList([inputModel]);
const outputVoice = new Metadata();
outputVoice.setKey("voiceId");
outputVoice.setValue("VOICE_ID_PLACEHOLDER");
const outputAudio = new DeploymentAudioProvider();
outputAudio.setAudioprovider("elevenlabs");
outputAudio.setAudiotype("tts");
outputAudio.setAudiooptionsList([outputVoice]);
const deployment = new AssistantWebpluginDeployment();
deployment.setAssistantid("ASSISTANT_ID_PLACEHOLDER");
deployment.setGreeting("Hi, how can I help you today?");
deployment.setGreetinginterruptible(false);
deployment.setMistake("Sorry, I did not understand that.");
deployment.setIdealtimeout("30");
deployment.setIdealtimeoutbackoff("2");
deployment.setIdealtimeoutmessage("Are you still there?");
deployment.setMaxsessionduration("300");
deployment.setInputaudio(inputAudio);
deployment.setOutputaudio(outputAudio);
deployment.setSuggestionList(["Book a demo", "Talk to support"]);
const request = new CreateAssistantDeploymentRequest();
request.setPlugin(deployment);
const response = await CreateAssistantWebpluginDeployment(connectionCfg, request);
console.dir(response.toObject());
import {
AssistantWebpluginDeployment,
ConnectionConfig,
CreateAssistantDeploymentRequest,
CreateAssistantWebpluginDeployment,
DeploymentAudioProvider,
Metadata,
} from "@rapidaai/nodejs";
const auth = ConnectionConfig.WithDebugger({
authorization: process.env.RAPIDA_AUTHORIZATION,
userId: process.env.RAPIDA_AUTH_ID,
projectId: process.env.RAPIDA_PROJECT_ID,
});
const connectionCfg = ConnectionConfig.DefaultConnectionConfig(auth);
const inputModel = new Metadata();
inputModel.setKey("model");
inputModel.setValue("nova-3");
const inputAudio = new DeploymentAudioProvider();
inputAudio.setAudioprovider("deepgram");
inputAudio.setAudiotype("stt");
inputAudio.setAudiooptionsList([inputModel]);
const outputVoice = new Metadata();
outputVoice.setKey("voiceId");
outputVoice.setValue("VOICE_ID_PLACEHOLDER");
const outputAudio = new DeploymentAudioProvider();
outputAudio.setAudioprovider("elevenlabs");
outputAudio.setAudiotype("tts");
outputAudio.setAudiooptionsList([outputVoice]);
const deployment = new AssistantWebpluginDeployment();
deployment.setAssistantid(process.env.RAPIDA_ASSISTANT_ID);
deployment.setGreeting("Hi, how can I help you today?");
deployment.setGreetinginterruptible(false);
deployment.setMistake("Sorry, I did not understand that.");
deployment.setIdealtimeout("30");
deployment.setIdealtimeoutbackoff("2");
deployment.setIdealtimeoutmessage("Are you still there?");
deployment.setMaxsessionduration("300");
deployment.setInputaudio(inputAudio);
deployment.setOutputaudio(outputAudio);
deployment.setSuggestionList(["Book a demo", "Talk to support"]);
const request = new CreateAssistantDeploymentRequest();
request.setPlugin(deployment);
const response = await CreateAssistantWebpluginDeployment(connectionCfg, request);
console.dir(response.toObject());
import os
from pprint import pprint
from rapida import (
AssistantWebpluginDeployment,
ConnectionConfig,
DeploymentAudioProvider,
Metadata,
)
from rapida.clients.protos.assistant_deployment_pb2 import (
CreateAssistantDeploymentRequest,
)
auth = ConnectionConfig.with_debugger(
authorization=os.getenv("RAPIDA_AUTHORIZATION"),
user_id=os.getenv("RAPIDA_AUTH_ID"),
project_id=os.getenv("RAPIDA_PROJECT_ID"),
)
connection_config = ConnectionConfig.default_connection_config(auth)
deployment = AssistantWebpluginDeployment(
assistantId=int(os.getenv("RAPIDA_ASSISTANT_ID")),
greeting="Hi, how can I help you today?",
greetingInterruptible=False,
mistake="Sorry, I did not understand that.",
idealTimeout=30,
idealTimeoutBackoff=2,
idealTimeoutMessage="Are you still there?",
maxSessionDuration=300,
suggestion=["Book a demo", "Talk to support"],
inputAudio=DeploymentAudioProvider(
audioProvider="deepgram",
audioType="stt",
audioOptions=[Metadata(key="model", value="nova-3")],
),
outputAudio=DeploymentAudioProvider(
audioProvider="elevenlabs",
audioType="tts",
audioOptions=[Metadata(key="voiceId", value="VOICE_ID_PLACEHOLDER")],
),
)
response = connection_config.assistant_deployment_client.CreateAssistantWebpluginDeployment(
CreateAssistantDeploymentRequest(plugin=deployment),
metadata=connection_config.auth,
)
pprint(response)
package main
import (
"context"
"fmt"
"os"
"google.golang.org/protobuf/proto"
clients "github.com/rapidaai/rapida-go/rapida/clients"
connections "github.com/rapidaai/rapida-go/rapida/connections"
protos "github.com/rapidaai/rapida-go/protos"
)
func main() {
connectionConfig := connections.DefaultconnectionConfig(
connections.WithPersonalToken(
os.Getenv("RAPIDA_AUTHORIZATION"),
os.Getenv("RAPIDA_AUTH_ID"),
os.Getenv("RAPIDA_PROJECT_ID"),
),
)
response, err := clients.CreateAssistantWebpluginDeployment(
context.Background(),
connectionConfig,
&protos.CreateAssistantDeploymentRequest{
Deployment: &protos.CreateAssistantDeploymentRequest_Plugin{
Plugin: &protos.AssistantWebpluginDeployment{
AssistantId: 2227823180112723968,
Greeting: proto.String("Hi, how can I help you today?"),
GreetingInterruptible: proto.Bool(false),
Mistake: proto.String("Sorry, I did not understand that."),
IdealTimeout: 30,
IdealTimeoutBackoff: 2,
IdealTimeoutMessage: "Are you still there?",
MaxSessionDuration: 300,
Suggestion: []string{"Book a demo", "Talk to support"},
InputAudio: &protos.DeploymentAudioProvider{
AudioProvider: "deepgram",
AudioType: "stt",
AudioOptions: []*protos.Metadata{{
Key: "model",
Value: "nova-3",
}},
},
OutputAudio: &protos.DeploymentAudioProvider{
AudioProvider: "elevenlabs",
AudioType: "tts",
AudioOptions: []*protos.Metadata{{
Key: "voiceId",
Value: "VOICE_ID_PLACEHOLDER",
}},
},
},
},
},
)
if err != nil {
fmt.Printf("error while creating deployment: %+v\n", err)
return
}
fmt.Printf("create deployment response: %+v\n", response)
}
Response
Numeric status code for the operation.
Indicates whether the operation was successful.
Created web plugin deployment.
Show child attributes
Show child attributes
Unique identifier for the deployment.
Assistant ID for the deployment.
Suggested starter prompts configured for the web widget.
First message for the session.
Controls whether users can interrupt the opening greeting in audio sessions.
Message used when the assistant cannot understand or handle input.
Speech-to-text provider configuration.
Text-to-speech provider configuration.
Current deployment status.
Idle timeout in seconds.
Number of idle-timeout retries.
Message sent on idle timeout.
Maximum session duration in seconds.
Errors
| Code | Meaning |
|---|---|
1007001 | Invalid request. |
1007002 | Unauthenticated request. |
1007003 | Missing authentication scope. |
1007004 | Invalid assistantId. |
1007005 | Unable to create assistant web plugin deployment. |
1007006 | Invalid audioProvider. |
1007007 | idealTimeout must be between 15 and 120 seconds. |
1007008 | idealTimeoutBackoff must be between 0 and 5 times. |
1007009 | maxSessionDuration must be between 180 and 600 seconds. |