{"files":{"SKILL.md":"---\nname: azure-data-migration-service-resource-provider\ndescription: \"Azure Data Migration Service Resource Provider API skill. Use when working with Azure Data Migration Service Resource Provider for subscriptions, providers. Covers 26 endpoints.\"\nversion: 1.0.0\ngenerator: lapsh\n---\n\n# Azure Data Migration Service Resource Provider\nAPI version: 2018-03-15-preview\n\n## Auth\nOAuth2\n\n## Base URL\nhttps://management.azure.com\n\n## Setup\n1. Configure auth: OAuth2\n2. GET /providers/Microsoft.DataMigration/operations -- get available resource provider actions (operations)\n3. POST /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/checkStatus -- create first checkStatus\n\n## Endpoints\n26 endpoints across 2 groups. See references/api-spec.lap for full details.\n\n### Subscriptions\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /subscriptions/{subscriptionId}/providers/Microsoft.DataMigration/skus | Get supported SKUs |\n| PUT | /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName} | Create or update DMS Instance |\n| GET | /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName} | Get DMS Service Instance |\n| DELETE | /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName} | Delete DMS Service Instance |\n| PATCH | /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName} | Create or update DMS Service Instance |\n| POST | /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/checkStatus | Check service health status |\n| POST | /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/start | Start service |\n| POST | /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/stop | Stop service |\n| GET | /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/skus | Get compatible SKUs |\n| GET | /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks | Get tasks in a service |\n| POST | /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/checkNameAvailability | Check nested resource name validity and availability |\n| GET | /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services | Get services in resource group |\n| GET | /subscriptions/{subscriptionId}/providers/Microsoft.DataMigration/services | Get services in subscription |\n| PUT | /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName} | Create or update task |\n| GET | /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName} | Get task information |\n| DELETE | /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName} | Delete task |\n| PATCH | /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName} | Create or update task |\n| POST | /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName}/cancel | Cancel a task |\n| GET | /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects | Get projects in a service |\n| PUT | /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName} | Create or update project |\n| GET | /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName} | Get project information |\n| DELETE | /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName} | Delete project |\n| PATCH | /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName} | Update project |\n| POST | /subscriptions/{subscriptionId}/providers/Microsoft.DataMigration/locations/{location}/checkNameAvailability | Check name validity and availability |\n| GET | /subscriptions/{subscriptionId}/providers/Microsoft.DataMigration/locations/{location}/usages | Get resource quotas and usage information |\n\n### Providers\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /providers/Microsoft.DataMigration/operations | Get available resource provider actions (operations) |\n\n## Common Questions\nMatch user requests to endpoints in references/api-spec.lap. Key patterns:\n- \"List all skus?\" -> GET /subscriptions/{subscriptionId}/providers/Microsoft.DataMigration/skus\n- \"Update a service?\" -> PUT /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}\n- \"Get service details?\" -> GET /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}\n- \"Delete a service?\" -> DELETE /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}\n- \"Partially update a service?\" -> PATCH /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}\n- \"Create a checkStatus?\" -> POST /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/checkStatus\n- \"Create a start?\" -> POST /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/start\n- \"Create a stop?\" -> POST /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/stop\n- \"List all tasks?\" -> GET /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks\n- \"Create a checkNameAvailability?\" -> POST /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/checkNameAvailability\n- \"List all services?\" -> GET /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services\n- \"Update a task?\" -> PUT /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName}\n- \"Get task details?\" -> GET /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName}\n- \"Delete a task?\" -> DELETE /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName}\n- \"Partially update a task?\" -> PATCH /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName}\n- \"Create a cancel?\" -> POST /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName}/cancel\n- \"List all projects?\" -> GET /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects\n- \"Update a project?\" -> PUT /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}\n- \"Get project details?\" -> GET /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}\n- \"Delete a project?\" -> DELETE /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}\n- \"Partially update a project?\" -> PATCH /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}\n- \"List all usages?\" -> GET /subscriptions/{subscriptionId}/providers/Microsoft.DataMigration/locations/{location}/usages\n- \"List all operations?\" -> GET /providers/Microsoft.DataMigration/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 Azure Data Migration Service Resource Provider\n@base https://management.azure.com\n@version 2018-03-15-preview\n@auth OAuth2\n@endpoints 26\n@hint download_for_search\n@toc subscriptions(25), providers(1)\n\n@group subscriptions\n@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.DataMigration/skus\n@desc Get supported SKUs\n@required {subscriptionId: any # Identifier of the subscription, api-version: any # Version of the API}\n@returns(200) Got SKUs\n\n@endpoint PUT /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}\n@desc Create or update DMS Instance\n@required {parameters: any # Information about the service}\n@returns(200) Service updated\n@returns(201) Service created (use provisioningState)\n@returns(202) Update accepted\n\n@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}\n@desc Get DMS Service Instance\n@returns(200) A service instance resource\n\n@endpoint DELETE /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}\n@desc Delete DMS Service Instance\n@optional {deleteRunningTasks: any # Delete the resource even if it contains running tasks}\n@returns(200) Service resource deleted\n@returns(202) Deletion accepted\n@returns(204) Service not found\n\n@endpoint PATCH /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}\n@desc Create or update DMS Service Instance\n@required {parameters: any # Information about the service}\n@returns(200) Service resource updated\n@returns(202) Update accepted\n\n@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/checkStatus\n@desc Check service health status\n@required {subscriptionId: any # Identifier of the subscription, groupName: any # Name of the resource group, serviceName: any # Name of the service, api-version: any # Version of the API}\n@returns(200) Health checked\n\n@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/start\n@desc Start service\n@required {subscriptionId: any # Identifier of the subscription, groupName: any # Name of the resource group, serviceName: any # Name of the service, api-version: any # Version of the API}\n@returns(200) The service has already been started.\n@returns(202) The request to start service is accepted.\n\n@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/stop\n@desc Stop service\n@required {subscriptionId: any # Identifier of the subscription, groupName: any # Name of the resource group, serviceName: any # Name of the service, api-version: any # Version of the API}\n@returns(200) The service has already been stopped.\n@returns(202) The request to stop service is accepted.\n\n@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/skus\n@desc Get compatible SKUs\n@required {subscriptionId: any # Identifier of the subscription, groupName: any # Name of the resource group, serviceName: any # Name of the service, api-version: any # Version of the API}\n@returns(200) Got SKUs\n\n@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks\n@desc Get tasks in a service\n@required {subscriptionId: any # Identifier of the subscription, groupName: any # Name of the resource group, serviceName: any # Name of the service, projectName: any # Name of the project, api-version: any # Version of the API}\n@optional {taskType: any # Filter tasks by task type}\n@returns(200) Got tasks\n\n@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/checkNameAvailability\n@desc Check nested resource name validity and availability\n@required {subscriptionId: any # Identifier of the subscription, groupName: any # Name of the resource group, api-version: any # Version of the API, serviceName: any # Name of the service, parameters: any # Requested name to validate}\n@returns(200) Name checked\n\n@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services\n@desc Get services in resource group\n@required {subscriptionId: any # Identifier of the subscription, groupName: any # Name of the resource group, api-version: any # Version of the API}\n@returns(200) Got services\n\n@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.DataMigration/services\n@desc Get services in subscription\n@required {subscriptionId: any # Identifier of the subscription, api-version: any # Version of the API}\n@returns(200) Got services\n\n@endpoint PUT /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName}\n@desc Create or update task\n@required {parameters: any # Information about the task}\n@returns(200) Task updated\n@returns(201) Task created\n\n@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName}\n@desc Get task information\n@optional {$expand: any # Expand the response}\n@returns(200) A task resource\n\n@endpoint DELETE /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName}\n@desc Delete task\n@optional {deleteRunningTasks: any # Delete the resource even if it contains running tasks}\n@returns(200) Task resource deleted\n@returns(204) Not found\n\n@endpoint PATCH /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName}\n@desc Create or update task\n@required {parameters: any # Information about the task}\n@returns(200) Task resource updated\n\n@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName}/cancel\n@desc Cancel a task\n@required {subscriptionId: any # Identifier of the subscription, groupName: any # Name of the resource group, serviceName: any # Name of the service, projectName: any # Name of the project, taskName: any # Name of the Task, api-version: any # Version of the API}\n@returns(200) Task canceled\n\n@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects\n@desc Get projects in a service\n@required {subscriptionId: any # Identifier of the subscription, groupName: any # Name of the resource group, serviceName: any # Name of the service, api-version: any # Version of the API}\n@returns(200) List of projects\n\n@endpoint PUT /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}\n@desc Create or update project\n@required {parameters: any # Information about the project}\n@returns(200) Project updated\n@returns(201) Project created\n\n@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}\n@desc Get project information\n@returns(200) A project resource\n\n@endpoint DELETE /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}\n@desc Delete project\n@optional {deleteRunningTasks: any # Delete the resource even if it contains running tasks}\n@returns(200) Project resource deleted\n@returns(204) Not found\n\n@endpoint PATCH /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}\n@desc Update project\n@required {parameters: any # Information about the project}\n@returns(200) Project resource updated\n\n@endpoint POST /subscriptions/{subscriptionId}/providers/Microsoft.DataMigration/locations/{location}/checkNameAvailability\n@desc Check name validity and availability\n@required {subscriptionId: any # Identifier of the subscription, api-version: any # Version of the API, location: any # The Azure region of the operation, parameters: any # Requested name to validate}\n@returns(200) Name checked\n\n@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.DataMigration/locations/{location}/usages\n@desc Get resource quotas and usage information\n@required {subscriptionId: any # Identifier of the subscription, location: any # The Azure region of the operation, api-version: any # Version of the API}\n@returns(200) Quotas returned\n\n@endgroup\n\n@group providers\n@endpoint GET /providers/Microsoft.DataMigration/operations\n@desc Get available resource provider actions (operations)\n@required {api-version: any # Version of the API}\n@returns(200) Got action list\n\n@endgroup\n\n@end\n"}}