# Devoplus One nedir?

Devoplus One, bir kurumun çalışanlarının yapay zeka yardımıyla kendi küçük iş uygulamalarını yapıp **Devoplus
Portal'ın içinde** yayımlamasını sağlayan platformdur. Uygulama Portal'da bir menü öğesi olarak açılır; kullanıcı
ayrıca oturum açmaz, Devoplus hesabıyla zaten içeridedir.

Platform uygulamaya kurumsal servisleri hazır verir; uygulama bunları kendisi kurmaz:

| İhtiyaç | Devoplus One'da karşılığı |
|---|---|
| Kullanıcının kim olduğu, hangi portalda olduğu | Kimlik bağlamı; her istekle gelir (SDK `readContext`) |
| Kayıt tutmak (liste, form, durum) | Uygulamanın kendi veritabanı (`services.database`, varsayılan açık) + [veri modeli](/docs/data-model.md) ile hazır kayıt uçları |
| Excel, CSV, çıktı / PDF | [Rapor ve dışa aktarma](/docs/exports.md) |
| Dosya / fotoğraf saklamak | Dosya deposu (`services.files`) |
| Kısa süreli önbellek | Önbellek (`services.cache`) |
| Çalışanlar, departmanlar, yöneticiler, onay zinciri | Organizasyon şeması (yetki alanı `orgschema.read`) |
| E-posta, SMS, mobil bildirim | `sendMail`, `sendSms`, `sendPush`, `notify` (yetki alanları `mail.execute`, `sms.execute`, `push.execute`) |
| ERP'den veri okumak | DEXA okuma sorgusu (`dexa.read` + yöneticinin tanımladığı sorgu anahtarı) |
| ERP'ye veri yazmak | DEXA işlemi (`dexa.write` + izinli işlem anahtarı) |
| Uygulama içinde rol (ör. yalnız onaylayanlar) | Uygulama izinleri (`permissions`); Portal'ın Yetki Yönetimi'nden gruplara atanır |
| "Kim ne yaptı" kaydı | Denetim kaydı (`recordAudit`, yetki alanı `audit.write`) |
| Belli zamanlarda ya da arka planda çalışan iş | Zamanlanmış görev ve kuyruk (manifest `jobs`, `defineJobs`, `enqueue`; [ayrıntı](/docs/jobs.md)) |
| Hata ve olay izleme | Olay günlüğü (`logEvent`, `logError`) |

Ayrıntı: [SDK başvurusu](/docs/sdk.md), [manifest](/docs/manifest.md) ve [uygulama kuralları](/docs/app-rules.md).

## Nasıl çalışır (sade anlatım)

1. Kullanıcı Portal'da uygulamanın menü öğesini açar.
2. Portal uygulamayı bir çerçeve içinde gösterir ve uygulamaya yalnız o uygulama için üretilmiş, kısa ömürlü bir
   kimlik verir. Uygulama kullanıcının asıl oturumunu hiç görmez.
3. Uygulama kendi adresinde (`<kısa ad>-<portal anahtarı>.<ortam adresi>`) çalışır; her portal kurulumunun kendi
   veritabanı vardır. Bir portalın verisi başka bir portala karışmaz; uygulama kodu bunu düşünmek zorunda değildir.
4. Uygulama dış dünyaya yalnız Devoplus API'si üzerinden çıkar; başka adreslere istek reddedilir. Uygulama hiçbir
   sır ya da API anahtarı taşımaz.
5. Kod geliştiricinin makinesinden yayımlanmaz: Devoplus API'si onu uygulamanın deposuna yazar, güvenlik kapılarından
   geçer ve oradan yayımlanır ([yayın](/docs/publishing.md)).

## Ortamlar

| Ortam | Uygulama adresleri | Bu belgeler ve MCP | Devoplus API |
|---|---|---|---|
| test | `*.test-one.devoplus.dev` | `https://test-one.devoplus.dev` | `https://test-api.devoplus.dev/` |
| uat | `*.uat-one.devoplus.dev` | `https://uat-one.devoplus.dev` | `https://uat-api.devoplus.dev/` |
| canlı | `*.one.devoplus.com.tr` | `https://one.devoplus.com.tr` | `https://api.devoplus.com.tr/` |

Yeni bir uygulama önce test ortamında denenir; canlıya terfi sırası test, uat ve canlıdır.

## Kimin ne yaptığı

| Rol | Ne yapar |
|---|---|
| Uygulama sahibi (çoğu zaman teknik olmayan bir çalışan) | Ne istediğini anlatır, planı onaylar, sonucu dener |
| Yapay zeka ajanı (siz) | Soruları sorar, planlar, kodu yazar, gereken izinleri **erişim talebiyle** ister |
| Şirket yöneticisi | Kendi portalında yeni uygulama kaydını (ek izinleriyle), kurulumu, sorgu izinlerini ve izin atamalarını onaylar (Devoplus Console). Uygulamanın ana portalının şirket yöneticisi kayıttan sonra uygulama izni ekler ve sahibi değiştirir |
| Platform yöneticisi | Yetki alanı (scope) taleplerini onaylar; ana portalı belirlenemeyen uygulamalarda izin ekleme ve sahip değişikliğini o yapar |

İzin ve kurulum işleri için kullanıcıya teknik adım anlatmayın; ajan talebi kendisi gönderir
([erişim talebi](/docs/access-requests.md)) ve kullanıcıya sade dille "yöneticinizin onayı bekleniyor" der.

## Başlarken

Önce [keşif görüşmesi](/docs/discovery.md), sonra [başlangıç](/docs/getting-started.md). Bu sürümün sınırları:
[sınırlar](/docs/limits.md).
