מדיניות OASValidation

אתם צופים במסמכי התיעוד של Apigee Edge.
כדאי לעיין במסמכי התיעוד של Apigee X.
מידע

מידע על המדיניות OASValidation

מדיניות OASValidation (אימות מפרט OpenAPI) מאפשרת לכם לאמת בקשה נכנסת או הודעת תגובה מול מפרט OpenAPI 3.0 (JSON או YAML). איזה תוכן עובר אימות?

המדיניות OASValidation מציינת את השם של מפרט OpenAPI שבו יש להשתמש לאימות כשהשלב שאליו מצורפת המדיניות מופעל. מפרט OpenAPI מאוחסן כמשאב במיקום הסטנדרטי הבא בחבילת ה-proxy ל-API: ‏ apiproxy/resources/oas. למפרט OpenAPI צריך להיות התוסף .json, .yml או .yaml.

מוסיפים מפרט OpenAPI כמשאב לחבילת proxy ל-API באמצעות ממשק המשתמש או API, כמו שמתואר במאמר ניהול משאבים.

איזה תוכן מאומת?

בטבלה הבאה מפורט סיכום של תוכן הודעת הבקשה שעובר אימות על ידי מדיניות OASValidation, לפי רכיב.

רכיבים בקש אימות
Basepath מאמת את נתיב הבסיס שהוגדר על ידי ה-proxy ל-API, ומתעלם מנתיב הבסיס שצוין במפרט OpenAPI.
נתיב האימות מוודא שנתיב הבקשה (ללא נתיב הבסיס) תואם לאחת מתבניות הנתיבים שמוגדרות במפרט OpenAPI.
פועל הכלי מאמת שהפועל מוגדר עבור הנתיב במפרט OpenAPI.
גוף הודעת הבקשה
  • מאמת את קיום גוף ההודעה בבקשה, אם נדרש.
  • אופציונלי. מאמת את גוף ההודעה מול סכימת גוף הבקשה של הפעולה במפרט OpenAPI. הגדרת האפשרות הזו באמצעות <ValidateMessageBody>

הערה: המדיניות מאמתת את גוף הודעת הבקשה מול מפרט OpenAPI רק אם Content-Type מוגדר ל-application/json. אם סוג התוכן לא מוגדר ל-application/json, האימות של גוף הודעת הבקשה יעבור אוטומטית (בלי לבדוק את התוכן בפועל).

פרמטרים
  • האימות מוודא שהפרמטרים הנדרשים מופיעים בבקשה, כולל פרמטרים של נתיב, כותרת, שאילתה וקובץ Cookie.
  • הפונקציה מאמתת שערכי הפרמטרים תואמים לאלה שמוגדרים במפרט OpenAPI.
  • אפשר גם לאמת אם קיימים בבקשה פרמטרים שלא מוגדרים במפרט OpenAPI. הגדרת האפשרות הזו באמצעות <AllowUnspecifiedParameters>

בטבלה הבאה מפורט תוכן הודעת התגובה שמאומת על ידי מדיניות OASValidation, לפי רכיב.

רכיבים אימות תשובות
נתיב האימות מוודא שנתיב הבקשה (ללא נתיב הבסיס) תואם לאחת מתבניות הנתיבים שמוגדרות במפרט OpenAPI.
פועל האימות מוודא שהפועל מוגדר לנתיב במפרט OpenAPI.
גוף הודעת התגובה
  • מאמת את קיום גוף ההודעה בתגובה, אם נדרש.
  • האימות מוודא שכותרות התגובה במפרט OpenAPI מופיעות בהודעת התגובה, ושהערך של כותרות התגובה תואם לסכימה.
  • אופציונלי: מאמת את גוף ההודעה מול סכימת גוף התגובה של הפעולה במפרט OpenAPI. הגדרת האפשרות הזו באמצעות <ValidateMessageBody>

דוגמאות

בדוגמאות הבאות מוצגות כמה דרכים שבהן אפשר להשתמש במדיניות OASValidation כדי לאמת הודעות בהתאם למפרט OpenAPI 3.0.

אימות הודעת הבקשה

בדוגמה הבאה, מדיניות myoaspolicy מאמתת את גוף הודעת הבקשה מול סכימת גוף הודעת הבקשה של הפעולה שמוגדרת במפרט my-spec.json של OpenAPI.

<OASValidation name="myoaspolicy">
   <OASResource>oas://my-spec.json</OASResource>
   <Options>
      <ValidateMessageBody>true</ValidateMessageBody>
   </Options>
   <Source>request</Source>
</OASValidation>

אם גוף ההודעה לא תואם למפרט OpenAPI, תוחזר שגיאת policies.oasvalidation.Failed.

אימות פרמטרים

בדוגמה הבאה מוגדרת המדיניות כך שהבקשה תיכשל אם צוינו בה פרמטרים של כותרת, שאילתה או קובץ Cookie שלא הוגדרו במפרט OpenAPI.

<OASValidation name="myoaspolicy">
   <OASResource>oas://my-spec.yaml</OASResource>
   <Options>
      <AllowUnspecifiedParameters>
         <Header>false</Header>
         <Query>false</Query>
         <Cookie>false</Cookie>
      </AllowUnspecifiedParameters>
   </Options>
</OASValidation>

רכיב <OASValidation>

ההגדרה הזו מגדירה את מדיניות האימות של מפרט OpenAPI.

ערך ברירת מחדל מידע נוסף מופיע בכרטיסייה מדיניות ברירת המחדל שבהמשך.
חובה? חובה
סוג אובייקט מורכב
רכיב אב לא רלוונטי
רכיבי צאצא <DisplayName>
<OASResource>
<Source>
<Options>
<Source>

תחביר

רכיב <OASValidation> משתמש בתחביר הבא:

<OASValidation
  continueOnError="[true|false]"
  enabled="[true|false]"
  name="policy_name"
>
    <!-- All OASValidation child elements are optional except OASResource -->
    <DisplayName>policy_display_name</DisplayName>
    <OASResource>validation_JSON_or_YAML</OASResource>
    <Options>
        <ValidateMessageBody>[true|false]</ValidateMessageBody>
        <AllowUnspecifiedParameters>
            <Header>[true|false]</Header>
            <Query>[true|false]</Query>
            <Cookie>[true|false]</Cookie>
        </AllowUnspecifiedParameters>
    </Options>
    <Source>message_to_validate</Source>
</OASValidation>

מדיניות ברירת המחדל

בדוגמה הבאה מוצגות הגדרות ברירת המחדל כשמוסיפים מדיניות של אימות OAS לזרימת העבודה בממשק המשתמש של Apigee:

<OASValidation continueOnError="false" enabled="true" name="OpenAPI-Spec-Validation-1">
    <DisplayName>OpenAPI Spec Validation-1</DisplayName>
    <Properties/>
    <Source>request</Source>
    <OASResource>oas://OpenAPI-Spec-Validation-1.yaml</OASResource>
</OASValidation>

לרכיב הזה יש את המאפיינים הבאים, המשותפים לכל כללי המדיניות:

מאפיין ברירת מחדל חובה? תיאור
name לא רלוונטי נדרש

השם הפנימי של המדיניות. הערך של המאפיין name יכול להכיל אותיות, מספרים, רווחים, מקפים, קווים תחתונים ונקודות. האורך המקסימלי של הערך הוא 255 תווים.

אפשר להשתמש ברכיב <DisplayName> כדי להוסיף תווית למדיניות בכלי לעריכת שרת proxy של ממשק המשתמש לניהול, ולהשתמש בשם אחר בשפה טבעית.

continueOnError false אופציונלי צריך להגדיר את הערך 'False' כדי להחזיר שגיאה כשהמדיניות נכשלת. זו התנהגות צפויה ברוב סוגי המדיניות. הערך של הפרמטר הוא TRUE כדי שביצוע הפעולות יתבצע גם אחרי שמדיניות תיכשל.
enabled true אופציונלי כדי לאכוף את המדיניות צריך להגדיר את הערך True. מגדירים את המדיניות כ-"false" כדי "להשבית" את המדיניות. המדיניות הזו לא תיאכף גם אם היא תצורף לתהליך.
async   false הוצא משימוש המאפיין הזה הוצא משימוש.

הפניה לרכיב צאצא

בקטע הזה מתוארים רכיבי הבן של <OASValidation>.

<DisplayName>

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

הרכיב <DisplayName> משותף לכל סוגי המדיניות.

ערך ברירת המחדל לא רלוונטי
חובה? אופציונלי. אם לא מציינים את <DisplayName>, המערכת משתמשת בערך של מאפיין name של המדיניות
סוג מחרוזת
רכיב אב <PolicyElement>
רכיבי צאצא ללא

התחביר של רכיב <DisplayName> הוא:

תחביר

<PolicyElement>
  <DisplayName>policy_display_name</DisplayName>
  ...
</PolicyElement>

דוגמה

<PolicyElement>
  <DisplayName>My Validation Policy</DisplayName>
</PolicyElement>

לרכיב <DisplayName> אין מאפיינים או רכיבי צאצא.

<OASResource>

מציינים את מפרט OpenAPI שרוצים לבצע אימות מולו. אפשר לאחסן את הקובץ הזה:

  • בטווח של ה-proxy ל-API בקטע /apiproxy/resources/oas בחבילת ה-proxy ל-API
  • בקטע Resources בתצוגת הניווט של כלי העריכה של שרת ה-API הפרוקסי.

מידע נוסף מופיע במאמר בנושא ניהול משאבים.

אפשר לציין את מפרט OpenAPI באמצעות תבנית הודעה, כמו {oas.resource.url}. במקרה כזה, הערך של משתנה הזרימה oas.resource.url (בסוגריים מסולסלים) יוערך ויוחלף במחרוזת המטען הייעודי בזמן הריצה. מידע נוסף זמין במאמר בנושא תבניות הודעות.

ערך ברירת מחדל ללא
חובה? חובה
סוג מחרוזת
רכיב אב <OASValidation>
רכיבי צאצא ללא

תחביר

רכיב <OASResource> משתמש בתחביר הבא:

<OASValidation name="policy_name">
   <OASResource>oas://specname[.json|.yaml|.yml]</OASResource>
   ...
</OASValidation>

דוגמה

בדוגמה הבאה יש הפניה למפרט my-spec.yaml שמאוחסן ב-/apiproxy/resources/oas בחבילת ה-proxy ל-API:

<OASValidation name="myoaspolicy">
   <OASResource>oas://my-spec.yaml</OASResource>
</OASValidation>

לרכיב <OASResource> אין מאפיינים או רכיבי צאצא.

<Options>

הגדרת האפשרויות של המדיניות.

ערך ברירת מחדל לא רלוונטי
חובה? אופציונלי
סוג סוג מורכב
רכיב אב <OASValidation>
רכיבי צאצא <ValidateMessageBody>
<AllowUnspecifiedParameters>

תחביר

רכיב <Options> משתמש בתחביר הבא:

<OASValidation name="policy_name">
   <OASResource>oas://specname[.json|.yaml|.yml]</OASResource>
   <Options>
      <ValidateMessageBody>[true|false]</ValidateMessageBody>
      <AllowUnspecifiedParameters>
         <Header>[true|false]</Header>
         <Query>[true|false]</Query>
         <Cookie>[true|false]</Cookie>
      </AllowUnspecifiedParameters>
   </Options>
   ...
</OASValidation>

דוגמה

בדוגמה הבאה מוגדרות האפשרויות של המדיניות. בהמשך מפורטות כל האפשרויות.

<OASValidation name="myoaspolicy">
   <OASResource>oas://my-spec.yaml</OASResource>
   <Options>
      <ValidateMessageBody>false</ValidateMessageBody>
      <AllowUnspecifiedParameters>
         <Header>false</Header>
         <Query>false</Query>
         <Cookie>false</Cookie>
      </AllowUnspecifiedParameters>
   </Options>
</OASValidation>

<ValidateMessageBody>

ההגדרה קובעת אם המדיניות צריכה לאמת את גוף ההודעה מול סכימת גוף הבקשה של הפעולה במפרט OpenAPI. מגדירים ל-true כדי לאמת את התוכן של גוף ההודעה. מגדירים את הערך false כדי לוודא שגוף ההודעה קיים.

כדי לקבוע אם הביצוע של התהליך יימשך אחרי שגיאת אימות, מגדירים את מאפיין continueOnError של רכיב <OASValidation> לערך true.

ערך ברירת מחדל false
חובה? אופציונלי
סוג בוליאני
רכיב אב <Options>
רכיבי צאצא ללא

תחביר

רכיב <ValidateMessageBody> משתמש בתחביר הבא:

<OASValidation name="policy_name">
   <OASResource>oas://specname[.json|.yaml|.yml]</OASResource>
   <Options>
         <ValidateMessageBody>[true|false]</ValidateMessageBody>
   </Options>
   ...
</OASValidation>

דוגמה

בדוגמה הבאה מוסבר איך להפעיל את האימות של תוכן גוף ההודעה:

<OASValidation name="myoaspolicy">
   <OASResource>oas://my-spec.yaml</OASResource>
   <Options>
      <ValidateMessageBody>true</ValidateMessageBody>
   </Options>
</OASValidation>

<AllowUnspecifiedParameters>

הגדרת ההתנהגות של המדיניות אם יש פרמטרים של כותרת, שאילתה או קובצי Cookie בבקשה שלא מוגדרים במפרט OpenAPI.

ערך ברירת מחדל לא רלוונטי
חובה? אופציונלי
סוג סוג מורכב
רכיב אב <Options>
רכיבי צאצא <Header>
<Query>
<Cookie>

תחביר

רכיב <AllowUnspecifiedParameters> משתמש בתחביר הבא:

<OASValidation name="policy_name">
   <OASResource>oas://specname[.json|.yaml|.yml]</OASResource>
   <Options>
      <AllowUnspecifiedParameters>
         <Header>[true|false]</Header>
         <Query>[true|false]</Query>
         <Cookie>[true|false]</Cookie>
      </AllowUnspecifiedParameters>
   </Options>
   ...
</OASValidation>

דוגמה

בדוגמה הבאה מוגדרת המדיניות כך שהבקשה תיכשל אם צוינו בה פרמטרים של כותרת, שאילתה או קובץ Cookie שלא הוגדרו במפרט OpenAPI.

<OASValidation name="myoaspolicy">
   <OASResource>oas://my-spec.yaml</OASResource>
   <Options>
      <AllowUnspecifiedParameters>
         <Header>false</Header>
         <Query>false</Query>
         <Cookie>false</Cookie>
      </AllowUnspecifiedParameters>
   </Options>
</OASValidation>

מגדירה את ההתנהגות של המדיניות אם יש פרמטרים של כותרת בבקשה שלא מוגדרים במפרט OpenAPI.

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

ערך ברירת מחדל true
חובה? בוליאני
סוג סוג מורכב
רכיב אב <AllowUnspecifiedParameters>
רכיבי צאצא ללא

תחביר

רכיב <Header> משתמש בתחביר הבא:

<OASValidation name="policy_name">
   <OASResource>oas://specname[.json|.yaml|.yml]</OASResource>
   <Options>
      <AllowUnspecifiedParameters>
         <Header>[true|false]</Header>
      </AllowUnspecifiedParameters>
   </Options>
   ...
</OASValidation>

דוגמה

בדוגמה הבאה מוגדרת המדיניות כך שאם בבקשה מצוין פרמטר של כותרת שלא מוגדר במפרט OpenAPI, המדיניות תיכשל.

<OASValidation name="myoaspolicy">
   <OASResource>oas://my-spec.yaml</OASResource>
   <Options>
      <AllowUnspecifiedParameters>
         <Header>false</Header>
      </AllowUnspecifiedParameters>
   </Options>
</OASValidation>

<Query> (ילד/ה של <AllowUnspecifiedParameters>)

ההגדרה הזו קובעת את ההתנהגות של המדיניות אם יש פרמטרים של שאילתה בבקשה שלא מוגדרים במפרט OpenAPI.

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

ערך ברירת מחדל true
חובה? בוליאני
סוג סוג מורכב
רכיב אב <AllowUnspecifiedParameters>
רכיבי צאצא ללא

תחביר

רכיב <Query> משתמש בתחביר הבא:

<OASValidation name="policy_name">
   <OASResource>oas://specname[.json|.yaml|.yml]</OASResource>
   <Options>
      <AllowUnspecifiedParameters>
         <Query>[true|false]</Query>
      </AllowUnspecifiedParameters>
   </Options>
   ...
</OASValidation>

דוגמה

בדוגמה הבאה מוגדרת המדיניות כך שאם בבקשה מצוין פרמטר שאילתה שלא מוגדר במפרט OpenAPI, הבקשה תיכשל.

<OASValidation name="myoaspolicy">
   <OASResource>oas://my-spec.yaml</OASResource>
   <Options>
      <AllowUnspecifiedParameters>
         <Query>false</Query>
      </AllowUnspecifiedParameters>
   </Options>
</OASValidation>

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

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

ערך ברירת מחדל true
חובה? בוליאני
סוג סוג מורכב
רכיב אב <AllowUnspecifiedParameters>
רכיבי צאצא ללא

תחביר

רכיב <Cookie> משתמש בתחביר הבא:

<OASValidation name="policy_name">
   <OASResource>oas://specname[.json|.yaml|.yml]</OASResource>
   <Options>
      <AllowUnspecifiedParameters>
         <Query>[true|false]</Query>
      </AllowUnspecifiedParameters>
   </Options>
   ...
</OASValidation>

דוגמה

בדוגמה הבאה מוגדרת המדיניות כך שאם בבקשה מצוין פרמטר שאילתה שלא מוגדר במפרט OpenAPI, הבקשה תיכשל.

<OASValidation name="myoaspolicy">
   <OASResource>oas://my-spec.yaml</OASResource>
   <Options>
      <AllowUnspecifiedParameters>
         <Cookie>false</Cookie>
      </AllowUnspecifiedParameters>
   </Options>
</OASValidation>

<Source>

הודעת JSON שצריך להעריך אותה בהשוואה למתקפות מטען ייעודי (payload) של JSON. הערך הנפוץ ביותר הוא request, כי בדרך כלל צריך להעריך בקשות נכנסות מאפליקציות לקוח. מגדירים את הערך response כדי להעריך הודעות תגובה. הגדרה לערך message תגרום להערכה אוטומטית של הודעת הבקשה כשהמדיניות מצורפת לתהליך הבקשה, ושל הודעת התשובה כשהמדיניות מצורפת לתהליך התשובה.

ערך ברירת מחדל בקשה
חובה? אופציונלי
סוג מחרוזת
רכיב אב <Source>
רכיבי צאצא ללא

תחביר

רכיב <Source> משתמש בתחביר הבא:

<OASValidation name="policy_name">
   <OASResource>oas://specname[.json|.yaml|.yml]</OASResource>
   <Source>[message|request|response]</Source>
   ...
</OASValidation>

דוגמה

בדוגמה הבאה, הודעת הבקשה מוערכת באופן אוטומטי כשהמדיניות מצורפת לזרימת הבקשה, והודעת התגובה מוערכת כשהמדיניות מצורפת לזרימת התגובה:

<OASValidation name="myoaspolicy">
   <OASResource>oas://my-spec.yaml</OASResource>
   <Source>message</Source>
</OASValidation>

לרכיב <Source> אין מאפיינים או רכיבי צאצא.

סכימות

כל סוג מדיניות מוגדר על ידי סכימת XML ‏ (.xsd). סכימות מדיניות זמינות ב-GitHub.

קודי שגיאה

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

שגיאות בזמן ריצה

השגיאות האלה יכולות להתרחש כשהמדיניות מופעלת.

קוד שגיאה סטטוס HTTP סיבה
steps.oasvalidation.Failed 500 לא ניתן לאמת את גוף הודעת הבקשה מול מפרט OpenAPI שסופק.
steps.oasvalidation.SourceMessageNotAvailable 500

המשתנה שצוין ברכיב <Source> של המדיניות לא כלול בהיקף או שלא ניתן לפענח אותו.

steps.oasvalidation.NotMessageVariable 500

רכיב <Source> מוגדר למשתנה שאינו מסוג message.

שגיאות בפריסה

השגיאות האלה יכולות להתרחש כשפורסים שרת proxy שכולל את המדיניות הזו.

שם השגיאה סיבה
ResourceDoesNotExist מפרט OpenAPI שיש אליו הפניה ברכיב <OASResource> לא קיים.
ResourceCompileFailed מפרט OpenAPI שכלול בפריסה מכיל שגיאות שמונעות את ההידור שלו. בדרך כלל הדבר מצביע על כך שהמפרט לא מעוצב כראוי במפרט OpenAPI 3.0.
BadResourceURL לא ניתן לעבד את מפרט OpenAPI שיש אליו הפניה ברכיב <OASResource>. מצב כזה יכול לקרות אם הקובץ אינו קובץ JSON או YAML, או אם כתובת ה-URL של הקובץ לא צוינה.

משתני שבר

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

משתנים מיקום דוגמה
fault.name="fault_name" fault_name הוא שם התקלה, כפי שמפורט בטבלה שגיאות זמן ריצה שלמעלה. שם הטעות הוא החלק האחרון בקוד השגיאה. fault.name Matches "ResourceDoesNotExist"
oasvalidation.policy_name.failed policy_name הוא השם שצוין על ידי המשתמש של המדיניות שגרמה לשגיאה. oasvalidation.myoaspolicy.failed = true

תכונות נתמכות של מפרטי OpenAPI

המדיניות OASValidation תומכת בתכונות של מפרט OpenAPI שמסוכמות בטבלה הבאה, לפי קטגוריה. בנוסף, מפורטות התכונות שלא נתמכות.

קטגוריה כן לא נתמך
פורמטים של סוגי נתונים ‫boolean
date
date-time
double
email
float
int32/int64
ipv4/ipv6
md5
sha1/sha256/sha512
string
uri
uri-template
uuid
בינארי
בייט
סיסמה
אובייקט דיסקרימינטור מיפוי
propertyName
לא רלוונטי
אובייקט מסוג מדיה סכימה קידוד
דוגמה
דוגמאות
אובייקט Operations parameters
requestBody
responses
security (partial support)
callbacks
deprecated
servers
אובייקט הפרמטרים allowEmptyValue
in (query, header, path)
required
responses
schema
style (deepObject, form, formmatrix, label, pipeDelimited, simple, spaceDelimited)

הערה: deepObject תומך רק בפרמטרים של מחרוזות. הוא לא תומך במערכים ובאובייקטים מוטמעים.
allowReserved
deprecated
example
examples
content
אובייקט Paths delete
get
head
options
parameters
patch
post
put
trace
variables
שרתים
אובייקט גוף הבקשה application/json
application/hal+json
application/x-www-form-urlencoded (encoding object not supported)
content
required
application/xml
multipart/form-data
text/plain
<x0A>text/xml
אובייקט תגובה application/json
application/hal+json
application/x-www-form-urlencoded (encoding object not supported)
content
headers
application/xml
links
text/plain
text/xml
אובייקט התשובות ברירת מחדל
קוד סטטוס של HTTP
לא רלוונטי
אובייקט סכימה ‫$ref
additionalProperties (רק בווריאנט של דגל בוליאני)
allOf (מתעלמים ממנו אם additionalProperties הוא false)
anyOf
enum
exclusiveMaximum/exclusiveMinimum
format
items
maximum/minimum
maxItems/minItems
maxLength/minLength
maxProperties/minProperties
multipleOf
not
nullable
oneOf
pattern
properties
required
title
type
uniqueItems
deprecated
example
readOnly
writeOnly
xml
אובייקט של תוכנית אבטחה ב- (header, query) (מתעלמים אם type הוא http)
שם
סוג (apiKey, http)
bearerFormat
flows
openIdConnectUrl
scheme
אובייקט שרת url
variables
הגדרות של כמה שרתים

נושאים קשורים