Veri yerleşimi (AB / Türkiye bölgeleri)
Pushizo her veri bölgesini ayrı bir hücre olarak çalıştırır: AB (Frankfurt) ve Türkiye (İstanbul) hücrelerinin kendi veritabanı, kuyruk, analitik deposu ve dosya depolaması vardır. Bir organizasyonun abonelik,…
Pushizo her veri bölgesini ayrı bir hücre olarak çalıştırır: AB (Frankfurt) ve Türkiye (İstanbul) hücrelerinin
kendi veritabanı, kuyruk, analitik deposu ve dosya depolaması vardır. Bir organizasyonun abonelik, kullanıcı, olay,
mesaj ve dosya verisi yalnızca seçtiği bölgede işlenir ve saklanır (KVKK / GDPR). Kararlar:
docs/adr/0032-hucre-mimarisi-white-label-bayi.md.
Organizasyon oluştururken bölge seçimi
Panelde Yeni organizasyon formunda Veri bölgesi seçilir. Bölge sonradan panelden değiştirilemez; taşıma destek ekibinin yaptığı, doğrulamalı bir işlemdir (aşağıya bakın).
API ile (oturumlu dashboard API'si):
GET /internal/v1/cells
→ { "enabled": true, "current_cell_id": "eu", "control_plane": true,
"cells": [{ "id": "eu", "name": "Avrupa (Frankfurt)", "api_url": "https://api.eu…", "dashboard_url": "https://app.eu…" }, …] }
POST /internal/v1/orgs
{ "name": "Acme", "region": "tr" }
→ 201 { "id": "org_…", "region": "tr", … }
```text
Tek bölgeli kurulumlarda `enabled: false` döner ve `region` verilmez.
## Bölgeler arasında geçiş (panel)
Hesabınız tüm bölgelerde aynıdır. `GET /internal/v1/cells/orgs` tüm bölgelerdeki organizasyonlarınızı listeler; başka
bölgedeki bir organizasyona geçerken panel `POST /internal/v1/cells/handoff` ile 60 saniye geçerli, tek kullanımlık bir
oturum devri bağlantısı alır ve sizi o bölgenin paneline (`/handoff`) yönlendirir. Başka bölgede kayıtlı bir hesapla
yanlış bölgenin girişini kullanırsanız giriş `421 HS_WRONG_CELL` ve doğru panel adresiyle yanıt verir.
## SDK'lar ve sunucu API'si: bölgesel adres
Her bölgenin kendi API adresi vardır (ör. `https://api.eu.pushizo.com`, `https://api.tr.pushizo.com`).
- **Web, Android, iOS SDK'ları** app yapılandırmasından (`GET /sdk/v1/apps/:appId/config` → `api_url`, `cell_id`)
bölgesel adresi öğrenir ve sonraki isteklerde onu kullanır. `init` sırasında kendi alan adınızı/vekil sunucunuzu
`apiUrl` ile verdiyseniz o adres korunur.
- Yanlış bölgeye giden her istek işlenmeden **`421 HS_WRONG_CELL`** döner; `error.details` içinde `cell_id`, `api_url`
ve `dashboard_url` bulunur. Veri hiçbir zaman yanlış bölgeye yazılmaz.
- **Sunucu SDK'ları ve REST API**: istemciyi org'unuzun bölgesel adresiyle yapılandırın:
```ts
import { Pushizo } from '@pushizo/node';
const hs = new Pushizo({ apiKey: process.env.PUSHIZO_API_KEY!, baseUrl: 'https://api.tr.pushizo.com' });
```text
421 yanıtı alırsanız `details.api_url`'i yapılandırmanıza kalıcı olarak yazın.
## Bölge taşıma
Taşıma, destek ekibi tarafından bakım penceresinde yapılır: organizasyon kısa süre salt okunur (askıda) olur, tüm
veritabanı kayıtları, analitik verisi ve dosyalar (logo, dışa aktarımlar) hedef bölgeye kopyalanıp satır sayısı ve
sağlama toplamlarıyla doğrulanır; doğrulama başarısızsa hiçbir şey değişmez. Kaynak bölgedeki kopya, ayrı bir adımda
hedef doğrulandıktan sonra silinir. Taşıma sonrası:
- SDK'lar yeni bölge adresine 421 yanıtıyla geçer; sunucu entegrasyonlarınızın `baseUrl`'ini güncelleyin.
- Özel alan adı kullanıyorsanız CNAME kaydını yeni bölgenin hedefine güncelleyin (bkz. [White-label](/docs/security/white-label)).
- Geçici sayaçlar (hız sınırı pencereleri gibi) sıfırlanır.
Operasyon adımları: `docs/runbooks/cells.md`.
## Sık sorulanlar
- **Hangi veriler bölgede kalır?** Organizasyon, app, abone, kullanıcı, olay, mesaj, teslimat, şablon, kampanya,
denetim kaydı, dosyalar ve analitik. Bölgeler arasında yalnızca hesap kimliği (e-posta, ad) ve organizasyon → bölge
eşlemesi (ad, kısa ad) paylaşılır.
- **Bölgeler arası trafik nasıl korunur?** Hücreler yalnızca birbirinin API'sine, paylaşılan gizli anahtarla imzalı,
zaman damgalı ve tek kullanımlık isteklerle erişir; birbirinin veri katmanına ağ erişimi yoktur.KVKK ve GDPR uyumu
Roller (veri sorumlusu/işleyen), hesap sahibi hakları (veri indirme, hesap silme, pazarlama izni), son kullanıcı hakları, kayıt onayı ve sözleşme sürümü, saklama, alt işleyiciler, DPA ve veri yerleşimi.
Kurumsal SSO (SAML 2.0 / OpenID Connect)
Pushizo paneline girişi kimlik sağlayıcınıza (Okta, Microsoft Entra ID, Google Workspace, Keycloak, OneLogin…) bağlayın. SSO Enterprise planındadır. Kararlar: ADR-0023.