Power BI REST API, Microsoft Power BI’ın yeteneklerini genişletmenin temel bir bileşenidir.
Sabit bir grafik arayüz sunmak yerine, geliştiriciler ve kuruluşların raporlar, panolar, veri kümeleri ve çalışma alanlarına programatik erişim sağlamasına olanak tanır.
Bu yetenek, otomasyon, entegrasyon ve yerleştirmenin iş süreçlerinin merkezinde olduğu modern BI çözümlerinde kritik öneme sahiptir.
Bu rehberde Power BI REST API’ye bir giriş, nasıl kullanılacağına dair adım adım basit bir kılavuz, nasıl kullanılabileceğine dair bazı örnekler ve sunduğu gelişmiş özelliklerden bazılarını paylaşacağım
Power BI API Ekosistemi
Power BI API ekosistemi kurumsal ölçekte kullanılmak üzere tasarlanmış olup geliştiriciler için sağlam yetenekler sunar.
Kuruluşların Power BI’ı, iş akışlarına ve uygulamalara sorunsuz şekilde entegre olan bir servis katmanı olarak ele almasına imkan tanır.
İşte ekosistemin temel bileşenleri:
REST API: Ekosistemin temelidir; veri kümeleri, raporlar, panolar, çalışma alanları ve kullanıcılar için uç noktalar sunar.
SDK’lar: Microsoft, yaygın geliştirici iş akışlarına uyarlanmış .NET, Python ve JavaScript SDK’ları sunar:
CLI: Çalışma alanlarını yönetmek, veri kümeleri göndermek ve içeriği dağıtmak için komut satırı arayüzü.
PowerShell: Kullanıcı sağlama veya denetim günlüğü gibi rutin görevleri betikleyip otomatikleştirmek için yöneticilerin tercih ettiği araç.
Amaç ve yetenekler
API, aşağıdaki kullanım senaryoları için Power BI varlıklarının uçtan uca yönetimini sağlar:
Otomasyon: Veri kümesi yenilemelerini tetikleyin, raporları ortamlar arasında taşıyın ve izinleri manuel iş olmadan güncelleyin.
Yönetişim: Uyumluluk için meta verileri çıkarın, kullanım kalıplarını izleyin ve politikaları uygulayın.
Entegrasyon: Power BI’ı diğer kurumsal sistemlerle (CRM, ERP, İK, ETL araçları) bağlayarak gerçek zamanlı raporlama sağlayın.
Yerleştirme (Embedding): Web veya mobil uygulamalarda güvenli, etkileşimli panolar ve raporlar sunun.
Bu yetenekler, Power BI’ı GUI’sinin ötesine taşıyarak kuruluşların ölçekli çalışmasına imkân verir.
RESTful Mimari
API, geliştiriciler için erişilebilir kılan REST ilkelerini izler.
İşte mimarinin bazı bileşenleri:
HTTP Yöntemleri: GET alma, POST oluşturma, PUT/PATCH güncelleme, DELETE kaldırma için.
JSON Yükleri: Modern uygulamalarla ayrıştırması ve entegre etmesi kolaydır.
Birlikte Çalışabilirlik: Python requests, Node.js axios veya .NET HttpClient gibi kütüphanelerle sorunsuz çalışır.
API, programatik içerik yönetimini de destekler.
Bu, şu işlevleri gerçekleştirebileceğiniz anlamına gelir:
Yeni veri kümeleri ve şemalarının oluşturulması.
Sürüm kontrolü ve geçiş için raporların dışa aktarılması.
Rapor ve panoların yeni ortamlara kopyalanması.
Raporların farklı veri kümelerine yeniden bağlanması; dağıtım hatlarını basitleştirir.
Power BI API Kimlik Doğrulama ve Güvenlik
Güvenli iletişim için kimlik doğrulama temel gereksinimdir. Power BI API, uygulamaları ve kullanıcıları doğrulamak için Azure Active Directory’ye dayanır.
1. Kimlik doğrulama süreci
Erişimi etkinleştirmek için:
Uygulama Kaydı: Azure AD’de bir uygulama kaydı oluşturun.
Erişim Modeli Seçin: Temsilci erişimi (kullanıcı bağlamı) veya hizmet sorumlusu (yalnızca uygulama).
Hizmet sorumluları, bireysel kullanıcılara bağlı olmadıkları için otomasyon için önerilir.
2. OAuth 2.0 akışı
Power BI standart OAuth 2.0 akışlarını destekler:
İstemci Kimlik Bilgileri Akışı: Sunucudan sunucuya uygulamalar için idealdir; kullanıcı etkileşimi olmadan çalışır.
Yetkilendirme Kodu Akışı: Kullanıcı oturumu gerektirir, etkileşimli uygulamalar için kullanılır. Azure AD tarafından verilen belirteçler, kullanıcı veya uygulama ayrıcalıklarını tanımlayan talepleri içerir.
Belirteçler kısa sürede (genellikle bir saat) sona erer; bu nedenle uygulamaların bunları programatik olarak yenilemesi gerekir.
Temel Power BI API İşlemleri
Power BI API, Power BI içeriği ve kullanıcı yönetiminin tüm yönlerini kapsayan kategorilere ayrılmıştır.
İşte temel işlemleri ve işlevleri:
Uç nokta kategorileri
Veri kümesi yönetimi
Rapor ve pano yönetimi
Çalışma alanı ve yerleştirme yönetimi
Kullanıcı ve izin yönetimi
Power BI REST API Nasıl Kullanılır: Adım Adım Süreç
Power BI REST API, görevleri otomatikleştirmenize (ör. veri kümelerini yenileme), kullanıcıları ve çalışma alanlarını yönetmenize veya raporları uygulamalara yerleştirmenize olanak tanır.
Kullanmak için şu adımları izleyin:
Adım 1: Power BI için bir uygulama kaydedin
Kodunuzun Power BI ile konuşabilmesi için önce Azure Active Directory’de (Azure AD) bir uygulama kaydetmeniz gerekir.
Azure Portal’a gidin.
Microsoft Entra ID → Uygulama kayıtları → Yeni kayıt menüsüne ilerleyin.
Şunları girin:
Ad: PowerBI-API-Test
Desteklenen hesap türleri: Tek kiracı (test için yeterli).
Yönlendirme URI’si:https://oauth.pstmn.io/v1/callback (bu Postman’in yönlendirme URL’sidir).
Kaydettikten sonra Uygulama (İstemci) Kimliği ve Dizin (Tenant) Kimliği değerlerini kopyalayın.
Sertifikalar & sırlar altında bir istemci sırrı oluşturun ve kopyalayın.
Adım 2: Kullanıcıyı veya hizmet sorumlusunu yetkilendirin
Sonraki yetkilendirme adımımız için iki yaygın yaklaşım vardır:
Temsilci (kullanıcı) akışı: Kullanıcı oturum açar ve izin verir.
Hizmet sorumlusu (yalnızca uygulama) akışı: Yönetici izinlere onay verir ve uygulama bağımsız hareket eder.
Bu örnekte temsilci akışı yöntemini kullanacağız.
API izinleri → Bir izin ekle → Power BI Service → Temsilci izinleri altında şunları ekleyin:
Dashboard.Read.All
Report.Read.All
Dataset.Read.All
İstenirse Yönetici onayı ver seçeneğine tıklayın.
Adım 3: API erişim belirteci alın
Her API çağrısı bir OAuth belirteci gerektirir. Bu olmadan API kim olduğunuzu veya hangi izinlere sahip olduğunuzu bilemez.
Kimlik doğrulama ve yaygın sorunların ele alınması
Hata alırsanız, işte bazı olası sorunlar ve anlamları.
401 Unauthorized: Süresi dolmuş veya eksik belirteç.
403 Forbidden: Yetersiz izinler.
Invalid Scope: İstenen kapsamın API uç noktasıyla eşleştiğinden emin olun. Postman veya PowerShell cmdlet’leriyle hata ayıklamak, izin sorunlarını izole etmeye yardımcı olur.
Power BI REST API Örnekleri
Power BI API’nin eylemde olduğu bazı örneklere bakalım.
Örnek 1: Veri kümelerini al
Bu çağrı, bir çalışma alanındaki tüm veri kümelerini getirir.
headers ={"Authorization":f"Bearer {access_token}"}# Example: List datasets in the default workspace
datasets_url ="https://api.powerbi.com/v1.0/myorg/groups/{workspaceId}/datasets"
datasets_response = requests.get(datasets_url, headers=headers)for dataset in datasets_response.json()['value']:print(dataset['id'], dataset['name'])Altyapı:
Yalnızca Power BI Service’te zamanlanan yenilemelere güvenmek yerine veri kümesi yenilemelerini otomatikleştirebilirsiniz. Bu örnek, ETL hatlarında yaygın olan bir veri kümesi yenilemeyi tetikler.
Power BI’ı yerleştirmek, yalnızca Power BI hizmetinde paylaşımın ötesinde analitiği harici uygulama ve portallara taşır. Bu, müşteri odaklı uygulamalar için panolar oluşturmak isteyen kuruluşlar için iyi bir seçenektir.
Power BI içeriğini yerleştirmek, Power BI REST API ve JavaScript SDK’yı kullanarak özel uygulamalar içinde raporların, panoların veya görsellerin işlenmesini içerir.
Mimari tipik olarak şunlardan oluşur:
Uygulama ön yüzü: Power BI JavaScript kütüphanesini kullanarak yerleştirilmiş raporu barındıran web veya mobil istemci.
Uygulama arka yüzü: Azure AD ile kimlik doğrulaması yapan, yerleştirme belirteçleri üreten ve bunları ön yüze ileten güvenli hizmet.
Power BI Hizmeti: Analitiği sağlayan veri kümeleri, raporlar ve modelleri barındıran çekirdek platform.
2. Yerleştirme senaryoları
Power BI içeriğini yerleştirmek için, farklı lisanslama ve güvenlik modellerine sahip iki birincil senaryo vardır:
Kuruluşunuz için: Aynı kiracı içindeki kimliği doğrulanmış kullanıcılar.
Müşterileriniz için: Power BI Embedded kapasitesiyle desteklenen, yerleştirme belirteçleriyle kimliği doğrulanan harici kullanıcılar.
Aşağıdaki görsel, yerleştirmenin nasıl çalıştığını gösterir.
Power BI yerleştirmeyi uygulamak için hem arka uç kimlik doğrulamasına hem de ön yüz işlenmesine ihtiyacınız olacaktır.
İşte bazı genel adımlar:
Adım 1: Uygulamayı Azure AD’de kaydedin ve uygun API izinlerini yapılandırın
Adım 2: Zaman sınırlı erişim vermek için Power BI REST API’yi çağırarak yerleştirme belirteçleri üretin
Adım 3: Raporu bir iframe konteynerine yüklemek için Power BI JavaScript SDK’yı kullanın.
Adım 4: Belirteçlerin yalnızca sunucu tarafında üretildiğinden emin olarak ve yalnızca HTTPS iletişimi, kısa ömürlü belirteçler ve belirteç yenileme mekanizmaları uygulayarak iş akışını güvenceye alın.
Power BI API Performans Optimizasyonu
Power BI API’sinin verimli kullanımı, ölçeklenebilirlik, güvenilirlik ve yanıt verebilirlik için esastır.
Tüm API’ler kota ve kısıtlama kuralları altında çalıştığından, bu sınırlamaları ele alırken yüksek performansı sürdürecek şekilde uygulamalar tasarlamanız gerekir.
Zaman damgaları ve sonuçlarla tüm API çağrılarını izleyin.
Sistem düzeyinde izleme için Azure Monitor kullanın.
Power BI API Güvenlik Hususları
Güvenlik ve yönetişim, Power BI ve API ekosistemini uygulamayı amaçlayan her işletme için temel sütunlardır.
İşte bazı önlemler:
1. Kimlik bilgisi yönetimi
Güvenli saklama mekanizmaları kullanın: Kimlik bilgilerini Azure Key Vault, AWS Secrets Manager veya HashiCorp Vault gibi güvenli konumlarda saklayın.
Sırları düzenli olarak döndürün: İstemci sırlarının, sertifikaların ve belirteçlerin döndürülmesi için otomatik politikalar uygulayın; sızdırılan kimlik bilgilerinden kaynaklanan riski en aza indirin.
İzleme ve uyarılar: Olası ihlalleri tespit etmek için olağandışı kimlik doğrulama hataları veya tekrarlanan belirteç isteklerini izleyin.
Sırlar için Azure Key Vault kullanın.
Sırları sık döndürün.
Kimlik bilgilerini asla kaynak koda gömmeyin.
2. Erişim denetimi
Erişim denetimi, yalnızca yetkili kullanıcıların veri kümelerini, raporları ve panoları görüntüleyebilmesini veya değiştirebilmesini sağlar.
Bir veri kümesindeki belirli tablolara veya sütunlara erişimi sınırlayın.
Kullanım durumları: Maaş bilgilerini, hassas müşteri tanımlayıcılarını veya gizli finansal metrikleri gizleme.
3. Veri koruma
Verilerin iyi korunmasını sağlamak için benimseyebileceğiniz bazı veri koruma stratejileri:
Beklemede şifreleme
Aktarımda şifreleme
Denetim günlüğü
Veri sınıflandırma
4. Veri gizliliği ve uyumluluk
Kuruluşlar sıklıkla birden çok bölgede faaliyet gösterir; bu da uyumluluğu kritik bir faktör hâline getirir.
Dikkate almanız gereken bazı yönler:
GDPR, HIPAA veya sektöre özgü düzenlemelerle uyum.
Uyumluluğu korumak için bölgesel uç noktalar.
Power BI API Geliştirme Araçları ve SDK Ekosistemi
1. .NET SDK
Power BI .NET SDK, Microsoft yığınıyla sorunsuz bütünleşen güçlü tür (strongly typed) bir arayüz sağlar. Özellikle Azure, C# veya ASP.NET uygulamaları kullanan kurumsal geliştiriciler için uygundur.
Kullanım durumları: Rapor yayımlamayı otomatikleştirme, panoları kurumsal portallara yerleştirme ve çalışma alanı varlıklarını yönetme.
Avantajlar: Tür güvenliği, sağlam hata yönetimi ve Azure Active Directory kimlik doğrulama akışları için yerel destek.
2. Python SDK
Python SDK (ve REST istemci kütüphaneleri), betik ortamlarını tercih eden veri bilimciler ve analistler arasında popülerdir.
Kullanım durumları: Veri kümesi yenilemelerini otomatikleştirme, rapor meta verilerini dışa aktarma ve Power BI iş akışlarını daha geniş veri hatlarına entegre etme.
Avantajlar: Hızlı prototipleme, zengin veri kütüphanesi ekosistemi (pandas, Polars, NumPy) ve Jupyter not defterleriyle kolay entegrasyon.
3. JavaScript SDK
JavaScript SDK, Power BI içeriğini doğrudan web uygulamalarına yerleştirmek için gereklidir.
Kullanım durumları: Raporları müşteri portallarına, SaaS ürünlerine veya dahili panolara yerleştirme. Geliştiriciler, istemci tarafı koddan doğrudan filtreleme, dışa aktarma ve derinlemesine inceleme gibi kullanıcı etkileşimlerini özelleştirebilir.
Avantajlar: Gerçek zamanlı etkileşim, tarayıcı uyumluluğu ve React, Angular veya Vue gibi çerçevelerle Tek Sayfa Uygulamaları (SPA) desteği.
Power BI API Geliştirme Hususları
1. Yapılandırma yönetimi
API çağrılarınızı çalıştırmak için bir geliştirme ortamı oluştururken şu hususlara dikkat etmeniz gerekir:
İstemci kimlikleri, istemci sırları ve kiracı kimlikleri gibi sırları ortam değişkenlerinde veya güvenli kasalarda (ör. Azure Key Vault) saklayın.
Hassas değerleri kaynak koda gömmekten kaçının.
Üretime dağıtmadan önce izinleri doğrulayın.
2. İzin doğrulaması
Üretime dağıtmadan önce Azure AD’deki uygulama kaydının doğru API kapsamlarına ve temsilci veya uygulama izinlerine sahip olduğundan emin olun.
Belirteçlerin beklenen erişim düzeyini sağladığını doğrulamak için dağıtım öncesi betikler veya kontroller çalıştırın.
3. Sürümleme ve uyumluluk
SDK’lar genellikle Power BI API’leriyle birlikte evrilir.
Özellikle önizleme özelliklerini kullanıyorsanız kırılma değişikliklerinden kaçınmak için sürüm güncellemelerini takip etmelisiniz. requirements.txt (Python) veya package.json (JavaScript) dosyalarında sabit sürümler tutun.
Test Metodolojileri
API çağrılarınızın sorunsuz çalışıp çalışmadığını kontrol etmek için sonrasında bazı testler yapabilirsiniz.
1. Uç nokta keşfi için Postman
Uç nokta testleri için Postman kullanarak REST API uç noktalarını etkileşimli olarak test edin. Power BI API koleksiyonlarını içe aktarabilir, OAuth 2.0 ile kimlik doğrulaması yapabilir ve kodlamadan önce farklı istek/yanıt yükleriyle deneyler yapabilirsiniz.
2. Otomatik testler
Kimlik doğrulama akışları için birim testleri ve uçtan uca iş akışları için entegrasyon testleri uygulayın.
İşte bazı test çerçeveleri:
Python: pytest + sahte API’ler (mock)
.NET: MSTest, NUnit veya xUnit
JavaScript: Jest veya Mocha, nock ile (API sahteleme için)
Sorun Giderme ve Yaygın Uygulama Zorlukları
Power BI API ile kurulumu yaparken zorluk yaşıyorsanız, aşağıdaki hata ve çözümlere göz atabilirsiniz:
1. Yaygın hatalar
401 Unauthorized: Belirteç geçerliliğini ve kapsamları kontrol edin.
Nasıl düzeltilir: Erişim belirtecinin süresinin dolmadığını ve doğru API izinleriyle oluşturulduğunu doğrulayın.
403 Forbidden: İzinler eksik veya reddedildi.
Nasıl düzeltilir: Arayanın doğru rol atamalarına sahip olduğunu (ör. Katılımcı, Power BI Yöneticisi veya gerekli izinlere sahip özel roller) teyit edin.
429 Too Many Requests: Kısıtlama uygulandı; gecikmeden sonra yeniden deneyin.
Nasıl düzeltilir: Kodunuzda üstel geri çekilme veya yeniden deneme mantığı uygulayın. API çağrı hacmini izleyin ve istekleri zamana yayarak dağıtın.
2. Bağlayıcı görünürlüğü ve veri kaynağı sorunları
Belirli veri kaynakları için şirket içi veya VNet veri ağ geçitleri gereklidir. Ağ geçidi kurulu değilse, yanlış yapılandırılmışsa veya çevrimdışıysa, API veri kümesini yenileyemez veya erişemez.
Bu sorunları önlemek için ağ geçidinin güncel, çalışır durumda ve Power BI Service’te veri kaynağına doğru şekilde eşlendiğini doğrulayın.
Veri kaynağı kimlik bilgileri süresi dolmuş veya değişmişse veri kümesi yenilemeleri veya API çağrıları başarısız olabilir.
Bunu önlemek için Power BI Service’te kimlik bilgilerini düzenli olarak güncelleyin veya kimlik bilgisi döndürme politikaları yapılandırın. Daha güvenli, otomatik yönetim için yönetilen kimlikler veya anahtar kasaları da kullanabilirsiniz.
Power BI API’nin Gelişmiş Özellikleri
Power BI, merkezi bir analitik platformuna dönüşürken, gelişmiş özellikleri ve otomasyon yetenekleri, analitiği işletme genelinde ölçeklemek için kritik önem taşır.
Sırada Power BI’ın sunduğu bazı gelişmiş özelliklere bakalım.
1. Dağıtım hatları
Dağıtım hatları, Power BI içeriğinin geliştirme, test ve üretim ortamları arasında yaşam döngüsünü yönetmek için yapılandırılmış bir yol sunar.
Değişiklik kontrolünü uygular, riski azaltır ve tutarlı dağıtım uygulamalarını sağlar.
Bu hatlarla geliştiriciler veri kümelerini ve raporları geliştirme aşamasına yayımlayabilir. REST API kullanılarak içerik test ve üretim aşamalarına terfi ettirilebilir.
2. Yenileme ve kullanıcı yönetimi otomasyonu
Yenilemeler ve kullanıcı izinleri etrafındaki otomasyon, verilerin güncel tutulması ve erişimin uyumlu olması için merkezi önemdedir.
İşte otomatik yenilemelerin kullanılabileceği bazı yollar:
Veri kümesi yenileme otomasyonu: Power BI REST API veya PowerShell cmdlet’lerini kullanarak yöneticiler veri kümesi yenilemelerini programatik olarak tetikleyebilir.
Kullanıcı yönetimi otomasyonu: API’ler, çalışma alanı veya veri kümesi izinlerinin programatik olarak eklenmesine, kaldırılmasına ve güncellenmesine olanak tanır. Örneğin, belirli bir Azure AD grubuna katıldıklarında yeni işe başlayanlara rapor erişimini otomatik olarak verme.
3. Özel görseller geliştirme ve yayımlama
Özel görseller, Power BI’ın yeteneklerini genişletmek ve kuruluşların uyarlanmış veri deneyimleri oluşturmasını sağlamak için geliştirilebilir.
İşte basit bir kılavuz:
Adım 1: Geliştirme ortamını kurun
Node.js ve Power BI görsel araçlarını (pbiviz) kurun.
Yeni bir proje iskeleti oluşturmak için pbiviz new <visualName> komutunu çalıştırın.
Adım 2: Görseli geliştirin
Oluşturma mantığını tanımlamak için TypeScript, HTML ve CSS kullanın.
Alanları, ölçüleri ve filtreleri okumak için Power BI’ın veri modeli API’lerine bağlanın.
Geliştirici Modu’nu kullanarak Power BI Desktop’ta yinelemeli testler yapın; bu mod görsellerin yan yüklenmesini sağlar.
Adım 3: Hata ayıklayın ve optimize edin
Oluşturma mantığında hata ayıklamak için tarayıcı geliştirici araçlarını kullanın.
Büyük veri kümeleri için performansı optimize etmek üzere DOM işlemlerini sınırlayın ve güncellemeleri verimli yönetin.
Adım 4: Görseli paketleyin
pbiviz package ile derleyip paketleyin. Bu işlem bir .pbiviz dosyası üretir.
Dosya dahili olarak dağıtılabilir veya kuruluşun AppSource kiracısına yüklenebilir.
Son Düşünceler
Power BI API’yi iş zekâsı iş akışlarına entegre etmek, güçlü otomasyon ve ölçeklenebilirlik sağlar. Yerleşik GUI ile yalnızca panolar sunmanın ötesinde çalışmanıza imkân tanır.
Power BI raporlarının dağıtımını API’ler kullanarak nasıl otomatikleştirebilirim?⌄
Power BI REST API’yi Dağıtım Hatları ile birlikte kullanabilirsiniz. Süreç genellikle PBIX dosyalarının API üzerinden yayımlanmasını, bir hat ile ilişkilendirilmesini ve Geliştirme, Test ve Üretim ortamlarında terfi ettirilmesini içerir.
Power BI API entegrasyonlarını güvence altına almak için en iyi uygulamalar nelerdir?⌄
Otomatik görevler için kullanıcı hesapları yerine bir hizmet sorumlusu kullanın ve güvenlik grupları aracılığıyla asgari ayrıcalık ilkesini uygulayın. Sırları güvenli şekilde saklayın (ör. Azure Key Vault), yalnızca gerekli kiracı ayarlarını etkinleştirin ve entegrasyonları güvenli tutmak için izinleri ve oturum açmaları düzenli olarak gözden geçirin.
Power BI’ın Copilot özelliği veri analizini nasıl geliştirir?⌄
Copilot, verilerinizle doğal dil kullanarak etkileşim kurmanıza olanak tanır. Görseller oluşturabilir, soruları yanıtlayabilir, DAX sorguları önerebilir ve raporları daha hızlı keşfetmenize yardımcı olabilir. En son güncellemeler, birden fazla rapor arasında analiz yapmasına ve bağlama duyarlı içgörüler sağlamasına imkân tanır.
Power BI’ın REST API’si ile diğer BI araçlarının API’leri arasındaki temel farklar nelerdir?
⌄
Power BI’ın API’si, Microsoft 365, Teams ve Entra güvenliği ile derin entegrasyonu sayesinde öne çıkar. Ayrıca dağıtım hatlarını ve yönetici yönetişim özelliklerini destekler. Tableau veya Looker gibi diğer BI araçlarının kendi güçlü yanları vardır; ancak kimlik doğrulama, yönetişim ve ekosistem odağı açısından farklılık gösterirler.
Büyük veri kümeleri için Power BI API performansını nasıl optimize edebilirim?⌄
Uzun listeleri işlemek için sayfalandırma kullanın, mümkün olan yerlerde çağrıları toplu yapın ve tekrarlanan istekleri azaltmak için yanıtları önbelleğe alın. Veri kümesi gibi ağır işlemleri yoğun olmayan zamanlara planlayın ve büyük verilerle çalışırken başarısızlıkları önlemek için oran sınırları için her zaman yeniden deneme mantığı oluşturun.
Ben Austin, sağlık sektöründe veri bilimci ve veri analisti olarak yıllara dayanan deneyime sahip bir blogger ve teknoloji yazarıyım. Biyoloji geçmişiyle başladığım teknoloji yolculuğumda, şimdi teknoloji blogum aracılığıyla başkalarının da aynı geçişi yapmasına yardımcı oluyorum. Teknolojiye olan tutkum, onlarca SaaS şirketine yazılı katkılar sunmama, başkalarına ilham vermeme ve deneyimlerimi paylaşmama vesile oldu.
Algoritmalar, sistem tasarımı ve davranışsal senaryoları kapsayan bu temel sorularla teknik mülakat sürecine hakim olun. Uzman cevapları, kod örnekleri ve kanıtlanmış hazırlık stratejileri edinin.
Git deponuzu temiz tutmak için .gitignore’u nasıl kullanacağınızı öğrenin. Bu eğitim; temelleri, yaygın kullanım durumlarını ve başlamanıza yardımcı olacak pratik örnekleri kapsar!
Power BI kullanmak için ihtiyacınız olan temel becerileri kazanın. Sıfırdan kendi görselleştirmelerinizi ve gösterge tablolarınızı oluşturun. Önceden deneyim gerekmez.
Power BI REST API, Microsoft Power BI’ın yeteneklerini genişletmenin temel bir bileşenidir.
Sabit bir grafik arayüz sunmak yerine, geliştiriciler ve kuruluşların raporlar, panolar, veri kümeleri ve çalışma alanlarına programatik erişim sağlamasına olanak tanır.
Bu yetenek, otomasyon, entegrasyon ve yerleştirmenin iş süreçlerinin merkezinde olduğu modern BI çözümlerinde kritik öneme sahiptir.
Bu rehberde Power BI REST API’ye bir giriş, nasıl kullanılacağına dair adım adım basit bir kılavuz, nasıl kullanılabileceğine dair bazı örnekler ve sunduğu gelişmiş özelliklerden bazılarını paylaşacağım
Power BI API Ekosistemi
Power BI API ekosistemi kurumsal ölçekte kullanılmak üzere tasarlanmış olup geliştiriciler için sağlam yetenekler sunar.
Kuruluşların Power BI’ı, iş akışlarına ve uygulamalara sorunsuz şekilde entegre olan bir servis katmanı olarak ele almasına imkan tanır.
İşte ekosistemin temel bileşenleri:
Amaç ve yetenekler
API, aşağıdaki kullanım senaryoları için Power BI varlıklarının uçtan uca yönetimini sağlar:
Bu yetenekler, Power BI’ı GUI’sinin ötesine taşıyarak kuruluşların ölçekli çalışmasına imkân verir.
RESTful Mimari
API, geliştiriciler için erişilebilir kılan REST ilkelerini izler.
İşte mimarinin bazı bileşenleri:
requests, Node.jsaxiosveya .NETHttpClientgibi kütüphanelerle sorunsuz çalışır.API, programatik içerik yönetimini de destekler.
Bu, şu işlevleri gerçekleştirebileceğiniz anlamına gelir:
Power BI API Kimlik Doğrulama ve Güvenlik
Güvenli iletişim için kimlik doğrulama temel gereksinimdir. Power BI API, uygulamaları ve kullanıcıları doğrulamak için Azure Active Directory’ye dayanır.
1. Kimlik doğrulama süreci
Erişimi etkinleştirmek için:
Hizmet sorumluları, bireysel kullanıcılara bağlı olmadıkları için otomasyon için önerilir.
2. OAuth 2.0 akışı
Power BI standart OAuth 2.0 akışlarını destekler:
3. Taşıyıcı (Bearer) belirteci yaklaşımı
Belirteçler isteklere eklenir:
Belirteçler kısa sürede (genellikle bir saat) sona erer; bu nedenle uygulamaların bunları programatik olarak yenilemesi gerekir.
Temel Power BI API İşlemleri
Power BI API, Power BI içeriği ve kullanıcı yönetiminin tüm yönlerini kapsayan kategorilere ayrılmıştır.
İşte temel işlemleri ve işlevleri:
Power BI REST API Nasıl Kullanılır: Adım Adım Süreç
Power BI REST API, görevleri otomatikleştirmenize (ör. veri kümelerini yenileme), kullanıcıları ve çalışma alanlarını yönetmenize veya raporları uygulamalara yerleştirmenize olanak tanır.
Kullanmak için şu adımları izleyin:
Adım 1: Power BI için bir uygulama kaydedin
Kodunuzun Power BI ile konuşabilmesi için önce Azure Active Directory’de (Azure AD) bir uygulama kaydetmeniz gerekir.
PowerBI-API-Testhttps://oauth.pstmn.io/v1/callback(bu Postman’in yönlendirme URL’sidir).Adım 2: Kullanıcıyı veya hizmet sorumlusunu yetkilendirin
Sonraki yetkilendirme adımımız için iki yaygın yaklaşım vardır:
Bu örnekte temsilci akışı yöntemini kullanacağız.
Dashboard.Read.AllReport.Read.AllDataset.Read.AllAdım 3: API erişim belirteci alın
Her API çağrısı bir OAuth belirteci gerektirir. Bu olmadan API kim olduğunuzu veya hangi izinlere sahip olduğunuzu bilemez.
API belirtecini almak için Postman kullanacağız.
https://oauth.pstmn.io/v1/callbackhttps://login.microsoftonline.com/<tenant_id>/oauth2/v2.0/authorizehttps://login.microsoftonline.com/<tenant_id>/oauth2/v2.0/tokenopenid profile offline_accesshttps://analysis.windows.net/powerbi/api/Dashboard.Read.Allhttps://analysis.windows.net/powerbi/api/Report.Read.Allhttps://analysis.windows.net/powerbi/api/Dataset.Read.AllAşağıdaki Python betiğini ve
requestskütüphanesini kullanarak Microsoft Azure’dan da erişim belirteci alabilirsiniz.Bu belirteç kısa ömürlüdür; üretimde otomatik yenileyin.
Adım 4: API çağrıları yapın
Adım 3’te bir erişim belirteci edindikten sonra artık Power BI REST API ile konuşmaya başlayabilirsiniz.
Belirteci “giriş biletiniz” olarak düşünün. Olmadan tüm istekler reddedilir.
Tüm Power BI REST API çağrıları şu URL ile başlar:
https://api.powerbi.com/v1.0/myorgDizedeki her bölümün anlamı şudur:
Kaynak yollarını
/groups,/reports,/datasetsgibi ekleyeceksiniz.Her isteğe Yetkilendirme başlığında erişim belirtecinizi eklemelisiniz:
Ve POST istekleri için şunu ekleyin:
Bu başlıkları unutursanız
401 Unauthorizedhatası alırsınız`.Başlangıç olarak tüm çalışma alanlarını (grupları) listelemeyi deneyelim.
Yukarıdaki GET isteği, kullanıcınızın erişimi olan tüm çalışma alanlarını gösterir.
Örnek yanıt:
Kimlik doğrulama ve yaygın sorunların ele alınması
Hata alırsanız, işte bazı olası sorunlar ve anlamları.
Power BI REST API Örnekleri
Power BI API’nin eylemde olduğu bazı örneklere bakalım.
Örnek 1: Veri kümelerini al
Bu çağrı, bir çalışma alanındaki tüm veri kümelerini getirir.
Örnek yanıt:
Örnek 2: Veri kümesini yenile
Yalnızca Power BI Service’te zamanlanan yenilemelere güvenmek yerine veri kümesi yenilemelerini otomatikleştirebilirsiniz. Bu örnek, ETL hatlarında yaygın olan bir veri kümesi yenilemeyi tetikler.
Yanıt:
HTTP 202 Acceptedmesajı alırsınız. Bu, yenilemenin kuyruğa alındığı anlamına gelir.Örnek 3: Raporları ve panoları listele
Sıradaki örnekte, envanter veya geçiş betikleri için yararlı olan bir çalışma alanındaki raporları getiren bir betiğe bakalım.
Raporları listele
İşte raporları listelemek için bir betik:
Yanıt:
Panoları listele
Power BI çalışma alanımızda sahip olduğumuz panoların adlarını da listeleyebiliriz.
İşte panoları listelemek için bir betik:
Yanıt:
Power BI API Yerleştirme ve Entegrasyon
Power BI’ı yerleştirmek, yalnızca Power BI hizmetinde paylaşımın ötesinde analitiği harici uygulama ve portallara taşır. Bu, müşteri odaklı uygulamalar için panolar oluşturmak isteyen kuruluşlar için iyi bir seçenektir.
Kaynak: Microsoft Power BI
1. Yerleştirme mimarisi
Power BI içeriğini yerleştirmek, Power BI REST API ve JavaScript SDK’yı kullanarak özel uygulamalar içinde raporların, panoların veya görsellerin işlenmesini içerir.
Mimari tipik olarak şunlardan oluşur:
2. Yerleştirme senaryoları
Power BI içeriğini yerleştirmek için, farklı lisanslama ve güvenlik modellerine sahip iki birincil senaryo vardır:
Aşağıdaki görsel, yerleştirmenin nasıl çalıştığını gösterir.
Kaynak: Microsoft
3. Teknik uygulama
Power BI yerleştirmeyi uygulamak için hem arka uç kimlik doğrulamasına hem de ön yüz işlenmesine ihtiyacınız olacaktır.
İşte bazı genel adımlar:
Power BI API Performans Optimizasyonu
Power BI API’sinin verimli kullanımı, ölçeklenebilirlik, güvenilirlik ve yanıt verebilirlik için esastır.
Tüm API’ler kota ve kısıtlama kuralları altında çalıştığından, bu sınırlamaları ele alırken yüksek performansı sürdürecek şekilde uygulamalar tasarlamanız gerekir.
İşte faydalı bulduğum bazı önlemler:
1. Oran sınırlama kısıtları ve kısma
Power BI, API oran sınırlarını uygular ve kiracılar arasında hizmet istikrarı ile adil kaynak dağılımını korur. Her kiracının istek kotaları vardır; sınırların aşılması
429 Too Many Requestshatasını tetikler.2. Optimizasyon stratejileri
API çağrılarını en aza indirmek, verimi en üst düzeye çıkarmak ve Power BI hizmetlerindeki yükü azaltmak için birkaç teknik:
3. İzleme ve günlüğe kaydetme
API kullanımına görünürlük, kotaları yönetmek ve performans sorunlarını gidermek için anahtardır.
Kaynak: Microsoft Azure Monitor
API izleme yöntemlerinden bazıları şunlardır:
Power BI API Güvenlik Hususları
Güvenlik ve yönetişim, Power BI ve API ekosistemini uygulamayı amaçlayan her işletme için temel sütunlardır.
İşte bazı önlemler:
1. Kimlik bilgisi yönetimi
Sırlar için Azure Key Vault kullanın.
2. Erişim denetimi
Erişim denetimi, yalnızca yetkili kullanıcıların veri kümelerini, raporları ve panoları görüntüleyebilmesini veya değiştirebilmesini sağlar.
3. Veri koruma
Verilerin iyi korunmasını sağlamak için benimseyebileceğiniz bazı veri koruma stratejileri:
4. Veri gizliliği ve uyumluluk
Kuruluşlar sıklıkla birden çok bölgede faaliyet gösterir; bu da uyumluluğu kritik bir faktör hâline getirir.
Dikkate almanız gereken bazı yönler:
Power BI API Geliştirme Araçları ve SDK Ekosistemi
1. .NET SDK
Power BI .NET SDK, Microsoft yığınıyla sorunsuz bütünleşen güçlü tür (strongly typed) bir arayüz sağlar. Özellikle Azure, C# veya ASP.NET uygulamaları kullanan kurumsal geliştiriciler için uygundur.
Kullanım durumları: Rapor yayımlamayı otomatikleştirme, panoları kurumsal portallara yerleştirme ve çalışma alanı varlıklarını yönetme.
Avantajlar: Tür güvenliği, sağlam hata yönetimi ve Azure Active Directory kimlik doğrulama akışları için yerel destek.
2. Python SDK
Python SDK (ve REST istemci kütüphaneleri), betik ortamlarını tercih eden veri bilimciler ve analistler arasında popülerdir.
Kullanım durumları: Veri kümesi yenilemelerini otomatikleştirme, rapor meta verilerini dışa aktarma ve Power BI iş akışlarını daha geniş veri hatlarına entegre etme.
Avantajlar: Hızlı prototipleme, zengin veri kütüphanesi ekosistemi (pandas, Polars, NumPy) ve Jupyter not defterleriyle kolay entegrasyon.
3. JavaScript SDK
JavaScript SDK, Power BI içeriğini doğrudan web uygulamalarına yerleştirmek için gereklidir.
Kullanım durumları: Raporları müşteri portallarına, SaaS ürünlerine veya dahili panolara yerleştirme. Geliştiriciler, istemci tarafı koddan doğrudan filtreleme, dışa aktarma ve derinlemesine inceleme gibi kullanıcı etkileşimlerini özelleştirebilir.
Avantajlar: Gerçek zamanlı etkileşim, tarayıcı uyumluluğu ve React, Angular veya Vue gibi çerçevelerle Tek Sayfa Uygulamaları (SPA) desteği.
Power BI API Geliştirme Hususları
1. Yapılandırma yönetimi
API çağrılarınızı çalıştırmak için bir geliştirme ortamı oluştururken şu hususlara dikkat etmeniz gerekir:
2. İzin doğrulaması
Üretime dağıtmadan önce Azure AD’deki uygulama kaydının doğru API kapsamlarına ve temsilci veya uygulama izinlerine sahip olduğundan emin olun.
Belirteçlerin beklenen erişim düzeyini sağladığını doğrulamak için dağıtım öncesi betikler veya kontroller çalıştırın.
3. Sürümleme ve uyumluluk
SDK’lar genellikle Power BI API’leriyle birlikte evrilir.
Özellikle önizleme özelliklerini kullanıyorsanız kırılma değişikliklerinden kaçınmak için sürüm güncellemelerini takip etmelisiniz.
requirements.txt(Python) veyapackage.json(JavaScript) dosyalarında sabit sürümler tutun.Test Metodolojileri
API çağrılarınızın sorunsuz çalışıp çalışmadığını kontrol etmek için sonrasında bazı testler yapabilirsiniz.
1. Uç nokta keşfi için Postman
Uç nokta testleri için Postman kullanarak REST API uç noktalarını etkileşimli olarak test edin. Power BI API koleksiyonlarını içe aktarabilir, OAuth 2.0 ile kimlik doğrulaması yapabilir ve kodlamadan önce farklı istek/yanıt yükleriyle deneyler yapabilirsiniz.
2. Otomatik testler
Kimlik doğrulama akışları için birim testleri ve uçtan uca iş akışları için entegrasyon testleri uygulayın.
İşte bazı test çerçeveleri:
Sorun Giderme ve Yaygın Uygulama Zorlukları
Power BI API ile kurulumu yaparken zorluk yaşıyorsanız, aşağıdaki hata ve çözümlere göz atabilirsiniz:
1. Yaygın hatalar
401 Unauthorized: Belirteç geçerliliğini ve kapsamları kontrol edin.
Nasıl düzeltilir: Erişim belirtecinin süresinin dolmadığını ve doğru API izinleriyle oluşturulduğunu doğrulayın.
403 Forbidden: İzinler eksik veya reddedildi.
Nasıl düzeltilir: Arayanın doğru rol atamalarına sahip olduğunu (ör. Katılımcı, Power BI Yöneticisi veya gerekli izinlere sahip özel roller) teyit edin.
429 Too Many Requests: Kısıtlama uygulandı; gecikmeden sonra yeniden deneyin.
Nasıl düzeltilir: Kodunuzda üstel geri çekilme veya yeniden deneme mantığı uygulayın. API çağrı hacmini izleyin ve istekleri zamana yayarak dağıtın.
2. Bağlayıcı görünürlüğü ve veri kaynağı sorunları
Belirli veri kaynakları için şirket içi veya VNet veri ağ geçitleri gereklidir. Ağ geçidi kurulu değilse, yanlış yapılandırılmışsa veya çevrimdışıysa, API veri kümesini yenileyemez veya erişemez.
Bu sorunları önlemek için ağ geçidinin güncel, çalışır durumda ve Power BI Service’te veri kaynağına doğru şekilde eşlendiğini doğrulayın.
Veri kaynağı kimlik bilgileri süresi dolmuş veya değişmişse veri kümesi yenilemeleri veya API çağrıları başarısız olabilir.
Bunu önlemek için Power BI Service’te kimlik bilgilerini düzenli olarak güncelleyin veya kimlik bilgisi döndürme politikaları yapılandırın. Daha güvenli, otomatik yönetim için yönetilen kimlikler veya anahtar kasaları da kullanabilirsiniz.
Power BI API’nin Gelişmiş Özellikleri
Power BI, merkezi bir analitik platformuna dönüşürken, gelişmiş özellikleri ve otomasyon yetenekleri, analitiği işletme genelinde ölçeklemek için kritik önem taşır.
Sırada Power BI’ın sunduğu bazı gelişmiş özelliklere bakalım.
1. Dağıtım hatları
Dağıtım hatları, Power BI içeriğinin geliştirme, test ve üretim ortamları arasında yaşam döngüsünü yönetmek için yapılandırılmış bir yol sunar.
Değişiklik kontrolünü uygular, riski azaltır ve tutarlı dağıtım uygulamalarını sağlar.
Bu hatlarla geliştiriciler veri kümelerini ve raporları geliştirme aşamasına yayımlayabilir. REST API kullanılarak içerik test ve üretim aşamalarına terfi ettirilebilir.
2. Yenileme ve kullanıcı yönetimi otomasyonu
Yenilemeler ve kullanıcı izinleri etrafındaki otomasyon, verilerin güncel tutulması ve erişimin uyumlu olması için merkezi önemdedir.
İşte otomatik yenilemelerin kullanılabileceği bazı yollar:
3. Özel görseller geliştirme ve yayımlama
Özel görseller, Power BI’ın yeteneklerini genişletmek ve kuruluşların uyarlanmış veri deneyimleri oluşturmasını sağlamak için geliştirilebilir.
İşte basit bir kılavuz:
Son Düşünceler
Power BI API’yi iş zekâsı iş akışlarına entegre etmek, güçlü otomasyon ve ölçeklenebilirlik sağlar. Yerleşik GUI ile yalnızca panolar sunmanın ötesinde çalışmanıza imkân tanır.
Power BI hakkında daha fazla bilgi edinmekle ilgileniyorsanız, Introduction to Power BI kursumuzu ve Power BI Fundamentals öğrenme yolumuzu önerebilirim. Daha fazla okuma kaynağı için Power BI Dashboard Tutorial veya Deploying and Maintaining Assets in Power BI öğreticimize göz atın.