يحدّد النوع Status نموذج خطأ منطقيًا مناسبًا لبيئات البرمجة المختلفة، بما في ذلك واجهات برمجة تطبيقات REST وRPC. وتستخدمه gRPC. تحتوي كل رسالة Status على ثلاثة أجزاء من البيانات: رمز الخطأ، ورسالة الخطأ، وتفاصيل الخطأ.
رمز الحالة، الذي يجب أن يكون قيمة التعداد google.rpc.Code.
message
string
رسالة خطأ تواجه مطوّر البرامج، والتي يجب أن تكون باللغة الإنجليزية. يجب أن تتم ترجمة أي رسالة خطأ يواجهها المستخدم وإرسالها في الحقل google.rpc.Status.details، أو ترجمتها بواسطة البرنامج.
details[]
object
قائمة بالرسائل التي تحتوي على تفاصيل الخطأ. هناك مجموعة شائعة من أنواع الرسائل التي يمكن لواجهات برمجة التطبيقات استخدامها.
كائن يحتوي على حقول من نوع عشوائي. يحتوي الحقل الإضافي "@type" على معرف موارد منتظم (URI) يحدد النوع. مثال: { "id": 1234, "@type": "types.example.com/standard/id" }.