Ana içeriğe geç

Proje Nedir?

Proje Kavramı​

Organizasyon

API Proxy'lerin mantıksal olarak gruplandırılması

Erişim Kontrolü

Proje bazlı kullanıcı ve rol yönetimi

İşbirliği

Ekip üyelerinin birlikte çalışması

İzolasyon

Projeler arası veri ve ayar izolasyonu

Proje Yapısı​

Aşağıdaki diyagram, projenin ne içerdiğini high-level olarak gösterir:

Proje ve Ortam İlişkisi​

Aşağıdaki diyagram, proje ve ortam kavramlarının ilişkisini gösterir:

Proje Özellikleri​

Proje İçeriği​

Bir proje şunları içerebilir:

  • API Proxy'ler: Projeye ait tüm API Proxy'ler
  • Politikalar: Projeye özel politika tanımları
  • Bağlantılar: Veritabanı, mesaj kuyruğu vb. bağlantılar
  • Konnektörler: Entegrasyon konnektörleri
  • Değişkenler: Proje seviyesinde değişkenler
  • Geçit Adresi (Relative Path): Proje içindeki tüm API Proxy'lerin geçit adreslerinin başlayacağı ön-ek. Örneğin, proje geçit adresi "account" olduğunda API proxy geçit adresi /account/proxy1 şeklinde görünür.
  • Ayarlar: Projeye özgü konfigürasyonlar
ipucu

Apinizer, ilk kurulumda bir Varsayılan (default) proje sağlar. Bu Varsayılan proje düzenlenemez veya silinemez.

Proje Yönetimi​

Proje Oluşturma

Yeni bir proje oluştururken şu bilgiler tanımlanır:

  • Proje Adı: Projeyi tanımlayan benzersiz isim
  • Geçit Adresi'ni Aktive Et: Proje içerisinde yer alan tüm geçit adreslerinde ortak bir ön-ek kullanılmak isteniyorsa aktif hale getirilir
  • Geçit Adresi (Relative Path): Projenin içinde tanımlanacak tüm API Proxy'lerin geçit adreslerinin başlayacağı ön-ek ifadesi. Sistem tarafından otomatik bir UUID verilir
  • Açıklama: Projenin amacı ve kapsamı
  • Üyeler: Projeye erişimi olan kullanıcılar ve rolleri
  • Görünürlük: Projenin görünürlük ayarları

Bir proje iki şekilde oluşturulabilir:

  • Yeni (Create): Yeni bir proje tanımlaması
  • Proje Yükle (Import Project): Mevcut bir proje konfigürasyon dosyası üzerinden proje yükleme
bilgi

Detaylı proje oluşturma ve yönetimi için Proje Yönetimi sayfasına bakabilirsiniz.

Proje Üyeleri ve Rolleri

Her projede farklı rollere sahip üyeler bulunabilir:

  • Project Owner: Projenin sahibi. Projeyi yönetme, düzenleme ve silme yetkisi. Eğer Project Owner rolüne sahip kullanıcı projeden silinirse, Admin kullanıcısı otomatik olarak Project Owner olur.
  • Proje Yöneticisi: Projeyi yönetme yetkisi
  • Geliştirici: API Proxy oluşturma ve düzenleme yetkisi
  • Görüntüleyici: Sadece görüntüleme yetkisi

Bu roller, proje bazlı erişim kontrolü sağlar.

Proje ve Ortam İlişkisi​

Projeler ve ortamlar farklı kavramlardır:

  • Proje: Mantıksal organizasyon birimi (hangi API'ler birlikte çalışır?)
  • Ortam: Fiziksel/kaynak birimi (API'ler nerede çalışır?)

Bir projedeki API Proxy'ler farklı ortamlara yüklenebilir:

Proje: E-Ticaret API'leri
├─ Development Ortamı
│ ├─ Product API v1.0
│ └─ Order API v1.0
├─ Test Ortamı
│ ├─ Product API v1.1
│ └─ Order API v1.1
├─ Sandbox Ortamı
│ ├─ Product API v1.2
│ └─ Order API v1.2
└─ Production Ortamı
├─ Product API v1.2
└─ Order API v1.2

Ortam oluştururken, ortamın hangi projelerde kullanılabileceği belirlenebilir. Eğer proje seçimi boş bırakılırsa, ortam tüm projelerde kullanılabilir. Proje seçilmesi durumunda sadece o proje içerisinde yer alan API Proxy'lerin bu ortama deploy edilebileceği anlamına gelir.

Proje Kullanım Senaryoları​

Ekip Bazlı Organizasyon

Farklı ekiplerin kendi projelerinde çalışması. Örneğin:

  • E-Ticaret Ekibi → E-Ticaret Projesi
  • Ödeme Ekibi → Ödeme Projesi
  • Raporlama Ekibi → Raporlama Projesi
Müşteri Bazlı Organizasyon

Farklı müşteriler için ayrı projeler. Örneğin:

  • Müşteri A → Müşteri A Projesi
  • Müşteri B → Müşteri B Projesi
Ürün Bazlı Organizasyon

Farklı ürünler için ayrı projeler. Örneğin:

  • Mobil Uygulama → Mobil API Projesi
  • Web Uygulama → Web API Projesi
Sürüm Bazlı Organizasyon

Farklı API versiyonları için ayrı projeler. Örneğin:

  • API v1 → API v1 Projesi
  • API v2 → API v2 Projesi

Proje İşlemleri​

Proje Export/Import​

Projeler export edilerek başka ortamlara veya sistemlere taşınabilir:

  • Export: Projenin tüm içeriğini JSON/YAML formatında dışa aktarma
  • Import: Dışa aktarılan projeyi başka bir ortama veya sisteme aktarma
  • Cross-Environment Migration: Projelerin farklı ortamlar arasında taşınması

Proje Şablonları​

Sık kullanılan proje yapılandırmaları şablon olarak kaydedilebilir ve yeni projeler oluştururken kullanılabilir.

Proje Silme​

Proje silme işlemi, Project Owner veya Sistem Yöneticisi rolüne sahip kullanıcılar tarafından gerçekleştirilebilir.

uyarı

Önemli: Bir projeyi sildiğiniz zaman o projeye ait olan tüm varlıklar (API Proxy'ler, Bağlantı Konfigürasyonları, Kimlik Bilgileri bilgileri vs) ve konfigürasyon bilgileri silinecektir. Bu işlem geri alınamaz.

bilgi

Varsayılan (default) proje silinemez veya düzenlenemez.

Sonraki Adımlar​