מבנה הספרייה

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

לכל ספריית API צריך להיות הפריסה הסטנדרטית הבאה:

  • ספריית API

    • דרישות מוקדמות למאגר

      • ‫BUILD – קובץ ה-build.
      • ‫METADATA – קובץ מטא-נתונים של הגרסה.
      • ‫OWNERS – הבעלים של ספריית ה-API.
      • ‫README.md – המידע הכללי על שירות ה-API.
    • קובצי הגדרות

      • ‫{service}.yaml – קובץ ההגדרות של שירות הבסיס, שהוא ייצוג YAML של הודעת הפרוטו google.api.Service.
      • ‫prod.yaml – קובץ ההגדרות של שירות הדלתא של הסביבה הפרודקטיבית.
      • ‫staging.yaml – קובץ ההגדרות של שירות הדלתא של הסביבה הזמנית.
      • ‫test.yaml – קובץ התצורה של שירות הדלתא לבדיקה.
      • ‫local.yaml – קובץ ההגדרות של שירות הדלתא המקומי.
    • קבצים של תיעוד

      • ‫doc/* – קבצי התיעוד הטכני. הם צריכים להיות בפורמט Markdown.
    • הגדרות הממשק

      • ‫v[0-9]*/* – כל ספרייה כזו מכילה גרסה ראשית של ה-API, בעיקר קובצי פרוטו וסקריפטים של build.
      • ‫{subapi}/v[0-9]*/* – כל ספרייה {subapi} מכילה הגדרת ממשק של API משני. לכל ממשק API משני יכולה להיות גרסה ראשית משלו.
      • ‫type/* – קובצי proto שמכילים סוגים שמשותפים בין ממשקי API שונים, בין גרסאות שונות של אותו API או בין ה-API לבין הטמעת השירות. type/* אסור שיהיו שינויים שוברים בהגדרות הסוג אחרי שהן מתפרסמות.

הגדרות של ממשקי Google API ציבוריים מתפרסמות ב-GitHub. אפשר לעיין במאגר Google APIs.