Microsoft Graph API E-posta: Gönderme, Okuma ve Senkronize Etme (2026 Rehberi)

Microsoft Graph API

Microsoft Graph API E-posta: Kapsamlı Entegrasyon Kılavuzu Geliştiriciler İçin (2026)

18 dk okuma 17 Nis 2026 Python / Node.js / REST

Microsoft Graph API, Outlook ve Exchange e-posta verilerine erişmek için birleşik REST uç noktasıdır: okuyun, gönderin, arayın ve her posta kutusu olayı için webhook alın. Bu kılavuz, OAuth 2.0 kurulumu, canlı kod örnekleri, hız sınırları ve Microsoft Graph'ı Gmail ve IMAP ile tek bir SDK altında birleştirmeyi adım adım açıklar.

Microsoft Graph API OAuth 2.0 Outlook E-posta MSAL Webhooks
read_outlook_emails.py
İthalat istekleri # Unipile Birleşik E-posta API'si # Microsoft Graph üzerinden Outlook e-postalarını okur TABAN = "https://api.unipile.com:13465/api/v1" ÜST BILGILER = { "X-API-ANAHTAR": "ERIŞİM_TOKENINIZ", "Kabul": "application/json" } fonksiyon outlook_e_postalarını_al(hesap_id, limit=20): r = istemler.olsun( {TEMEL}/e-postalar", headers=HEADERS, parametresi={ "hesap_kimliği": hesap_kimliği, "sınır"sınır } ) return r.json()["e-postalar"] e-postalar = outlook_e_postalarını_al("acc_outlook_123") için e içinde e-postalar print(e"konu"], e["dan"])
Microsoft Graph aracılığıyla Outlook'tan alınan 20 e-posta
Şunlarla çalışır: Outlook logosu Gmail logosu IMAP logosu
E-posta entegrasyonu mu kuruyorsunuz?

Oku bizim E-posta API'si Kılavuzu - OAuth akışları, senkronizasyon, gönderme ve sağlayıcı karşılaştırması.

Tanım

Microsoft Graph API E-posta İçin Nedir?

Microsoft Graph API, e-posta, takvim, kişiler ve dosyalar dahil tüm Microsoft 365 hizmetleri için birleşik bir REST geçididir. Özellikle e-posta için, şunları ortaya çıkarır /v1.0/ben/mesajlar Geliştiricilere her Outlook ve Exchange posta kutusuna programlı erişim sağlayan uç nokta. Eski protokollerin (Temel Kimlik Doğrulama, EWS) yerini aldı ve artık OAuth 2.0 kullanarak Outlook e-postasına programlı olarak erişmenin tek resmi desteklenen yoludur.

Geliştirici

Bu Microsoft Graph API e-posta için Microsoft 365 posta kutusu verilerini – mesajlar, klasörler, ekler ve posta kutusu ayarları dahil – RESTful arayüzü altında mı ortaya çıkarıyor https://graph.microsoft.com/v1.0/me/messages uç nokta. Azure Active Directory OAuth 2.0 aracılığıyla kimlik doğrulaması yapar, yetkilendirilmiş ve uygulama izinlerini destekler ve şunlar aracılığıyla gerçek zamanlı olayları etkinleştirir bildirim aboneliklerini değiştir (webhook'lar). Kullanımdan kaldırılmış tüm Temel Kimlik Doğrulama akışları için önerilen değiştirme yöntemidir.

Microsoft Graph API, önerilen yedek Eski Temel Kimlik Doğrulama için - tüm Outlook ve Exchange e-posta erişimi artık Graph aracılığıyla OAuth 2.0 gerektiriyor. Temel Kimlik Doğrulama Ekim 2022'de tamamen kullanımdan kaldırıldı.

Kriter Microsoft Graph API Doğrudan SMTP / IMAP
Kimlik Doğrulama OAuth 2.0 (MSAL) Kullanıcı adı + parola (kullanımdan kaldırıldı)
Oran sınırları 10.000 istek / 10 dakika başına uygulama Standart bir sınır yok (sunucuya bağlı)
Özellikler Tam: oku, gönder, ara, web kancaları, klasörler Sınırlı: sadece temel gönder/al
Karmaşıklık OAuth akışı + Azure Uygulama Kaydı Düşük kurulum, yüksek bakım
Unipile desteği Yerel - OAuth akışı gerekmez Yerel - IMAP yedeklemesi
Avantajlar

E-posta Entegrasyonu İçin Neden Microsoft Graph API Kullanılmalı?

Microsoft Graph üzerine inşa etmek, uygulamanıza dünyanın en büyük kurumsal e-posta ekosistemine - 400 milyondan fazla Outlook ve Exchange posta kutusuna - güvenli, belirteç tabanlı erişim sağlar. Geliştiricilerin Microsoft Graph API e-posta uç noktasını seçmesinin dört temel nedeni şunlardır.

Birleştirilmiş OAuth 2.0 Kimlik Doğrulaması

Tek bir Azure Uygulama Kaydı, tüm Outlook, Exchange ve Microsoft 365 posta kutularını kapsar. Temsilci izinleri, kullanıcıların bir kez onay vermesine olanak tanır; uygulama izinleri, kullanıcı etkileşimi olmadan kendi kendine yürütülebilen sunucu tarafı erişimi sağlar.

Tüm posta kutusu erişimi

E-postaları okuyun, gönderin, yanıtlayın, taşıyın ve silin. Klasörleri yönetin, tüm posta kutusunda arama yapın, eklerle ilgilenin ve e-posta kuralları belirleyin - hepsi aynı REST arayüzü üzerinden öngörülebilir bir JSON yanıt şeması ile.

Gerçek Zamanlı Web Kancaları

E-posta değişiklik bildirimlerine abone olun ve yeni bir e-posta geldiğinde, bir mesaj okunduğunda veya bir klasör değiştiğinde belirttiğiniz uç noktaya bir HTTP POST ile bildirim alın. Sorgulama veya gecikme yok - olaylar neredeyse gerçek zamanlı olarak teslim edilir.

Exchange, Outlook ve M365 Desteği

Tek bir API uç noktası kişisel Outlook hesaplarını, kurumsal Microsoft 365 kiracılarını ve şirket içi Exchange sunucularını (karma aracılığıyla) kapsar. Tek bir entegrasyon, ayrı kod yolları olmadan tüm Microsoft e-posta ekosistemini yönetir.

Microsoft OAuth'u Outlook API İçin Ayarlama - Unipile

Microsoft OAuth ile Outlook API'yi Ayarlama

Microsoft OAuth Belgeleri

Varsayılan olarak entegrasyonunuz Unipile'ın OAuth kimlik bilgilerini kullanır. Bir kimlik bilgisi almak için tamamen markasız deneyim Son kullanıcılar Microsoft hesaplarını bağladığında, kendi uygulamanızı oluşturun Microsoft Entra ID. Uyun Aşağıda 7 adım vardır uygulamanızı kaydetmek, izinleri yapılandırmak ve Unipile'a bağlamak için.

1
2
3
4
5
6
7
01

Microsoft Entra Kimliği Hesabı Oluşturun

Henüz bir tane yoksa, ücretsiz bir tane oluşturun Microsoft Entra ID hesabı (önceki adıyla Azure Active Directory). OAuth uygulamanızı kaydedeceğiniz yönetici portalı budur.

02

Azure Portal'da Yeni Bir Uygulama Kaydetme

Giriş yapmak portal.azure.com, git Microsoft Entra ID, ve tıkla Yeni kayıt.

  • Uygulamanızın adını girin: Bu isim, OAuth onay ekranında son kullanıcılarınız tarafından görülecektir.
  • Desteklenen hesap türleri: "Herhangi bir kurumsal dizindeki hesaplar (Herhangi bir Microsoft Entra ID, Çoklu kiracı) ve kişisel Microsoft hesapları" seçeneği, hem iş hem de kişisel Office 365 hesaplarını desteklemek için.
Azure Active Directory hizmeti
Yeni Uygulama Kaydı
03

Yönlendirme URI'leri ekleyin

Git Kimlik Doğrulama panel ve tıkla URI ekle Web bölümünün altında. Ekle 2 yönlendirme URI'si Unipile DSN'inizi kullanarak (mevcut) Unipile Gösterge Tablosu, sağ üst):

https://{{YOUR_DSN}}/api/v1/hosted/microsoft_auth_request_callback
https://{{YOUR_DSN_less_port}}/api/v1/hosted/microsoft_auth_request_callback/port{{YOUR_PORT}}
04

API İzinlerini Yapılandırma

Git API İzinleri > İzin ekle > Microsoft Graph, sonra aşağıdakileri ekleyin Devredilmiş izinler:

Mail.Read
Mail.ReadWrite
Mail.Gönder

Takvim özellikleri için şunları da ekleyin: Calendars.ReadWrite, Calendars.Read, Calendars.Read.Shared, Calendars.ReadWrite.Shared. Unipile Kontrol Paneli kapsam ayarlarınıza da bunları ekleyin.

API İzni Ekle
Microsoft Graph'ı Seçin
Yetkilendirilmiş İzinler Ekle
Uygulama İzinleri Ekranı
05

Bir İstemci Gizli Anahtarı Oluştur

Git Sertifikalar ve gizli bilgiler, tıklayın Yeni istemci gizli anahtarı. Sırrı adlandırın ve son kullanma tarihini belirleyin 730 gün (24 ay), ardından "Ekle"ye tıklayın.

Önemli: Gizli değeri hemen kopyalayın. Bu sayfadan bir daha erişemeyeceksiniz. Hizmet kesintisini önlemek için son kullanma tarihinden önce bir takvim hatırlatıcısı ayarlayın.
Yeni İstemci Gizli Anahtarı
Son Kullanma Tarihi Belirle
Gizli Değeri Kopyala
06

Unipile Dashboard'a Bağlanın

Git Unipile Gösterge Tablosu, git Ayarlar > Microsoft OAuth.

  • Yapıştır Uygulama (İstemci) Kimliği Azure Genel Bakış sayfasından.
  • Yapıştır gizli değer Sertifikalar ve sırları sayfasından.
  • Tıkla Kaydet.
Artık Microsoft hesaplarını Unipile'a bağlamaya hazırsınız. Son kullanıcılarınız, OAuth onay ekranında uygulamanızın adını ve logosunu görecektir.
07

Bağlantıyı Test Et

Unipile Kontrol Paneli'nden, özel OAuth kimlik bilgilerinizin düzgün çalıştığını doğrulamak için yeni bir Microsoft hesabı bağlantısı tetikleyin. Görmeniz gerekenler Uygulama adı ve Microsoft onay istemindeki markalaşmayı Unipile'ın varsayılanları yerine.

Doğrulanmış Yayıncı ile Microsoft Onay İsteği
İsteğe bağlı, üretim uygulamaları için
8
Doğrulanmış Yayıncı Olun
Üretim için önerilir, onay ekranındaki "doğrulanmamış" uyarısını kaldırır

Doğrulama ile onay isteminde mavi bir onay işareti görünür. Olmadan, profesyonel hesaplar "doğrulanmamış yayıncı" uyarısı görebilir.

Adım 1: Microsoft İş Ortağı Ağı'na katılın

Adım 2: Alan adınızı doğrulayın

dosya oluştur microsoft-kimlik-ilişkilendirme.json ve şurada barındırın:

https://yourdomain.com/.well-known/microsoft-identity-association.json

3. Adım: Partner Global Hesabınızın (PGA) kimliğini bağlayın

  • PGA Kimliğinizi şuradan bulun: Ortak Merkezi.
  • Azure Portal'da şuraya gidin: Uygulama Kayıtları > Uygulamanız > Markalaşma ve özellikler, PGA kimliğini girin ve kaydedin.

Tam ayrıntılar için, şuraya bakınız: Microsoft Publisher Doğrulama belgeleri.

9
"Yönetici Onayı Gerekli"nin Ele Alınması"
Son kullanıcılar BT yöneticilerinden bir onay bloğu gördüğünde

Bir kullanıcı "Yönetici onayı gerekiyor" görürse, kiracı düzeyinde gerekli onay verilmemiş demektir. Bunu çözmenin iki yolu vardır:

Yöntem 1: Microsoft Entra'da Yönetici Onayı İsteği

Bir Microsoft yöneticisinin bekleyen yönetici onay isteğini gözden geçirmesi ve onaylaması gerekir. Bkz. Yönetici onay isteklerini gözden geçirme hakkında Microsoft belgeleri.

Yöntem 2: Yönetici olarak ve kiracı genelinde onay ile OAuth oturumu açma

  • Yönetici, uygulamanızdan OAuth oturum açma akışını başlatıyor.
  • Microsoft yetkilendirmesi sırasında yönetici şunları işaretlemelidir: "Kuruluşunuz adına onay".
  • Bu, kuruluş içindeki tüm kullanıcılar için izin verir ve gelecekteki kullanıcılar için uyarıyı engeller.

tam ayrıntılar-da Microsoft rıza sorun giderme kılavuzu.

Kullanım Örnekleri

Microsoft Graph API E-posta Kullanım Senaryoları

Microsoft Graph API e-posta uç noktası, Outlook ve Exchange posta kutularına dayanan çok çeşitli SaaS uygulamalarını destekler. Bunlar, bugün Graph API üzerine geliştirme yapan ekipler tarafından kullanılan en yaygın üç entegrasyon modelidir.

CRM - İletişim ve E-posta Senkronizasyonu

Outlook e-posta konuşmalarını ve kişilerini doğrudan CRM'inize senkronize edin. Gönderenleri mevcut işlem kayıtlarıyla eşleştirin, her konuşmayı otomatik olarak kaydedin ve Outlook'tan manuel kopyala-yapıştır yapmadan ilişki geçmişini görüntüleyin.

E-posta API Kılavuzu
ATS - Başvuru Takip Sistemi

Outlook posta kutularındaki aday e-posta zincirlerini izleyin. Gelen başvuru e-postalarını ayrıştırın, ekleri çıkarın ve tüm bunları Microsoft Graph API e-posta uç noktası aracılığıyla, sıfır manuel müdahale ile doğru iş hattına yönlendirin.

E-posta Gönderme API'si
Destek Araçları - Bilet Yönlendirme

Gelen Outlook e-postalarını destek bileti haline getirin. Gerçek zamanlı yeni e-posta olaylarını almak, konu veya gönderen alan adına göre sınıflandırmak ve doğru ekip kuyruğuna yönlendirmek için Graph web kancalarını kullanın - manuel sınıflandırmayı otomatik mantıkla değiştirin.

Birleşik E-posta API'si
Özellikler

Microsoft Graph API E-posta Anahtar Özellikleri

E-posta için Microsoft Graph API, temel gönderme ve alma işlemlerinin çok ötesinde kapsamlı bir yetenek seti sunar. İşte Microsoft Graph API'nin e-posta yığınında geliştirme yapmadan önce her geliştiricinin bilmesi gereken en önemli altı özellik.

Oku, Gönder ve Yanıtla

Tek tek iletileri veya sayfalara ayrılmış listeleri getir. Yeni e-postalar gönder veya satır içi yanıtla. İletileri klasörler arasında taşı veya okunmuş/okunmamış olarak işaretle.

GET /v1.0/ben/mesajlar
Ekler

Herhangi bir mesajdaki dosya eklerini yükleyin, indirin ve listeleyin. Satır içi (gömülü) eklerin yanı sıra 3 MB'ın üzerindeki dosyalar için yükleme oturumları aracılığıyla büyük dosya yüklemelerini destekler.

GET /v1.0/benim/mesajlarım/{id}/ekler
Klasörler ve Etiketler

Outlook'ta kullanıcıların gördüğüyle aynı şekilde e-posta klasörleri oluşturun, yeniden adlandırın ve silin. Tüm e-posta klasörlerini listeleyin, iletileri bunlar arasında taşıyın ve alt klasör hiyerarşilerini yönetin.

GET /v1.0/benim/postaKaldırıcıları
Ara ve Filtrele

Gönderen, konu, tarih aralığı veya anahtar kelimeye göre e-postaları bulmak için OData sorgu parametrelerini ($filtre,$arama, $sıralama kullanın. Gelişmiş tam metin arama için KQL'yi destekler.

GET /benim/mesajlarım?$arama="proje"
Webhook Abonelikleri

E-posta kutusu olayları için değişiklik bildirimlerine abone olun. Yeni e-postalar geldiğinde, iletiler okunduğunda veya klasörler değiştiğinde neredeyse gerçek zamanlı HTTP POST geri aramaları alın.

POSTA /v1.0/abonelikler
Toplu İstekler

Tek bir HTTP çağrısında $yığın uç noktasını kullanarak 20 adede kadar bireysel Graph API isteğini birleştirin. Toplu e-posta okumaları gibi işlemler için gidiş-dönüşleri önemli ölçüde azaltır.

POSTA /v1.0/$toplu
Kod Örnekleri

Microsoft Graph API ile E-posta Gönderme, Okuma ve Senkronize Etme

Her geliştiricinin ihtiyaç duyduğu temel işlemleri kapsayan üç adet üretim tabanlı desen: e-posta gönderme, filtreli mesaj okuma ve gerçek zamanlı posta kutusu izleme için artımlı delta senkronizasyonu.

POST /v1.0/me/sendMail — Python, Unipile Aracılığıyla
send_outlook_email.py
İthalat istekleri # Unipile Birleşik E-posta API'si # Microsoft Graph aracılığıyla gönderir — doğrudan OAuth gerekmez TABAN = "https://api.unipile.com:13465/api/v1" ÜST BILGILER = { "X-API-ANAHTAR": "ERIŞİM_TOKENINIZ", "İçerik-Türü": "application/json" } fonksiyon send_outlook_email(hesap_id, kime, konu, içerik) yük = { "hesap_kimliği": hesap_kimliği, "için": [{"tanımlayıcı": (e, dönebilir), "konu": konu, "vücut"gövde } r = istemler.POST(f"{BASE}/e-postalar", başlıklar=BAŞLIKLAR, json=yük return r.json() # Örnek kullanım send_outlook_email( "acc_outlook_123", için="recipient@company.com", konu="Toplantı takibi", vücut="Merhaba, görüşmemize istinaden..." )
Microsoft Graph aracılığıyla gönderilen e-posta — Outlook hesabı acc_outlook_123
Direct Graph API karşılığı: POST https://graph.microsoft.com/v1.0/me/sendMail ile message.alıcılara, mesaj.konuve mesaj.gövde.içerik. Unipile, OAuth belirteç yenileme ve MIME işlemleri gibi karmaşık işleri soyutlar. Ayrıntılı bilgi için E-posta Gönder API kılavuzu ek desteği ve yanıt ileti dizisi için.
GET /v1.0/me/messages — filtrele, seç, sayfalama
read_outlook_emails.py
İthalat istekleri # Filtreler aracılığıyla Unipile ile Outlook e-postalarını oku TABAN = "https://api.unipile.com:13465/api/v1" ÜST BILGILER = {"X-API-ANAHTAR": "ERIŞİM_TOKENINIZ"} fonksiyon outlook_e_postalarını_listele(hesap_kimliği, gönderen_filtresi=Sınır yok=20): parametreler = { "hesap_kimliği": hesap_kimliği, "sınır"sınır } eğer gönderen_filtresi: # eşler $filtre=gönderen/e-postaAdresi/adres eq '...' parametreler["dan"] = gönderen_filtresi r = istemler.olsun(f"{BASE}/e-postalar", başlıklar=BAŞLIKLAR, parametreler=parametreler return r.json().almak("eşyalar", []) # Belirli bir göndericiden son 20 e-postayı al e-postalar = outlook_e_postalarını_listele("acc_outlook_123", gönderici_filtresi="hr@acme.com") için e içinde e-postalar print(e"konu"], e["dan"], e["tarih"])
Outlook'tan alınan 20 ileti — gönderen alan adına göre filtrelenmiş
Yerel olarak desteklenen OData filtreleri: $filtre, $ara, $seçin, $sıralama ölçütü, $üst. Kullan $arama="konu:fatura" KQL tam metin araması için. 3MB'den büyük ekler bir Oturum yükle (POST /createUploadSession) — tek bir çok parçalı istek değil.
GET /v1.0/me/mailFolders/inbox/messages/delta — artımlı eşitleme
delta_sync_outlook.py
İthalat istekleri # Delta Senkronizasyonu — yalnızca son senkronizasyondan BU YANA YENİ olan e-postaları getir # Unipile, deltaToken yaşam döngüsünü otomatik olarak yönetir TABAN = "https://api.unipile.com:13465/api/v1" ÜST BILGILER = {"X-API-ANAHTAR": "ERIŞİM_TOKENINIZ"} fonksiyon yeni_e_postaları_senkronize_ethesap_kimliği, imleç=Hiçbiri: """ Son çağrıdan bu yana alınan e-postaları döndürür. imleç = opak sayfalama jetonu (çağrılar arasında saklayın). """ parametreler = {"hesap_kimliği": hesap_kimliği} eğer imleç parametreler["imleç"] = imleç r = istemler.olsun(f"{BASE}/e-postalar/senkronize et", başlıklar=BAŞLIKLAR, parametreler=parametreler veri = r.json() return data.get("eşyalar", []), data.get("imleç") # İlk senkronizasyon — imleç yok e-postalar, sonraki_imleç = yeni_e_postaları_senkronize_et("acc_outlook_123") # Store next_cursor in your DB, use it for subsequent calls print(f"{len(emails)} yeni e-posta — sonraki imleç kaydedildi")
Delta senkronizasyonu tamamlandı - daha önce görülen mesajlar için boşa harcanan 0 API çağrısı
Graph üzerinde delta'nın nasıl çalıştığı: GET /benim/postaKlasörlerim/gelenKutusu/mesajlar/delta döner @odata.deltaLink ilk çağrıda. Kaydedin ve bir dahaki sefere kullanın — Grafik yalnızca farkı döndürür. Posta kutusu dolu, yoklama yok = standart API çağrılarına göre 10 kat daha az API çağrısı GET /mesajlar. Unipile'ın /e-postalar/senkronize endpoint otomatik jeton yönetimi ile bu deseni sarmalar.
Gerçek Zamanlı

E-posta Olayları için Microsoft Graph API Web Kancaları

Microsoft Graph abonelikleri (web kancaları), sunucunuzun bir e-posta geldiği, okunduğu, taşındığı veya silindiği anda HTTP POST bildirimleri almasını sağlar. Aşağıda, Gelen Kutusu olaylarına abone olmak için eksiksiz bir Python örneği ve yaşam döngüsü yönetimi ayrıntıları bulunmaktadır.

Bir Graph webhook aboneliğinin iki zorunlu alanı vardır: türüdeğiştir (hangi etkinliklere bakılacak) ve bildirimUrl (HTTPS uç noktanız). Microsoft gönderir bir doğrulamaSimgesi ilk abonelikte sorgu parametresi. uç noktanız, sahipliği doğrulamak için 10 saniye içinde bunu düz metin olarak yankılamalıdır.

Grafik abonelikleri en fazla şuralardan sonra sona erer 4230 dakika (~3 gün) posta kaynakları için. Sunucunuzun süresi dolmadan yenilenmesi gerekir YAMA /v1.0/abonelikler/{id} veya bildirimleri sessizce almaya devam edeceksiniz.

1 Yaşam Döngüsü Bildirimleri
Microsoft Graph, yaşam döngüsü bildirimlerini ayrı bir yaşamDöngüsüBildirimUrl Abonelik sona ermek üzereyken veya iptal edildiğinde. Sunucunuzun teyit için HTTP 202 ile yanıt vermesi gerekir. Yanıt vermemek aboneliğin feshedilmesine neden olur.
2 doğrulamaJetonu El Sıkışması
/v1.0/subscriptions'a POST yaptığınızda, Microsoft bildirim URL'nizi hemen şunları içeren bir GET isteğiyle çağırır ?validationToken=XXX. Token'ı HTTP 200 ile düz metin (Content-Type: text/plain) olarak 10 saniye içinde döndürmelisiniz. Zaman aşımı, abonelik oluşturmanın başarısız olduğu anlamına gelir.
3 Abonelik Bitiş
E-posta abonelikleri en fazla 4230 dakika sonra sona erer. Arka plan işi veya cron kullanarak sonKullanmaZamanı feshedilmeden önce. Bir aboneliği sıfırdan da yeniden oluşturabilirsiniz. Microsoft, yenilemeler için ek ücret almaz.
create_subscription.py
İthalat istekleri, datetime ERİŞİM_TOKENI = "GRAFİĞİNİZ_TOKEN" Bitiş noktası = "https://graph.microsoft.com/v1.0/subscriptions" # Süre Sonu: posta kaynakları için şimdiye kadar en fazla 4230 dakika son kullanma tarihi = ( datetime.datetime.UTC anı() + datetime.timedelta(dakika=4200) ).isoformat() + "Z" yük = { "değiştirTipi": "oluşturuldu", "bildirimUrl": "https://alanadiniz.com/webhook", "kaynak": "me/mailFolders('Gelen Kutusu')/messages", "sonkullanmatarihi": son kullanma tarihi, "istemciDurumu": "gizliDurumum" } r = istemler.POST( SON NOKTA, json=yük, başlıklar={ "Yetkilendirme": Bearer {ACCESS_TOKEN}", "İçerik-Türü": "application/json" } ) print(r.json()["kimlik"]) # alt_xxxxxxxx-xxxx-xxxx-xxxx
201 Oluşturuldu, Abonelik Gelen Kutusu olayları için aktif
Unipile

Karmaşıklıktan Kaçının - Unipile'ın Birleşik E-posta API'sini Kullanın

Microsoft Graph, Gmail ve IMAP'ı tek bir SDK ile bağlayın. Sağlayıcı başına OAuth akışları yok, belirteç yenileme mantığı yok, bakım gerektiren webhook altyapısı yok. Ekibiniz e-posta özelliklerini haftalar yerine günler içinde kullanıma sunar.

Ücretsiz Başlayın

Kredi kartı gerekmez. SOC 2 Tip II uyumlu.

Limitler

Microsoft Graph API Hız Limitleri ve Hata İşleme

Microsoft Graph API e-posta uç noktası birden çok düzeyde kısıtlama uygular: kullanıcı başına, uygulama başına ve kiracı başına. Üretime geçmeden önce bu sınırlamaları anlamak, entegrasyonunuzda sessiz hataları ve azalan güvenilirliği önler.

Kısıtlandığında, Microsoft Graph şunları döndürür HTTP 429 Çok Fazla İstek with a Yeniden Dene Sonra Bekleme süresini belirten üstbilgi. Bu üstbilgiyi her zaman okuyun ve buna göre geri çekilin - bir 429 sonrasında yoğun bir şekilde istek göndermek, bekleme penceresini kısaltmak yerine uzatacaktır.

HTTP Kodu Hata adı Sebep Düzelt
429 TooManyRequests İstek limiti aşıldı (uygulama başına 10.000 istek/10 dk veya kullanıcı başına 1.000 istek/1 dk) Retry-After üstbilgisini oku. Üstel geri çekilme uygula. İstekleri birleştirmek için $yığınını kullan.
401 Yetkisiz Erişim jetonu süresi dolmuş veya kimlik doğrulama üstbilgisi eksik MSAL ile yenileme belirteci. Her istekten önce belirteç süresinin dolup dolmadığını kontrol et. Belirteç önbelleğini kullan.
403 Yasak Azure Uygulama Kaydında Eksik Mail.Read veya Mail.Send İzni Azure Portal'da gerekli Graph izinlerini ekleyin ve yeniden onaylayın (veya uygulama izinleri için yönetici onayı alın).
404 KaynakBulunamadı Mesaj Kimliği veya klasör kimliği mevcut değil (silinmiş veya yanlış kiracı) ID'leri harekete geçmeden önce GET ile doğrulayın. 404 hatasını zayıf silme işareti olarak zarif bir şekilde ele alın.
500 DahiliSunucuHatası Geçici Microsoft sunucu hatası Üstel geri çekilme ile tekrar dene (1s, 2s, 4s). Microsoft desteği için istek kimliği başlığını günlüğe kaydet.
Çok Sağlayıcılı

Microsoft Graph'ın Ötesinde: Gmail, Outlook ve IMAP için Birleşik E-posta API'si

Microsoft Graph API e-posta entegrasyonunu yönetmek sadece başlangıç. Çoğu SaaS ürününün aynı anda Gmail, Outlook ve IMAP'i desteklemesi gerekir - bu da üç ayrı OAuth akışı, üç jeton yenileme döngüsü ve üç webhook sistemi anlamına gelir. Unipile'ın birleşik e-posta API'si üç sağlayıcıyı tek bir uç noktanın arkasında soyutlar.

Gmail logosuGmail API Outlook logosuMicrosoft Graph IMAP logosuIMAP / SMTP

Unipile'in birleşik e-posta API entegrasyonu, Tek bir entegrasyon yazıp anında üç sağlayıcı türünü de desteklersiniz. Bağlı hesaplar Unipile tarafından yönetilir - arka uç tarafınız, kullanıcının posta kutusu Microsoft Graph, Gmail veya IMAP üzerinde çalışıyor olursa olsun, yalnızca tek bir REST uç noktasıyla konuşur.

Yönetilecek OAuth akışı yok Unipile, Microsoft Graph ve Gmail için belirteç alımını, yenilenmesini ve iptalini sizin adınıza yönetir.

Birleşik webhook olayları - notificationUrl, tüm sağlayıcılardan normalize edilmiş bir JSON şemasıyla e-posta etkinliklerini alır. Sağlayıcı başına abonelik yönetimi yoktur.

SOC 2 Tip II uyumlu - Aktarımdaki tüm e-posta verileri şifrelenir. Unipile, entegrasyonunuzun gerektirdiğinden fazla e-posta içeriği saklamaz.

Desteklenen e-posta sağlayıcıları
Outlook / Microsoft 365
Microsoft Graph API aracılığıyla
Aktif
Gmail
Gmail API (Google) aracılığıyla
Aktif
IMAP / SMTP
Evrensel e-posta yedeklemesi
Aktif
Başlayın

Dakikalar İçinde Microsoft Graph E-postasını Entegre Etmeye Başlayın

Outlook, Gmail ve IMAP'i tek bir API altında birleştirmek için Unipile kullanan 200'den fazla SaaS ekibine katılın. Satıcı bağımlılığı yok. SOC 2 uyumlu.

SSS

Sıkça Sorulan Sorular

Microsoft Graph API e-posta uç noktası üzerinde geliştirme yapmadan önce geliştiricilerin sorduğu her şey - kimlik doğrulamasından hız sınırlarına, sağlayıcı kapsamına kadar.

01
Microsoft Graph API, e-posta verilerine erişmek ve bu verilerle etkileşim kurmak için bir uygulamadır.
Bu Microsoft Graph API e-posta için Microsoft'un Outlook ve Exchange posta kutusu verilerine erişmek için sağladığı resmi REST uç noktasıdır. https://graph.microsoft.com/v1.0/me/messages Azure Active Directory aracılığıyla OAuth 2.0 kimlik doğrulaması kullanır. E-postaları okuma, gönderme, arama ve yönetme işlemlerini destekler, ayrıca webhook abonelikleri aracılığıyla gerçek zamanlı değişiklik bildirimleri almanızı sağlar.
02
OAuth 2.0, Microsoft Graph ile güvenlik ve kimlik doğrulama için kullanılan bir protokoldür. Kullanıcıların Microsoft Graph'a erişmek için kendi kimlik bilgilerini doğrudan paylaşmadan uygulamaların kimlik doğrulaması yapmasına olanak tanır. İşte OAuth 2.0'nin Microsoft Graph ile nasıl çalıştığına dair genel bir bakış: 1. **Yetkilendirme İsteği:** Bir uygulama, kullanıcının Microsoft Graph'taki verilere ("yerler" gibi) erişmesini istediğinde, kullanıcıyı Microsoft'un kimlik doğrulama uç noktasına yönlendirir. Bu istek, uygulamanın kimliğini (client ID), istenen izinleri (scopes) ve bir geri çağırma URL'sini içerir. 2. **Kullanıcı Kimlik Doğrulaması ve Onayı:** Kullanıcı, Microsoft kimlik bilgileriyle (e-posta ve parola gibi) oturum açar. Ardından, uygulamanın hangi verilere erişmek istediği ve hangi izinleri istediği konusunda bilgilendirilir. Kullanıcının bu erişime izin vermesi gerekir. 3. **Yetkilendirme Kodu Verme:** Kullanıcı izin verdikten sonra, Microsoft'un kimlik doğrulama sunucusu uygulamasına bir "yetkilendirme kodu" gönderir. Bu kod, kullanıcının kimliğini veya erişim haklarını temsil etmez, yalnızca bir kerelik bir belirteçtir. 4. **Erişim Belirteci Alma:** Uygulama, aldığı yetkilendirme kodunu, kendi kimliğini ve bir client secret'ı (uygulamanın gizli anahtarı) kullanarak Microsoft'un belirteç uç noktasına gönderir. 5. **Erişim Belirtecinin Kullanılması:** Microsoft'un belirteç uç noktası, doğrulama sonrasında uygulamaya bir "erişim belirteci" (access token) ve isteğe bağlı olarak bir "yenileme belirteci" (refresh token) gönderir. Erişim belirteci, kısa bir geçerlilik süresine sahiptir ve uygulamanın Microsoft Graph'a yaptığı her istekte iletilir. 6. **Microsoft Graph'a Erişim:** Uygulama, Microsoft Graph API'sine istek gönderdiğinde, isteğin `Authorization` başlığında erişim belirtecini ekler. Microsoft Graph, bu belirteci doğrular ve erişim belirtecinde belirtilen izinlere göre isteği işler. 7. **Yenileme Belirteci (Opsiyonel):** Erişim belirtecinin süresi dolduğunda, uygulama, kullanıcının tekrar oturum açmasını istemeden yeni bir erişim belirteci almak için yenileme belirtecini kullanabilir. **Temel Kavramlar:** * **Client ID:** Uygulamayı tanımlayan benzersiz bir tanımlayıcı. * **Client Secret:** Uygulamanın kimliğini doğrulamak için kullanılan gizli bir anahtar (uygulama kimlik doğrulaması için kullanılır). * **Scopes:** Uygulamanın erişebileceği izinlerin tanımı (örneğin, `User.Read`, `Mail.Read`). * **Access Token:** Uygulamanın Microsoft Graph'a erişimini sağlayan kısa süreli bir belirteç. * **Refresh Token:** Süresi dolmuş bir erişim belirtecini yenilemek için kullanılan uzun süreli bir belirteç. * **Authorization Endpoint:** Kullanıcının kimliğini doğruladığı ve uygulamanın iznini verdiği Microsoft uç noktası. * **Token Endpoint:** Uygulamanın yetkilendirme kodunu veya yenileme belirtecini kullanarak erişim belirteci aldığı Microsoft uç noktası. Bu mekanizma, kullanıcıların hassas kimlik bilgilerini uygulamalarla paylaşmasına gerek kalmadan güvenli bir şekilde Microsoft Graph'taki verilere erişmesini sağlar.
Microsoft Graph, kimlik doğrulama için Azure Active Directory'yi (Entra ID) kullanır. Azure portalında bir uygulama kaydeder, gerekli Graph API izinlerini (örneğin Mail.Read ve Mail.Gönder), ve erişim belirteçleri almak için Microsoft Kimlik Doğrulama Kitaplığı'nı (MSAL) kullanın. İki ana akış vardır: devredilmiş (kullanıcı etkileşimli olarak oturum açar) ve uygulama (Sunucudan sunucuya, kullanıcı etkileşimi yok). Tokenlar 1 saat sonra süresi dolar ve otomatik olarak yenilenmelidir.
03
Microsoft Graph API IMAP'ı destekliyor mu?
Microsoft Graph API, IMAP'i dahili olarak kullanmaz; bu, altta yatan posta protokolünü soyutlayan bir REST API'sidir. Ancak, Outlook hesaplarına hala IMAP aracılığıyla (Temel Kimlik Doğrulama kullanımdan kaldırıldığı için OAuth 2.0 ile) erişilebilir. Outlook e-posta entegrasyonu için Microsoft, daha fazla özellik, daha iyi performans ve tam geri arama (webhook) desteği sunduğu için IMAP yerine Graph API'yi kullanmanızı şiddetle tavsiye eder. Microsoft olmayan posta kutuları için, IMAP, evrensel yedek olarak kalır.
04
Microsoft Graph e-posta API'si için hız sınırları nelerdir?
Microsoft Graph birden çok düzeyde kısıtlama uygular. Genel sınır 10 dakikada uygulamaya 10.000 istek. Kullanıcı başına limitler, işlem türüne bağlı olarak daha düşük olabilir. Kısıtlandığında, API HTTP 429 hatası ile yanıt verir ve Yeniden Dene Sonra header. En iyi uygulamalar: Üstel geri çekilme uygulayın, tek bir HTTP çağrısında 20 isteğe kadar birleştirmek için $toplu işlem kullanın ve tekrarlayan çağrıları en aza indirmek için sık erişilen verileri önbelleğe alın.
05
Microsoft Graph API ile web kancaları nasıl kurarım?
POST'a /v1.0/abonelikler with a türüdeğiştir (örneğin, "oluşturuldu"), bir bildirimUrl HTTPS uç noktanızı işaret eden ve bir kaynak (örneğin, "me/mailFolders('Inbox')/messages"). Microsoft hemen bir GET isteği gönderir doğrulamaSimgesi Sunucunuz 10 saniye içinde bunu düz metin olarak yankılamalıdır. Abonelikler en fazla 4230 dakika sonra sona erer ve sona ermeden önce PATCH aracılığıyla yenilenmelidir.
06
Microsoft Graph kullanarak bir kullanıcının adına e-posta gönderebilir miyim?
Evet. İle devredilen izinler (Mail.Send), oturum açmış kullanıcının kendi posta kutusundan onun adına e-posta gönderebilirsiniz. uygulama izinleri (Mail.Send), oturum açmadan kiracıdaki herhangi bir kullanıcı adına gönderim yapabilirsiniz - otomatik bildirimler veya CRM entegrasyonları için kullanışlıdır. Ayrıca şunlara bakınız: Kullanıcı Adına E-posta Gönderme API Kılavuzu.
07
Microsoft Graph API ile EWS arasındaki fark nedir?
Exchange Web Services (EWS), Microsoft'un şirket içi Exchange için oluşturduğu SOAP tabanlı bir API'dir. Microsoft Graph API modern REST alternatifi ve yeni entegrasyonlar için önerilen tek yaklaşımdır. EWS bakım modundadır - yeni özellik eklenmemektedir ve Microsoft, Exchange Online için kullanımdan kaldırma planlarını duyurmuştur. Hala EWS kullanıyorsanız, şimdi Graph API'ye geçin. Eski şirket içi Exchange (2013/2016) için EWS hala tek seçeneğiniz olabilir, ancak Unipile'ın e-posta API'si köprü kurmaya yardımcı olabilir.
Hala sorularınız mı var? Ekibimiz, Microsoft Graph API e-posta uç noktasını ürününüze entegre etmenize yardımcı olmak için burada.
Bir uzmanla konuşun
tr_TRTR