{"files":{"SKILL.md":"---\nname: api-client\ndescription: \" API Client API skill. Use when working with  API Client for providers, subscriptions. Covers 17 endpoints.\"\nversion: 1.0.0\ngenerator: lapsh\n---\n\n#  API Client\nAPI version: 2018-02-01\n\n## Auth\nOAuth2\n\n## Base URL\nhttps://management.azure.com\n\n## Setup\n1. Configure auth: OAuth2\n2. GET /providers/Microsoft.Web/publishingUsers/web -- gets publishing user\n3. POST /subscriptions/{subscriptionId}/providers/Microsoft.Web/checknameavailability -- create first checknameavailability\n\n## Endpoints\n17 endpoints across 2 groups. See references/api-spec.lap for full details.\n\n### Providers\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /providers/Microsoft.Web/publishingUsers/web | Gets publishing user |\n| PUT | /providers/Microsoft.Web/publishingUsers/web | Updates publishing user |\n| GET | /providers/Microsoft.Web/sourcecontrols | Gets the source controls available for Azure websites. |\n| GET | /providers/Microsoft.Web/sourcecontrols/{sourceControlType} | Gets source control token |\n| PUT | /providers/Microsoft.Web/sourcecontrols/{sourceControlType} | Updates source control token |\n\n### Subscriptions\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /subscriptions/{subscriptionId}/providers/Microsoft.Web/billingMeters | Gets a list of meters for a given location. |\n| POST | /subscriptions/{subscriptionId}/providers/Microsoft.Web/checknameavailability | Check if a resource name is available. |\n| GET | /subscriptions/{subscriptionId}/providers/Microsoft.Web/deploymentLocations | Gets list of available geo regions plus ministamps |\n| GET | /subscriptions/{subscriptionId}/providers/Microsoft.Web/geoRegions | Get a list of available geographical regions. |\n| POST | /subscriptions/{subscriptionId}/providers/Microsoft.Web/listSitesAssignedToHostName | List all apps that are assigned to a hostname. |\n| GET | /subscriptions/{subscriptionId}/providers/Microsoft.Web/premieraddonoffers | List all premier add-on offers. |\n| GET | /subscriptions/{subscriptionId}/providers/Microsoft.Web/skus | List all SKUs. |\n| POST | /subscriptions/{subscriptionId}/providers/Microsoft.Web/verifyHostingEnvironmentVnet | Verifies if this VNET is compatible with an App Service Environment by analyzing the Network Security Group rules. |\n| POST | /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/moveResources | Move resources between resource groups. |\n| POST | /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/validate | Validate if a resource can be created. |\n| POST | /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/validateContainerSettings | Validate if the container settings are correct. |\n| POST | /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/validateMoveResources | Validate whether a resource can be moved. |\n\n## Common Questions\nMatch user requests to endpoints in references/api-spec.lap. Key patterns:\n- \"List all web?\" -> GET /providers/Microsoft.Web/publishingUsers/web\n- \"List all sourcecontrols?\" -> GET /providers/Microsoft.Web/sourcecontrols\n- \"Get sourcecontrol details?\" -> GET /providers/Microsoft.Web/sourcecontrols/{sourceControlType}\n- \"Update a sourcecontrol?\" -> PUT /providers/Microsoft.Web/sourcecontrols/{sourceControlType}\n- \"List all billingMeters?\" -> GET /subscriptions/{subscriptionId}/providers/Microsoft.Web/billingMeters\n- \"Create a checknameavailability?\" -> POST /subscriptions/{subscriptionId}/providers/Microsoft.Web/checknameavailability\n- \"List all deploymentLocations?\" -> GET /subscriptions/{subscriptionId}/providers/Microsoft.Web/deploymentLocations\n- \"List all geoRegions?\" -> GET /subscriptions/{subscriptionId}/providers/Microsoft.Web/geoRegions\n- \"Create a listSitesAssignedToHostName?\" -> POST /subscriptions/{subscriptionId}/providers/Microsoft.Web/listSitesAssignedToHostName\n- \"List all premieraddonoffers?\" -> GET /subscriptions/{subscriptionId}/providers/Microsoft.Web/premieraddonoffers\n- \"List all skus?\" -> GET /subscriptions/{subscriptionId}/providers/Microsoft.Web/skus\n- \"Create a verifyHostingEnvironmentVnet?\" -> POST /subscriptions/{subscriptionId}/providers/Microsoft.Web/verifyHostingEnvironmentVnet\n- \"Create a moveResource?\" -> POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/moveResources\n- \"Create a validate?\" -> POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/validate\n- \"Create a validateContainerSetting?\" -> POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/validateContainerSettings\n- \"Create a validateMoveResource?\" -> POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/validateMoveResources\n- \"How to authenticate?\" -> See Auth section above\n\n## Response Tips\n- Check response schemas in references/api-spec.lap for field details\n- Create/update endpoints return the modified resource on success\n\n## References\n- Full spec: See references/api-spec.lap for complete endpoint details, parameter tables, and response schemas\n\n> Generated from the official API spec by [LAP](https://lap.sh)\n","references/api-spec.lap":"@lap v0.3\n# Machine-readable API spec. Each @endpoint block is one API call.\n@api API Client\n@base https://management.azure.com\n@version 2018-02-01\n@auth OAuth2\n@common_fields {api-version: any # API Version}\n@endpoints 17\n@toc providers(5), subscriptions(12)\n\n@group providers\n@endpoint GET /providers/Microsoft.Web/publishingUsers/web\n@desc Gets publishing user\n@returns(200) OK\n\n@endpoint PUT /providers/Microsoft.Web/publishingUsers/web\n@desc Updates publishing user\n@required {userDetails: any # Details of publishing user}\n@returns(200) OK\n\n@endpoint GET /providers/Microsoft.Web/sourcecontrols\n@desc Gets the source controls available for Azure websites.\n@returns(200) OK\n\n@endpoint GET /providers/Microsoft.Web/sourcecontrols/{sourceControlType}\n@desc Gets source control token\n@required {sourceControlType: any # Type of source control}\n@returns(200) OK\n\n@endpoint PUT /providers/Microsoft.Web/sourcecontrols/{sourceControlType}\n@desc Updates source control token\n@required {sourceControlType: any # Type of source control, requestMessage: map # Source control token information}\n@returns(200) OK\n\n@endgroup\n\n@group subscriptions\n@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.Web/billingMeters\n@desc Gets a list of meters for a given location.\n@required {subscriptionId: any # Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).}\n@optional {billingLocation: any # Azure Location of billable resource, osType: any # App Service OS type meters used for}\n@returns(200) OK\n\n@endpoint POST /subscriptions/{subscriptionId}/providers/Microsoft.Web/checknameavailability\n@desc Check if a resource name is available.\n@required {request: map # Name availability request., subscriptionId: any # Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).}\n@returns(200) OK\n\n@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.Web/deploymentLocations\n@desc Gets list of available geo regions plus ministamps\n@required {subscriptionId: any # Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).}\n@returns(200) OK\n\n@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.Web/geoRegions\n@desc Get a list of available geographical regions.\n@required {subscriptionId: any # Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).}\n@optional {sku: any # Name of SKU used to filter the regions., linuxWorkersEnabled: any # Specify true if you want to filter to only regions that support Linux workers., xenonWorkersEnabled: any # Specify true if you want to filter to only regions that support Xenon workers., linuxDynamicWorkersEnabled: any # Specify true if you want to filter to only regions that support Linux Consumption Workers.}\n@returns(200) OK\n\n@endpoint POST /subscriptions/{subscriptionId}/providers/Microsoft.Web/listSitesAssignedToHostName\n@desc List all apps that are assigned to a hostname.\n@required {nameIdentifier: any # Hostname information., subscriptionId: any # Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).}\n@returns(200) OK\n\n@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.Web/premieraddonoffers\n@desc List all premier add-on offers.\n@required {subscriptionId: any # Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).}\n@returns(200) OK\n\n@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.Web/skus\n@desc List all SKUs.\n@required {subscriptionId: any # Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).}\n@returns(200) OK\n\n@endpoint POST /subscriptions/{subscriptionId}/providers/Microsoft.Web/verifyHostingEnvironmentVnet\n@desc Verifies if this VNET is compatible with an App Service Environment by analyzing the Network Security Group rules.\n@required {parameters: map # VNET information, subscriptionId: any # Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).}\n@returns(200) OK\n\n@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/moveResources\n@desc Move resources between resource groups.\n@required {resourceGroupName: any # Name of the resource group to which the resource belongs., moveResourceEnvelope: map # Object that represents the resource to move., subscriptionId: any # Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).}\n@returns(204) No Content\n\n@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/validate\n@desc Validate if a resource can be created.\n@required {resourceGroupName: any # Name of the resource group to which the resource belongs., validateRequest: map # Request with the resources to validate., subscriptionId: any # Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).}\n@returns(200) OK\n\n@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/validateContainerSettings\n@desc Validate if the container settings are correct.\n@required {validateContainerSettingsRequest: map, resourceGroupName: any # Name of the resource group to which the resource belongs., subscriptionId: any # Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).}\n@returns(200) OK\n\n@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/validateMoveResources\n@desc Validate whether a resource can be moved.\n@required {resourceGroupName: any # Name of the resource group to which the resource belongs., moveResourceEnvelope: map # Object that represents the resource to move., subscriptionId: any # Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).}\n@returns(204) No Content\n\n@endgroup\n\n@end\n"}}