Dokümanlar/API ve Webhook'lar/Kurum ve Kullanıcılar

Kurum ve Kullanıcılar

Kurum kaynağı hesabınızla ilgili meta veriyi döner. Kullanıcı kaynağı, eğitimi tüketen geliştiricileri listelemenize, getirmenize, davet etmenize, güncellemenize ve deaktive etmenize olanak verir. Tüm uç noktalar /api/public/v1 altındadır.

Uç noktalar

MethodPathKapsamAmaç
GET/orgorg:readÇağıran kurumun meta verisi.
GET/usersusers:readKurumdaki kullanıcıları listeler.
GET/users/{'{'}id{'}'}users:readİlerleme toplamları dahil tek bir kullanıcı.
POST/usersusers:writeBir kullanıcı davet eder. Davet e-postası gönderir.
PATCH/users/{'{'}id{'}'}users:writeAd, e-posta, rol veya ekip üyeliğini günceller.
DELETE/users/{'{'}id{'}'}users:writeBir kullanıcıyı deaktive eder. Kalıcı silme yapmaz.

Kurumu al

API anahtarına bağlı kurum için plan, koltuk üst sınırı, slug, alan adı ve deneme durumunu döner.

GET /api/public/v1/org
Authorization: Bearer scs_live_…

Yanıt

{
  "id": "9c2f4b8e-0c1d-4a52-b6f3-1ed7b0a4c9f1",
  "name": "Acme Corp",
  "slug": "acme",
  "domain": "acme.com",
  "plan": "growth",
  "maxSeats": 250,
  "trialExpiresAt": null,
  "isActive": true,
  "createdAt": "2025-08-12T09:14:22Z"
}

Örnek

curl -sS -H "Authorization: Bearer $SCH_API_KEY" \
  https://api.limeplate.com/api/public/v1/org

Kullanıcıları listele

Kurumdaki her kullanıcıyı (aktif veya deaktive) döner. Liste sayfalanmamıştır; planınıza bağlı olarak birkaç bine kadar girdi bekleyin.

GET /api/public/v1/users
Authorization: Bearer scs_live_…

Yanıt

[
  {
    "id": "b1a4d7c2-9e58-4f3a-83cd-2c6f1a90e7b4",
    "name": "Jane Smith",
    "email": "jane.smith@acme.com",
    "role": "learner",
    "teamId": "4f8d3e2a-71cb-4d09-9ad7-5b8c7e1f0a32",
    "teamName": "Payments",
    "isActive": true,
    "lastLoginAt": "2026-05-27T16:42:11Z",
    "createdAt": "2026-02-04T11:08:00Z"
  }
]

Örnek

curl -sS -H "Authorization: Bearer $SCH_API_KEY" \
  https://api.limeplate.com/api/public/v1/users

Kullanıcı al

Liste girdisindeki alanlara ek olarak toplam XP, tamamlanan zorluklar, tamamlanan senaryolar ve konu başına ilerleme dizileri döner. Tek bir geliştiricinin tam eğitim geçmişine ihtiyacınız olduğunda bunu kullanın.

GET /api/public/v1/users/{userId}
Authorization: Bearer scs_live_…

Yanıt

{
  "id": "b1a4d7c2-9e58-4f3a-83cd-2c6f1a90e7b4",
  "name": "Jane Smith",
  "email": "jane.smith@acme.com",
  "role": "member",
  "teamId": "4f8d3e2a-71cb-4d09-9ad7-5b8c7e1f0a32",
  "teamName": "Payments",
  "isActive": true,
  "lastLoginAt": "2026-05-27T16:42:11Z",
  "createdAt": "2026-02-04T11:08:00Z",
  "totalXp": 4280,
  "completedChallenges": 38,
  "completedScenarios": 4,
  "practiceProgress": [],
  "learnProgress": []
}

Örnek

curl -sS -H "Authorization: Bearer $SCH_API_KEY" \
  https://api.limeplate.com/api/public/v1/users/b1a4d7c2-9e58-4f3a-83cd-2c6f1a90e7b4

Kullanıcı oluştur

Kullanıcı kaydını oluşturur ve verilen adrese davet e-postası gönderir. email üzerinde idempotent: aynı e-postayı tekrar POST etmek tekrar oluşturmak yerine hata döner. Bunu SCIM proxy'nizden, HRIS senkronizasyonunuzdan veya işe alım script'inizden kullanın.

POST /api/public/v1/users
Authorization: Bearer scs_live_…
Content-Type: application/json

İstek gövdesi

AlanTürZorunluAnlam
namestringevetGösterge panellerinde ve atama e-postalarında görünen görünen ad.
emailstringevetOturum açma tanımlayıcısı. Davet e-postasını alır.
rolestringevetlearner (varsayılan) veya org_admin. Başka herhangi bir değer learner'a zorlanır.
teamIduuidhayırKullanıcıyı oluşturma sırasında bir ekibe yerleştirir. Atanmamış bırakmak için boş bırakın.

Yanıt

{
  "id": "b1a4d7c2-9e58-4f3a-83cd-2c6f1a90e7b4",
  "name": "Jane Smith",
  "email": "jane.smith@acme.com",
  "role": "learner",
  "teamId": "4f8d3e2a-71cb-4d09-9ad7-5b8c7e1f0a32",
  "teamName": "Payments",
  "isActive": true,
  "lastLoginAt": null,
  "createdAt": "2026-05-29T09:22:14Z"
}

Örnek

curl -sS -X POST \
  -H "Authorization: Bearer $SCH_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Jane Smith",
    "email": "jane.smith@acme.com",
    "role": "learner",
    "teamId": "4f8d3e2a-71cb-4d09-9ad7-5b8c7e1f0a32"
  }' \
  https://api.limeplate.com/api/public/v1/users

Kullanıcıyı güncelle

Gövdedeki tüm alanlar yazılır. Bir kullanıcıyı bir ekipten çıkarmak için teamId: null gönderin. E-posta adresini değiştirmek davet e-postasını yeniden göndermez.

PATCH /api/public/v1/users/{userId}
Authorization: Bearer scs_live_…
Content-Type: application/json

İstek gövdesi

Dört alanın da gönderilmesi gerekir. Bir alanı değiştirmemek için mevcut değerini gönderin — bu uç noktada kısmi PATCH semantiği yoktur.

AlanTürZorunluAnlam
namestringevetGörünen ad.
emailstringevetOturum açma tanımlayıcısı.
rolestringevetlearner veya org_admin.
teamIduuid veya nullevetEkip id'si veya ayırmak için null.

Yanıt

{
  "id": "b1a4d7c2-9e58-4f3a-83cd-2c6f1a90e7b4",
  "name": "Jane Smith",
  "email": "jane.smith@acme.com",
  "role": "org_admin",
  "teamId": "4f8d3e2a-71cb-4d09-9ad7-5b8c7e1f0a32",
  "teamName": "Payments",
  "isActive": true,
  "lastLoginAt": "2026-05-27T16:42:11Z",
  "createdAt": "2026-02-04T11:08:00Z"
}

Örnek

curl -sS -X PATCH \
  -H "Authorization: Bearer $SCH_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Jane Smith",
    "email": "jane.smith@acme.com",
    "role": "org_admin",
    "teamId": "4f8d3e2a-71cb-4d09-9ad7-5b8c7e1f0a32"
  }' \
  https://api.limeplate.com/api/public/v1/users/b1a4d7c2-9e58-4f3a-83cd-2c6f1a90e7b4

Kullanıcıyı deaktive et

isActive alanını false yapar. Kayıt yerinde kalır: tamamlanan zorluklar, senaryolar, XP ve geçmiş atamalar denetim ve raporlamanın çalışmaya devam etmesi için korunur. Kullanıcı artık oturum açamaz ve SARIF veya POST /assignments aracılığıyla üzerine yeni atama oluşturulmaz. Kalıcı silme uç noktası yoktur; veri silme talepleri gizlilik ekibi üzerinden ilerler.

DELETE /api/public/v1/users/{userId}
Authorization: Bearer scs_live_…

Yanıt

{
  "message": "User deactivated"
}

Örnek

curl -sS -X DELETE \
  -H "Authorization: Bearer $SCH_API_KEY" \
  https://api.limeplate.com/api/public/v1/users/b1a4d7c2-9e58-4f3a-83cd-2c6f1a90e7b4