Geliştirici Merkezi

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 GELİŞTİRİCİ PROTOKOL MİMARİSİ
REST & OPENAPI Çift Yönlü API OAuth2 & Bearer Key Otomatik Dokümantasyon WEBHOOK ENGINE Olay Bazlı Tetik HMAC İmza Doğrulama Anlık Akış Başlatma MCP SERVER Model Context Protocol 5 Yetki Kovası & Kota Dış Agent Erişimi DENETİM İZİ OpenTelemetry Değiştirilemez Log Anlık Metrik & Tracing
01 · Model Context Protocol

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ı

mcp-config.json
{ "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 bildirimi
  • ping — canlılık kontrolü
  • tools/list — anahtarın erişebildiği araçların listesi
  • tools/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_readKayıt okuma, sorgulama, toplulaştırma
entity_writeKayı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
utilityYardı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.

Sınır

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.

02 · Core JSON API

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

POST /JSON
{ "method": "Select", "params": { "et": "Customer", "inputparams": {} }, "urlpath": "" }

Yanıt zarfı

Yanıt
{ "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 / sorgu10 method — listeleme, filtreleme, tekil kayıt
Yazma7 method — Insert, Update, Upsert, Delete, Execute, Copy, Change
Alan ve durumSetField, Transition, Action, Procedure
ToplulaştırmaGroupBy, GroupBys
Şema / metadata30 method — çalışma anında şema okuma
Mesaj kuyruğuKuyruğa yazma ve tüketme
DosyaYükleme, indirme, ek yönetimi
Gerçek zamanlıBildirim ve canlı güncelleme
AIAiChat, 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 sinyali
  • GET /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ı

KodAnlamı
102params gönderilmemiş
110Belirtilen entity type yok
111Entity type oturumda mevcut değil
103 / 104 / 105items ile ilgili sorunlar (eksik, biçimsiz, boş)
9999Bilinmeyen 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.

Sınır

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.

03 · Olay yüzeyi

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

Webhook tanımı
{ "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.

Gönderilen gövde
{ "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.

04 · Tool

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.

KategoriAraç sayısı
Entity8
İletişim2
Yardımcı12
Kod1
Veritabanı7
API8
Bilgi tabanı1
Entity dosyaları2
Tarayıcı RPA1
Kanal10

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

Webhook uygulamalı özel araç
{ "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.

Dürüstlük notu

Ö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
  • maxCallsPerMinute ve maxCallsPerConversation — dakika ve konuşma başına çağrı limitleri
05 · SDK

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.

Gömme
<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.

06 · Metadata

İş 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 tanımı
<Entity
  Name="TaskManagement"
  Title="Task Management"
  Title_TR="Gorev Yonetimi"
  HomeMenu="mBusinessManagement"
  Solution="BusinessManagement"
  Color="#CC4A65" />

Hiyerarşi

Metadata ağacı
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 üzerinden ETs, Fields, RelatedFields, ETStates, EntityTypes, MetadataVersion metotları kullanılır — istemciniz ekranını şemaya göre kendisi kurabilir.
  • Şema değişikliği yeniden başlatma gerektirmez.
07 · Ortamlar

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

361 agent çalışma izleri — adım ağacı, süre, token ve maliyet
Çalışma izleri. Her agent çalıştırması bir adım ağacı olarak açılır: kaç adım koştu, ne kadar sürdü, hangi araçlar çağrıldı. Hata ayıklama tahmine değil kayda dayanır.
361 AI işlem kayıtları — istek, yanıt, durum, sağlayıcı ve maliyet filtreleri
İşlem kayıtları. Ne istendi, ne yanıt geldi, kaça mal oldu. Duruma, sağlayıcıya ve tarihe göre filtrelenir; satıra tıklayınca ham istek-yanıt açılır.

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.

Dürüstlük notu

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.

Ücretsiz POC Başvurusu Teknik Ekiple İletişim