Body
-
The name of the replica.
Maximum length is
50
. -
The purpose of the replica. This field is not used for training the replica.
Maximum length is
200
. -
A short description of your replica. This field is not used for training the replica.
Maximum length is
50
. -
The first thing your replica will say when you start a conversation with them.
Maximum length is
600
. -
The replica type.
individual
: A replica of yourself.character
: A replica of a character: can be anything you want.brand
: A replica of a business persona or organization.Values are
individual
,character
, orbrand
. Default value ischaracter
. -
The replica owner ID.
-
Visibility of the replica. When set to
true
, only the owner and users on the allowlist will be able to find the replica and chat with it.Default value is
false
. -
Emails of users who can use the replica when the replica is private.
Default value is
[]
(empty). -
The slug of the replica. Slugs can be used by API consumers to determine the URLs where replicas can be found.
Maximum length is
50
. -
The URL of the profile image of the replica. The image will be downloaded, optimized and stored on our servers, so the URL in the response will be different. Supported formats: .jpg, .jpeg, .png, .bmp, .webp, .avif
Format should match the following pattern:
https?:\/\/[-a-zA-Z0-9@:%._+~#=]{1,256}\.[a-zA-Z0-9()]+\b([-a-zA-Z0-9()@:%_+.~#?&\/=]*)
. Default value ishttps://sensay.io/assets/default-replica-profile.webp
. -
Suggested questions when starting a conversation.
Default value is
[]
(empty). -
Text that can be used to generate a voice preview.
Maximum length is
400
.
curl \
--request PUT 'https://api.sensay.io/v1/replicas/03db5651-cb61-4bdf-9ef0-89561f7c9c53' \
--header "X-ORGANIZATION-SECRET: $API_KEY" \
--header "Content-Type: application/json" \
--header "X-API-Version: 2025-03-25" \
--data '{"name":"John Smith","purpose":"Acts as my AI twin for answering questions about my creative work.","shortDescription":"John Smith is a 55 year old accountant from Brooklyn who loves sports and his family.","greeting":"What would you like to know?","type":"character","ownerID":"a-user-id","private":false,"whitelistEmails":["user@domain.example"],"slug":"example-replica","tags":["male","italian"],"profileImage":"https://images.invalid/photo.jpeg","suggestedQuestions":["What is the meaning of life?"],"llm":{"model":"gpt-4o","memoryMode":"rag-search","systemMessage":"Concise, knowledgeable, empathetic and cheerful.","tools":["getTokenInfo"]},"voicePreviewText":"Hi, I'm your Sensay replica! How can I assist you today?"}'
# Headers
X-API-Version: 2025-03-25
# Payload
{
"name": "John Smith",
"purpose": "Acts as my AI twin for answering questions about my creative work.",
"shortDescription": "John Smith is a 55 year old accountant from Brooklyn who loves sports and his family.",
"greeting": "What would you like to know?",
"type": "character",
"ownerID": "a-user-id",
"private": false,
"whitelistEmails": [
"user@domain.example"
],
"slug": "example-replica",
"tags": [
"male",
"italian"
],
"profileImage": "https://images.invalid/photo.jpeg",
"suggestedQuestions": [
"What is the meaning of life?"
],
"llm": {
"model": "gpt-4o",
"memoryMode": "rag-search",
"systemMessage": "Concise, knowledgeable, empathetic and cheerful.",
"tools": [
"getTokenInfo"
]
},
"voicePreviewText": "Hi, I'm your Sensay replica! How can I assist you today?"
}
{
"success": true
}
{
"error": "A text representation of the error",
"success": false,
"request_id": "xyz1::reg1:reg1::ab3c4-1234567890123-0123456789ab",
"fingerprint": "14fceadd84e74ec499afe9b0f7952d6b"
}
{
"error": "A text representation of the error",
"success": false,
"request_id": "xyz1::reg1:reg1::ab3c4-1234567890123-0123456789ab",
"fingerprint": "14fceadd84e74ec499afe9b0f7952d6b"
}
{
"error": "A text representation of the error",
"success": false,
"request_id": "xyz1::reg1:reg1::ab3c4-1234567890123-0123456789ab"
}
{
"error": "A text representation of the error",
"success": false,
"request_id": "xyz1::reg1:reg1::ab3c4-1234567890123-0123456789ab",
"fingerprint": "14fceadd84e74ec499afe9b0f7952d6b"
}
{
"error": "A text representation of the error",
"success": false,
"request_id": "xyz1::reg1:reg1::ab3c4-1234567890123-0123456789ab",
"fingerprint": "14fceadd84e74ec499afe9b0f7952d6b"
}
{
"error": "A text representation of the error",
"success": false,
"request_id": "xyz1::reg1:reg1::ab3c4-1234567890123-0123456789ab",
"fingerprint": "14fceadd84e74ec499afe9b0f7952d6b",
"inner_exception": {
"name": "Server overheated",
"cause": "Request too complicated",
"stack": "Error: Server overheated due to an unexpected situation\n at Object.eval (eval at <anonymous>...",
"message": "The server overheated due to an unexpected situation"
}
}