curl --request POST \
--url https://api.dumgum.com/cs/v1/content_creation/conversations/enqueue \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"userProfileId": "<string>",
"personaProfileId": "<string>",
"language": "EN",
"additionalLanguages": [
"EN"
],
"userProfileVersion": "<string>",
"personaProfileVersion": "<string>",
"tags": {},
"testMode": true,
"replyParameters": {
"chatModel": "dating-smart-1",
"bufferSeconds": "5",
"maxProcessingTimeSeconds": "300",
"enableSexualTextContent": null,
"fixedResponseLength": false,
"sentenceLength": null,
"messageLength": null,
"personaPersonality": null,
"generatePersonality": null,
"shareablePictures": [
{
"id": "<string>",
"url": "<string>",
"caption": "<string>"
}
],
"profileDistance": 123,
"emojis": "FREQUENT",
"fluencyDegradation": null,
"multipleMessagesPerReply": false,
"multipleMessagesPerReplyFrequency": null,
"questionFrequency": 0.5,
"replyTypingDelay": "INSTANT",
"icebreakerType": null,
"engage": null,
"disableSafetyFeatures": true,
"guardrails": {
"maliciousContent": false,
"maliciousContentOptionSet": {
"answer": true,
"banDurations": [
123
]
},
"aiSuspicion": true,
"aiSuspicionOptionSet": {
"answer": true,
"banDurations": [
123
]
},
"underageDetection": true,
"underageDetectionOptionSet": {
"answer": true,
"banDurations": [
123
]
},
"unknownLanguage": false,
"unknownLanguageOptionSet": {
"answer": true,
"banDurations": [
123
]
},
"messageRepetition": true,
"messageRepetitionOptionSet": {
"answer": true,
"banDurations": [
123
]
},
"prohibitedIllegalContent": false,
"prohibitedIllegalContentOptionSet": {
"answer": true,
"banDurations": [
123
]
},
"dangerousDrugUse": false,
"dangerousDrugUseOptionSet": {
"answer": true,
"banDurations": [
123
]
}
},
"preventAggressiveTone": true,
"personaProfileOverrides": {
"sexualDrive": "VERY_HIGH"
},
"vision": {
"userProfilePictureAnalysis": false,
"personaProfilePictureAnalysis": false,
"sharedPicturesAnalysis": false,
"shareablePicturesAnalysis": true
},
"action": {
"type": "PAUSE_CONVERSATION",
"pauseConversation": {
"duration": 21600
}
},
"postProcessing": {
"greekRewrite": false
},
"meetingPolicy": null
}
}
'Enqueue a conversation to be processed asynchronously
curl --request POST \
--url https://api.dumgum.com/cs/v1/content_creation/conversations/enqueue \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"userProfileId": "<string>",
"personaProfileId": "<string>",
"language": "EN",
"additionalLanguages": [
"EN"
],
"userProfileVersion": "<string>",
"personaProfileVersion": "<string>",
"tags": {},
"testMode": true,
"replyParameters": {
"chatModel": "dating-smart-1",
"bufferSeconds": "5",
"maxProcessingTimeSeconds": "300",
"enableSexualTextContent": null,
"fixedResponseLength": false,
"sentenceLength": null,
"messageLength": null,
"personaPersonality": null,
"generatePersonality": null,
"shareablePictures": [
{
"id": "<string>",
"url": "<string>",
"caption": "<string>"
}
],
"profileDistance": 123,
"emojis": "FREQUENT",
"fluencyDegradation": null,
"multipleMessagesPerReply": false,
"multipleMessagesPerReplyFrequency": null,
"questionFrequency": 0.5,
"replyTypingDelay": "INSTANT",
"icebreakerType": null,
"engage": null,
"disableSafetyFeatures": true,
"guardrails": {
"maliciousContent": false,
"maliciousContentOptionSet": {
"answer": true,
"banDurations": [
123
]
},
"aiSuspicion": true,
"aiSuspicionOptionSet": {
"answer": true,
"banDurations": [
123
]
},
"underageDetection": true,
"underageDetectionOptionSet": {
"answer": true,
"banDurations": [
123
]
},
"unknownLanguage": false,
"unknownLanguageOptionSet": {
"answer": true,
"banDurations": [
123
]
},
"messageRepetition": true,
"messageRepetitionOptionSet": {
"answer": true,
"banDurations": [
123
]
},
"prohibitedIllegalContent": false,
"prohibitedIllegalContentOptionSet": {
"answer": true,
"banDurations": [
123
]
},
"dangerousDrugUse": false,
"dangerousDrugUseOptionSet": {
"answer": true,
"banDurations": [
123
]
}
},
"preventAggressiveTone": true,
"personaProfileOverrides": {
"sexualDrive": "VERY_HIGH"
},
"vision": {
"userProfilePictureAnalysis": false,
"personaProfilePictureAnalysis": false,
"sharedPicturesAnalysis": false,
"shareablePicturesAnalysis": true
},
"action": {
"type": "PAUSE_CONVERSATION",
"pauseConversation": {
"duration": 21600
}
},
"postProcessing": {
"greekRewrite": false
},
"meetingPolicy": null
}
}
'Bearer authentication header of the form Bearer <token>, where <token> is an access key.
Example: Authorization: Bearer sk-proj-XXXXXXXXX
Represents a request to enqueue a conversation
A user profile ID; this will represent the profile that will receive the generated reply.
A persona profile ID; this will represent the profile that our operator will impersonate.
The language used to generate the reply.
EN, EN_GB, FR, FR_BE, RO, NL, ES, DE, DE_CH, DE_AT, IT, ES_LATAM, BG, HE, JA, NL_BE, EN_AU, PT_PT, PT_BR, SV_SE, DA_DK, FI_FI, PL_PL, LT_LT, NB_NO, NN_NO, SL_SI, HU, HU_HU, CS_CZ, EL_GR, HR_HR, TR_TR, EN_IE, AF_ZA, ZU_ZA, LV_LV, SK_SK, GA_IE A list of additional languages that can be used to generate the reply. Currently, we support only one additional language.
1EN, EN_GB, FR, FR_BE, RO, NL, ES, DE, DE_CH, DE_AT, IT, ES_LATAM, BG, HE, JA, NL_BE, EN_AU, PT_PT, PT_BR, SV_SE, DA_DK, FI_FI, PL_PL, LT_LT, NB_NO, NN_NO, SL_SI, HU, HU_HU, CS_CZ, EL_GR, HR_HR, TR_TR, EN_IE, AF_ZA, ZU_ZA, LV_LV, SK_SK, GA_IE Specify the current user profile version. If it differs from the stored version, it will trigger a profile data refresh.
Specify the current persona profile version. If it differs from the stored version, it will trigger a profile data refresh.
Specify whether the conversation should be processed in test mode. In test mode, you will receive a dummy answer, which is useful for testing purposes.
You will not be charged when using test mode.
A set of parameters that allow you to customize the reply you receive from us, enabling greater flexibility and control over the response format, content, and behavior.
Hide child attributes
Allows you to set the AI chat model to use for generating the reply.
If not specified, the default model will be used.
The default model is dating-smart-1.
🚨🚨🚨 IMPORTANT NOTE: the default model is subject to change at any time, if you want to stick with a specific model make sure to provide it explicitly.
dating-smart-1, dating-pro-1, chat-2-smart, chat-2-pro Allows you to set the AI buffer time (in seconds). This delay enables the AI to wait before generating a response, allowing it to accumulate more messages.
If not specified, defaults to 5 seconds.
0 <= x <= 180Allows you to set the maximum processing time (in seconds) for a reply.
If this time limit is exceeded, the conversation will be dropped, and
you will receive an conversation.dropped webhook event.
If not specified, defaults to 300 seconds.
WARNING: This value may occasionally be exceeded by several seconds due to various factors.
300 <= x <= 86400Allows our chat models to generate sexual text content.
If not specified, defaults to true.
Force our chat model to strictly respect aiSentenceLength and aiMessageLength parameters.
If not specified, defaults to false.
Allow you to specify the length of the sentences composing the response.
SHORT, REGULAR, LONG Allow you to specify the length of the response
SHORT, REGULAR, LONG, VERY_LONG Allow you to override the personality given to the persona
SUPPORTIVE, TEASING, CONFIDENT, GEEKY, POETIC, HIGH_ENERGY, INTELLECTUAL, ROMANTIC, SARCASTIC, POSSESSIVE, NATURAL, APPRECIATIVE, PASSIONNATE Automatically generate the personality of the persona profile (SoulEngine). This will incurs an additional cost to the reply.
A list of shareable picture objects that the persona is allowed to send when the user requests an image. Picture sharing is only supported on specific chat models:
| Chat Model | Picture Sharing Support |
|---|---|
chat-2-pro | ✅ Enabled |
chat-2-smart | ✅ Enabled |
dating-pro-1 | ❌ Not Supported |
dating-smart-1 | ❌ Not Supported |
Hide child attributes
1 - 1281 - 128A custom caption of the picture, this can be used to override the default caption generated by our AI.
1 - 100Distance between the persona profile and the user in kilometers or miles.
Allows our operator/chat models to add emojis to the reply.
| Emoji Frequency | Description |
|---|---|
FREQUENT | 50% at least 1 and maybe 1 more emoji if appropriate / 50% 1 if appropriate |
SOMETIMES | 75% 1 if appropriate / 25% no emoji |
RARELY | 75% no emoji / 25% 1 if appropriate |
NEVER | 100% no emoji |
FREQUENT, SOMETIMES, RARELY, NEVER Allows our chat model to degrade the text content generation quality to improve human-like response. Defaults to NONE or LOW randomly (50/50).
LOW, MEDIUM, HIGH, NONE Allows our AI to split a long response into multiple shorter messages. If not specified, defaults to false.
This provides a more natural conversation flow by breaking down lengthy responses.
Note that every message sent has its own answer.created event.
If multipleMessagesPerReply is activated, changes the chances to respond with multiple messages
VERY_FREQUENT, FREQUENT, OCCASIONAL, RARE Define the frequency of questions in the conversation.
This can be used to control the pace and engagement of the conversation.
The frequency control is best effort, and it may not always be perfectly accurate due to the nature of AI-generated responses.
Example: 0.5 will result in 50% of the messages being questions.
0 <= x <= 1Introduces a delay between the answer.processing and answer.created events to simulate human-like typing behavior. This can enhance user experience by making responses feel more natural. See the Notify Your End Users use case for implementation example.
INSTANT, FAST, NORMAL Specifies the type of icebreaker message to use when starting a conversation.
| Type | Description |
|---|---|
AUTO | Automatically selects appropriate ice-breaker type |
NO_PHOTO | Message about user having no photos |
MISSING_DETAIL | Message about incomplete profile details |
MUCH_YOUNGER | Message addressing significant age difference (user younger) |
MUCH_OLDER | Message addressing significant age difference (user older) |
NEARBY | Message highlighting close proximity |
GENERIC | General conversation starter |
USER_ONLINE | Message acknowledging user is currently online |
USER_OFFLINE | Message for offline users |
JUST_JOINED | Welcome message for new users |
EROTIC | The persona will initiate the conversation with a strongly erotic message |
PHOTO_COMMENT | The Persona will engage the conversation by commenting the User main picture |
Must be used with engage parameter set to AUTO or ICEBREAKER.
If PHOTO_COMMENT is used while the user doesn't have a main picture, the type will default to AUTO.
AUTO, NO_PHOTO, MISSING_DETAIL, MUCH_YOUNGER, MUCH_OLDER, NEARBY, GENERIC, USER_ONLINE, USER_OFFLINE, JUST_JOINED, EROTIC, PHOTO_COMMENT Manages engagement messages in conversations. By default, engagement messages are disabled.
Set to AUTO for context-based engagement type selection.
Note: Using specific values instead of AUTO will force that engagement type regardless of context.
| Value | Description |
|---|---|
AUTO | Selects best engagement type based on context |
ICEBREAKER | Sends an icebreaker message when starting a new conversation. You can specify icebreakerType parameter to force a specific type of icebreaker message. |
NUDGE | Sends re-engagement message after inactivity |
REVIVE | Sends messages to reactivate dormant conversations |
AUTO, ICEBREAKER, NUDGE, REVIVE Allows you to disable the Core Guardian security features for our chat models. You will be responsible for ensuring the content is safe for all users.
Allow you to select which features of the Core Guardian security are enable for our chat models.
Hide child attributes
Enable/Disable Malicious Content guardrail
Enable/Disable AI Suspicion guardrail
Enable/Disable Underage Detection guardrail
Enable/Disable Unknown Language guardrail
Enable/Disable Message Repetition guardrail
[Deprecated: Is not used and will be removed in the future] Enables Prohibited Illegal Content guardrail
This guardrail is deprecated and will be removed in the future.
[Deprecated: Is not used and will be removed in the future] Enables Dangerous Drug Use guardrail
This guardrail is deprecated and will be removed in the future.
If set to true, the AI will avoid using an aggressive or confrontational tone, even when the user is being rude, insulting, or hostile. It will remain calm, polite, and non-reactive in all situations, and will not retaliate or escalate the conversation.
Allows you to override a subset of persona profile attributes for the current request
Hide child attributes
This parameter adjusts the Persona’s sexual appetite and likelihood to engage in sexting.
| Value | Description |
|---|---|
NONE | The Persona will never send sexually explicit replies. |
LOW | The Persona will rarely initiate or respond to sexual topics, even if prompted. |
NORMAL | The Persona may engage in sexting if the conversation naturally leads there. |
HIGH | The Persona will respond positively and proactively to sexual cues from the User faster. |
VERY_HIGH | The Persona will initiate or escalate sexting as soon as the User shows any sexual intent. |
VERY_HIGH, HIGH, NORMAL, LOW, NONE Enable vision features that allow the AI to interpret, analyze, and understand images.
Vision capability by model:
| Model | Vision Support |
|---|---|
chat-2-pro | ✅ Enabled |
chat-2-smart | ✅ Enabled |
dating-pro-1 | ❌ Not Supported |
dating-smart-1 | ❌ Not Supported |
Hide child attributes
Enable user profile's picture analysis.
Enable persona profile's picture analysis.
Enable user's shared pictures analysis.
Enable persona's shareable pictures analysis, this will allows our chat model to understand each image it is sharing.
Available actions:
| Action | Description |
|---|---|
PAUSE_CONVERSATION | This feature requests the Persona to send a message indicating that they are temporarily pausing the conversation without specifying a timeline for resuming. This is useful if you disconnect your Personas or limit your Users' messages. Optionally, you can specify a pause duration to be respected on DumGum. During this period, our platform will not respond to any new User messages in the affected conversation. |
Hide child attributes
The type of the action.
PAUSE_CONVERSATION Optional pause conversation parameters.
Hide child attributes
Optional duration of the pause in seconds (maximum 12 hours). By default, the conversation will not be paused on DumGum side.
1 <= x <= 43200Allow you to customize the post-processing of the generated content. This can be used to replace specific characters or remove certain elements from the generated text.
Hide child attributes
Used for Greek answer generations. Replace ";" by "?" and accentuated characters by their non-accentuated equivalents.
Controls how the Persona handles requests from the user to meet in person. When null, defaults to DEFAULT_MODE.
| Value | Description |
|---|---|
DEFAULT_MODE | (default) Warm refusal using a plausible personal excuse. Uses stored long-term memory excuse if available. |
DEFERRED_MEETING | Expresses genuine desire to meet first, then softly refuses with a personal excuse, and ends on a hopeful note. |
CHAT_ONLY | Firm, warm redirect back to the conversation. No implied future possibility of meeting. No personal-life excuses. |
DEFAULT_MODE, DEFERRED_MEETING, CHAT_ONLY No Content