Skip to main content
POST
/
v1
/
characters
/
{id}
/
say
Talk to a character (one turn)
curl --request POST \
  --url https://api.alakazam.gg/v1/characters/{id}/say \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "text": "<string>",
  "token": "<string>",
  "currentStance": "<string>",
  "history": [
    {
      "role": "<string>",
      "text": "<string>"
    }
  ],
  "affect": {},
  "memory": "<string>"
}
'
{
  "reply": "<string>",
  "stance": "<string>",
  "emotion": "<string>",
  "affect": {},
  "action": {}
}

Authorizations

Authorization
string
header
required

The scoped runtime session JWT from POST /v1/sessions/token. The embed's browser presents it (Authorization: Bearer, or a token body field) to the runtime exchange routes. Not an API key.

Path Parameters

id
string<uuid>
required

Body

application/json
text
string
required

What the player just said.

token
string

The session JWT (or send it as Authorization: Bearer).

currentStance
string
history
object[]
affect
object
memory
string

Response

The character's turn

One character turn.

reply
string

What the character says aloud.

stance
string

The stance id it moved to.

emotion
string
affect
object

Running mood + rapport {v,a,d,rapport}.

action
object

An optional thing it DOES this turn (show_image | fetch_object | change_location).