> ## Documentation Index
> Fetch the complete documentation index at: https://docs.apinizer.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Mock API Kullanımı

> Apinizer Platformu'nda Mock API kullanımını sağlar. Gerçek bir API'nin davranışlarını simüle edebilir, koşula göre farklı yanıtlar döndürebilir, kod yazmadan test ve geliştirme amaçlı API'ler oluşturabilir.

Mock API, gerçek bir API'nin davranışlarını simüle etmeyi sağlar. Herhangi bir yazılım geliştirme yapmadan oluşturduğumuz metoda bir HTTP çağrısı yaptığımızda, önceden belirtilen bir yanıt döndürülür.

Bu içerikte sırasıyla boş bir Mock API oluşturma, metoddan koşula göre yanıt döndürme ve API'yi API Proxy olarak oluşturma, yükleme ve test etme işlemleri anlatılacaktır.

<Note>
  Apinizer, yanıta eklenen koşullar sayesinde, isteğin başlık, gövde ya da parametre değerleri baz alınarak **koşula göre farklı yanıtlar** alınmasını sağlar.
</Note>

## 1. Mock API Oluşturma

Çalışan kayıtlarının yönetildiği bir API oluşturulmak istenmektedir.

API'ye ait metot ve yanıt bilgileri, API tanım belgesi yerine arayüz üzerinden oluşturulacağı için **tipi (type)** olarak **Blank** seçeneği seçilir.

Varsayılan olarak API'nin CRUD operasyonlarına ait metotların oluşturulması özelliği aktif edilir.

Mock API'nin ad ve açıklama alanları doldurulup **Kaydet ve İlerle (Save and Next)** butonuna tıklanır.

**Mock API ayarlarını içeren görsele aşağıda yer verilmiştir:**

<img src="https://mintcdn.com/apinizer/MXUcToqbAreZkG5b/images/tutorials/api-olusturucu-senaryolari/mock-api/01-mock-api-settings.png?fit=max&auto=format&n=MXUcToqbAreZkG5b&q=85&s=0e4717f11445728f9099740ec7f7aea4" alt="Mock API Ayarları" width="800" data-path="images/tutorials/api-olusturucu-senaryolari/mock-api/01-mock-api-settings.png" />

Mock API oluşturulduğunda sol tarafta API ve metot bilgileri, sağ tarafta ise seçili metodun tanım bilgileri yer alır.

<img src="https://mintcdn.com/apinizer/MXUcToqbAreZkG5b/images/tutorials/api-olusturucu-senaryolari/mock-api/02-mock-api-created.png?fit=max&auto=format&n=MXUcToqbAreZkG5b&q=85&s=6f8836b1b297d92d51be76927a46ad3f" alt="Mock API Oluşturuldu" width="800" data-path="images/tutorials/api-olusturucu-senaryolari/mock-api/02-mock-api-created.png" />

## 2. Koşula Göre Farklı Yanıt Döndürme

İlgili metoda varsayılan olarak (herhangi bir koşul tanımlaması yapılmadan) istek gönderildiğinde yanıt olarak başarılı bir durum kodu ve tüm çalışan listesinin dönmesi hedeflenmektedir.

<img src="https://mintcdn.com/apinizer/MXUcToqbAreZkG5b/images/tutorials/api-olusturucu-senaryolari/mock-api/03-default-response.png?fit=max&auto=format&n=MXUcToqbAreZkG5b&q=85&s=6f539eb20d7c67d802795f3e158f9ddd" alt="Varsayılan Yanıt Ayarları" width="600" data-path="images/tutorials/api-olusturucu-senaryolari/mock-api/03-default-response.png" />

**username** başlığının (header) değeri **dwight** olduğunda sadece bu personelin bilgisini dönmek için aşağıdaki koşul oluşturulur.

<img src="https://mintcdn.com/apinizer/MXUcToqbAreZkG5b/images/tutorials/api-olusturucu-senaryolari/mock-api/04-conditional-response.png?fit=max&auto=format&n=MXUcToqbAreZkG5b&q=85&s=93ba2afd91ead32cb744980dc1c97d4b" alt="Koşullu Yanıt Ayarları" width="600" data-path="images/tutorials/api-olusturucu-senaryolari/mock-api/04-conditional-response.png" />

## 3. API Tanım Belgelerini Görüntüleme

Employee Mock API'ye ait API tanım dosyalarına erişmek için **Spec'leri Göster (Show Specs)** linkine tıklanır.

<img src="https://mintcdn.com/apinizer/MXUcToqbAreZkG5b/images/tutorials/api-olusturucu-senaryolari/mock-api/05-show-specs.png?fit=max&auto=format&n=MXUcToqbAreZkG5b&q=85&s=fd8a0a0fa6522f90f7ba63399efbd99f" alt="Spec'leri Göster" width="1000" data-path="images/tutorials/api-olusturucu-senaryolari/mock-api/05-show-specs.png" />

**Spec Bilgisi diyaloğunu içeren görsele aşağıda yer verilmiştir:**

<img src="https://mintcdn.com/apinizer/MXUcToqbAreZkG5b/images/tutorials/api-olusturucu-senaryolari/mock-api/06-spec-info.png?fit=max&auto=format&n=MXUcToqbAreZkG5b&q=85&s=d7638b5b6ccb2e124237353e06a27788" alt="Spec Bilgisi" width="800" data-path="images/tutorials/api-olusturucu-senaryolari/mock-api/06-spec-info.png" />

## 4. API Proxy Oluşturma

Mock API ekranından **API Proxy Oluştur (Create API Proxy)** butonuna tıklanarak anında API Proxy oluşturulabilir.

<img src="https://mintcdn.com/apinizer/MXUcToqbAreZkG5b/images/tutorials/api-olusturucu-senaryolari/mock-api/07-create-api-proxy.png?fit=max&auto=format&n=MXUcToqbAreZkG5b&q=85&s=fdfacb1497a0d74df8bbf15816b7a034" alt="API Proxy Oluştur" width="1000" data-path="images/tutorials/api-olusturucu-senaryolari/mock-api/07-create-api-proxy.png" />

API Proxy'i oluştururken aşağıdaki görselde bulunan girdi alanları doldurularak **Kaydet (Save)** butonuna tıklanır.

<img src="https://mintcdn.com/apinizer/MXUcToqbAreZkG5b/images/tutorials/api-olusturucu-senaryolari/mock-api/08-api-proxy-creation-form.png?fit=max&auto=format&n=MXUcToqbAreZkG5b&q=85&s=0f7fde1332b8156b7d740fb0767b2cb5" alt="API Proxy Oluşturma Formu" width="800" data-path="images/tutorials/api-olusturucu-senaryolari/mock-api/08-api-proxy-creation-form.png" />

### 4.1 API Proxy'yi Canlıya Alma

Employee API Proxy, tanımı yapılmış ortam (environment) üzerine hızlı bir şekilde yüklenip (deploy), istemcilerin tüketimine açılabilir.

Bu işlemin yönetimi API Proxy ekranındaki **Yükle (Deploy)** butonuyla açılan dialog üzerinden gerçekleştirilebilir.

<img src="https://mintcdn.com/apinizer/MXUcToqbAreZkG5b/images/tutorials/api-olusturucu-senaryolari/mock-api/09-deploy-dialog.png?fit=max&auto=format&n=MXUcToqbAreZkG5b&q=85&s=e5eb50230aedecf5f7328a32bc5b56d0" alt="Deploy Dialog" width="1000" data-path="images/tutorials/api-olusturucu-senaryolari/mock-api/09-deploy-dialog.png" />

Bu işlem, aynı şekilde Mock API ekranında **API Proxy'leri Yönet (Manage API Proxies)** linkinden yönetilebilir.

<img src="https://mintcdn.com/apinizer/MXUcToqbAreZkG5b/images/tutorials/api-olusturucu-senaryolari/mock-api/10-manage-api-proxies.png?fit=max&auto=format&n=MXUcToqbAreZkG5b&q=85&s=ac2953d0d41eff72624935580123090a" alt="API Proxy'leri Yönet" width="1000" data-path="images/tutorials/api-olusturucu-senaryolari/mock-api/10-manage-api-proxies.png" />

## 5. Test Etme

İlgili metodun koşul olarak beklediği parametreler isteğe eklemeden gönderildiğinde aşağıdaki tüm çalışanların listelendiği yanıtın gövdesi dönmektedir.

<img src="https://mintcdn.com/apinizer/MXUcToqbAreZkG5b/images/tutorials/api-olusturucu-senaryolari/mock-api/11-test-result-default.png?fit=max&auto=format&n=MXUcToqbAreZkG5b&q=85&s=e0529df9cd52dfee98791f50e5dbe762" alt="Varsayılan Yanıt Test Sonucu" width="800" data-path="images/tutorials/api-olusturucu-senaryolari/mock-api/11-test-result-default.png" />

İlgili metodun koşul olarak beklediği parametreler isteğe eklenip çalıştırıldığında aşağıdaki özelleştirilmiş yanıt dönmektedir.

<img src="https://mintcdn.com/apinizer/MXUcToqbAreZkG5b/images/tutorials/api-olusturucu-senaryolari/mock-api/12-test-result-conditional.png?fit=max&auto=format&n=MXUcToqbAreZkG5b&q=85&s=d2f6e7f83e2b6929e479cb028ee95096" alt="Koşullu Yanıt Test Sonucu" width="800" data-path="images/tutorials/api-olusturucu-senaryolari/mock-api/12-test-result-conditional.png" />
