Editar Sub-Avatar
Edita um sub-avatar existente; apenas os campos enviados são atualizados (partial update)
Endpoint
POST /api/externalAPIs/public/tolkyReasoning/avatars/editAvatarHelper
Parâmetros
UUID do sub-avatar a ser editado.
UUID do host proprietário; usado para validar que o avatar pertence ao host (404 se não pertencer).
Nome do sub-avatar (opcional; se enviado, atualiza).
URL da imagem de perfil (opcional; se enviado, atualiza).
Prompt de comportamento/personalidade (opcional; se enviado, atualiza).
ID do modelo de IA. Deve ser enviado junto com llm_provider_id; caso contrário use o parâmetro model.
ID do provider de IA. Deve ser enviado junto com llm_model_id; caso contrário use o parâmetro model.
Nome do modelo (ex: gpt-4.1-mini). Usado quando llm_model_id e llm_provider_id não são enviados; modelo inexistente retorna 400 com lista de modelos disponíveis.
Exemplo
curl -X POST {{BASE_URL}}/api/externalAPIs/public/tolkyReasoning/avatars/editAvatarHelper \
-H "Authorization: Bearer {TOKEN}" \
-H "Content-Type: application/json" \
-d '{
"avatar_id": "uuid-do-avatar",
"host_id": "uuid-do-host",
"avatar_name": "Novo Nome",
"avatar_picture": "https://exemplo.com/imagem.jpg",
"prompt_envelop": "Você é um assistente...",
"model": "gpt-4.1-mini"
}'
Resposta
{
"code": 200,
"message": "Success",
"data": {
"avatar_id": "uuid-do-avatar",
"sub_slug": "slug-do-avatar",
"avatar_name": "Novo Nome",
"avatar_picture": "https://exemplo.com/imagem.jpg",
"prompt_envelop": "Você é um assistente...",
"llm_model_id": 1,
"llm_provider_id": 2,
"model": "gpt-4.1-mini",
"provider": "OpenAI"
}
}
Campos da Resposta
Apenas os campos enviados na requisição são atualizados (partial update). Os demais permanecem inalterados. O sub_slug não é alterado na edição.
Erros
| Código | Descrição |
|---|---|
400 | Validação falhou: avatar_id ou host_id ausentes; llm_model_id/llm_provider_id enviado sem o par; model inexistente (resposta inclui lista disponível). |
403 | Token ausente ou inválido |
404 | Avatar não encontrado ou não pertence ao host. |
500 | Erro interno do servidor. |