OpenAPI Referansını Okuma
Pano kendi API'sini kendisi anlatır. Senkron tutulacak ayrı bir referans yoktur: çalışan site OpenAPI 3.1 belgesiyle cevap verir, her eklenti de öyle.
Belgeler
| Belge | URL | İçerik |
|---|---|---|
| Çekirdek | /api/v1/openapi.json | Pano'nun genel işlemleri |
| Bir eklenti | /api/v1/plugins/<pluginId>/_/openapi.json | O eklentinin genel işlemleri |
| Panel | /api/v1/panel/openapi.json | Dahili işlemler, panel oturumu gerekir |
Yerel bir Pano'dan çekirdek belgeyi alın:
curl -s http://localhost:8088/api/v1/openapi.json -o pano-openapi.jsonMarket eklentisinin belgesini alın:
curl -s http://localhost:8088/api/v1/plugins/pano-plugin-market/_/openapi.json -o market-openapi.jsonEklentilerin fazladan bir şey yapması gerekmez: Pano belgeyi eklentinin uç noktalarından üretir, kapalı kaynaklı eklentiler dahil. Kurulu ama durdurulmuş eklentilerin belgesi yoktur.
Bir işlem nasıl okunur
servers[0].urlön ektir: çekirdek için/api/v1, eklenti için/api/plugins/<pluginId>. İşlem yolları bunun ardından gelir.operationId, uç nokta sınıf adınınAPIolmayan halidir, örneğinGetPosts. Tipli istemci fonksiyonlarını buna göre adlandırır.parametersverequestBody, uç noktanın kendi doğrulamasından alınan JSON Schema'dır.responsesbaşarı gövdesini ve hata zarfını listeler. Ortak hata kodları (NOT_LOGGED_IN,NO_PERMISSION,INVALID_CSRF_TOKEN,RATE_LIMIT_EXCEEDED,MAINTENANCE_MODE_ENABLED) paylaşılır.deprecated: truebir yerine geçenin olduğunu söyler;x-pano-removalen erken kaldırma tarihidir.x-pano-stabilitydeğeripublicveyainternaldır. Yalnızca genel işlemler API Temelleri sayfasındaki sözü taşır.x-pano-undocumented: true, yazarın açıklama vermediği anlamına gelir: yol ve girdiler gerçektir, cevap serbest biçimlidir.
Hızlıca bakın
Tüm genel yolları ve yöntemleri jq ile listeleyin:
jq -r '.paths | to_entries[] | .key as $p | .value | keys[] | "\(.) \($p)"' pano-openapi.jsonTek bir işlemi gösterin:
jq '.paths["/posts"].get' pano-openapi.jsonHerhangi bir OpenAPI 3.1 görüntüleyicisi veya üreteci dosyaları olduğu gibi okuyabilir.
Bir kopya tutmak
Belgeyi kodunuzun yanına kaydedin ve güncellemelerden sonra karşılaştırın. Bir işlemi veya cevap alanını kaldıran bir değişiklik (süresi dolmuş kullanımdan kaldırılanlar hariç) bir hatadır: bildirin.
JavaScript için dosyanın kendisine nadiren ihtiyaç duyarsınız. pano-client pull çekirdek belgeyi ve etkin eklentilerin belgelerini indirir ve fonksiyonlara çevirir.
Belgelerde olmayanlar
- Gerçek zamanlı soketler: Erişim sayfasına bakın.
- Ön yüzün sayfa yolları ve
/_pano/*yedek sayfaları: Ön Yüz Hızlı Başlangıç sayfasına bakın. - Giden olaylar: Webhooklar sayfasına bakın.