{"files":{"SKILL.md":"---\nname: software-plan-rp\ndescription: \"Software Plan RP API skill. Use when working with Software Plan RP for subscriptions, {scope}. Covers 8 endpoints.\"\nversion: 1.0.0\ngenerator: lapsh\n---\n\n# Software Plan RP\nAPI version: 2019-12-01\n\n## Auth\nOAuth2\n\n## Base URL\nhttps://management.azure.com\n\n## Setup\n1. Configure auth: OAuth2\n2. GET /{scope}/providers/Microsoft.SoftwarePlan/hybridUseBenefits -- get all hybrid use benefits associated with an arm resource.\n3. POST /subscriptions/{subscriptionId}/providers/Microsoft.SoftwarePlan/register -- create first register\n\n## Endpoints\n8 endpoints across 2 groups. See references/api-spec.lap for full details.\n\n### Subscriptions\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /subscriptions/{subscriptionId}/providers/Microsoft.SoftwarePlan/register | Register to Microsoft.SoftwarePlan resource provider. |\n\n### {scope}\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /{scope}/providers/Microsoft.SoftwarePlan/hybridUseBenefits | Get all hybrid use benefits associated with an ARM resource. |\n| PUT | /{scope}/providers/Microsoft.SoftwarePlan/hybridUseBenefits/{planId} | Create a new hybrid use benefit under a given scope |\n| PATCH | /{scope}/providers/Microsoft.SoftwarePlan/hybridUseBenefits/{planId} | Updates an existing hybrid use benefit |\n| GET | /{scope}/providers/Microsoft.SoftwarePlan/hybridUseBenefits/{planId} | Gets a given plan ID |\n| DELETE | /{scope}/providers/Microsoft.SoftwarePlan/hybridUseBenefits/{planId} | Deletes a given plan ID |\n| GET | /{scope}/providers/Microsoft.SoftwarePlan/hybridUseBenefits/{planId}/revisions | Gets the version history of a hybrid use benefit |\n| GET | /{scope}/providers/Microsoft.SoftwarePlan/operations | Get operations. |\n\n## Common Questions\nMatch user requests to endpoints in references/api-spec.lap. Key patterns:\n- \"Create a register?\" -> POST /subscriptions/{subscriptionId}/providers/Microsoft.SoftwarePlan/register\n- \"List all hybridUseBenefits?\" -> GET /{scope}/providers/Microsoft.SoftwarePlan/hybridUseBenefits\n- \"Update a hybridUseBenefit?\" -> PUT /{scope}/providers/Microsoft.SoftwarePlan/hybridUseBenefits/{planId}\n- \"Partially update a hybridUseBenefit?\" -> PATCH /{scope}/providers/Microsoft.SoftwarePlan/hybridUseBenefits/{planId}\n- \"Get hybridUseBenefit details?\" -> GET /{scope}/providers/Microsoft.SoftwarePlan/hybridUseBenefits/{planId}\n- \"Delete a hybridUseBenefit?\" -> DELETE /{scope}/providers/Microsoft.SoftwarePlan/hybridUseBenefits/{planId}\n- \"List all revisions?\" -> GET /{scope}/providers/Microsoft.SoftwarePlan/hybridUseBenefits/{planId}/revisions\n- \"List all operations?\" -> GET /{scope}/providers/Microsoft.SoftwarePlan/operations\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 Software Plan RP\n@base https://management.azure.com\n@version 2019-12-01\n@auth OAuth2\n@common_fields {api-version: any # The api-version to be used by the service}\n@endpoints 8\n@toc subscriptions(1), {scope}(7)\n\n@group subscriptions\n@endpoint POST /subscriptions/{subscriptionId}/providers/Microsoft.SoftwarePlan/register\n@desc Register to Microsoft.SoftwarePlan resource provider.\n@returns(204) OK - Microsoft.SoftwarePlan is registered\n\n@endgroup\n\n@group {scope}\n@endpoint GET /{scope}/providers/Microsoft.SoftwarePlan/hybridUseBenefits\n@desc Get all hybrid use benefits associated with an ARM resource.\n@required {scope: any # The scope at which the operation is performed. This is limited to Microsoft.Compute/virtualMachines and Microsoft.Compute/hostGroups/hosts for now}\n@optional {$filter: any # Supports applying filter on the type of SKU}\n@returns(200) OK - returns an array of plans at that scope\n\n@endpoint PUT /{scope}/providers/Microsoft.SoftwarePlan/hybridUseBenefits/{planId}\n@desc Create a new hybrid use benefit under a given scope\n@required {scope: any # The scope at which the operation is performed. This is limited to Microsoft.Compute/virtualMachines and Microsoft.Compute/hostGroups/hosts for now, planId: any # This is a unique identifier for a plan. Should be a guid., body: any # Request body for creating a hybrid use benefit}\n@returns(200) OK - returns the plan that is created\n\n@endpoint PATCH /{scope}/providers/Microsoft.SoftwarePlan/hybridUseBenefits/{planId}\n@desc Updates an existing hybrid use benefit\n@required {scope: any # The scope at which the operation is performed. This is limited to Microsoft.Compute/virtualMachines and Microsoft.Compute/hostGroups/hosts for now, planId: any # This is a unique identifier for a plan. Should be a guid., body: any # Request body for creating a hybrid use benefit}\n@returns(200) OK - successfully updated the given hybrid use benefit\n\n@endpoint GET /{scope}/providers/Microsoft.SoftwarePlan/hybridUseBenefits/{planId}\n@desc Gets a given plan ID\n@required {scope: any # The scope at which the operation is performed. This is limited to Microsoft.Compute/virtualMachines and Microsoft.Compute/hostGroups/hosts for now, planId: any # This is a unique identifier for a plan. Should be a guid.}\n@returns(200) OK - returns the plan that is created\n\n@endpoint DELETE /{scope}/providers/Microsoft.SoftwarePlan/hybridUseBenefits/{planId}\n@desc Deletes a given plan ID\n@required {scope: any # The scope at which the operation is performed. This is limited to Microsoft.Compute/virtualMachines and Microsoft.Compute/hostGroups/hosts for now, planId: any # This is a unique identifier for a plan. Should be a guid.}\n@returns(200) OK - successfully deleted the given plan\n@returns(204) OK - there was no plan to delete\n\n@endpoint GET /{scope}/providers/Microsoft.SoftwarePlan/hybridUseBenefits/{planId}/revisions\n@desc Gets the version history of a hybrid use benefit\n@required {scope: any # The scope at which the operation is performed. This is limited to Microsoft.Compute/virtualMachines and Microsoft.Compute/hostGroups/hosts for now, planId: any # This is a unique identifier for a plan. Should be a guid.}\n@returns(200) OK - returns an array of plans ordered by revision\n\n@endpoint GET /{scope}/providers/Microsoft.SoftwarePlan/operations\n@desc Get operations.\n@required {scope: any # The scope at which the operation is performed. This is limited to Microsoft.Compute/virtualMachines and Microsoft.Compute/hostGroups/hosts for now}\n@returns(200) List all the operations.\n\n@endgroup\n\n@end\n"}}