Skip to content

Latest commit

 

History

History
84 lines (70 loc) · 8.68 KB

File metadata and controls

84 lines (70 loc) · 8.68 KB

OpenAPI Extensions used at Microsoft

Client Code Generation Extensions

Name Purpose Used By Status
x-ms-client-flatten flattens client model property or parameter. AutoRest
x-ms-client-name allows control over identifier names used in client-side code generation for parameters and schema properties. AutoRest
x-ms-code-generation-settings enables passing code generation settings via OpenAPI document Autorest
x-ms-deprecation Provides additional information about a deprecated endpoint, schema, property, etc... Kiota
x-ms-enum-flags Provides information about whether an enum is bitwise(flagged) and the expected serialization format Kiota
x-ms-external allows specific Definition Objects to be excluded from code generation AutoRest
x-ms-info-kiota Provides configuration information to the Kiota API client code generator Kiota
x-ms-mutability provides insight to Autorest on how to generate code. It doesn't alter the modeling of what is actually sent on the wire. AutoRest
x-ms-odata indicates the operation includes one or more OData query parameters. AutoRest
x-ms-pageable allows paging through lists of data. AutoRest
x-ms-list Marks an operation as a list operation. TypeSpec
x-ms-list-page-index Marks a query parameter as the page index for a list operation. TypeSpec
x-ms-list-offset Marks a query parameter as the page offset for a list operation. TypeSpec
x-ms-list-page-items Marks a response property as the array of items for a list operation. TypeSpec
x-ms-list-page-size Marks a query parameter as the page size for a list operation. TypeSpec
x-ms-list-next-link Marks a response property as the next-page link for a list operation. TypeSpec
x-ms-list-prev-link Marks a response property as the previous-page link for a list operation. TypeSpec
x-ms-list-first-link Marks a response property as the first-page link for a list operation. TypeSpec
x-ms-list-last-link Marks a response property as the last-page link for a list operation. TypeSpec
x-ms-list-continuation-token Marks a continuation token used by list operations. TypeSpec
x-ms-parameter-grouping groups method parameters in generated clients AutoRest
x-ms-parameter-location provides a mechanism to specify that the global parameter is actually a parameter on the operation and not a client property. AutoRest
x-ms-primary-error-message provides a hint to which property to use in an error type as the error message. Kiota
x-ms-reserved-parameter provides details on whether a path parameter should be reserved in an URI template or not Kiota
x-ms-sse-terminal-event provides a hint to indicate which streaming event is terminal TypeSpec

AI Plugin Generation Extensions

Name Purpose Used By Status
x-ai-adaptive-card Enables defining an external adaptive card for a given operation in the OpenAPI document. Kiota
x-ai-auth-reference-id Provides a way to define the reference id of the auth registration to be used by the AI plugin. Kiota
x-ai-capabilities Provides a way to define the function capabilities of the AI plugin. Kiota
x-ai-description Provides a way to define the description of the AI plugin that is provided to the AI model. Kiota
x-ai-reasoning-instructions Provides a way to define the reasoning instructions when invoking the plugin function. Kiota
x-ai-responding-instructions Provides a way to define the responding instructions when invoking the plugin function. Kiota
x-legal-info-url Provides a way to define the URL for legal information the AI plugin. Kiota
x-privacy-policy-url Provides a way to define the URL for privacy policy of the AI plugin. Kiota

UI Extensions

Name Purpose Used By Status
x-ms-visibility Determines the user facing visibility of the entity. The possible values are important, advanced and internal Flow, Logic Apps
x-ms-dynamic-values Flow, Logic Apps
x-ms-dynamic-schema This is a hint to the flow designer that the schema for this parameter or response is dynamic in nature. Flow, Logic Apps

Extending OpenAPI v3

Name Purpose Used By Status
x-ms-paths alternative to Paths Object that allows Path Item Object to have query parameters AutoRest, API Management
x-ms-discriminator-value maps discriminator value on the wire with the definition name AutoRest
x-ms-enum additional metadata for enums AutoRest, Kiota

Azure Specific extensions

Name Purpose Used By Status
x-ms-azure-resource indicates that the Definition Schema Object is a resource as defined by the Resource Managemer API AutoRest
x-ms-request-id allows to overwrite the request id header name AutoRest
x-ms-client-request-id allows to overwrite the client request id header name AutoRest
x-ms-long-running-operation indicates that the operation implemented Long Running Operation pattern as defined by the Resource Managemer API. AutoRest
x-ms-export-notes Notes about loss of API fidelity during export API Management

OpenAPI V2 extensions

Name Purpose Used By Status
x-ms-parameterized-host replaces the OpenAPI host with a host template that can be replaced with variable parameters. AutoRest
x-ms-skip-url-encoding skips URL encoding for path and query parameters AutoRest Support for unencoded query parameters in v3
x-ms-summary Short plain text description used for parameters Flow, Logic Apps, Functions In V3 schema.title can be used instead
x-ms-servers Support for identifying multiple API hosts API Management Temporary until official V3 servers

Extension Documentation