40 uç · /api/crm/v1/conversations
İstek örnekleri ucun GERÇEK metodu ve yolundan üretilir. 39 ucun elle doğrulanmış gövde örneği henüz yok; o uçlarda iskelet gövdesizdir — uydurma bir alan yazmıyoruz.
idcurl -X GET "https://{slug}.crm.blesyum.app/api/crm/public/v1/conversations/<id>/participants" \
-H "Authorization: Bearer blsk_..." \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}idcurl -X POST "https://{slug}.crm.blesyum.app/api/crm/public/v1/conversations/<id>/participants" \
-H "Authorization: Bearer blsk_..." \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}idcontactIdcurl -X DELETE "https://{slug}.crm.blesyum.app/api/crm/public/v1/conversations/<id>/participants/<contactId>" \
-H "Authorization: Bearer blsk_..." \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}id`type` alanı yanıtı KİMİN yazdığını söyler: `admin` (temsilci) ya da `user` (müşteri). `admin` seçildiğinde `admin_id` zorunludur. `message_type` varsayılan `comment`tir; `note` müşteriye GÖRÜNMEYEN dahili nottur ve webhook'a `conversation.replied` olarak gitmez.
Gerekli kapsam: conversations.write (dahili not için de aynı kapsam)
curl -X POST "https://{slug}.crm.blesyum.app/api/crm/public/v1/conversations/<id>/reply" \
-H "Authorization: Bearer blsk_..." \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{
"type": "admin",
"admin_id": "0193c4e2-1111-7c3d-9e5f-1a2b3c4d5e6f",
"body": "Merhaba, siparişiniz kargoya verildi.",
"message_type": "comment"
}'{
"data": {
"type": "conversation",
"id": "0193c4e2-2222-7c3d-9e5f-1a2b3c4d5e6f",
"state": "open"
},
"trace_id": "01JC…"
}idcurl -X PUT "https://{slug}.crm.blesyum.app/api/crm/v1/conversations/<id>" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}iditemIdcurl -X PUT "https://{slug}.crm.blesyum.app/api/crm/v1/conversations/<id>/items/<itemId>" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}iditemIdcurl -X DELETE "https://{slug}.crm.blesyum.app/api/crm/v1/conversations/<id>/items/<itemId>" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}iditemId(`author_kind`): ikisi aynı cevaba farklı görüş bildirebilir ve CSAT'ta müşterinin oyu esastır.
curl -X POST "https://{slug}.crm.blesyum.app/api/crm/v1/conversations/<id>/items/<itemId>/ai-feedback" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}iditemIdcurl -X GET "https://{slug}.crm.blesyum.app/api/crm/v1/conversations/<id>/items/<itemId>/ai-sources" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}iditemIdcurl -X GET "https://{slug}.crm.blesyum.app/api/crm/v1/conversations/<id>/items/<itemId>/email" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X POST "https://{slug}.crm.blesyum.app/api/crm/v1/conversations/<id>/reply-as-agent" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X POST "https://{slug}.crm.blesyum.app/api/crm/v1/conversations/<id>/reply-as-customer" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}idcurl -X GET "https://{slug}.crm.blesyum.app/api/crm/v1/conversations/<id>/summary" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}idcurl -X DELETE "https://{slug}.crm.blesyum.app/api/crm/v1/conversations/<id>/summary" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X POST "https://{slug}.crm.blesyum.app/api/crm/v1/conversations/<id>/summary/generate" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}id**Neden ayrı bir uç:** Ayarlar'daki liste `crm.channel_templates.view` ister ve ajan çoğu kiracıda o izne sahip DEĞİLDİR. Şablonu seçecek olan ajandır; karar konuşma iznine bağlanır — yanıt yazabilen, gönderebileceği şablonu görebilmelidir. `window_open` da burada döner: pencere kapalıyken composer'ın "yaz ve gönder" demeye devam etmesi, ajanın yazıp gönderip **422** almasıdır — kullanıcı bunu ürün arızası sanar.
curl -X GET "https://{slug}.crm.blesyum.app/api/crm/v1/conversations/<id>/wa-templates" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}tenant satırlarını siler; izin = update (ayrı delete-izni yok, status/atama ile aynı kapı).
curl -X POST "https://{slug}.crm.blesyum.app/api/crm/v1/conversations/delete" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X POST "https://{slug}.crm.blesyum.app/api/crm/v1/conversations/group" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X POST "https://{slug}.crm.blesyum.app/api/crm/v1/conversations/tags/remove" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}