Bu sayfada, uygulama geliştiricilere Veri Taşıma API'siyle ilgili sorunları nasıl çözecekleri gösterilmektedir.
Bu kapsam için artımlı kimlik doğrulamaya izin verilmiyor
Aşağıdaki sorun, include_granted_scopes=true
ile Veri Taşınabilirliği API kapsamları için OAuth akışı istediğinizde ve son kullanıcı projeye bazı kapsamlar vermişse veya kullanıcı istenen kapsamların bir kısmını zaten vermişse ortaya çıkar.
Incremental auth is not allowed for the requested scopes. If you are a developer ofAPP_NAME , see error details. Error 400: invalid_request
Bu sorunu çözmek için isteğinizden include_granted_scopes
öğesini kaldırın veya false olarak ayarlayın ve yalnızca kullanıcının izin vermediği kapsamları isteyin. Ayrıntılar için Daha önce verilen kapsamlar bölümüne bakın.
Yenileme seçeneği yok
Aşağıdaki sorun, son kullanıcı Test yayınlama durumuna sahip bir projeye erişim izni verdiğinde ortaya çıkar. Yenileme yalnızca Üretim yayınlama durumuna sahip projelerde kullanılabilir. Son kullanıcı, hesap bağlantıları sayfasında yenileme seçeneğini görmez.
Bu sorunu çözmek için projenin yayınlama durumunu Üretim olarak değiştirin. Ayrıntılar için OAuth iş akışı oluşturma başlıklı makaleyi inceleyin.
İstenen kaynaklar yetkilendirilmemiş
Aşağıdaki sorun, ekli OAuth erişim jetonunda kapsamları verilmeyen kaynak grupları için bir iş başlatmak üzere Veri Taşınabilirliği API'sine istek gönderdiğinizde ortaya çıkar.
HttpError 403 when requesting https://dataportability.googleapis.com/v1/portabilityArchive:initiate?alt=json returned "The requested resources are not authorized by the OAuth token.". Details: "[{'@type': 'type.googleapis.com/google.rpc.DebugInfo', 'detail': '[ORIGINAL ERROR] generic::permission_denied: com.google.dataliberation.portability.boq.thirdparty.utils.PortabilityApiException: The requested resources are not authorized by the OAuth token. Code: PERMISSION_DENIED [google.rpc.error_details_ext] { message: "The requested resources are not authorized by the OAuth token." }'}]"
Bu sorunu çözmek için hangi OAuth jetonlarının hangi kapsamları verdiğini takip edin. Birden fazla akış üzerinden farklı kapsamlar verdiyse aynı kullanıcı için birden fazla farklı jeton depolamanız gerekebilir. Ayrıca, kullanıcının bir OAuth akışında istenen kapsamların yalnızca bir alt kümesini verebileceğini unutmayın. Örnekler için Python hızlı başlangıç kılavuzuna bakın.
https://takeout.google.com/dpinfo adresinde çok sayıda kapsam istenirken 400 hatası
https://takeout.google.com/dpinfo, isteğinizdeki kapsam sayısı nedeniyle URL uzunluğu desteklenen boyutun üzerine çıktığında 400 hatası verir. Çözüm için kapsam isteklerinizi birden fazla küçük gruba bölün.