Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5hcGljZW50ZXIvc2VydmljZXMve30vd29ya3NwYWNlcy97fS9hcGlzL3t9/2024-03-01.xml (991 lines of code) (raw):
<?xml version='1.0' encoding='utf-8'?>
<CodeGen plane="mgmt-plane">
<resource id="/subscriptions/{}/resourcegroups/{}/providers/microsoft.apicenter/services/{}/workspaces/{}/apis/{}" version="2024-03-01" swagger="mgmt-plane/apicenter/ResourceProviders/Microsoft.ApiCenter/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuQXBpQ2VudGVyL3NlcnZpY2VzL3tzZXJ2aWNlTmFtZX0vd29ya3NwYWNlcy97d29ya3NwYWNlTmFtZX0vYXBpcy97YXBpTmFtZX0=/V/MjAyNC0wMy0wMQ=="/>
<commandGroup name="apic api">
<command name="show" version="2024-03-01">
<resource id="/subscriptions/{}/resourcegroups/{}/providers/microsoft.apicenter/services/{}/workspaces/{}/apis/{}" version="2024-03-01" swagger="mgmt-plane/apicenter/ResourceProviders/Microsoft.ApiCenter/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuQXBpQ2VudGVyL3NlcnZpY2VzL3tzZXJ2aWNlTmFtZX0vd29ya3NwYWNlcy97d29ya3NwYWNlTmFtZX0vYXBpcy97YXBpTmFtZX0=/V/MjAyNC0wMy0wMQ=="/>
<argGroup name="">
<arg type="string" var="$Path.apiName" options="api-id" required="True" group="" idPart="child_name_2">
<help short="The id of the API."/>
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</arg>
<arg type="ResourceGroupName" var="$Path.resourceGroupName" options="resource-group g" required="True" idPart="resource_group"/>
<arg type="string" var="$Path.serviceName" options="service-name n" required="True" group="" idPart="name">
<help short="The name of Azure API Center service."/>
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</arg>
<arg type="SubscriptionId" var="$Path.subscriptionId" options="subscription" required="True" idPart="subscription"/>
<arg type="string" var="$Path.workspaceName" options="workspace-name workspace w" required="True" group="" idPart="child_name_1">
<help short="The name of the workspace."/>
<default value=""default""/>
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</arg>
</argGroup>
<operation operationId="Apis_Get">
<http path="/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiCenter/services/{serviceName}/workspaces/{workspaceName}/apis/{apiName}">
<request method="get">
<path>
<param type="string" name="apiName" arg="$Path.apiName" required="True">
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</param>
<param type="string" name="resourceGroupName" arg="$Path.resourceGroupName" required="True">
<format maxLength="90" minLength="1"/>
</param>
<param type="string" name="serviceName" arg="$Path.serviceName" required="True">
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</param>
<param type="uuid" name="subscriptionId" arg="$Path.subscriptionId" required="True"/>
<param type="string" name="workspaceName" arg="$Path.workspaceName" required="True">
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</param>
</path>
<query>
<const readOnly="True" const="True" type="string" name="api-version" required="True">
<default value=""2024-03-01""/>
<format minLength="1"/>
</const>
</query>
</request>
<response statusCode="200">
<header>
<item name="ETag"/>
</header>
<body>
<json var="$Instance">
<schema type="object">
<prop readOnly="True" type="ResourceId" name="id">
<format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.ApiCenter/services/{}/workspaces/{}/apis/{}"/>
</prop>
<prop readOnly="True" type="string" name="name"/>
<prop type="object" name="properties" required="True" clientFlatten="True">
<prop type="array<object>" name="contacts">
<item type="object">
<prop type="string" name="email">
<format maxLength="100"/>
</prop>
<prop type="string" name="name">
<format maxLength="100"/>
</prop>
<prop type="string" name="url">
<format maxLength="200"/>
</prop>
</item>
</prop>
<prop type="object" name="customProperties">
<additionalProp anyType="True"/>
</prop>
<prop type="string" name="description">
<format maxLength="1000"/>
</prop>
<prop type="array<object>" name="externalDocumentation">
<item type="object">
<prop type="string" name="description">
<format maxLength="500"/>
</prop>
<prop type="string" name="title">
<format maxLength="50"/>
</prop>
<prop type="string" name="url" required="True">
<format maxLength="200"/>
</prop>
</item>
</prop>
<prop type="string" name="kind" required="True">
<enum>
<item value=""graphql""/>
<item value=""grpc""/>
<item value=""rest""/>
<item value=""soap""/>
<item value=""webhook""/>
<item value=""websocket""/>
</enum>
</prop>
<prop type="object" name="license">
<prop type="string" name="identifier">
<format maxLength="50"/>
</prop>
<prop type="string" name="name">
<format maxLength="100"/>
</prop>
<prop type="string" name="url">
<format maxLength="200"/>
</prop>
</prop>
<prop readOnly="True" type="string" name="lifecycleStage">
<enum>
<item value=""deprecated""/>
<item value=""design""/>
<item value=""development""/>
<item value=""preview""/>
<item value=""production""/>
<item value=""retired""/>
<item value=""testing""/>
</enum>
</prop>
<prop type="string" name="summary">
<format maxLength="200"/>
</prop>
<prop type="object" name="termsOfService">
<prop type="string" name="url" required="True">
<format maxLength="200"/>
</prop>
</prop>
<prop type="string" name="title" required="True">
<format maxLength="50" minLength="1"/>
</prop>
</prop>
<prop readOnly="True" type="object" name="systemData">
<prop type="dateTime" name="createdAt"/>
<prop type="string" name="createdBy"/>
<prop type="string" name="createdByType">
<enum>
<item value=""Application""/>
<item value=""Key""/>
<item value=""ManagedIdentity""/>
<item value=""User""/>
</enum>
</prop>
<prop type="dateTime" name="lastModifiedAt"/>
<prop type="string" name="lastModifiedBy"/>
<prop type="string" name="lastModifiedByType">
<enum>
<item value=""Application""/>
<item value=""Key""/>
<item value=""ManagedIdentity""/>
<item value=""User""/>
</enum>
</prop>
</prop>
<prop readOnly="True" type="string" name="type"/>
</schema>
</json>
</body>
</response>
<response isError="True">
<body>
<json>
<schema type="@MgmtErrorFormat"/>
</json>
</body>
</response>
</http>
</operation>
<output type="object" ref="$Instance" clientFlatten="True"/>
</command>
<command name="delete" version="2024-03-01" confirmation="Are you sure you want to perform this operation?">
<resource id="/subscriptions/{}/resourcegroups/{}/providers/microsoft.apicenter/services/{}/workspaces/{}/apis/{}" version="2024-03-01" swagger="mgmt-plane/apicenter/ResourceProviders/Microsoft.ApiCenter/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuQXBpQ2VudGVyL3NlcnZpY2VzL3tzZXJ2aWNlTmFtZX0vd29ya3NwYWNlcy97d29ya3NwYWNlTmFtZX0vYXBpcy97YXBpTmFtZX0=/V/MjAyNC0wMy0wMQ=="/>
<argGroup name="">
<arg type="string" var="$Path.apiName" options="api-id" required="True" group="" idPart="child_name_2">
<help short="The id of the API."/>
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</arg>
<arg type="ResourceGroupName" var="$Path.resourceGroupName" options="resource-group g" required="True" idPart="resource_group"/>
<arg type="string" var="$Path.serviceName" options="service-name n" required="True" group="" idPart="name">
<help short="The name of Azure API Center service."/>
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</arg>
<arg type="SubscriptionId" var="$Path.subscriptionId" options="subscription" required="True" idPart="subscription"/>
<arg type="string" var="$Path.workspaceName" options="workspace-name workspace w" required="True" group="" idPart="child_name_1">
<help short="The name of the workspace."/>
<default value=""default""/>
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</arg>
</argGroup>
<operation operationId="Apis_Delete">
<http path="/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiCenter/services/{serviceName}/workspaces/{workspaceName}/apis/{apiName}">
<request method="delete">
<path>
<param type="string" name="apiName" arg="$Path.apiName" required="True">
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</param>
<param type="string" name="resourceGroupName" arg="$Path.resourceGroupName" required="True">
<format maxLength="90" minLength="1"/>
</param>
<param type="string" name="serviceName" arg="$Path.serviceName" required="True">
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</param>
<param type="uuid" name="subscriptionId" arg="$Path.subscriptionId" required="True"/>
<param type="string" name="workspaceName" arg="$Path.workspaceName" required="True">
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</param>
</path>
<query>
<const readOnly="True" const="True" type="string" name="api-version" required="True">
<default value=""2024-03-01""/>
<format minLength="1"/>
</const>
</query>
</request>
<response statusCode="200"/>
<response statusCode="204"/>
<response isError="True">
<body>
<json>
<schema type="@MgmtErrorFormat"/>
</json>
</body>
</response>
</http>
</operation>
</command>
<command name="create" version="2024-03-01" confirmation="">
<resource id="/subscriptions/{}/resourcegroups/{}/providers/microsoft.apicenter/services/{}/workspaces/{}/apis/{}" version="2024-03-01" swagger="mgmt-plane/apicenter/ResourceProviders/Microsoft.ApiCenter/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuQXBpQ2VudGVyL3NlcnZpY2VzL3tzZXJ2aWNlTmFtZX0vd29ya3NwYWNlcy97d29ya3NwYWNlTmFtZX0vYXBpcy97YXBpTmFtZX0=/V/MjAyNC0wMy0wMQ=="/>
<argGroup name="">
<arg type="string" var="$Path.apiName" options="api-id" required="True" group="" idPart="child_name_2">
<help short="The id of the API."/>
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</arg>
<arg type="ResourceGroupName" var="$Path.resourceGroupName" options="resource-group g" required="True" idPart="resource_group"/>
<arg type="string" var="$Path.serviceName" options="service-name n" required="True" group="" idPart="name">
<help short="The name of Azure API Center service."/>
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</arg>
<arg type="SubscriptionId" var="$Path.subscriptionId" options="subscription" required="True" idPart="subscription"/>
<arg type="string" var="$Path.workspaceName" options="workspace-name workspace w" required="True" group="" idPart="child_name_1">
<help short="The name of the workspace."/>
<default value=""default""/>
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</arg>
</argGroup>
<argGroup name="Properties">
<arg type="array<object>" var="$payload.properties.contacts" options="contacts" group="Properties">
<help short="The contact information for the API."/>
<item type="object">
<arg type="string" var="$payload.properties.contacts[].email" options="email">
<help short="Email address of the contact."/>
<format maxLength="100"/>
</arg>
<arg type="string" var="$payload.properties.contacts[].name" options="name">
<help short="Name of the contact."/>
<format maxLength="100"/>
</arg>
<arg type="string" var="$payload.properties.contacts[].url" options="url">
<help short="URL for the contact."/>
<format maxLength="200"/>
</arg>
</item>
</arg>
<arg type="object" var="$payload.properties.customProperties" options="custom-properties" group="Properties">
<blank value="{}"/>
<help short="The custom metadata defined for API catalog entities."/>
<additionalProp anyType="True"/>
</arg>
<arg type="string" var="$payload.properties.description" options="description" group="Properties">
<help short="Description of the API."/>
<format maxLength="1000"/>
</arg>
<arg type="array<object>" var="$payload.properties.externalDocumentation" options="external-documentation" group="Properties">
<help short="Additional, external documentation for the API."/>
<item type="object">
<arg type="string" var="$payload.properties.externalDocumentation[].description" options="description">
<help short="Description of the documentation."/>
<format maxLength="500"/>
</arg>
<arg type="string" var="$payload.properties.externalDocumentation[].title" options="title">
<help short="Title of the documentation."/>
<format maxLength="50"/>
</arg>
<arg type="string" var="$payload.properties.externalDocumentation[].url" options="url" required="True">
<help short="URL pointing to the documentation."/>
<format maxLength="200"/>
</arg>
</item>
</arg>
<arg type="string" var="$payload.properties.kind" options="type" required="True" group="Properties">
<help short="Type of API."/>
<enum>
<item name="graphql" value=""graphql""/>
<item name="grpc" value=""grpc""/>
<item name="rest" value=""rest""/>
<item name="soap" value=""soap""/>
<item name="webhook" value=""webhook""/>
<item name="websocket" value=""websocket""/>
</enum>
</arg>
<arg type="object" var="$payload.properties.license" options="license" group="Properties">
<help short="The license information for the API."/>
<arg type="string" var="$payload.properties.license.identifier" options="identifier">
<help short="SPDX license information for the API. The identifier field is mutually exclusive of the URL field."/>
<format maxLength="50"/>
</arg>
<arg type="string" var="$payload.properties.license.name" options="name">
<help short="Name of the license."/>
<format maxLength="100"/>
</arg>
<arg type="string" var="$payload.properties.license.url" options="url">
<help short="URL pointing to the license details. The URL field is mutually exclusive of the identifier field."/>
<format maxLength="200"/>
</arg>
</arg>
<arg type="string" var="$payload.properties.summary" options="summary" group="Properties">
<help short="Short description of the API."/>
<format maxLength="200"/>
</arg>
<arg type="object" var="$payload.properties.termsOfService" options="terms-of-service" hide="True" group="Properties">
<help short="Terms of service for the API."/>
<arg type="string" var="$payload.properties.termsOfService.url" options="url" required="True">
<help short="URL pointing to the terms of service."/>
<format maxLength="200"/>
</arg>
</arg>
<arg type="string" var="$payload.properties.title" options="title" required="True" group="Properties">
<help short="API title."/>
<format maxLength="50" minLength="1"/>
</arg>
</argGroup>
<operation operationId="Apis_CreateOrUpdate">
<http path="/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiCenter/services/{serviceName}/workspaces/{workspaceName}/apis/{apiName}">
<request method="put">
<path>
<param type="string" name="apiName" arg="$Path.apiName" required="True">
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</param>
<param type="string" name="resourceGroupName" arg="$Path.resourceGroupName" required="True">
<format maxLength="90" minLength="1"/>
</param>
<param type="string" name="serviceName" arg="$Path.serviceName" required="True">
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</param>
<param type="uuid" name="subscriptionId" arg="$Path.subscriptionId" required="True"/>
<param type="string" name="workspaceName" arg="$Path.workspaceName" required="True">
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</param>
</path>
<query>
<const readOnly="True" const="True" type="string" name="api-version" required="True">
<default value=""2024-03-01""/>
<format minLength="1"/>
</const>
</query>
<body>
<json>
<schema type="object" name="payload" required="True" clientFlatten="True">
<prop type="object" name="properties" required="True" clientFlatten="True">
<prop type="array<object>" name="contacts" arg="$payload.properties.contacts">
<item type="object">
<prop type="string" name="email" arg="$payload.properties.contacts[].email">
<format maxLength="100"/>
</prop>
<prop type="string" name="name" arg="$payload.properties.contacts[].name">
<format maxLength="100"/>
</prop>
<prop type="string" name="url" arg="$payload.properties.contacts[].url">
<format maxLength="200"/>
</prop>
</item>
</prop>
<prop type="object" name="customProperties" arg="$payload.properties.customProperties">
<additionalProp anyType="True"/>
</prop>
<prop type="string" name="description" arg="$payload.properties.description">
<format maxLength="1000"/>
</prop>
<prop type="array<object>" name="externalDocumentation" arg="$payload.properties.externalDocumentation">
<item type="object">
<prop type="string" name="description" arg="$payload.properties.externalDocumentation[].description">
<format maxLength="500"/>
</prop>
<prop type="string" name="title" arg="$payload.properties.externalDocumentation[].title">
<format maxLength="50"/>
</prop>
<prop type="string" name="url" arg="$payload.properties.externalDocumentation[].url" required="True">
<format maxLength="200"/>
</prop>
</item>
</prop>
<prop type="string" name="kind" arg="$payload.properties.kind" required="True">
<enum>
<item value=""graphql""/>
<item value=""grpc""/>
<item value=""rest""/>
<item value=""soap""/>
<item value=""webhook""/>
<item value=""websocket""/>
</enum>
</prop>
<prop type="object" name="license" arg="$payload.properties.license">
<prop type="string" name="identifier" arg="$payload.properties.license.identifier">
<format maxLength="50"/>
</prop>
<prop type="string" name="name" arg="$payload.properties.license.name">
<format maxLength="100"/>
</prop>
<prop type="string" name="url" arg="$payload.properties.license.url">
<format maxLength="200"/>
</prop>
</prop>
<prop type="string" name="summary" arg="$payload.properties.summary">
<format maxLength="200"/>
</prop>
<prop type="object" name="termsOfService" arg="$payload.properties.termsOfService">
<prop type="string" name="url" arg="$payload.properties.termsOfService.url" required="True">
<format maxLength="200"/>
</prop>
</prop>
<prop type="string" name="title" arg="$payload.properties.title" required="True">
<format maxLength="50" minLength="1"/>
</prop>
</prop>
</schema>
</json>
</body>
</request>
<response statusCode="200 201">
<header>
<item name="ETag"/>
</header>
<body>
<json var="$Instance">
<schema type="object">
<prop readOnly="True" type="ResourceId" name="id">
<format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.ApiCenter/services/{}/workspaces/{}/apis/{}"/>
</prop>
<prop readOnly="True" type="string" name="name"/>
<prop type="object" name="properties" required="True" clientFlatten="True">
<prop type="array<object>" name="contacts">
<item type="object">
<prop type="string" name="email">
<format maxLength="100"/>
</prop>
<prop type="string" name="name">
<format maxLength="100"/>
</prop>
<prop type="string" name="url">
<format maxLength="200"/>
</prop>
</item>
</prop>
<prop type="object" name="customProperties">
<additionalProp anyType="True"/>
</prop>
<prop type="string" name="description">
<format maxLength="1000"/>
</prop>
<prop type="array<object>" name="externalDocumentation">
<item type="object">
<prop type="string" name="description">
<format maxLength="500"/>
</prop>
<prop type="string" name="title">
<format maxLength="50"/>
</prop>
<prop type="string" name="url" required="True">
<format maxLength="200"/>
</prop>
</item>
</prop>
<prop type="string" name="kind" required="True">
<enum>
<item value=""graphql""/>
<item value=""grpc""/>
<item value=""rest""/>
<item value=""soap""/>
<item value=""webhook""/>
<item value=""websocket""/>
</enum>
</prop>
<prop type="object" name="license">
<prop type="string" name="identifier">
<format maxLength="50"/>
</prop>
<prop type="string" name="name">
<format maxLength="100"/>
</prop>
<prop type="string" name="url">
<format maxLength="200"/>
</prop>
</prop>
<prop readOnly="True" type="string" name="lifecycleStage">
<enum>
<item value=""deprecated""/>
<item value=""design""/>
<item value=""development""/>
<item value=""preview""/>
<item value=""production""/>
<item value=""retired""/>
<item value=""testing""/>
</enum>
</prop>
<prop type="string" name="summary">
<format maxLength="200"/>
</prop>
<prop type="object" name="termsOfService">
<prop type="string" name="url" required="True">
<format maxLength="200"/>
</prop>
</prop>
<prop type="string" name="title" required="True">
<format maxLength="50" minLength="1"/>
</prop>
</prop>
<prop readOnly="True" type="object" name="systemData">
<prop type="dateTime" name="createdAt"/>
<prop type="string" name="createdBy"/>
<prop type="string" name="createdByType">
<enum>
<item value=""Application""/>
<item value=""Key""/>
<item value=""ManagedIdentity""/>
<item value=""User""/>
</enum>
</prop>
<prop type="dateTime" name="lastModifiedAt"/>
<prop type="string" name="lastModifiedBy"/>
<prop type="string" name="lastModifiedByType">
<enum>
<item value=""Application""/>
<item value=""Key""/>
<item value=""ManagedIdentity""/>
<item value=""User""/>
</enum>
</prop>
</prop>
<prop readOnly="True" type="string" name="type"/>
</schema>
</json>
</body>
</response>
<response isError="True">
<body>
<json>
<schema type="@MgmtErrorFormat"/>
</json>
</body>
</response>
</http>
</operation>
<output type="object" ref="$Instance" clientFlatten="True"/>
</command>
<command name="check-exists" version="2024-03-01" confirmation="">
<resource id="/subscriptions/{}/resourcegroups/{}/providers/microsoft.apicenter/services/{}/workspaces/{}/apis/{}" version="2024-03-01" swagger="mgmt-plane/apicenter/ResourceProviders/Microsoft.ApiCenter/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuQXBpQ2VudGVyL3NlcnZpY2VzL3tzZXJ2aWNlTmFtZX0vd29ya3NwYWNlcy97d29ya3NwYWNlTmFtZX0vYXBpcy97YXBpTmFtZX0=/V/MjAyNC0wMy0wMQ=="/>
<argGroup name="">
<arg type="string" var="$Path.apiName" options="api-id" required="True" group="" idPart="child_name_2">
<help short="The id of the API."/>
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</arg>
<arg type="ResourceGroupName" var="$Path.resourceGroupName" options="resource-group g" required="True" idPart="resource_group"/>
<arg type="string" var="$Path.serviceName" options="service-name n" required="True" group="" idPart="name">
<help short="The name of Azure API Center service."/>
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</arg>
<arg type="SubscriptionId" var="$Path.subscriptionId" options="subscription" required="True" idPart="subscription"/>
<arg type="string" var="$Path.workspaceName" options="workspace-name workspace w" required="True" group="" idPart="child_name_1">
<help short="The name of the workspace."/>
<default value=""default""/>
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</arg>
</argGroup>
<operation operationId="Apis_Head">
<http path="/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiCenter/services/{serviceName}/workspaces/{workspaceName}/apis/{apiName}">
<request method="head">
<path>
<param type="string" name="apiName" arg="$Path.apiName" required="True">
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</param>
<param type="string" name="resourceGroupName" arg="$Path.resourceGroupName" required="True">
<format maxLength="90" minLength="1"/>
</param>
<param type="string" name="serviceName" arg="$Path.serviceName" required="True">
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</param>
<param type="uuid" name="subscriptionId" arg="$Path.subscriptionId" required="True"/>
<param type="string" name="workspaceName" arg="$Path.workspaceName" required="True">
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</param>
</path>
<query>
<const readOnly="True" const="True" type="string" name="api-version" required="True">
<default value=""2024-03-01""/>
<format minLength="1"/>
</const>
</query>
</request>
<response statusCode="200"/>
<response isError="True">
<body>
<json>
<schema type="@MgmtErrorFormat"/>
</json>
</body>
</response>
</http>
</operation>
</command>
<command name="update" version="2024-03-01" confirmation="">
<resource id="/subscriptions/{}/resourcegroups/{}/providers/microsoft.apicenter/services/{}/workspaces/{}/apis/{}" version="2024-03-01" swagger="mgmt-plane/apicenter/ResourceProviders/Microsoft.ApiCenter/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuQXBpQ2VudGVyL3NlcnZpY2VzL3tzZXJ2aWNlTmFtZX0vd29ya3NwYWNlcy97d29ya3NwYWNlTmFtZX0vYXBpcy97YXBpTmFtZX0=/V/MjAyNC0wMy0wMQ=="/>
<argGroup name="">
<arg type="string" var="$Path.apiName" options="api-id" required="True" group="" idPart="child_name_2">
<help short="The id of the API."/>
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</arg>
<arg type="ResourceGroupName" var="$Path.resourceGroupName" options="resource-group g" required="True" idPart="resource_group"/>
<arg type="string" var="$Path.serviceName" options="service-name n" required="True" group="" idPart="name">
<help short="The name of Azure API Center service."/>
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</arg>
<arg type="SubscriptionId" var="$Path.subscriptionId" options="subscription" required="True" idPart="subscription"/>
<arg type="string" var="$Path.workspaceName" options="workspace-name workspace w" required="True" group="" idPart="child_name_1">
<help short="The name of the workspace."/>
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</arg>
</argGroup>
<argGroup name="Properties">
<arg nullable="True" type="array<object>" var="$payload.properties.contacts" options="contacts" group="Properties">
<help short="The contact information for the API."/>
<item nullable="True" type="object">
<arg nullable="True" type="string" var="$payload.properties.contacts[].email" options="email">
<help short="Email address of the contact."/>
<format maxLength="100"/>
</arg>
<arg nullable="True" type="string" var="$payload.properties.contacts[].name" options="name">
<help short="Name of the contact."/>
<format maxLength="100"/>
</arg>
<arg nullable="True" type="string" var="$payload.properties.contacts[].url" options="url">
<help short="URL for the contact."/>
<format maxLength="200"/>
</arg>
</item>
</arg>
<arg nullable="True" type="object" var="$payload.properties.customProperties" options="custom-properties" group="Properties">
<blank value="{}"/>
<help short="The custom metadata defined for API catalog entities."/>
<additionalProp anyType="True"/>
</arg>
<arg nullable="True" type="string" var="$payload.properties.description" options="description" group="Properties">
<help short="Description of the API."/>
<format maxLength="1000"/>
</arg>
<arg nullable="True" type="array<object>" var="$payload.properties.externalDocumentation" options="external-documentation" group="Properties">
<help short="Additional, external documentation for the API."/>
<item nullable="True" type="object">
<arg nullable="True" type="string" var="$payload.properties.externalDocumentation[].description" options="description">
<help short="Description of the documentation."/>
<format maxLength="500"/>
</arg>
<arg nullable="True" type="string" var="$payload.properties.externalDocumentation[].title" options="title">
<help short="Title of the documentation."/>
<format maxLength="50"/>
</arg>
<arg type="string" var="$payload.properties.externalDocumentation[].url" options="url">
<help short="URL pointing to the documentation."/>
<format maxLength="200"/>
</arg>
</item>
</arg>
<arg type="string" var="$payload.properties.kind" options="type" group="Properties">
<help short="Type of API."/>
<enum>
<item name="graphql" value=""graphql""/>
<item name="grpc" value=""grpc""/>
<item name="rest" value=""rest""/>
<item name="soap" value=""soap""/>
<item name="webhook" value=""webhook""/>
<item name="websocket" value=""websocket""/>
</enum>
</arg>
<arg nullable="True" type="object" var="$payload.properties.license" options="license" group="Properties">
<help short="The license information for the API."/>
<arg nullable="True" type="string" var="$payload.properties.license.identifier" options="identifier">
<help short="SPDX license information for the API. The identifier field is mutually exclusive of the URL field."/>
<format maxLength="50"/>
</arg>
<arg nullable="True" type="string" var="$payload.properties.license.name" options="name">
<help short="Name of the license."/>
<format maxLength="100"/>
</arg>
<arg nullable="True" type="string" var="$payload.properties.license.url" options="url">
<help short="URL pointing to the license details. The URL field is mutually exclusive of the identifier field."/>
<format maxLength="200"/>
</arg>
</arg>
<arg nullable="True" type="string" var="$payload.properties.summary" options="summary" group="Properties">
<help short="Short description of the API."/>
<format maxLength="200"/>
</arg>
<arg nullable="True" type="object" var="$payload.properties.termsOfService" options="terms-of-service" hide="True" group="Properties">
<help short="Terms of service for the API."/>
<arg type="string" var="$payload.properties.termsOfService.url" options="url">
<help short="URL pointing to the terms of service."/>
<format maxLength="200"/>
</arg>
</arg>
<arg type="string" var="$payload.properties.title" options="title" group="Properties">
<help short="API title."/>
<format maxLength="50" minLength="1"/>
</arg>
</argGroup>
<operation operationId="Apis_Get">
<http path="/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiCenter/services/{serviceName}/workspaces/{workspaceName}/apis/{apiName}">
<request method="get">
<path>
<param type="string" name="apiName" arg="$Path.apiName" required="True">
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</param>
<param type="string" name="resourceGroupName" arg="$Path.resourceGroupName" required="True">
<format maxLength="90" minLength="1"/>
</param>
<param type="string" name="serviceName" arg="$Path.serviceName" required="True">
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</param>
<param type="uuid" name="subscriptionId" arg="$Path.subscriptionId" required="True"/>
<param type="string" name="workspaceName" arg="$Path.workspaceName" required="True">
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</param>
</path>
<query>
<const readOnly="True" const="True" type="string" name="api-version" required="True">
<default value=""2024-03-01""/>
<format minLength="1"/>
</const>
</query>
</request>
<response statusCode="200">
<header>
<item name="ETag"/>
</header>
<body>
<json var="$Instance">
<schema type="object" cls="Api_read">
<prop readOnly="True" type="ResourceId" name="id">
<format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.ApiCenter/services/{}/workspaces/{}/apis/{}"/>
</prop>
<prop readOnly="True" type="string" name="name"/>
<prop type="object" name="properties" required="True" clientFlatten="True">
<prop type="array<object>" name="contacts">
<item type="object">
<prop type="string" name="email">
<format maxLength="100"/>
</prop>
<prop type="string" name="name">
<format maxLength="100"/>
</prop>
<prop type="string" name="url">
<format maxLength="200"/>
</prop>
</item>
</prop>
<prop type="object" name="customProperties">
<additionalProp anyType="True"/>
</prop>
<prop type="string" name="description">
<format maxLength="1000"/>
</prop>
<prop type="array<object>" name="externalDocumentation">
<item type="object">
<prop type="string" name="description">
<format maxLength="500"/>
</prop>
<prop type="string" name="title">
<format maxLength="50"/>
</prop>
<prop type="string" name="url" required="True">
<format maxLength="200"/>
</prop>
</item>
</prop>
<prop type="string" name="kind" required="True">
<enum>
<item value=""graphql""/>
<item value=""grpc""/>
<item value=""rest""/>
<item value=""soap""/>
<item value=""webhook""/>
<item value=""websocket""/>
</enum>
</prop>
<prop type="object" name="license">
<prop type="string" name="identifier">
<format maxLength="50"/>
</prop>
<prop type="string" name="name">
<format maxLength="100"/>
</prop>
<prop type="string" name="url">
<format maxLength="200"/>
</prop>
</prop>
<prop readOnly="True" type="string" name="lifecycleStage">
<enum>
<item value=""deprecated""/>
<item value=""design""/>
<item value=""development""/>
<item value=""preview""/>
<item value=""production""/>
<item value=""retired""/>
<item value=""testing""/>
</enum>
</prop>
<prop type="string" name="summary">
<format maxLength="200"/>
</prop>
<prop type="object" name="termsOfService">
<prop type="string" name="url" required="True">
<format maxLength="200"/>
</prop>
</prop>
<prop type="string" name="title" required="True">
<format maxLength="50" minLength="1"/>
</prop>
</prop>
<prop readOnly="True" type="object" name="systemData">
<prop type="dateTime" name="createdAt"/>
<prop type="string" name="createdBy"/>
<prop type="string" name="createdByType">
<enum>
<item value=""Application""/>
<item value=""Key""/>
<item value=""ManagedIdentity""/>
<item value=""User""/>
</enum>
</prop>
<prop type="dateTime" name="lastModifiedAt"/>
<prop type="string" name="lastModifiedBy"/>
<prop type="string" name="lastModifiedByType">
<enum>
<item value=""Application""/>
<item value=""Key""/>
<item value=""ManagedIdentity""/>
<item value=""User""/>
</enum>
</prop>
</prop>
<prop readOnly="True" type="string" name="type"/>
</schema>
</json>
</body>
</response>
<response isError="True">
<body>
<json>
<schema type="@MgmtErrorFormat"/>
</json>
</body>
</response>
</http>
</operation>
<operation>
<instanceUpdate ref="$Instance">
<json>
<schema type="object" name="payload" required="True" clientFlatten="True">
<prop type="object" name="properties" required="True" clientFlatten="True">
<prop type="array<object>" name="contacts" arg="$payload.properties.contacts">
<item type="object">
<prop type="string" name="email" arg="$payload.properties.contacts[].email">
<format maxLength="100"/>
</prop>
<prop type="string" name="name" arg="$payload.properties.contacts[].name">
<format maxLength="100"/>
</prop>
<prop type="string" name="url" arg="$payload.properties.contacts[].url">
<format maxLength="200"/>
</prop>
</item>
</prop>
<prop type="object" name="customProperties" arg="$payload.properties.customProperties">
<additionalProp anyType="True"/>
</prop>
<prop type="string" name="description" arg="$payload.properties.description">
<format maxLength="1000"/>
</prop>
<prop type="array<object>" name="externalDocumentation" arg="$payload.properties.externalDocumentation">
<item type="object">
<prop type="string" name="description" arg="$payload.properties.externalDocumentation[].description">
<format maxLength="500"/>
</prop>
<prop type="string" name="title" arg="$payload.properties.externalDocumentation[].title">
<format maxLength="50"/>
</prop>
<prop type="string" name="url" arg="$payload.properties.externalDocumentation[].url" required="True">
<format maxLength="200"/>
</prop>
</item>
</prop>
<prop type="string" name="kind" arg="$payload.properties.kind" required="True">
<enum>
<item value=""graphql""/>
<item value=""grpc""/>
<item value=""rest""/>
<item value=""soap""/>
<item value=""webhook""/>
<item value=""websocket""/>
</enum>
</prop>
<prop type="object" name="license" arg="$payload.properties.license">
<prop type="string" name="identifier" arg="$payload.properties.license.identifier">
<format maxLength="50"/>
</prop>
<prop type="string" name="name" arg="$payload.properties.license.name">
<format maxLength="100"/>
</prop>
<prop type="string" name="url" arg="$payload.properties.license.url">
<format maxLength="200"/>
</prop>
</prop>
<prop type="string" name="summary" arg="$payload.properties.summary">
<format maxLength="200"/>
</prop>
<prop type="object" name="termsOfService" arg="$payload.properties.termsOfService">
<prop type="string" name="url" arg="$payload.properties.termsOfService.url" required="True">
<format maxLength="200"/>
</prop>
</prop>
<prop type="string" name="title" arg="$payload.properties.title" required="True">
<format maxLength="50" minLength="1"/>
</prop>
</prop>
</schema>
</json>
</instanceUpdate>
</operation>
<operation operationId="Apis_CreateOrUpdate">
<http path="/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiCenter/services/{serviceName}/workspaces/{workspaceName}/apis/{apiName}">
<request method="put">
<path>
<param type="string" name="apiName" arg="$Path.apiName" required="True">
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</param>
<param type="string" name="resourceGroupName" arg="$Path.resourceGroupName" required="True">
<format maxLength="90" minLength="1"/>
</param>
<param type="string" name="serviceName" arg="$Path.serviceName" required="True">
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</param>
<param type="uuid" name="subscriptionId" arg="$Path.subscriptionId" required="True"/>
<param type="string" name="workspaceName" arg="$Path.workspaceName" required="True">
<format pattern="^[a-zA-Z0-9-]{3,90}$" maxLength="90" minLength="1"/>
</param>
</path>
<query>
<const readOnly="True" const="True" type="string" name="api-version" required="True">
<default value=""2024-03-01""/>
<format minLength="1"/>
</const>
</query>
<body>
<json ref="$Instance"/>
</body>
</request>
<response statusCode="200 201">
<header>
<item name="ETag"/>
</header>
<body>
<json var="$Instance">
<schema type="@Api_read"/>
</json>
</body>
</response>
<response isError="True">
<body>
<json>
<schema type="@MgmtErrorFormat"/>
</json>
</body>
</response>
</http>
</operation>
<output type="object" ref="$Instance" clientFlatten="True"/>
</command>
</commandGroup>
</CodeGen>