ドキュメント
Channels
Integrate Schift RAG with messaging platforms like KakaoTalk for real-time conversational search.
The Channels API connects Schift collections to messaging platforms. When a user sends a message through a connected channel, Schift automatically embeds the query, searches the linked collection, and returns formatted results within platform constraints.
Kakao Webhook
bashPOST /v1/channels/kakao/webhookReceives messages from KakaoTalk via Open Builder skill callback. Authentication uses the bot_id from the webhook payload (must be registered in a channel config). Rate limited to 30 requests per 60 seconds per bot.
Flow
Incoming message -> bot_id authentication -> rate limit check -> embed query -> search linked collection -> format results (900 char limit) -> return Kakao simpleText response. User messages are stored as vectors in the background for conversation history.
Send Message
bashPOST /v1/channels/kakao/sendSend an alimtalk notification via KakaoTalk channel. Requires API key authentication.
| Parameter | Type | Required | Description |
|---|---|---|---|
channel_config_id | string | Yes | Channel config ID |
phone | string | Yes | Recipient phone number |
template_code | string | Yes | Kakao alimtalk template code |
template_args | object | No | Template variable substitutions |
user_id | string | No | Kakao user ID (alternative to phone) |
message | string | No | Plain message text (if template not used) |
bashcurl -X POST https://api.schift.io/v1/channels/kakao/send \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $SCHIFT_API_KEY" \
-d '{
"channel_config_id": "ch_abc123",
"phone": "+821012345678",
"template_code": "order_confirmation",
"template_args": {"order_id": "ORD-2026-001", "customer": "Kim"}
}'Channel Config CRUD
| Method | Endpoint | Description |
|---|---|---|
| POST | /v1/channels/configs | Register a channel config (provider, API keys, linked collection) |
| GET | /v1/channels/configs | List all configs (secrets masked) |
| DELETE | /v1/channels/configs/{id} | Delete a config |
bash# Register a Kakao channel
curl -X POST https://api.schift.io/v1/channels/configs \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $SCHIFT_API_KEY" \
-d '{
"name": "Support Bot",
"provider": "kakao",
"config": {
"bot_id": "your-kakao-bot-id",
"collection": "support-docs",
"rest_api_key": "your-rest-api-key",
"channel_id": "your-channel-id"
}
}'