CYD Studio › Belgeler › HTTP API

HTTP API

Kart üstü panelin kullandığı uç noktalar. Her şey http://<kart-ip>/api/... altında, JSON döner; yazma istekleri POST. /api dışı her yol önce projelerin cyd.rota ile açtığı rotalara bakılır.

Durum ve dosyalar

Uçİş
GET /api/statusİşler (mod dahil), sys (heap / DRAM / flash / rssi / sıcaklık), net, autostart, rotalar, max_jobs, max_thread
GET /api/capsÖzellik haritası (OZELLIKLER + ölçülen yetenekler); panel düğmeleri buna göre gizler
GET /api/listProje dosyaları + modlar + base (/projects ya da /sd/projects)
GET /api/file?name=Dosya içeriği
POST /api/save?name=Yaz (gövde = ham içerik, akıtmalı)
POST /api/delete?name= · POST /api/rename?name=&to=
GET /api/docs[?dil=en]Kart üstü belge (Markdown)

Çalıştırma

Uçİş
`POST /api/run?name=[&mod=normal\thread\solo]`Çalıştır; mod tek seferlik
POST /api/stop?name= · POST /api/stopallDurdur
POST /api/mod?name=&mod=Dosyanın kalıcı çalışma modu
`POST /api/solo?name=&wifi=0\1`Solo modda yeniden başlat (tek seferlik)
`POST /api/autostart?name=&on=0\1`Açılış listesi (çoklu)
POST /api/forceTakılı projeyi zorla (reset)
POST /api/evalGövdedeki kodu bir kez çalıştır
GET /api/rotalar · GET /<rota>Projelerin açtığı yollar; projenin işleyicisi

Log

Uçİş
GET /api/log?since=N[&source=ad]Canlı log: [seq, kaynak, satır] (100 satırlık halka, sayfa başına en çok 80)
POST /api/log/clearCanlı logu temizle
GET /api/log/file?name=Projenin kalıcı logu (/logs/<proje>.log, 8 KB/proje)
GET /api/log/filesLogu olan projeler ve boyutları
POST /api/log/file/clear?name=

Ayarlar

Uçİş
GET/POST /api/wifiAğ ayarları (boş şifre eskisini korur)
GET /api/scanAğ taraması
`POST /api/display?rot=0..3&bgr=0\1&test=1&save=0\1`Ekranı anında ayarla
`GET/POST /api/depolama[?mod=otomatik\flash\sd]`Projeler nerede dursun (canlı geçiş)
`POST /api/tasi?hedef=sd\flash[&names=a,b]`Flash ↔ SD taşıma (kopyala, doğrula, kaynağı sil; çalışan proje varken reddedilir)
POST /api/resetYeniden başlat

Örnek

curl http://192.168.0.217/api/status
curl -X POST --data-binary @merhaba.py "http://192.168.0.217/api/save?name=merhaba.py"
curl -X POST "http://192.168.0.217/api/run?name=merhaba.py"
curl "http://192.168.0.217/api/log?since=0&source=merhaba.py"
curl -X POST "http://192.168.0.217/api/stop?name=merhaba.py"

USB köprüsü üzerinden

tools/usb_panel.py aynı API'yi seri porttan sunar: çerçeve ~CYD~id~b64(json{m,p,q,b|f}), cevap yazıldıkça base64'lenip ~CYDR~id~... olarak akıtılır; 384 bayt üstü gövdeler ~CYDB~ parçaları olarak gider ve her parça ~CYDA~ ile onaylanır. Panel tarafında bir fark yoktur.

Son güncelleme 2026-10-17 · Bu sayfa Markdown olarak