Hata Durumları

Hata durumunda DPA'nın, hatayla ilgili daha fazla bilgi içeren bir JSON nesnesi içermesi GEREKEN HTTP yanıtıyla birlikte bir HTTP durum kodu döndürmesi beklenir. Hata yanıtı gövdesinin bir ErrorResponse örneği içermesi ZORUNLUDUR.

{
  "errorMessage": string,
  "cause": enum(ErrorCause)
}

DPA hata yanıtı aşağıdakilere karşılık gelmelidir:

  • Kullanıcı şu anda dolaşım gerçekleştiriyor ve bu kullanıcı için DPA sorgusu devre dışı bırakıldı. DPA, hata nedeni olarak USER_ROAMING ile bir 403 hatası döndürür.
  • DPA, GTAF'ye kullanıcı anahtarının geçersiz olduğunu (yani, mevcut olmayan kullanıcı anahtarı) INVALID_NUMBER ile gösteren bir 404 NOT_FOUND hata kodu döndürür.
  • DPA, hata anahtarı olarak BT_CPID'ye sahip bir 410 GONE hata kodu döndürür. GTAF'a, key_type== CPID değerine sahipse ve CPID'nin süresi dolmuşsa istemcinin yeni bir kullanıcı anahtarı alması gerektiğini belirtir.
  • DPA, SERVICE_UNAVAILABLE hatasına sahip bu çağrıyı desteklemediğini belirten 501 NOT_IMPLEMENTED hata kodu döndürür.
  • DPA, GTAF'ın DPA'ya çok fazla istekte bulunduğunu belirten Yeniden Deneme-Sonu başlığıyla birlikte, TOO_MANY_REQUESTS hata nedenine sahip bir 429 TOO MANY REQUESTS hatası döndürür.
  • DPA, DPA'nın mevcut durumuyla bir çakışma nedeniyle isteğin tamamlanamadığını belirten 409 CONFLICT hatası döndürür.
  • Hizmet geçici olarak kullanılamıyor. DPA, yeni bir isteğin ne zaman denenebileceğini gösteren bir Yeniden Deneme-Başlığı başlığını içeren 503 HİZMETİNİ KULLANILAMIYOR.
  • DPA, hata nedeni olarak ERROR_CAUSE_UNSPECIFIED belirtilen tüm diğer hatalar için 500 DAHİLİ SUNUCU HATASI kodu döndürür.

Satın alma sırasında karşılaşılan hatalar durumunda aşağıdaki hata kodları, başarısız işlem sonuçlarını temsil eder:

  • DPA, GTAF'ya satın alınan plan kimliğinin geçersiz olduğunu gösteren bir 400 BAD REQUEST hata kodu döndürür.
  • DPA, GTAF'ye kullanıcının satın alma işlemini tamamlamak için yeterli bakiyeye sahip olmadığını gösteren 402 ÖDEME GEREKLİ bir hata kodu döndürür.
  • DPA, GTAF'ye satın alınan planın kullanıcının mevcut ürün karışımıyla uyumlu olmadığını belirten bir 409 CONFLICT hata kodu döndürür. Örneğin, operatör veri planı politikası faturalı ve ön ödemeli planların karıştırılmasına izin vermiyorsa faturalı bir kullanıcı için ön ödemeli plan satın almaya çalışmak 409 CONFLICT hatasına neden olur.
  • DPA, GTAF'ye mevcut işlemin önceden yapılmış bir işlemin kopyası olduğunu belirten 403 YASAK hata kodunu döndürür. Veri İşlenmesine İlişkin Değişiklik'in yanıt olarak aşağıdaki hata nedenlerini döndürmesi gerekir:
    • Önceki işlem bir hataysa sorunun nedenini gösteren hata nedeni.
    • Önceki işlem başarılı olduysa DUPLICATE_TRANSACTION.
    • Önceki işlem hâlâ sıradaysa REQUEST_QUEUED.