# Microsoft Teams API Entegrasyonu – Bağlantı Rehberi

Microsoft Teams’e API isteği gönderebilmek için Microsoft Entra ID (eski adıyla Azure Active Directory) üzerinde bir **App Registration** oluşturulmalı ve bu uygulamaya ait kimlik bilgileri kullanılmalıdır. Teams işlemleri, **Microsoft Graph API** üzerinden gerçekleştirilir.

#### **1. Microsoft Entra ID (Azure Portal) Girişi**

Bu adımda, Microsoft Teams ve Graph API entegrasyonu için gerekli uygulamaların yönetildiği Azure Portal ortamına giriş yapılır.

**Adımlar:**

1. Tarayıcıdan aşağıdaki adrese gidilir:\
   <https://portal.azure.com>
2. Microsoft hesabı ile giriş yapılır.
3. Sol menüden **Microsoft Entra ID** seçilir.

#### **2. App Registration (Uygulama) Oluşturma**

Bu adımda, Teams API çağrılarını yapacak olan uygulama Azure ortamında kayıt altına alınır.

**Adımlar:**

1. **Microsoft Entra ID → App registrations** menüsüne girilir.
2. **New registration** butonuna tıklanır.
3. Aşağıdaki alanlar doldurulur:

* **Name:** Uygulama adı (örn: `GenRPA Teams Integration`)
* **Supported account types:**\
  \&#xNAN;*Accounts in this organizational directory only (Single tenant)*

4. **Redirect URI** boş bırakılabilir (API/RPA senaryoları için zorunlu değildir).
5. **Register** butonuna basılır.

#### **3. Client Id (Application ID)**

Bu adımda, oluşturulan uygulamaya ait ve API çağrılarında kimlik doğrulamada kullanılacak Client Id bilgisi alınır. Uygulama oluşturulduktan sonra otomatik olarak üretilir.

**Adımlar:**

1. Azure Portal’da **Microsoft Entra ID → App registrations** menüsüne gidilir.
2. Daha önce oluşturulan uygulama seçilir.
3. **Overview** ekranında yer alan **Application (client) ID** alanı bulunur.
4. Bu değer kopyalanarak Client Id olarak kullanılır.

**Örnek:** `3f8c2a1b-9d4e-4a6b-bc12-8e4f9a123456`

#### **4. Tenant Id (Directory ID)**

Bu adımda, uygulamanın bağlı olduğu organizasyonu temsil eden Tenant Id bilgisi alınır.

**Adımlar:**

1. Aynı uygulamanın **Overview** ekranında kalınır.
2. **Directory (tenant) ID** alanı bulunur.
3. Bu değer kopyalanarak Tenant Id olarak kullanılır.

**Örnek:** `Q~x8FZkP9Yb2L4mE0A1CDeFGHijklmN`

#### **5. Client Secret Oluşturma**

Bu adımda, uygulamanın Microsoft Graph API’ye güvenli şekilde erişmesini sağlayan Client Secret oluşturulur. Client Secret, uygulamanın API çağrılarında kimlik doğrulaması yapmasını sağlar.

**Adımlar:**

1. Uygulama ekranında **Certificates & secrets** menüsüne girilir.
2. **Client secrets** bölümünde **New client secret** tıklanır.
3. Açıklama girilir (örn: `GenRPA Secret`).
4. Süre seçilir (örn: 6 months veya 12 months).
5. **Add** butonuna basılır.
6. Oluşturulan secret **Value** alanı kopyalanır.

**Örnek:** `72f988bf-86f1-41af-91ab-2d7cd011db47`

{% hint style="info" %}
Client Secret yalnızca bu ekranda **bir kez** görüntülenir. Kaybedilirse yeniden oluşturulması gerekir.
{% endhint %}

#### **6. API Permission (Yetki) Tanımlama**

Bu adımda, uygulamanın Teams üzerinde hangi işlemleri yapabileceğini belirleyen Microsoft Graph izinleri tanımlanır ve onaylanır. Teams işlemleri için Microsoft Graph izinleri verilmelidir.

**Adımlar:**

1. **API permissions** menüsüne girilir.
2. **Add a permission** → **Microsoft Graph** seçilir.
3. Senaryoya göre izinler eklenir:

**Application permissions (RPA / servis senaryosu):**

* `Team.Read.All`
* `Channel.Read.All`
* `ChannelMessage.Send`
* `OnlineMeetings.ReadWrite.All`

4. Yetkiler eklendikten sonra **Grant admin consent** ile onaylanır.

**Bu işlemler tamamlandıktan sonra Microsoft Teams API erişimi aktif hale gelir ve Teams üzerinde mesaj gönderme, kanal işlemleri ve toplantı oluşturma gibi işlemler API çağrıları üzerinden güvenli bir şekilde gerçekleştirilebilir.**


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.genrpa.com/sikca-sorulan-sorular-sss/microsoft-teams-api-entegrasyonu-baglanti-rehberi.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
