Ücretsiz Açık Kaynak API Maketleme CLI Araçları

Altı ücretsiz, açık kaynaklı, API taklit etme amaçlı CLI aracı, lisans ve kendi kendine barındırma özelliklerine göre sıralanmıştır: Prism, Mockoon CLI, json-server, WireMock, MockServer ve Microcks.

INEZA Felin-Michel

INEZA Felin-Michel

10 July 2026

Ücretsiz Açık Kaynak API Maketleme CLI Araçları

Kurumsal İçin Apidog

Şirket İçi (On-Premises) Dağıtım

SSO ve RBAC

SOC 2 Uyumlu

Apidog Enterprise'ı Keşfedin

Komut satırından bir API'yi taklit ettiğinizde (mock'ladığınızda), lisans özellik listesi kadar önemlidir. Kaynak kodunu okuyabileceğiniz, kendi kendine barındırabileceğiniz ve koltuk sayısı sınırlaması olmadan CI'da çalıştırabileceğiniz bir sahte sunucu (mock server), bir giriş ekranının arkasındaki barındırılan bir SaaS sahte sunucusundan çok farklıdır. Bu kılavuz, açık kaynak tarafını kapsar: ücretsiz olarak klonlayabileceğiniz, inceleyebileceğiniz ve çalıştırabileceğiniz araçlar.

Buradaki her araç, hoşgörülü bir lisans (MIT veya Apache-2.0) altında kaynak kodu mevcut olup, halka açık bir GitHub deposunda bulunur ve hesap gerektirmeden kendi kendine barındırılabilir. Filtre budur. Başlangıç hızı ve kurulum boyutuna göre sıralanmış daha küçük, tek ikili dosyalı seçenekleri istiyorsanız, bunun yerine ilgili hafif sahte sunucu seçenekleri makalesini okuyun; bu liste kaynak kodu ve kendi kendine barındırma hakkındadır, bu nedenle daha ağır, kendi kendine barındırılabilir bir platform yine de bir yer edinebilir.

Her araç için lisansını, çalıştığını kanıtlayan tek bir kurulum ve çalıştırma komutunu, en iyi yaptığı şeyi ve nerede yetersiz kaldığını bulacaksınız. Ticari seçenekleri de içeren daha geniş bir alanı istiyorsanız, en iyi API sahte araçları derlemesi ve REST API sahte araçlarına genel bakış makaleleri daha kapsamlıdır.

Listeye geçmeden önce hızlı, dürüst bir not. Apidog açık kaynaklı değildir; freemium ticari bir platformdur. Bu araçlara entegre bir alternatif olarak, açıkça belirtilmiş bir şekilde, açık kaynak bir giriş olarak değil, listenin sonunda bir kez yer almaktadır. Aşağıdaki numaralı bölümlerdeki her şey gerçekten açık kaynaktır.

button

Bir CLI sahte aracını açık kaynak yapan nedir?

Bir aracın bu listede yer alıp almayacağını üç şey belirler.

Lisans. Kaynak kodu hoşgörülü bir lisans altında halka açık olmalıdır. Buradaki her seçenek MIT veya Apache-2.0'dır, böylece okuyabilir, çatallayabilir ve lisans ücreti veya koltuk sayısı olmadan kendi ürününüzde gönderebilirsiniz.

Kendi kendine barındırılabilir. Dizüstü bilgisayarınızda, bir kapsayıcıda veya kendi sunucunuzda çalıştırırsınız. Barındırılan bir kontrol düzlemi yok, eve telefon yok, hesap kapısı yok. Bir sahte sunucunun hava boşluklu bir CI çalıştırıcısında kullanılabilir kalmasını sağlayan şey budur.

Açıkça sürdürülüyor. Gerçek bir commit geçmişi, sorunlar ve sürümleri olan halka açık bir GitHub deposu. Yıldızlar kaba bir sinyaldir; yeni commit'ler ve etiketli sürümler daha iyi sinyallerdir.

Listede neyin olmadığına dikkat edin: ham hız veya kurulum boyutu. Bunlar hafif açının konusu. Burada büyük, kapsayıcı tabanlı, kendi kendine barındırılabilir bir platform, kaynak kodu açık ve lisansı ücretsiz olduğu sürece kabul edilebilir.

Prism (Stoplight)

Prism, bir OpenAPI veya Postman dosyasını canlı bir sahte sunucuya dönüştürür. Bir spesifikasyona işaret ettiğinizde örnek yanıtlar sunar, gelen istekleri şemaya göre doğrular ve gerçek bir API'nin önünde bir doğrulama proxy'si olarak çalışabilir. Lisans: Apache-2.0. Depo: stoplightio/prism.

npm install -g @stoplight/prism-cli
prism mock https://raw.githubusercontent.com/stoplightio/prism/master/examples/petstore.oas2.yaml

Bu komut, tamamen spesifikasyon tarafından yönlendirilen http://127.0.0.1:4010 adresinde bir taklidi başlatır. GET /pets, OpenAPI belgenizdeki örneği döndürür; hatalı bir yük gönderirseniz Prism, şemanın hangi kısmını ihlal ettiğinizi size söyler.

En iyi olduğu alan: OpenAPI dosyasının doğruluk kaynağı olduğu spesifikasyon odaklı sözleşme taklidi. Doğrulama proxy modu öne çıkıyor; spesifikasyonunuz ile gerçek API'niz arasındaki farklılıkları yakalar.

Sınırlamalar: yanıtlar örneklerinizden ve şemanızdan gelir, bu nedenle taklitler yalnızca spesifikasyon kadar zengindir. Yerleşik durumlu davranış yoktur (yani "oluştur ve sonra geri oku" yok). Bir Node aracıdır, bu nedenle bir Node çalışma zamanına ihtiyacınız vardır.

Mockoon CLI

Mockoon en çok masaüstü uygulamasıyla tanınır, ancak CLI, CI ve kendi kendine barındırma için tasarlanmış, aynı motoru GUI olmadan sunar. Bir ortam tasarlarsınız (uygulamada veya elle) veya ona bir OpenAPI dosyası verirsiniz ve o taklidi sunar. Lisans: MIT. Depo: mockoon/mockoon.

npm install -g @mockoon/cli
mockoon-cli start --data ./environment.json --port 3000

Ayrıca --data ./openapi.yaml ile doğrudan bir OpenAPI dosyasından da başlatabilirsiniz. Dosya değişikliklerinde yeniden yüklemek için --watch ve tam istek/yanıt günlüklerini yazdırmak için --log-transaction ekleyin.

En iyi olduğu alan: kod yazmadan zengin, kural tabanlı yanıtlar. Mockoon, yanıt şablonlamayı, koşullu kuralları ve proxy modunu destekler, böylece tek bir uç nokta isteğe bağlı olarak farklı gövdeler döndürebilir. Uygulamada görsel olarak tasarım yapmak ve CLI aracılığıyla başsız çalıştırmak temiz bir ayrımdır.

Sınırlamalar: en iyi yazma yolu masaüstü uygulamasıdır, bu nedenle ortam JSON'unu elle düzenlemek zordur. Dinamik şablonlama sözdiziminin kendine özgü bir öğrenme eğrisi vardır.

json-server

json-server, bir REST API'yi taklit etmenin en hızlı yoludur. Ona bir JSON dosyası verirsiniz ve bu dosyaya gerçek kalıcılıkla tam CRUD rotaları (GET, POST, PUT, PATCH, DELETE) oluşturur. Lisans: MIT. Depo: typicode/json-server.

npx json-server db.json

En üst düzey bir "posts" dizisine sahip bir db.json ile hemen GET /posts, GET /posts/1, POST /posts ve diğerlerini, ayrıca sorgu parametreleri aracılığıyla filtreleme, sıralama ve sayfalama elde edersiniz. Yeni bir kaydı POST ederseniz dosyaya yazılır; geri okuduğunuzda orada olur.

En iyi olduğu alan: arka uç henüz mevcut değilken ön uç geliştirme. Kutudan çıktığı gibi durum bilgisi vardır, ki Prism ve çoğu spesifikasyon odaklı taklitte bu yoktur. Sıfır yapılandırma ve npx, onu yüklemenize bile gerek kalmadığı anlamına gelir.

Sınırlamalar: REST şekli konusunda görüşleri sabittir, bu nedenle rastgele özel bir API ile eşleşmeyebilir. OpenAPI içe aktarımı yok; JSON dosyası sözleşmedir. Yük testi veya üretime benzer davranışlar için tasarlanmamıştır.

WireMock

WireMock, ayda milyonlarca indirme ile açık kaynak HTTP taklitinin ağır sikletidir. Bir JSON yönetici API'si veya JSON taslak dosyaları aracılığıyla yapılandırılan bağımsız bir işlem olarak çalışır ve istek eşleştirmeyi, yanıt şablonlamayı, durumlu senaryoları, hata enjeksiyonunu ve kaydet-ve-oynatmayı yönetir. Lisans: Apache-2.0. Depo: wiremock/wiremock.

docker run -it --rm -p 8080:8080 wiremock/wiremock:latest
curl -X POST http://localhost:8080/__admin/mappings \
  -H 'Content-Type: application/json' \
  -d '{"request":{"method":"GET","url":"/hello"},"response":{"status":200,"body":"world"}}'

İlk satır WireMock'ı başlatır; ikincisi, yönetici API'si üzerinden bir taslağı kaydeder. Şimdi curl http://localhost:8080/hello "world" döndürür. Ayrıca mappings/ dizinine taslak dosyaları bırakıp kapsayıcıya bağlayabilirsiniz.

En iyi olduğu alan: karmaşık test senaryoları. Durumlu davranış, arızalı bir üçüncü tarafı simüle etmek için gecikmeler ve hatalar ve gerçek bir API'yi yakalamak ve daha sonra oynatmak için proxy-artı-kayıt. Bu, taklidinizin test altındaki gerçek şey gibi davranması gerektiğinde kullanacağınız araçtır.

Sınırlamalar: bir JVM aracıdır, bu nedenle kapsayıcı veya bir Java çalışma zamanı giriş fiyatıdır. Yapılandırma yüzeyi büyüktür; basit taklitler aşırıya kaçmış gibi hissettirir. Prism'in sahip olduğu gibi tek bir "bir spesifikasyonu oku ve git" komutu yoktur.

MockServer

MockServer, entegrasyon testlerini hedefleyen, tek bir port üzerinde bir HTTP(S) taklidi ve proxy'sidir. API'leri taklit eder, canlı trafiği proxy yapabilir ve kaydedebilir ve istemcinizin bunları nasıl işlediğini test etmek için hatalar enjekte etmenizi sağlar. Son sürümleri HTTP/2, gRPC ve WebSocket desteği ekler. Lisans: Apache-2.0. Depo: mock-server/mockserver.

docker run -d --rm -p 1080:1080 mockserver/mockserver
curl -X PUT 'http://localhost:1080/mockserver/expectation' \
  -H 'Content-Type: application/json' \
  -d '{"httpRequest":{"path":"/order"},"httpResponse":{"body":"{\"status\":\"ok\"}"}}'

PUT bir "beklenti" kaydeder; bundan sonra curl http://localhost:1080/order JSON'ınızı döndürür. MockServer'ın istemcileri (Java, JavaScript, Ruby ve diğerleri), aynı beklentileri curl üzerinden değil, test kodunuzun içinden ayarlamanıza olanak tanır.

En iyi olduğu alan: aynı yerde taklit etme ve proxy yapma, ayrıca hata enjeksiyonu. Belirli bir isteğin belirli sayıda yapıldığını doğrulamanız gerekiyorsa, MockServer'ın doğrulama API'si bunun için tasarlanmıştır. JVM ağırlıklı yığınlar için iyi bir uyum. Eğer tam olarak doğru şekilde değilse, MockServer alternatifleri yazımıza bakın.

Sınırlamalar: WireMock gibi, JVM tabanlıdır ve beklenti JSON'u çok uzundur. WireMock ile örtüşmesi gerçektir; test yığınınız için hangi istemci kütüphanesinin uygun olduğuna göre birini seçin.

Microcks

Microcks platform seçeneğidir ve bir Cloud Native Computing Foundation (CNCF) kuluçka projesidir. OpenAPI, AsyncAPI, gRPC, GraphQL, Postman koleksiyonlarını ve SoapUI projelerini canlı taklitlere dönüştürür ve bu aynı sözleşmeleri, gerçek uygulamanıza karşı uyumluluk testleri çalıştırmak için yeniden kullanır. Yalnızca HTTP değil, olay odaklı ve asenkron protokolleri de kapsar. Lisans: Apache-2.0. Depo: microcks/microcks.

docker run -d --name microcks -p 8585:8080 quay.io/microcks/microcks-uber:latest

Bu, hepsi bir arada görüntüyü çalıştırır; http://localhost:8585 adresini açın ve taklit uç noktaları almak için bir spesifikasyon içe aktarın. Yanındaki microcks-cli, çalışan bir sunucuyu CI'dan çalıştırır:

microcks-cli import 'petstore.yaml:true' \
  --microcksURL=http://localhost:8585/api \
  --keycloakClientId=... --keycloakClientSecret=...

En iyi olduğu alan: birçok API ve protokolde yönetilen tek bir taklit kataloğu isteyen, yerleşik sözleşme testleri olan ekipler. Asenkron/olay odaklı taklit (Kafka, MQTT ve benzerleri) bu alanda nadirdir.

Sınırlamalar: bu bir sunucudur, tek bir ikili dosya değil. Önemli bir uyarı: microcks-cli, çalışan bir Microcks örneğine karşı testleri ve yapıtları içe aktarır; kendi başına taklit sunmaz. Yani CLI bir istemcidir ve yine de platformu çalıştırmanız gerekir. Tek seferlik yerel bir taklit için bu, Prism veya json-server'dan daha ağırdır.

Dürüst bir parantez: Apidog

Apidog açık kaynaklı değildir, bu yüzden burada numaralı bir yeri yoktur. Ancak yukarıdaki araçların farklı parçaları (spesifikasyon odaklı taklitler, durumlu CRUD, sözleşme testi) çözdüğünü ve bunları bir araya getirmek istemediğinizi fark ettiyseniz, bahsetmeye değer. Apidog, ücretsiz katmanı taklit etmeyi içeren freemium bir platformdur ve apidog-cli'deki apidog mock, terminalden tasarım, test ve dokümanlarla birlikte tek bir projede taklit beklentilerini yönetmenizi sağlar. Akıllı taklit, şemanızdan otomatik olarak gerçekçi alan değerleri oluşturur, böylece örnek gövdeleri elle yazmak zorunda kalmazsınız.

Dezavantajı açık: açık kaynak ve kendi kendine barındırma yerine entegre bir iş akışı ve ücretsiz katman elde edersiniz. Eğer açık kaynak veya hava boşluklu kendi kendine barındırma katı bir gereksinimse, yukarıdaki altı araçtan biri sizin cevabınızdır. Eğer entegre bir tasarım-taklit döngüsü daha önemliyse, Apidog, birkaç aracı bir araya getirmeye bir alternatiftir.

Nasıl Seçilir

Araç En İyisi Kurulum Lisans Notlar
Prism Spesifikasyon odaklı taklitler + doğrulama proxy'si npm i -g @stoplight/prism-cli Apache-2.0 OpenAPI/Postman girdi, taklit çıktı; durum bilgisi yok
Mockoon CLI Kural tabanlı yanıtlar, kodsuz npm i -g @mockoon/cli MIT Uygulamada tasarla, başsız çalıştır
json-server Ön uç için durum bilgili sahte REST npx json-server db.json MIT Kalıcılıkla tam CRUD, sıfır yapılandırma
WireMock Karmaşık test senaryoları, hatalar docker run wiremock/wiremock Apache-2.0 JVM; kaydet-ve-oynat; durum bilgili
MockServer Taklit + proxy + doğrulama docker run mockserver/mockserver Apache-2.0 JVM; HTTP/2, gRPC, WebSocket
Microcks Yönetilen çoklu API/protokol kataloğu docker run microcks-uber Apache-2.0 CNCF platformu; CLI bir istemci, sunucu değil
Apidog (OSS değil) Entegre tasarım-taklit npm i -g apidog-cli Freemium Ücretsiz katman; tek projede apidog mock

Popülerliğe göre değil, şekle göre seçin. OpenAPI dosyanızı okuyan ve uygulayan bir taklit için Prism ile başlayın. Arka uç gelmeden önce durum bilgili CRUD için json-server hız konusunda kazanır. Hatalı ve kaydet-ve-oynat özellikli zengin test senaryoları için WireMock veya MockServer; istemci kütüphanesine göre seçin. Sözleşme testi ile paylaşımlı, çok protokollü bir katalog için Microcks. Hangi şeklin hangi duruma uyduğunu öğrenmek için API taklit kullanım durumları kılavuzu araçları senaryolarla eşleştirir.

Özet

Açık kaynak CLI sahte araçları, ücretsiz olarak okuyabileceğiniz, kendi kendine barındırabileceğiniz ve CI'da çalıştırabileceğiniz bir sahte sunucu sunar. Prism ve json-server, yaygın durumları tek bir komutla kapsar; WireMock ve MockServer, zorlu test senaryolarını ele alır; Microcks, bunu protokoller arası yönetilen bir kataloğa ölçeklendirir. Altısı da MIT veya Apache-2.0 lisanslı, hepsi kendi kendine barındırılabilir, hepsi halka açık GitHub'dadır.

Eğer API tasarımınızın, testlerinizin ve belgelerinizin yanında taklitleri ayrı araçları birbirine bağlamadan yönetmek isterseniz, Apidog'u indirin ve ücretsiz katmanda apidog mock'u deneyin. Açık kaynak değildir, ancak komut satırından CI'ya kadar tüm döngüyü çalıştırmak için tek bir yerdir.

API Tasarım-Öncelikli Yaklaşımı Apidog'da Uygulayın

API'leri oluşturmanın ve kullanmanın daha kolay yolunu keşfedin