Skip to main content

KPI API Entegrasyonu (Pull)

Hedef Kitle: Admin, Geliştirici
Sayfa Türü: Nasıl Yapılır + Referans
Plan Özelliği: kpi_api_integration (tenant'ınız için etkinleştirilmiş olmalı)


Genel Bakış

COS, dış API'lerden KPI ölçüm verilerini otomatik olarak belirli zamanlarda çekebilir. Bu pull entegrasyon modelidir — COS, tanımlanan aralıklarla API uç noktalarınızı çağırır ve elde edilen değerleri KPI ölçümü olarak yazar.

Nasıl Çalışır

Dış API  ←──── COS (cron zamanlama) ────→  KPI Ölçüm Tablosu
(BI aracınız, HTTP GET/POST (otomatik doldurulur)
veri ambarınız, + auth header'ları
izleme sisteminiz) + JSONPath çıkarma
  1. Bir Entegrasyon Uç Noktası tanımlarsınız (base URL + auth bilgileri)
  2. Belirli KPI'ları API yanıt alanlarına bağlayan KPI Bağlantıları oluşturursunuz
  3. COS, API'yi cron zamanlamasına göre çağırır ve JSONPath ile değerleri çıkarır
  4. Çıkarılan değerler ilgili KPI'ya ölçüm olarak yazılır

Ön Koşullar

  • Plan Özelliği: Tenant'ınız için kpi_api_integration etkinleştirilmiş olmalı
  • İzin: Kullanıcının integration:manage iznine sahip olması gerekir (genellikle Admin veya Strateji Yöneticisi)
  • Dış API: Veri kaynağınız HTTP/HTTPS üzerinden erişilebilir olmalı

Adım 1: Entegrasyon Uç Noktası Oluşturma

Uç nokta, dış API bağlantı detaylarını tanımlar.

Yol: KPI Detay → Entegrasyon Paneli → Uç Noktaları Yönet

Gerekli Alanlar

AlanAçıklamaÖrnek
AdAçıklayıcı isim"BI Dashboard API"
Base URLAPI temel URL'ihttps://api.example.com/v1
Auth TürüKimlik doğrulama yöntemiBkz. Auth Türleri
Kimlik BilgileriAuth bilgileri (şifreli saklanır)Auth türüne göre değişir

Desteklenen Auth Türleri

Auth TürüKimlik BilgileriGönderilen Header
NONEAuth header'ı yok
BEARER_TOKEN{ token: "..." }Authorization: Bearer {token}
BASIC_AUTH{ username: "...", password: "..." }Authorization: Basic {base64}
API_KEY_HEADER{ headerName: "X-API-Key", headerValue: "..." }{headerName}: {headerValue}
API_KEY_QUERY{ queryName: "api_key", queryValue: "..." }URL'ye ?{queryName}={queryValue} eklenir

Adım 2: KPI Bağlantısı Oluşturma

Bağlantı, belirli bir KPI'yı yanıt eşleme kurallarıyla bir API uç noktasına bağlar.

Gerekli Alanlar

AlanAçıklamaÖrnek
KPIÖlçüm alacak KPI(bağlamdan otomatik seçilir)
Uç NoktaÇağrılacak entegrasyon uç noktası"BI Dashboard API"
Path EkiBase URL'ye eklenir/metrics/revenue
Yanıt EşlemeDeğer çıkarmak için JSONPath ifadeleriAşağıya bakın
Cron İfadesiZamanlama (ör. saatlik, günlük)0 */6 * * * (her 6 saatte)

Yanıt Eşleme (JSONPath)

Yanıt eşleme, COS'a API yanıtı JSON'ından sayısal değerlerin nasıl çıkarılacağını söyler.

AlanAçıklamaJSONPath Örneği
actualZorunlu. Mevcut metrik değeri$.value, $.data.metrics.current
targetİsteğe bağlı. Hedef/ulaşılmak istenen değer$.target, $.data.metrics.target
forecastİsteğe bağlı. Tahmin değeri$.forecast
statusNoteİsteğe bağlı. Metin notu$.status

Örnek API Yanıtı:

{
"metric": "revenue",
"value": 1250000,
"target": 1500000,
"unit": "USD"
}

Yanıt Eşleme:

{
"actual": "$.value",
"target": "$.target"
}

Yaygın Formatlar İçin JSONPath Desenleri

API Formatıactual için JSONPath
Düz: { "value": 42 }$.value
İç içe: { "data": { "metrics": { "current": 42 } } }$.data.metrics.current
Dizi (son): { "series": [{ "value": 40 }, { "value": 42 }] }$.series[-1:].value
İsimli anahtar: { "kpis": { "revenue": { "actual": 42 } } }$.kpis.revenue.actual
Sayfalanmış: { "results": [{ "measurement": 42 }] }$.results[0].measurement

Adım 3: Test Et ve Aktifleştir

  1. Bağlantıyı oluşturduktan sonra doğrulamak için Test (Kuru Çalışma) düğmesine tıklayın:
    • API erişilebilir mi
    • Auth bilgileri geçerli mi
    • JSONPath çıkarma beklenen değerleri döndürüyor mu
  2. Test sonucundaki çıkarılan değerleri inceleyin
  3. Onaylandıktan sonra bağlantı, tanımlanan cron zamanlamasına göre otomatik çalışacaktır

Çalışma Günlükleri

Her entegrasyon çalışması aşağıdaki bilgilerle bir log kaydı oluşturur:

  • HTTP durum kodu
  • Yanıt süresi
  • Çıkarılan değerler
  • Hata mesajı (başarısızsa)
  • İstek/yanıt detayları (temizlenmiş)

Plan Özellik Limitleri

Özellik AnahtarıAçıklamaVarsayılan
kpi_api_integrationPull entegrasyonu etkinleştir/devre dışı bırakDevre dışı
max_api_integrationsTenant başına maksimum bağlantı sayısı (-1 = sınırsız)-1
min_cron_interval_minutesİzin verilen minimum cron aralığı60 dk

Mock API ile Test

COS, gerçek bir dış sisteme ihtiyaç duymadan entegrasyonları test etmek için yerleşik bir mock API sunar.

Konum: tools/mock-kpi-api/

cd tools/mock-kpi-api && npm install && npm start
# → http://localhost:4444

Mock API, 5 auth türünün tamamını ve çeşitli yanıt formatlarını destekler. Detaylar için Mock API Test Rehberi sayfasına bakın.


Desteklenen KPI Türleri

Pull entegrasyon, COS'taki tüm KPI türleriyle çalışır:

KPI Varlık TürüKaynak Modül
THEME_KPIStratejik Tema KPI'ları
BSC_KPIBalanced Scorecard KPI'ları
ASIS_KPIMevcut Durum (As-Is) KPI'ları
SWOT_KPISWOT Analizi KPI'ları
PESTLE_KPIPESTLE Analizi KPI'ları
KPI_DEFINITIONKPI Kütüphanesi KPI'ları
OKR_KEY_RESULTOKR Key Result ölçümleri
PRODUCT_SCORECARD_KPIÜrün Skor Kartı KPI'ları

Ayrıca bakınız