Kapalı kutu değil, Programlanabilir Platform
361 AI İşletim Sistemi'nin tamamı uç noktalarla dışarı açıktır: JSON API, MCP sunucusu, çift yönlü webhook, kendi araçlarınızı tanımlama, gömülebilir sohbet bileşeni ve tanım tabanlı XML metadata. Bu sayfa, teknik ekibin entegrasyon kararını almadan önce görmek istediği yüzeyi olduğu gibi anlatır.
361 bir MCP sunucusudur
Kendi AI istemciniz veya agent'ınız, 361'i denetimli bir araç yüzeyi olarak kullanabilir. Kurumsal verinize ve iş süreçlerinize erişim; izin kovaları, entity bazlı erişim listeleri ve denetim kaydıyla sınırlanır. Uç nokta /mcp.
- JSON-RPC 2.0
- MCP protokol sürümü 2025-03-26
- Sunucu adı: 361-platform-mcp
- Taşıma: Streamable HTTP
- Yalnızca POST
Bağlantı
{ "mcpServers": { "361-platform": {
"url": "https://<alan-adiniz>/mcp",
"headers": { "Authorization": "Bearer 361ai_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" } } } }
Anahtar formatı 361ai_ + 32 onaltılık karakterdir. Anahtar düz metin olarak saklanmaz; yalnızca SHA-256 özeti tutulur. Rotasyon sırasında eski ve yeni anahtarın birlikte geçerli olduğu bir geçiş penceresi vardır, böylece istemcileri kesintisiz güncellersiniz.
Desteklenen metotlar
initialize— oturum açılışı, yetenek anlaşmasınotifications/initialized— istemci hazır bildirimiping— canlılık kontrolütools/list— anahtarın erişebildiği araçların listesitools/call— araç çağrısı
5 izin kovası
Araç erişimi tek tek araç adı yönetmek yerine beş kovayla verilir. Kovaların tamamı açıldığında toplam 60 araç adı eşlenir; pratikte bir anahtara açılan küme, o anahtarın iznine göre bunun alt kümesidir.
| İzin kovası | Kapsam |
|---|---|
| entity_read | Kayıt okuma, sorgulama, toplulaştırma |
| entity_write | Kayıt oluşturma, güncelleme, silme, durum geçişi |
| config_read | Şema ve yapılandırma okuma |
| config_write | Şema ve yapılandırma değiştirme |
| utility | Yardımcı işlemler, dosya, dönüştürme, arama |
Erişim sınırları ve denetim
Sınırlar
- Entity bazlı erişim listesi
- IP beyaz listesi
- Dakika bazlı hız sınırı
- Günlük kota
- 30 dakika hareketsizlikte oturum düşer
Denetim kaydı
Her araç çağrısı günlük JSONL dosyasına yazılır: zaman damgası, anahtar kimliği, araç adı, argümanlar, başarı durumu ve süre (ms). Parola, token, anahtar gibi hassas alanlar kayda geçmeden maskelenir.
Sunucu doğrudan stdio konuşmaz. Yalnızca stdio taşıması destekleyen istemciler için araya bir HTTP → stdio köprüsü koymanız gerekir.
361 aynı zamanda MCP istemcisidir
Yön tek taraflı değildir: 361 dış MCP sunucularını da tüketir. Üç taşıma desteklenir — HTTP/SSE, stdio ve Streamable HTTP. Bağlanan sunucunun araçları otomatik keşfedilir ve platform içindeki agent'lara kullanılabilir araç olarak sunulur.
Tek uç nokta, 103 method
Platformun tamamı tek bir uç noktadan konuşur: /JSON. Toplam 103 method vardır, bunların 38'i eşzamansız çalışır. Method adı istek gövdesinde taşınır; öğrenmeniz gereken tek şey zarf yapısıdır.
İstek gövdesi
{ "method": "Select", "params": { "et": "Customer", "inputparams": {} }, "urlpath": "" }
Yanıt zarfı
{ "method": "Select", "code": "0", "message": "OK", "friendlymessage": "",
"exception": { "message": "", "stacktrace": "", "source": "" },
"result": { "items": [] } }
Dikkat: code alanı sayı değil metindir. "0" başarı anlamına gelir. İstemci tarafında karşılaştırmayı metin olarak yapın.
Method aileleri
| Aile | İçerik |
|---|---|
| Oturum / başlangıç | 16 method — oturum açma, bağlam kurma, alan bilgisi |
| Okuma / sorgu | 10 method — listeleme, filtreleme, tekil kayıt |
| Yazma | 7 method — Insert, Update, Upsert, Delete, Execute, Copy, Change |
| Alan ve durum | SetField, Transition, Action, Procedure |
| Toplulaştırma | GroupBy, GroupBys |
| Şema / metadata | 30 method — çalışma anında şema okuma |
| Mesaj kuyruğu | Kuyruğa yazma ve tüketme |
| Dosya | Yükleme, indirme, ek yönetimi |
| Gerçek zamanlı | Bildirim ve canlı güncelleme |
| AI | AiChat, AiChatStream, AiThreadList, AiThreadDelete |
| Toplu işlem | Çok kayıtlı işlemler |
GET yolları
GET /JSON/Domain— alan tanımıGET /JSON/Alive— 30 saniyelik canlılık sinyaliGET /JSON/Select/<EntityType>[/<filtre>[/all]]— doğrudan okuma
Select GET yolu If-Modified-Since başlığını destekler; veri değişmediyse gövdesiz 304 döner. Sık yoklayan panolarda ve mobil istemcilerde bant genişliğini ciddi biçimde düşürür.
Hata kodları
| Kod | Anlamı |
|---|---|
| 102 | params gönderilmemiş |
| 110 | Belirtilen entity type yok |
| 111 | Entity type oturumda mevcut değil |
| 103 / 104 / 105 | items ile ilgili sorunlar (eksik, biçimsiz, boş) |
| 9999 | Bilinmeyen method |
Idempotency — aynı isteği iki kez göndermek
İstekle birlikte _requestId (UUID) gönderirseniz, 24 saatlik pencere içinde aynı istek tekrar çalıştırılmaz; orijinal yanıt birebir tekrar döner. Bu mekanizma özellikle mobil çevrimdışı kuyruk senaryosu için tasarlanmıştır: bağlantı koptuğunda kuyruktaki istekler tereddütsüz yeniden gönderilir, mükerrer kayıt oluşmaz.
Idempotency önbelleği süreç belleğinde tutulur. Uygulama yeniden başlatıldığında önbellek boşalır ve o ana kadarki istek kimlikleri unutulur. Kritik akışlarda bunu hesaba katın.
Webhook ve olaylar — çift yönlü
Entegrasyon tek yönlü değildir. 361 sizin sisteminizi tetikleyebilir; siz de 361 içindeki bir otomasyonu dışarıdan tetikleyebilirsiniz.
Giden — 361 sizi tetikler
{ "id": "wh_demo01", "name": "CRM Bildirimi",
"url": "https://ornek.local/webhook/ai-events",
"events": ["agent:complete", "automation:done", "chat:message"],
"secret": "whsec-xxx", "active": true,
"headers": { "X-Custom-Header": "value" }, "retryCount": 3 }
Abone olabileceğiniz olaylar: agent:complete, agent:error, automation:done, chat:message, batch:complete, approval:pending.
{ "event": "agent:complete",
"timestamp": "2026-07-21T09:14:22Z",
"data": { "agentId": "...", "agentName": "...", "result": {}, "duration": 1840, "tokens": 1265 },
"signature": "sha256=..." }
Gövde HMAC ile imzalanır; imzayı kendi tarafınızda doğrulayarak isteğin gerçekten 361'den geldiğini garanti edersiniz. Uç noktanız 5xx dönerse veya zaman aşımına uğrarsa çağrı yeniden denenir.
Gelen — siz 361'i tetiklersiniz
Otomasyon tetikleyici tipini webhook seçtiğinizde otomasyon dışarıdan çağrılabilir hale gelir. İlgili alanlar: webhookPath, webhookSecret, webhookMethod (POST / GET / PUT).
Diğer tetikleyiciler
Entity olayı
afterinsert, afterupdate, afterdelete. Tetiklendiğinde kaydın tüm alan değerleri şablon değişkeni olarak akışa girer; ayrıca sorgu yazmanız gerekmez.
Zamanlanmış
Aralık, cron, günlük veya saatlik. Örneğin hafta içi her sabah 09:00 için 0 9 * * 1-5.
Manuel
Kullanıcı ekrandan başlatır; onay gerektiren veya seyrek çalışan süreçler için.
Gelen e-posta
Belirlenen kutuya düşen e-posta akışı başlatır; talep, sipariş ve fatura girişlerinde kullanılır.
Akış adımları
Bir otomasyon akışı şu adımlardan kurulur: AI işlemi, kayıt oluştur / güncelle / upsert, e-posta gönder, webhook çağrısı, koşul, dönüştürme, değişken atama, log ve bekleme.
Araç tanımlama
Platformda 52 yerleşik araç vardır. Her araç JSON Schema ile tanımlıdır ve şema, üç sağlayıcı formatına otomatik dönüştürülür — aynı aracı farklı modellerle çalıştırmak için yeniden yazmanız gerekmez.
| Kategori | Araç sayısı |
|---|---|
| Entity | 8 |
| İletişim | 2 |
| Yardımcı | 12 |
| Kod | 1 |
| Veritabanı | 7 |
| API | 8 |
| Bilgi tabanı | 1 |
| Entity dosyaları | 2 |
| Tarayıcı RPA | 1 |
| Kanal | 10 |
Gerçek örnek: http_request
Parametreler: url (uri, zorunlu), method (GET / POST / PUT / PATCH / DELETE), headers, body, timeout (varsayılan 30, en fazla 120), followRedirects.
SSRF koruması: localhost, 127.0.0.1, ::1, 10.x, 172.16-31.x, 192.168.x ve 169.254.x adreslerine çağrı engellenir — model, iç ağınızı dolaşmak için bu aracı kullanamaz. Risk seviyesi orta; çağrı onay gerektirir.
Kendi aracınızı tanımlayın
{ "name": "crm_lookup", "displayName": "CRM Sorgula", "category": "custom",
"implementation": "webhook",
"webhookUrl": "https://ornek.local/api/crm-lookup",
"webhookMethod": "POST",
"parameters": { "type": "object",
"properties": { "musteriNo": { "type": "string", "description": "Musteri numarasi" } },
"required": ["musteriNo"], "additionalProperties": false },
"requiresApproval": true, "riskLevel": "medium",
"maxCallsPerMinute": 60, "maxCallsPerConversation": 100 }
Model aracı çağırdığında argümanlar JSON gövdesinde uç noktanıza gönderilir, 30 saniye zaman aşımı uygulanır ve dönen yanıt JSON olarak çözümlenip modele verilir.
Özel araç uygulama tipleri arasında javascript ve pipeline henüz uygulanmamıştır. Şu an çalışan tipler: webhook ve MCP. Tasarımınızı bu ikisi üzerine kurun.
Araç güvenlik alanları
requiresApproval— çağrı öncesi insan onayıriskLevel— low / medium / high / critical- İzinli agent listesi — aracı hangi agent'ların çağırabileceği
maxCallsPerMinutevemaxCallsPerConversation— dakika ve konuşma başına çağrı limitleri
Sohbet SDK — 361-chat.js
Kendi web uygulamanıza, portalınıza veya müşteri sitenize agent'ı gömmek için bağımlılıksız saf JavaScript bileşen. Küçültülmüş boyut yaklaşık 25-30 KB; herhangi bir çatı kütüphanesi gerektirmez.
<script src="/ai-manager/361-chat.js"></script>
<script>
Platform361Chat.init({
agentId: 'musteri-destek-agenti',
apiUrl: 'https://alan-adiniz.com',
title: 'Musteri Destek',
welcomeMessage: 'Merhaba! Size nasil yardimci olabilirim?',
theme: 'light'
});
</script>
Akış ve dayanıklılık
Yanıt SSE ile akar; SSE başarısız olursa bileşen otomatik olarak POST'a düşer ve konuşma kesilmez.
Tema ve yerleşim
Açık ve koyu tema, 16 CSS değişkeniyle özelleştirilir. 480 piksel altında tam ekran moda geçer.
İçerik
Markdown desteği: kalın, italik, satır içi kod, kopyala butonlu kod bloğu, listeler, başlıklar ve bağlantılar.
Dosya ve marka
Sürükle-bırak dosya yükleme (en fazla 10 MB) ve beyaz etiket: kendi logonuz, kendi marka renginiz.
İş mantığı kodda değil, tanımda
Alan ekleme, alan gizleme, hesaplama, iş kuralı, durum geçişi ve toplu işlem — hepsi tanımda yapılır. Platform kodu yalnızca gerçekten yepyeni bir yetenek gerektiğinde değişir. Bu, "her talep için geliştirme" döngüsünü kıran temel mimari tercihtir.
<Entity
Name="TaskManagement"
Title="Task Management"
Title_TR="Gorev Yonetimi"
HomeMenu="mBusinessManagement"
Solution="BusinessManagement"
Color="#CC4A65" />
Hiyerarşi
Module
Entities
Entity
EntityTypes
EntityType
Fields
States
DoScripts
Contents
Panel
Navigation
Roles
Çok dillilik ve çalışma anı erişimi
- Çok dilli metadata yerleşiktir: TR / EN / DE / FR / RU başlık alanları tanımın parçasıdır.
- Şema çalışma anında programatik olarak okunabilir.
/JSONüzerindenETs,Fields,RelatedFields,ETStates,EntityTypes,MetadataVersionmetotları kullanılır — istemciniz ekranını şemaya göre kendisi kurabilir. - Şema değişikliği yeniden başlatma gerektirmez.
Ortamlar, deneme ve limitler
Bir entegrasyonu üretime almadan önce ne kadar güvenle deneyebileceğiniz, teknik ekibin ilk sorduğu sorudur. Aşağıdakiler bugün platformda çalışan mekanizmalardır.
Ne koştuğunu görürsünüz
Ortam etiketi
API bağlantıları Development, Staging ve Production olarak etiketlenir; hangi bağlantının hangi ortama gittiği yapılandırmada görünür.
Çalıştırmadan önce önizleme
Senkronizasyon önizlemesi
Aktarım başlamadan örnek satırlar ve eşlenen kolonlar gösterilir; eşleme hatasını veriye dokunmadan görürsünüz.
Toplu işlemde kuru çalıştırma
Dry-run modu, geri alınabilir anlık görüntü ve işlem kimliğiyle izleme. Yanlış giden bir toplu işlem geri alınabilir.
Çözüm dağıtımında plan önizlemesi
Dağıtım uygulanmadan önce hangi değişikliklerin yapılacağı plan olarak listelenir.
Salt-okunur kilit
Veritabanı yöneticisinde salt-okunur kilit anahtarı açıkken, tüm değiştirici işlemler daha sunucuya gönderilmeden reddedilir.
Kod çalıştırma aracı izole bir kum havuzunda çalışır; dosya sistemi ve ağ erişimi kısıtlıdır.
Ayrı bir "sandbox tenant / test alanı" kavramı henüz yoktur. Deneme güvenliği, yukarıda sayılan önizleme, kuru çalıştırma, geri alma ve salt-okunur kilit mekanizmalarıyla sağlanır.
Kimlik doğrulama seçenekleri
Giden bağlantılarda desteklenen yöntemler: yok, Basic, Bearer, API anahtarı, OAuth 2.0 (client-credentials / password / authorization-code) ve Digest.
API anahtarı güvenliği
- Anahtar düz metin değil, özet olarak saklanır
- Rotasyonda geçiş penceresi
- IP beyaz listesi
- Dakika bazlı hız sınırı
- Günlük kota
Teknik ekibinizle Aynı Masaya Oturalım
Teknik ekibiniz için ayrıntılı mimari ve güvenlik dokümantasyonu POC kapsamında paylaşılır.