[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-0a255b0d-2db3-49fa-a833-bb3f677db864":3,"$fdLscW0V_aj7tK_AkSSrWldNpLU8Krl4PMfVEFbmA3Sk":42},{"id":4,"title":5,"description":6,"categoryId":7,"moduleId":8,"tags":9,"prompt":10,"icon":11,"source":12,"sourceUrl":13,"authorId":14,"authorName":15,"isPublic":16,"stars":17,"runs":18,"createdAt":19,"updatedAt":19,"module":20,"category":27,"packages":33},"0a255b0d-2db3-49fa-a833-bb3f677db864","azure-mgmt-apimanagement-py","Azure API Management SDK for Python。用于管理APIM服务、API、产品、订阅和策略。","cat_coding_backend","mod_coding","sickn33,coding","---\nname: azure-mgmt-apimanagement-py\ndescription: Azure API Management SDK for Python. Use for managing APIM services, APIs, products, subscriptions, and policies.\nrisk: unknown\nsource: community\ndate_added: '2026-02-27'\n---\n\n# Azure API Management SDK for Python\n\nManage Azure API Management services, APIs, products, and policies.\n\n## Installation\n\n```bash\npip install azure-mgmt-apimanagement\npip install azure-identity\n```\n\n## Environment Variables\n\n```bash\nAZURE_SUBSCRIPTION_ID=your-subscription-id\n```\n\n## Authentication\n\n```python\nfrom azure.identity import DefaultAzureCredential\nfrom azure.mgmt.apimanagement import ApiManagementClient\nimport os\n\nclient = ApiManagementClient(\n    credential=DefaultAzureCredential(),\n    subscription_id=os.environ[\"AZURE_SUBSCRIPTION_ID\"]\n)\n```\n\n## Create APIM Service\n\n```python\nfrom azure.mgmt.apimanagement.models import (\n    ApiManagementServiceResource,\n    ApiManagementServiceSkuProperties,\n    SkuType\n)\n\nservice = client.api_management_service.begin_create_or_update(\n    resource_group_name=\"my-resource-group\",\n    service_name=\"my-apim\",\n    parameters=ApiManagementServiceResource(\n        location=\"eastus\",\n        publisher_email=\"admin@example.com\",\n        publisher_name=\"My Organization\",\n        sku=ApiManagementServiceSkuProperties(\n            name=SkuType.DEVELOPER,\n            capacity=1\n        )\n    )\n).result()\n\nprint(f\"Created APIM: {service.name}\")\n```\n\n## Import API from OpenAPI\n\n```python\nfrom azure.mgmt.apimanagement.models import (\n    ApiCreateOrUpdateParameter,\n    ContentFormat,\n    Protocol\n)\n\napi = client.api.begin_create_or_update(\n    resource_group_name=\"my-resource-group\",\n    service_name=\"my-apim\",\n    api_id=\"my-api\",\n    parameters=ApiCreateOrUpdateParameter(\n        display_name=\"My API\",\n        path=\"myapi\",\n        protocols=[Protocol.HTTPS],\n        format=ContentFormat.OPENAPI_JSON,\n        value='{\"openapi\": \"3.0.0\", \"info\": {\"title\": \"My API\", \"version\": \"1.0\"}, \"paths\": {\"\u002Fhealth\": {\"get\": {\"responses\": {\"200\": {\"description\": \"OK\"}}}}}}'\n    )\n).result()\n\nprint(f\"Imported API: {api.display_name}\")\n```\n\n## Import API from URL\n\n```python\napi = client.api.begin_create_or_update(\n    resource_group_name=\"my-resource-group\",\n    service_name=\"my-apim\",\n    api_id=\"petstore\",\n    parameters=ApiCreateOrUpdateParameter(\n        display_name=\"Petstore API\",\n        path=\"petstore\",\n        protocols=[Protocol.HTTPS],\n        format=ContentFormat.OPENAPI_LINK,\n        value=\"https:\u002F\u002Fpetstore.swagger.io\u002Fv2\u002Fswagger.json\"\n    )\n).result()\n```\n\n## List APIs\n\n```python\napis = client.api.list_by_service(\n    resource_group_name=\"my-resource-group\",\n    service_name=\"my-apim\"\n)\n\nfor api in apis:\n    print(f\"{api.name}: {api.display_name} - {api.path}\")\n```\n\n## Create Product\n\n```python\nfrom azure.mgmt.apimanagement.models import ProductContract\n\nproduct = client.product.create_or_update(\n    resource_group_name=\"my-resource-group\",\n    service_name=\"my-apim\",\n    product_id=\"premium\",\n    parameters=ProductContract(\n        display_name=\"Premium\",\n        description=\"Premium tier with unlimited access\",\n        subscription_required=True,\n        approval_required=False,\n        state=\"published\"\n    )\n)\n\nprint(f\"Created product: {product.display_name}\")\n```\n\n## Add API to Product\n\n```python\nclient.product_api.create_or_update(\n    resource_group_name=\"my-resource-group\",\n    service_name=\"my-apim\",\n    product_id=\"premium\",\n    api_id=\"my-api\"\n)\n```\n\n## Create Subscription\n\n```python\nfrom azure.mgmt.apimanagement.models import SubscriptionCreateParameters\n\nsubscription = client.subscription.create_or_update(\n    resource_group_name=\"my-resource-group\",\n    service_name=\"my-apim\",\n    sid=\"my-subscription\",\n    parameters=SubscriptionCreateParameters(\n        display_name=\"My Subscription\",\n        scope=f\"\u002Fproducts\u002Fpremium\",\n        state=\"active\"\n    )\n)\n\nprint(f\"Subscription key: {subscription.primary_key}\")\n```\n\n## Set API Policy\n\n```python\nfrom azure.mgmt.apimanagement.models import PolicyContract\n\npolicy_xml = \"\"\"\n\u003Cpolicies>\n    \u003Cinbound>\n        \u003Crate-limit calls=\"100\" renewal-period=\"60\" \u002F>\n        \u003Cset-header name=\"X-Custom-Header\" exists-action=\"override\">\n            \u003Cvalue>CustomValue\u003C\u002Fvalue>\n        \u003C\u002Fset-header>\n    \u003C\u002Finbound>\n    \u003Cbackend>\n        \u003Cforward-request \u002F>\n    \u003C\u002Fbackend>\n    \u003Coutbound \u002F>\n    \u003Con-error \u002F>\n\u003C\u002Fpolicies>\n\"\"\"\n\nclient.api_policy.create_or_update(\n    resource_group_name=\"my-resource-group\",\n    service_name=\"my-apim\",\n    api_id=\"my-api\",\n    policy_id=\"policy\",\n    parameters=PolicyContract(\n        value=policy_xml,\n        format=\"xml\"\n    )\n)\n```\n\n## Create Named Value (Secret)\n\n```python\nfrom azure.mgmt.apimanagement.models import NamedValueCreateContract\n\nnamed_value = client.named_value.begin_create_or_update(\n    resource_group_name=\"my-resource-group\",\n    service_name=\"my-apim\",\n    named_value_id=\"backend-api-key\",\n    parameters=NamedValueCreateContract(\n        display_name=\"Backend API Key\",\n        value=\"secret-key-value\",\n        secret=True\n    )\n).result()\n```\n\n## Create Backend\n\n```python\nfrom azure.mgmt.apimanagement.models import BackendContract\n\nbackend = client.backend.create_or_update(\n    resource_group_name=\"my-resource-group\",\n    service_name=\"my-apim\",\n    backend_id=\"my-backend\",\n    parameters=BackendContract(\n        url=\"https:\u002F\u002Fapi.backend.example.com\",\n        protocol=\"http\",\n        description=\"My backend service\"\n    )\n)\n```\n\n## Create User\n\n```python\nfrom azure.mgmt.apimanagement.models import UserCreateParameters\n\nuser = client.user.create_or_update(\n    resource_group_name=\"my-resource-group\",\n    service_name=\"my-apim\",\n    user_id=\"newuser\",\n    parameters=UserCreateParameters(\n        email=\"user@example.com\",\n        first_name=\"John\",\n        last_name=\"Doe\"\n    )\n)\n```\n\n## Operation Groups\n\n| Group | Purpose |\n|-------|---------|\n| `api_management_service` | APIM instance management |\n| `api` | API operations |\n| `api_operation` | API operation details |\n| `api_policy` | API-level policies |\n| `product` | Product management |\n| `product_api` | Product-API associations |\n| `subscription` | Subscription management |\n| `user` | User management |\n| `named_value` | Named values\u002Fsecrets |\n| `backend` | Backend services |\n| `certificate` | Certificates |\n| `gateway` | Self-hosted gateways |\n\n## Best Practices\n\n1. **Use named values** for secrets and configuration\n2. **Apply policies** at appropriate scopes (global, product, API, operation)\n3. **Use products** to bundle APIs and manage access\n4. **Enable Application Insights** for monitoring\n5. **Use backends** to abstract backend services\n6. **Version your APIs** using APIM's versioning features\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n\n## Limitations\n- Use this skill only when the task clearly matches the scope described above.\n- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.\n- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.\n","","imported","https:\u002F\u002Fgithub.com\u002Fsickn33\u002Fantigravity-awesome-skills","user_system_seed","SkillOPIC",true,201,1239,"2026-05-16 13:06:55",{"id":8,"name":21,"slug":22,"icon":23,"description":24,"sort":25,"createdAt":26},"编程开发","coding","mdi-code-braces","代码生成、调试、审查，提升开发效率",2,"2026-05-16 12:53:40",{"id":7,"name":28,"slug":29,"icon":30,"description":31,"moduleId":8,"sort":25,"skillCount":32,"createdAt":26},"后端开发","backend","mdi-server","API、数据库、服务端架构",296,[34],{"id":35,"skillId":4,"version":36,"fileName":37,"fileSize":38,"filePath":39,"fileHash":40,"manifest":41,"createdAt":19},"219b06c0-ade5-40fe-97a5-b513e4123394","1.0.0","azure-mgmt-apimanagement-py.zip",2304,"uploads\u002Fskills\u002F0a255b0d-2db3-49fa-a833-bb3f677db864\u002Fazure-mgmt-apimanagement-py.zip","f50b7fe4fbde2c9ef7272d173386c6fdec36a23c51079ed9b31a5773a2dfde45","[{\"path\":\"SKILL.md\",\"isDirectory\":false,\"size\":7139}]",{"code":43,"message":44,"data":45},200,"success",{"items":46,"stats":47,"page":50},[],{"averageRating":48,"totalRatings":48,"ratingCounts":49},0,[48,48,48,48,48],{"limit":51,"offset":48,"hasMore":52,"nextOffset":51,"ratedOnly":16},15,false]