Соберите сообщение
Запрос содержит model, messages и max_tokens; системная инструкция передаётся отдельным полем system. Сохраняйте роли и порядок сообщений, чтобы повторный запрос воспроизводил контекст.
Raw HTTP вызывает https://cicora.ai/api/v1/messages, а Messages SDK получает только gateway root https://cicora.ai/api и добавляет /v1/messages самостоятельно.
curl --request POST https://cicora.ai/api/v1/messages \
--header "Authorization: Bearer $CICORA_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"model": "anthropic/claude-sonnet-5",
"max_tokens": 500,
"system": "Answer with a compact checklist.",
"messages": [{"role": "user", "content": "Prepare a release plan."}]
}'Инструменты и поток
- Добавляйте tools и tool_choice только для моделей с такой возможностью.
- Потоковый режим обрабатывайте как последовательность событий, а не как один JSON.
- Подтверждайте структуру tool arguments до выполнения действия.
Выбор формата
Не смешивайте поля двух форматов в одном запросе. Выберите chat или messages на границе вашего клиента и нормализуйте внутреннюю историю один раз.
Тестируйте миграцию на сохранённом обезличенном диалоге, включая tool result и долгий контекст.