VTS P.O.G. has a local api of sorts running on localhost on port 3800 that allows other programs to connect to it through webrequests. This different endpoints allow external programs to queue tts messages, interact with the ai pet and much more things!
We add more options and fun functions to the API depending on needs in each build or while working on implementations with other programs. Feel free to contact us through discord if there’s some specific need that we may help ya by expanding it~
Endpoints #
TTS #
Allows to queue a message using the currently active tts system and voice on vtspog.
http://localhost:3800/pog?text=$message&user=$username&limit=$limit&tts=$tts&voice=$voice
$message = message in question to be read
$username = username of who triggered the message. Its optional, and mainly used for checking on vtspog itself who triggered the message if the streamer is curious
$limit = char limit for the message, optional.
$tts = receives the tts to use to overwrite the currently selected one, optional. Possible values: amazon, monster, SE, animalese, windows, tiktok, SAM, elevenlabs, random.
$voice = receives the voice of the current or selected tts, optional. Possible values depends on the tts, check API tts voice references for a complete list. Everyone except elevenlabs supports random as a possible value.
AI Interaction #
Send a message for the pet ai to react to
http://localhost:3800/gpt?text=$message&user=$username&presentation=$presentation&prompt=$prompt
$message = text that will be processed by chat gpt to react to. If the option to read the original message out loud is enabled, vtspog will generate two tts audios: one reading the original message, and then the response by chatgpt
$username = username of who triggered the message. Not optional in this case given vtspog keeps track of who says what so it can process and react properly to that persons messages.
$presentation = this is an optional param, it basically allows the pet to store in “long term memory” this message in particular, that way the will always have the particular message present whenever that person sends messages to the ai. We encourage users to use this to tell the pets their pronouns or some other important stuff for the pet to always keep in mind about them. Acepts either 1 or 0
$prompt = wether to include the initial users prompt as part of the answer. It receives 4 different values: -1 = use default; 0 = none; 1 = yes; 2 = yes and also include users message.
Play audio file #
Play audio file same as if it was played by the soundboard functionality
http://localhost:3800/pogu?pet=$pet&text=$filepath
$filepath = either local file path or public url of the audio file to play (mp3)
$pet= optional param to select which pet will “say” the audio file. Omit for tts pet, accepted values are ai and soundboard. If giving trouble in mixitup or streamerbot, add pet param at the start as shown above.
Play base64 audio #
Play audio data sent to this point as base64 encoded data. It should be either mp3 or wav data. This endpoint receives the data through post. The audio once processed is sent to the play queue in vtspog.
http://localhost:3800/pog64
Payload
{
user: “User who sent request”
data: “base64data”
}
Disable TTS Queue #
Functions the same as the hotkey to disable tts, it fully disables the tts queue, stoping the currently played audio and not enqueuing or processing any new audios until re enabled. Call it again to toggle it back on
http://localhost:3800/stopTTS
Skip audio #
Skips audio currently being played and jumps to next in queue.
http://localhost:3800/skip
Status #
Returns 1 if vtspog is currently running. Useful to check if an instance of vtspog is running. Returns 1 when active.
http://localhost:3800/status