azure-mgmt-apicenter-py

安装量: 39
排名: #18187

安装

npx skills add https://github.com/sickn33/antigravity-awesome-skills --skill azure-mgmt-apicenter-py

Azure API Center Management SDK for Python Manage API inventory, metadata, and governance in Azure API Center. Installation pip install azure-mgmt-apicenter pip install azure-identity Environment Variables AZURE_SUBSCRIPTION_ID = your-subscription-id Authentication from azure . identity import DefaultAzureCredential from azure . mgmt . apicenter import ApiCenterMgmtClient import os client = ApiCenterMgmtClient ( credential = DefaultAzureCredential ( ) , subscription_id = os . environ [ "AZURE_SUBSCRIPTION_ID" ] ) Create API Center from azure . mgmt . apicenter . models import Service api_center = client . services . create_or_update ( resource_group_name = "my-resource-group" , service_name = "my-api-center" , resource = Service ( location = "eastus" , tags = { "environment" : "production" } ) ) print ( f"Created API Center: { api_center . name } " ) List API Centers api_centers = client . services . list_by_subscription ( ) for api_center in api_centers : print ( f" { api_center . name } - { api_center . location } " ) Register an API from azure . mgmt . apicenter . models import Api , ApiKind , LifecycleStage api = client . apis . create_or_update ( resource_group_name = "my-resource-group" , service_name = "my-api-center" , workspace_name = "default" , api_name = "my-api" , resource = Api ( title = "My API" , description = "A sample API for demonstration" , kind = ApiKind . REST , lifecycle_stage = LifecycleStage . PRODUCTION , terms_of_service = { "url" : "https://example.com/terms" } , contacts = [ { "name" : "API Team" , "email" : "api-team@example.com" } ] ) ) print ( f"Registered API: { api . title } " ) Create API Version from azure . mgmt . apicenter . models import ApiVersion , LifecycleStage version = client . api_versions . create_or_update ( resource_group_name = "my-resource-group" , service_name = "my-api-center" , workspace_name = "default" , api_name = "my-api" , version_name = "v1" , resource = ApiVersion ( title = "Version 1.0" , lifecycle_stage = LifecycleStage . PRODUCTION ) ) print ( f"Created version: { version . title } " ) Add API Definition from azure . mgmt . apicenter . models import ApiDefinition definition = client . api_definitions . create_or_update ( resource_group_name = "my-resource-group" , service_name = "my-api-center" , workspace_name = "default" , api_name = "my-api" , version_name = "v1" , definition_name = "openapi" , resource = ApiDefinition ( title = "OpenAPI Definition" , description = "OpenAPI 3.0 specification" ) ) Import API Specification from azure . mgmt . apicenter . models import ApiSpecImportRequest , ApiSpecImportSourceFormat

Import from inline content

client . api_definitions . import_specification ( resource_group_name = "my-resource-group" , service_name = "my-api-center" , workspace_name = "default" , api_name = "my-api" , version_name = "v1" , definition_name = "openapi" , body = ApiSpecImportRequest ( format = ApiSpecImportSourceFormat . INLINE , value = '{"openapi": "3.0.0", "info": {"title": "My API", "version": "1.0"}, "paths": {}}' ) ) List APIs apis = client . apis . list ( resource_group_name = "my-resource-group" , service_name = "my-api-center" , workspace_name = "default" ) for api in apis : print ( f" { api . name } : { api . title } ( { api . kind } )" ) Create Environment from azure . mgmt . apicenter . models import Environment , EnvironmentKind environment = client . environments . create_or_update ( resource_group_name = "my-resource-group" , service_name = "my-api-center" , workspace_name = "default" , environment_name = "production" , resource = Environment ( title = "Production" , description = "Production environment" , kind = EnvironmentKind . PRODUCTION , server = { "type" : "Azure API Management" , "management_portal_uri" : [ "https://portal.azure.com" ] } ) ) Create Deployment from azure . mgmt . apicenter . models import Deployment , DeploymentState deployment = client . deployments . create_or_update ( resource_group_name = "my-resource-group" , service_name = "my-api-center" , workspace_name = "default" , api_name = "my-api" , deployment_name = "prod-deployment" , resource = Deployment ( title = "Production Deployment" , description = "Deployed to production APIM" , environment_id = "/workspaces/default/environments/production" , definition_id = "/workspaces/default/apis/my-api/versions/v1/definitions/openapi" , state = DeploymentState . ACTIVE , server = { "runtime_uri" : [ "https://api.example.com" ] } ) ) Define Custom Metadata from azure . mgmt . apicenter . models import MetadataSchema metadata = client . metadata_schemas . create_or_update ( resource_group_name = "my-resource-group" , service_name = "my-api-center" , metadata_schema_name = "data-classification" , resource = MetadataSchema ( schema = '{"type": "string", "title": "Data Classification", "enum": ["public", "internal", "confidential"]}' ) ) Client Types Client Purpose ApiCenterMgmtClient Main client for all operations Operations Operation Group Purpose services API Center service management workspaces Workspace management apis API registration and management api_versions API version management api_definitions API definition management deployments Deployment tracking environments Environment management metadata_schemas Custom metadata definitions Best Practices Use workspaces to organize APIs by team or domain Define metadata schemas for consistent governance Track deployments to understand where APIs are running Import specifications to enable API analysis and linting Use lifecycle stages to track API maturity Add contacts for API ownership and support When to Use This skill is applicable to execute the workflow or actions described in the overview.

返回排行榜