For setup and authentication options, see the Installation guide and Authentication.
Parameters
ConnectionConfig
required
Configuration for the client connection.
CreateAssistantDeploymentRequest
required
Provide the
api deployment variant.Show child attributes
Show child attributes
AssistantApiDeployment
required
API deployment configuration.
Show child attributes
Show child attributes
uint64
required
Assistant ID for the deployment.
string
First message the assistant sends when the session starts.
boolean
Controls whether users can interrupt the opening greeting in audio sessions.
string
Message to use when the assistant cannot understand or handle the input.
uint64
Idle timeout in seconds. Must be between
15 and 120.uint64
Number of idle-timeout retries. Must be between
0 and 5.string
Message sent when the session reaches the idle timeout.
uint64
Maximum session duration in seconds. Must be between
180 and 600.DeploymentAudioProvider
Speech-to-text audio provider configuration.
DeploymentAudioProvider
Text-to-speech audio provider configuration.
Usage
import {
AssistantApiDeployment,
ConnectionConfig,
CreateAssistantDeploymentRequest,
CreateAssistantApiDeployment,
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 AssistantApiDeployment();
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);
const request = new CreateAssistantDeploymentRequest();
request.setApi(deployment);
const response = await CreateAssistantApiDeployment(connectionCfg, request);
console.dir(response.toObject());
import {
AssistantApiDeployment,
ConnectionConfig,
CreateAssistantDeploymentRequest,
CreateAssistantApiDeployment,
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 AssistantApiDeployment();
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);
const request = new CreateAssistantDeploymentRequest();
request.setApi(deployment);
const response = await CreateAssistantApiDeployment(connectionCfg, request);
console.dir(response.toObject());
import os
from pprint import pprint
from rapida import (
AssistantApiDeployment,
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 = AssistantApiDeployment(
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,
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.CreateAssistantApiDeployment(
CreateAssistantDeploymentRequest(api=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.CreateAssistantApiDeployment(
context.Background(),
connectionConfig,
&protos.CreateAssistantDeploymentRequest{
Deployment: &protos.CreateAssistantDeploymentRequest_Api{
Api: &protos.AssistantApiDeployment{
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,
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
int32
Numeric status code for the operation.
boolean
Indicates whether the operation was successful.
AssistantApiDeployment
Created API deployment.
Show child attributes
Show child attributes
uint64
Unique identifier for the deployment.
uint64
Assistant ID for the deployment.
string
First message for the session.
boolean
Controls whether users can interrupt the opening greeting in audio sessions.
string
Message used when the assistant cannot understand or handle input.
DeploymentAudioProvider
Speech-to-text provider configuration.
DeploymentAudioProvider
Text-to-speech provider configuration.
string
Current deployment status.
uint64
Idle timeout in seconds.
uint64
Number of idle-timeout retries.
string
Message sent on idle timeout.
uint64
Maximum session duration in seconds.
Error
Errors
| Code | Meaning |
|---|---|
1006001 | Invalid request. |
1006002 | Unauthenticated request. |
1006003 | Missing authentication scope. |
1006004 | Invalid assistantId. |
1006005 | Unable to create assistant API deployment. |
1006006 | Invalid audioProvider. |
1006007 | idealTimeout must be between 15 and 120 seconds. |
1006008 | idealTimeoutBackoff must be between 0 and 5 times. |
1006009 | maxSessionDuration must be between 180 and 600 seconds. |