---
title: Authorization
description: ikas OAuth2 yetkilendirme akışı ve implementasyonu
---

ikas, bir [ikas](https://ikas.com) mağazasına erişim sağlamak için OAuth2 [Authorization Code Flow](https://oauth.net/2/grant-types/authorization-code/) kullanır. Bu akış hem ikas Dashboard'dan hem de uygulamanızdan başlatılabilir. Bu rehberde her iki yetkilendirme akışını da ele alacağız.

<Callout type="warning" title="Önemli Gereksinim">
Uygulamanız her iki yetkilendirme akışını da desteklemelidir.
</Callout>

**Authorization Code Flow** hakkında daha iyi anlamak için aşağıdaki bağlantıları inceleyebilirsiniz:
- https://oauth.net/2/grant-types/authorization-code
- https://auth0.com/docs/get-started/authentication-and-authorization-flow/authorization-code-flow

## Yetkilendirme API'leri

Uygulamamızda authorization code akışını başlatmak ve tamamlamak için iki API implementasyonu yapmamız gerekiyor.

Uygulamanızı ikas builders dashboard'da oluşturduktan sonra aşağıdaki gibi Uygulamalar bölümünde görebilirsiniz:

![ikas Builders Dashboard Apps](/media/ikas-partners-photo-quick-start/ikas-quick-start-cli-commands/apps-on-ikas-builders.png)

API'lerimizi implementasyon etmeye başlamadan önce, Next.js App Router ile `app` dizini içindeki `route.ts` adlı herhangi bir dosyanın API Route Handler olarak işlem gördüğünü bilmelisiniz. Her ne kadar herhangi bir yere yerleştirilebilseler de, bu rehberde organizasyon amacıyla tüm API route'larımızı `app/api` dizini içine yerleştireceğiz.

<Callout type="info" title="Next.js App Router">
Daha fazla bilgi için [Next.js Route Handlers](https://nextjs.org/docs/app/building-your-application/routing/route-handlers) dokümantasyonunu inceleyebilirsiniz.
</Callout>

## Yetkilendirme Akışları

ikas'ta iki farklı yetkilendirme akışı bulunur:

### 1. ikas Dashboard'dan Yetkilendirme
Mağaza sahibi ikas Admin Panel'indeki "Uygulamalarım" veya "App Store" sayfasından uygulamanızı tıkladığında başlayan akış.

### 2. Uygulamadan Yetkilendirme  
Uygulamanızın kendi arayüzünden mağaza adı alarak başlattığınız yetkilendirme akışı.

Her iki akış da aynı OAuth2 Authorization Code Flow standardını kullanır ancak başlatma yöntemleri farklıdır.

---

Bu bölümde ele alacağımız konular:

- **OAuth Authorize API**: Yetkilendirme sürecini başlatan API endpoint'i
- **OAuth Callback API**: Yetkilendirme tamamlandığında çağrılan callback API'si  
- **Uygulamadan Yetkilendirme**: Kendi uygulamanızdan yetkilendirme başlatma
- **App Access Token Oluşturma**: ikas AppBridge ve signature doğrulama ile token alma
- **Scope Değişikliklerini Yönetme**: Yeni yetkiler gerektiğinde yeniden yetkilendirme

<Callout type="success" title="Sonraki Adım">
Yetkilendirme sürecini tamamladıktan sonra, token'larınızı kullanarak ikas GraphQL API'sine nasıl erişeceğinizi öğrenmek için [ikas SDK Kullanımı](/docs/app-development/ikas-sdk-kullanimi) rehberine geçin.
</Callout>