Skip to content

Alıcı Portalı

Alıcı portalı, badges.ninja/me adresinde yer alan, rozet verilen herkesin oturum açabildiği (hesap gerekmez), badges.ninja üzerinden aldığı her kimlik bilgisine göz atabildiği ve bunları paylaşmak için kamuya açık bir profil hazırlayabildiği bir self servis alanıdır.

Düzenleyici kontrol panelinden ayrı bir deneyimdir:

İzleyiciURLKimlik doğrulama
Düzenleyici (rozet veren biri)/dashboardGerçek hesap (e-posta + parola / SSO)
Alıcı (rozet kazanan biri)/meE-posta ile sihirli bağlantı — hesap yok, parola yok
Herkes (doğrulayıcılar)/awards/<guid>, /verify/<guid>, /u/<handle>Yok — tamamen kamuya açık

Neden parola yok?

Alıcıların kendilerine verilen rozetlere bakmak için bir giriş daha hatırlamaları gerekmesin istiyoruz. Bunun yerine onlara tek kullanımlık bir bağlantı e-postayla gönderiyoruz.

Alıcılar nasıl oturum açar

1. E-postanızı girin

badges.ninja/me adresini ziyaret edin. Sayfa tek bir e-posta alanı gösterir:

Recipient portal sign-in form

Rozetleri alan e-posta adresini girin ve Send me a sign-in link düğmesine tıklayın.

O adres için ödül olup olmadığından bağımsız olarak "gelen kutunuzu kontrol edin" mesajıyla yanıt veririz. Böylece belirli bir e-postanın platformdaki herhangi bir düzenleyiciden rozet alıp almadığı sızdırılmaz.

2. Sihirli bağlantıyı açın

Adrese ait ödüller varsa "Sign in to your Badges Ninja portal" başlıklı ve tek düğmeli bir e-posta alırsınız:

Open my portal

Bağlantı 24 saat geçerlidir ve yalnızca bir kez çalışır. Tıklamadan önce süresi dolarsa yenisini isteyin — ceza yoktur.

3. Giriş yaptınız

Bağlantıya tıklamak badges.ninja/me?token=… sayfasını açar. Sayfa, tokenı 1 saatlik bir oturum tokenıyla değiştirir (yalnızca tarayıcınızın sessionStorage alanında, çerezde asla saklanmaz) ve sizi rozet duvarına yönlendirir. Oturum, sekmeyi kapattığınızda ya da bir saatlik etkinlikten sonra -hangisi önce olursa- sona erer.

Rozet duvarı

Oturum açıldığında portal şunları gösterir:

  • En üstte handle'ınız (ör. badges.ninja/u/jane-3a4f) — e-postanızın yerel kısmından türetilip benzersizlik için 4 rastgele karakter eklenmiş bir öneri. Daha güzel bir şey seçmek için Change düğmesine tıklayın.
  • badges.ninja aracılığıyla e-postanıza verilen her rozetin yeniler önce sıralanmış, karta göre görsel olarak gruplanmış bir ızgarası.
  • Kart başına eylemler:
    • Open — kamuya açık ödül sayfasına gidin (düzenleyicilerin/doğrulayıcıların gördüğü aynı sayfa).
    • Hide from profile / Show on profile — bu rozetin kamuya açık profilinizde (/u/<handle>) görünüp görünmeyeceğini değiştirin. Ödülün kendisi geçerli kalır; siz yalnızca kamuya listelenenleri düzenlersiniz.

Recipient portal badge wall

Sayfalama

Ödüller tek seferde 50 tane yüklenir. Daha fazlası varsa altta bir Load more düğmesi belirir; arka uçta kararlı imleçle sayfaladığımız için kaydırma sırasında sıralama değişmez.

Oturumu kapatma

Üst kısımdaki Sign out düğmesi oturum tokenını sessionStorage alanından temizler. Sekmeyi kapatmak da aynı işi otomatik olarak yapar.

Kamuya açık profiliniz

Bir handle'ınız olduğunda, badges.ninja/u/<handle> adresini ziyaret eden herkes rozetlerinizin temiz bir ızgarasını, görünen adınızı ve rozet sayınızı, ayrıca tıklayınca kamuya açık ödül sayfasını açan kart başına rozetleri görür.

Recipient public profile

Kamuya açık profil yalnızca gizlemediğiniz rozetleri gösterir. /u/<handle> URL'nizi paylaşmak için oturum açmanıza gerek yoktur — size ait tamamen kamuya açık bir sayfadır.

Handle seçme

Handle'lar 3–20 karakter olmalıdır, yalnızca a-z 0-9 _ -. Büyük/küçük harf duyarsızdır ve badges.ninja üzerinde global olarak benzersizdir. İstediğiniz handle alınmışsa net bir hata alırsınız ve başka bir tane seçebilirsiniz.

Handle'ınızı portaldan istediğiniz zaman değiştirebilirsiniz — yenisi anında kanonik URL olur ve eskisi başka biri tarafından talep edilebilir hale gelir. Gönderdiğiniz mevcut paylaşım bağlantıları (/u/old-handle) yönlendirilmez — yalnızca "Profile not found" gösterir.

Verilerinizi kaldırma (GDPR)

Portalın altında bir Remove my data from Badges Ninja bağlantısı vardır. Aşağıdakileri yapar:

  1. E-postanızı değiştirir — aldığınız her ödülde e-postanız anlamsız bir özetle (ör. removed:5f3a8b9c…) değiştirilir. Ödülün kendisi bozulmadan kalır (JSON assertion, rozet görseli, varsa blockchain kanıtı) böylece kimlik bilgisini geçersiz kılmazsınız — düzenleyiciler hâlâ rozetinizi tutar — ancak siz keşfedilemez hale gelirsiniz: herhangi bir portalda e-postanızı aramak sonuç vermez ve /me oturum açmanız artık ödül bulmaz.
  2. Profil satırınızı siler, böylece /u/<handle> 404 döndürür ve handle başka biri için kullanılabilir hale gelir.

Bu geri alınamaz. Temizlik tamamlanmadan fikrinizi değiştirirseniz yalnızca yeni bir portal oturumuna (yani yeni bir sihirli bağlantıya) ihtiyacınız olur.

Bunun YAPMADIĞI şeyler

  • Ödülleri silmez. Size ödül veren düzenleyicinin hâlâ bir kaydı vardır. Open Badges v2 assertion'ları (/awards/<guid> adresindeki JSON dosyaları) doğrulama amaçları için geçerli kalır — spesifikasyon böyle gerektirir.
  • Bir düzenleyicinin bir ödülü gerçekten silmesini istiyorsanız (yalnızca e-postanızı ondan ayırmak yerine), doğrudan düzenleyiciyle iletişime geçin.

Sıkça sorulanlar

Arkadaşım bir rozet kazandığını söylüyor ama görünmüyor

İki olasılık:

  1. Düzenleyici farklı bir e-posta kullandı. Birçok düzenleyici şirket e-postasıyla ödüllendirir; onunla da oturum açmayı deneyin.
  2. Ödül, alıcı portalı özelliğinden daha eski. Ayarlanmış bir e-postası olan ödüller için geriye dönük dolduruyoruz, ancak çok eski ödüller hiçbir alıcı e-postası olmadan düzenlenmiş olabilir (platformdaki tarihsel ödüllerin ~%99'u). Bunlar yalnızca doğrudan /awards/<guid> URL'leri aracılığıyla görüntülenebilir.

Credly / Accredible / diğer platformlardan rozet içe aktarabilir miyim?

Henüz değil. Portal şu anda yalnızca badges.ninja aracılığıyla verilen rozetleri gösterir. Düzenleyiciler arası toplama ("Open Badges Backpack" modeli) 2010'ların başında Open Badges için önemli bir hedefti, ancak daha geniş ekosistem fiili toplayıcı olarak LinkedIn'e yöneldi. Bu alanda rekabet etmeyi planlamıyoruz.

LinkedIn profilime bir rozet ekleyebilir miyim?

Evet — her kamuya açık ödül sayfası (/awards/<guid>), düzenleyici LinkedIn kuruluş kimliğini ayarladığında bir Add to LinkedIn profile düğmesi içerir. Düğme LinkedIn'in Add-to-Profile deep link'ini kullanır, böylece rozet manuel kopyala-yapıştır olmadan doğrudan Certifications bölümünüze iner.

Görüntüleme sayılarım bana görünüyor mu?

Her ödül sayfası görüntülemeleri, paylaşımları, indirmeleri ve LinkedIn ekleme tıklamalarını izler. Düzenleyiciler bu sayıları kendi kontrol panellerinde görür; alıcılar bunları kamuya açık ödül sayfasında görür. Credly geleneğine göre, izleyici kimliği asla kaydedilmez — yalnızca sayılar.

Sihirli bağlantı ne kadar sürer?

24 saat. Sonrasında yenisini isteyin — hız sınırı yok, ceza yok.

Oturum ne kadar sürer?

Oturum açmadan itibaren 1 saat. Bu süre içinde sayfayı yenilemek oturumu canlı tutar; sekmeyi kapatmak sona erdirir.

Gizli rozetlerimi başka biri görebilir mi?

Hayır. Gizli rozetler kamuya açık /u/<handle> görünümünden filtrelenir. Yalnızca portala giriş yaptığınızda size görünürler.

Rozetlerimi indirebilir miyim?

Evet — portaldan herhangi bir rozeti açın, ardından kamuya açık ödül sayfasındaki Download PNG (Open Badges baked) ya da Download PDF certificate düğmelerini kullanın. Her ikisi de imzalanmıştır ve Open Badges v2 spesifikasyonu üzerinden doğrulanabilir.

Düzenleyiciler için nasıl görünür

Portala erişen alıcılar, düzenleyici için hiçbir şeyi değiştirmez — düzenleyicinin kontrol panelindeki ödül tablosu tam olarak aynı şekilde çalışır. Portal tamamen ek niteliktedir.

Bunu okuyan bir düzenleyiciyseniz ve LinkedIn kuruluş kimliğinizi henüz ayarlamadıysanız, şimdi yapın: Düzenleyicileri Yönetme → LinkedIn add-to-profile. Platformdaki tek başına en büyük "paylaşım oranı" kaldıracıdır.

Teknik ayrıntılar (meraklılar için)

Platform entegratörleri / Open Badges meraklıları için
  • Kimlik doğrulama modeli: durumsuz HMAC tokenları. Sihirli bağlantı yükü { kind: "magic", email, exp } olup AWS Secrets Manager (recipient/keys:tokenSecret) üzerinden rotasyona alınan sunucu tarafı bir gizli anahtarla imzalanır. Doğrulama sırasında bir { kind: "session", email, exp } tokenı üretiriz. Veritabanı destekli oturum tablosu yoktur.
  • E-posta araması: ödüller tablosundaki RECIPIENT_EMAIL_LC-TIMESTAMP GSI'sini sorgular. E-posta, depolama ve arama öncesinde küçük harfe normalleştirilir.
  • Kamuya açık profil: her profil satırı EMAIL_LC değerini saklar, böylece alıcı oturum açmadan /u/<handle> ödülleri listeleyebilir. Gizli ödüller sunucu tarafında filtrelenir.
  • GDPR unutma: her eşleşen ödül satırının RECIPIENT_EMAIL_LC değerini removed:<random> olarak yeniden yazar ve DynamoDB UPDATE yoluyla RECIPIENT_EMAIL düz metin özniteliğini kaldırır. Profil satırı silinir.
  • Uç noktalar (Cognito yok; sihirli bağlantı auth):
    • POST /me/auth/request { email } — sihirli bağlantıyı e-postayla gönderir
    • POST /me/auth/verify { token } — oturum tokenı döndürür
    • GET /me — profil + ilk ödül sayfası (Bearer)
    • GET /me/awards?lastEvaluatedKey=… — sayfalanmış (Bearer)
    • PUT /me/handle { handle } — handle ayarlar/değiştirir (Bearer)
    • PUT /me/awards/{guid}/visibility { hidden: bool } — gizliyi değiştirir (Bearer)
    • POST /me/auth/forget — GDPR bağlantıyı kaldırır (Bearer)
    • GET /u/{handle} — kamuya açık profil (kimlik doğrulama yok)

badges.ninja Documentation