REST Resource: customers.operations

משאב: פעולה

המשאב הזה מייצג פעולה ממושכת שמוחזרת מקריאות ל-API ברשת.

ייצוג ב-JSON
{
  "name": string,
  "metadata": {
    "@type": string,
    field1: ...,
    ...
  },
  "done": boolean,

  "error": {
    object (Status)
  },
  "response": {
    "@type": string,
    field1: ...,
    ...
  }
}
שדות
name

string

השם שהוקצה על ידי השרת, שהוא ייחודי רק בתוך אותו שירות שמחזיר אותו במקור. אם משתמשים במיפוי ברירת המחדל של HTTP, הערך של name צריך להיות שם משאב שמסתיים ב-operations/{unique_id}.

metadata

object

מטא-נתונים ספציפיים לשירות שמשויכים לפעולה. בדרך כלל הוא מכיל מידע על ההתקדמות ומטא-נתונים נפוצים כמו זמן היצירה. יכול להיות ששירותים מסוימים לא יספקו מטא-נתונים כאלה. כל שיטה שמחזירה פעולה ממושכת צריכה לתעד את סוג המטא-נתונים, אם יש כאלה.

done

boolean

אם הערך הוא false, הפעולה עדיין מתבצעת. אם הערך הוא true, הפעולה הושלמה, והערך error או response זמין.

תוצאת הפעולה, שיכולה להיות error או response תקין. אם done == false, לא מוגדרים error וגם response. אם done == true, אפשר להגדיר רק אחד מהשדות error או response. יכול להיות שחלק מהשירותים לא יספקו את התוצאה. ברשימה הבאה מפורטים שדות שמוציאים זה את זה. בתשובה יוגדר לכל היותר אחד מהשדות הבאים:
error

object (Status)

תוצאת השגיאה של הפעולה במקרה של כישלון או ביטול.

response

object

התגובה הרגילה והמוצלחת של הפעולה. אם ה-method המקורית לא מחזירה נתונים כשהיא מצליחה, כמו Delete, התשובה היא google.protobuf.Empty. אם ה-method המקורית היא Get/Create/Update סטנדרטית, התגובה צריכה להיות המשאב. בשיטות אחרות, התגובה צריכה להיות מסוג XxxResponse, כאשר Xxx הוא שם השיטה המקורי. לדוגמה, אם שם ה-method המקורי הוא TakeSnapshot(), סוג התגובה שמוסק הוא TakeSnapshotResponse.

סוף השדות שמוציאים זה את זה.

סטטוס

הסוג Status מגדיר מודל שגיאה לוגי שמתאים לסביבות תכנות שונות, כולל ממשקי API בארכיטקטורת REST וממשקי API של RPC. הוא משמש את gRPC. כל הודעת Status מכילה שלושה נתונים: קוד שגיאה, הודעת שגיאה ופרטי שגיאה.

מידע נוסף על מודל השגיאות הזה ועל אופן העבודה איתו זמין במדריך לעיצוב API.

ייצוג ב-JSON
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
שדות
code

integer

קוד הסטטוס, שצריך להיות ערך enum של google.rpc.Code.

message

string

הודעת שגיאה שמוצגת למפתח, וצריכה להיות באנגלית. כל הודעת שגיאה שגלויה למשתמשים צריכה להיות מותאמת לשוק המקומי ולהישלח בשדה google.rpc.Status.details, או להיות מותאמת לשוק המקומי על ידי הלקוח.

details[]

object

רשימה של הודעות עם פרטי השגיאה. יש קבוצה נפוצה של סוגי הודעות לשימוש בממשקי API.

Methods

get

אחזור המצב האחרון של פעולה ממושכת.