OAuth 2.1

Diğer uygulamalar kullanıcılarını bir Bot-Hosting hesabıyla giriş yaptırsın, tıpkı Discord ile giriş gibi. OAuth 2.1 ve PKCE üzerine kuruludur, bu yüzden her standart OAuth istemcisi çalışır.

Kendi hesabınızı yönetmek için API anahtarı kullanın. Başkalarının hesapları adına işlem yapan bir uygulama geliştirirken OAuth kullanın; böylece anahtar yapıştırmak yerine giriş yapar ve onay verirler. ChatGPT gibi yapay zeka asistanları tam olarak bu akışla bağlanır.

Akış

  1. 01 Bir uygulama oluşturun Geliştirici ayarlarınızda bir ad ve yönlendirme URI'si kaydedin. Gizli anahtarı olmayan, herkese açık bir client_id alırsınız.
  2. 02 Kullanıcıları yetkilendirmeye gönderin PKCE ile /oauth/authorize adresine yönlendirin. Kullanıcı giriş yapar ve kapsamları onaylar.
  3. 03 Kodu token'a dönüştürün Bir kodla geri dönerler. Erişim token'ı için kodu token uç noktasına POST edin.
  4. 04 API'yi onlar adına çağırın Token'ı Bearer olarak /api/v1 adresine gönderin ve arka planda yenileyin.

Uç noktalar

Uç noktalarAmaç
GET /oauth/authorizeTarayıcıda açılan kullanıcı onay ekranı.
POST /api/oauth/tokenKodu token ile değiştirin ya da token yenileyin.
POST /api/oauth/registerDynamic Client Registration (RFC 7591), isteğe bağlı.
GET /.well-known/oauth-authorization-serverKeşif meta verileri.
GET /.well-known/oauth-protected-resourceMCP istemcilerinin kullandığı kaynak meta verileri.

Token ömürleri

Yetkilendirme kodu 10 dk Tek kullanımlık, PKCE'ye bağlı.
Erişim token'ı 7 gün /api/v1 çağrıları için Bearer.
Yenileme token'ı 30 gün Her kullanımda yenilenir.

Yenileme

Her yenileme yeni bir yenileme token'ı döndürür ve eskisini geçersiz kılar: saklanan token'ın üzerine her zaman yazın. Yenileme invalid_grant döndürürse kullanıcıyı 1. adıma geri gönderin.

Güvenlik

  • Token'ları sunucu tarafında, kullanıcınıza bağlı olarak saklayın. Asla tarayıcıya ya da herkese açık bir depoya koymayın.
  • Kullanıcı uygulamanızın bağlantısını kestiği anda token'lar iptal edilir.
  • Üretimde https yönlendirme URI'leri kullanın. Yerel test için http kabul edilir.
  • Hangi kapsamlar onaylanırsa onaylansın, OAuth token'ları asla yönetici yetkisi vermez.